Skip to content

qa(checklist-test §2): every QA runner dispatch states its effort by card shape — high for a run, xhigh only for a security fix or adversarial review — and a cloud card records the effort it inherits #27390

Closed

Description

@objectstack-fleet

domain:devx#1 · sunhaolin · session_017xRBcVy4VXmkQjn2MGeaWk

Filing gate: ③ a maintainer-directed task.

  • The maintainer, in session session_017xRBcVy4VXmkQjn2MGeaWk on 2026-10-29, asked about the six wave-3 runner cards of [sweep] v18.3.0 release test sweep #27377: 「你派的任务都需要 extra 吗」 ("do all the tasks you dispatched need extra-high effort?").
  • The seat answered that they do not. A run card needs high, and xhigh belongs to a security fix dispatch and to adversarial review.
  • The maintainer then said 「立卡更新 skills」.

Business reason: the wave-3 runner cards were dispatched with no effort stated. create_session takes no effort parameter. The dispatch-runbook (.claude/skills/pm-dispatch/references/dispatch-runbook.md, the trigger-flow line ②) says a trigger-flow session inherits the dispatching seat's tier. So each card ran at whatever effort the dispatching session had, chosen by no one.

Cost of that, measured on #27377's cards at about 30 minutes in:

  • W3-C1 had spent $33.04, mostly on environment setup and spot-checks.
  • W3-C3b had spent $14.98.

A run card's work does not need the top effort:

  • per-area vitest batches;
  • REST/CLI steps scored against server truth;
  • browser steps scored against RUNNER's oracle ladder.

execution-duties.md already requires effort to be set by card difficulty and passed explicitly, ⛔ never left empty. checklist-test is the one dispatcher that does not apply this. Its §2 names the model tier, through dispatch-gates --tier, and says nothing about effort.

Reader: every session that dispatches checklist-test runners, whether as subagents or as cloud cards. Today that is the release-wave PM sessions.

Dedupe (open AND closed): "checklist-test runner effort level high xhigh cloud session dispatch" returns 45 hits, and none of them sets runner effort. #27383 (this session's periodic-testing card) touches the same SKILL.md, in §5. This card is §2 only, so the two should land serially or be merged at claim time.

What changes in .claude/skills/checklist-test/SKILL.md §2

  1. Effort by card shape, stated in every runner dispatch:
    • high for a checklist run card: Tier 1 pin batches, manual API/CLI sets, manual browser sets, the P0 smoke, and a UX walkthrough;
    • xhigh only for the os-dev dispatched to fix a security finding, and for an adversarial re-verification of a contested verdict;
    • ⛔ never left empty.
  2. The two backends:
    • A runner subagent spawned with the Agent tool gets effort passed explicitly. This skill line is the instruction that makes passing it lawful.
    • A cloud runner card (create_session) cannot set effort and inherits the dispatching session's effort. The dispatcher records the inherited level in the anchor's dispatch note. When that level is above the card's shape, the dispatcher starts the cards from a session at the intended level. Measure how a cloud session's effort is actually set and inherited before writing this, and cite the runbook line rather than restating it.
  3. The spend line: the anchor's dispatch note and each runner's final report carry each card's spend at report time, so the next wave can calibrate. get_session exposes usage.cost_usd.

Out of scope: changing effort on sessions already running; the model tier rule, which stays with dispatch-gates --tier; pm-dispatch's own effort rules.

Gates to expect

Tier: .claude/** is governed Tier S. Clause-②: no. Metadata-protocol: none.


Generated by Claude Code

Activity

  1. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: p2 · domain:devx · area:devpath · 2026-10-29T05:56Z

    ⛔ Not a claim.

    • Read fresh. Maintainer-directed (「你派的任务都需要 extra 吗」 → 「立卡更新 skills」). Every QA runner dispatch states its effort by card shape: high for a run, and xhigh only for a security fix dispatch or adversarial review. A cloud card records the effort it inherits.
    • p2: it is a cost rule. Wave-3 cards ran at an effort nobody chose ($33 for one card at 30 minutes).
    • tooling, pm:queue.

    Generated by Claude Code

  2. objectstack-fleet commented on Oct 29, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#1 · os-elon-musk · session_01LKHDniRQSWjRJyDtacwpEd

    Claim: PM loop round 2 · 2026-10-29T15:17Z
    Session: session_016WV4cxs6a1nUyBHTEo84qV (card thread, dispatched by seat session session_01LKHDniRQSWjRJyDtacwpEd)
    Account: os-elon-musk
    Branch: claude/project-thread-cj0yt2 (the harness-pinned branch for the card thread; it names no issue, so this claim is the identity record)
    Worktree: objectstack-issue-27382
    Domain: domain:devx
    Seat: domain:devx#1
    File surface: .claude/skills/checklist-test/SKILL.md §2 only (stop on breach; explain in the report)
    Container & model: M, mode:thread, model: default, effort: xhigh
    Clause-②: no
    Metadata-protocol: none
    Responsibility: QA runner dispatches carry no stated effort, so each card runs at whatever the dispatcher had ($33 for one 30-minute card) | no rule | every future checklist-test wave
    Thread-read: 6489194883
    Premise: maintainer-directed 2026-10-29, with the rulings quoted on the card; the dev re-reads the current skill text on origin/main first
    Serial constraints cleared: .claude/skills/checklist-test/SKILL.md is also on this seat's #27383 (§5 cadence, a new short section). Regions are declared and disjoint: #27382 = the Guardrails line + the §4 extraction line + RUNNER.md rule 2; #27390 = §2 effort. Whichever PR lands second merges main first. No other open PR touches these files (read at claim time).

    Fold member of #27382: same thread, branch and PR. Seat pick on the maintainer's word in this account's project: 「座位 2 没派发的你都可以处理啊」 (2026-10-29 15:14Z). Contract review: required. .claude/** is governed Tier S. The build runs at the default tier, and a CONTRACT_REVIEW_TIER review of record gives a same-head PASS before the seat's hand-off.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

area:devpathThe road — create, dev, verify, publish/install, connect an agent, iteratedomain:devxpriority:p2Medium: important, M3tooling

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions