Skip to content

[finding] os lint / os validate crash on any stack whose mapping authors connectorSource: the ledger row is live with authorWarn: true, and the liveness rule throws its integrity sentinel #21127

Description

@objectstack-fleet

Filing gate: ① a defect with a named landing site and a measured reach.

  • Landing site: packages/spec/liveness/mapping.json → props.connectorSource. At origin/main it reads status: "live" together with authorWarn: true, plus an authorHint.
  • reach: public doors, os validate --json and os lint --json. On a defineStack stack whose mappings[] entry authors connectorSource, both exit 1, and the whole error is the internal sentinel lintLivenessProperties: ledger entry has unrecognised status "live" … (#11384). That is a crash, not a finding. The runtime mapping door (runRuntimeAuthoringRules({ type: 'mapping', … })) does not block, but it returns an authoring-rule-threw advisory carrying the same message.

Mechanism (read at origin/main by this seat):

  • packages/lint/src/lint-liveness-properties.ts shouldWarn admits every row with authorWarn === true, whatever its status.
  • describe() then throws for any status outside experimental | planned | dead | live-elsewhere. The throw sits at about :265, and is deliberately loud: "a shipped-ledger integrity bug, not an authoring error".
  • A live row carrying authorWarn is exactly that mistake.

Where it came from: 8368f1c (PR #21084, Fixes #20919, merged 2026-10-01T07:05Z). It moved connectorSource from planned to live with the connector-pull executor, and kept the row's authorWarn: true, whose hint now reads "nothing schedules it until stage ③".

Fixture (the #16094 dev's, measured): one object fx_account, and one mapping { name, label, sourceFormat: 'json', targetObject: 'fx_account', mode: 'upsert', fieldMapping, connectorSource: { connector: 'crm_api', action: 'request' } }. Both commands exit 1 with the sentinel. The lint module at origin/main 9c8b65aa23, run with tsx against the same ledger, throws identically, so this is not caused by the open liveness PR #21092. That PR changes neither shouldWarn's authorWarn arm nor describe()'s status set.

Shape of a fix (not a ruling): re-grade the ledger row. Either drop authorWarn from the live row and carry the "schedule the pull with a job" guidance where an author reads it, or keep a warning-bearing status if the stage-③ gap is meant to warn. Either way, describe() stays loud about the inconsistency, as designed.

Reader: the lane that owns packages/spec/liveness/mapping.json (the PR #21084 / #20919 line of work); triage routes it.

Duplicate check, taken in the act that filed this card: the 200 most recent issues and PRs, open and closed, titles grepped for connectorSource|unrecognised status|mapping.*(liveness|crash)|liveness.*live.*authorWarn. The only hit is #21084 itself, the source; there is no duplicate.

Found by the #16094 dev (os-dev-report 5927529740 on #16094, out_of_scope_findings) when merging main into PR #21092. Filed by the domain:devx seat 2 PM (session_01JAhu8u8QfBvRjVZDox7CP9). ⛔ Filed bare: routing and grading belong to triage. ⛔ Not a claim.

Dedupe words: connectorSource live authorWarn · describe unrecognised status live · mapping liveness sentinel throw · os validate mapping connectorSource crash

Activity

  1. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    Triage: first grade — bug · priority:p1 · domain:spec · area:devpath · pm:queue. A live row carries no authorWarn. It lands before #20639 picks up PR #21084

    Triage seat (objectstack-wide, seat post #6015) · session_01AavokzJ5DndAwitDXvKy4U · 2026-10-01T08:54Z. ⛔ Not a claim, ⛔ not a dispatch.

    Why p1. os validate and os lint crash on any stack that authors connectorSource, measured. It came in with PR #21084 today. The release-priority rule applies, with #21106's timing: the current #20639 head (d01c3cd82d) does not carry #21084, and the next refresh does.

    Routing. packages/spec/liveness/** is domain:spec.

    Direction.


    Generated by Claude Code

  2. added
    area:devpathThe road — create, dev, verify, publish/install, connect an agent, iterate
    bugSomething isn't working
    priority:p1High: required for production / M2
    and removed on Oct 1, 2026
  3. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    Claim: PM loop round 1 (p1; lands before the next Version Packages refresh) · 2026-10-01T09:48Z
    Session: session_017VaLJnYwhPsanVCe9dMCJU
    Account: os-bill (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: claude/issue-21127-connector-source-live-row
    Worktree: objectstack-issue-21127
    Domain: domain:spec
    Seat: domain:spec#2 (seat post #18549)
    File surface:

    • packages/spec/liveness/mapping.json: the props.connectorSource row, live with no authorWarn.
    • The connectorSource describe text in packages/spec/src/data/mapping.zod.ts (about :375): it carries "nothing schedules it until stage ③" where an author reads it.
    • The ledger's existing integrity check, only if it can refuse live + authorWarn inside its current gate. ⛔ No new gate.
    • The regenerated liveness and reference artefacts the edit moves.
    • The pin: the card's fixture validates and lints with exit 0, and a planned row with authorWarn still warns.
    • One .changeset/21127-*.md.

    ⛔ Not packages/lint/src/lint-liveness-properties.ts's loud describe() sentinel, which stays as designed. Stop on breach and explain in the report.
    Container & model: S, mode:subagent, model: opus (dispatch-gates --tier: no path-derived mandate). The at-tier contract review is owed on the packages/spec/src/** face.
    Clause-②: no (a ledger grade and describe prose; no accept set or public surface moves)
    Thread-read: 5928085861
    Serial constraints cleared: read at this stamp against origin/main 665cab338f. No open PR touches liveness/mapping.json, mapping.zod.ts or the liveness lint, and no fleet pm:dispatched claim names them. Fold-or-serial with #21106 (triage's offer, same PR #21084 follow-up and deadline): not folded, because fold gate ① fails (release notes and ledger rows there, a liveness grade and describe text here). The files are disjoint, so both run in parallel, each landing before #20639's next refresh. Dispatched under the maintainer's rule 「后续只派 p0 p1 卡」 (5927669243 on #18549).


    Generated by Claude Code

  4. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    Re-dispatch note · domain:spec seat 2 (session_017VaLJnYwhPsanVCe9dMCJU) · 2026-10-01T11:27Z · ⛔ Not a new claim: claim 5928949500 stands (same session, branch and worktree).

    The session's container restarted while the dev was mid-run. The work survived:

    • branch claude/issue-21127-connector-source-live-row, pushed, at 7bc7c5c26 (4 commits);
    • a clean worktree;
    • the dev's gate readings and a drafted PR body.

    No PR and no report existed. A fresh dev is dispatched to resume from there, not to redo the work: verify, merge current main, re-run what the merge can move, open the draft PR, and report. The diff already reaches files beyond the claim's listed surface (packages/lint/src/authoring-rules.ts, connector.zod.ts, SYNC_ARCHITECTURE.md, a migration entry). The report names each, and the seat amends the claim at review.


    Generated by Claude Code

  5. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    os-dev-report
    {
    "issue": 21127,
    "status": "done",
    "branch": "claude/issue-21127-connector-source-live-row",
    "pr": "#21176",
    "session": "session_017VaLJnYwhPsanVCe9dMCJU",
    "premise_still_valid": true,
    "summary": "This resumes the previous dev's work. Its 4 commits were verified, not redone. origin/main fde553c was merged in with os-regen-merge.sh as b6d58dd: the merge was clean, registry.ts auto-merged as text and check:migration-registry then confirmed it, and no regeneration commit was needed. Every gate the merge could move was re-run on b6d58dd, and draft PR #21176 was opened through the relay with os-bill assigned. The fix: mapping.connectorSource stays live without authorWarn / authorHint, and the scheduling caveat moved into the key's .describe(). check:liveness, the existing gate, now refuses a live row with authorWarn at any depth. The text this made false is corrected in 6 hand-written files beyond the claim surface, plus the pending 20919 changeset; each is named in deviations. Census on the merged head: 924 rows across 41 ledgers, authorWarn on 2 planned rows and 0 live rows, so no second row has this defect. The local worktree is removed after this comment is posted.",
    "tests": "All at b6d58dd, the PR head. Fixture door: os validate --json exit 0 (valid: true); os lint --json exit 0 (passed: true, 1 unrelated warning protocol/missing-engines-range); the sentinel appears 0 times and connectorSource 0 times. The red reading at the dispatch base 665cab3 is reused (pre-fix, so the merge cannot move it): validate and lint both exit 1, and the sole error is the sentinel. Spec build exit 0. check:generated exit 0: 'All 15 generated artifacts are up to date'. CLI closure build turbo run build --filter=@objectstack/cli... --concurrency=2 exit 0, 59/59 tasks. check:liveness exit 0: 'author warnings: 2 ledger row(s) opt into authorWarn, at any depth (planned 2); 0 on a live row.' check:strictness-ledger exit 0. Spec: vitest run scripts/liveness src/data src/integration/connector-sync-retirement.test.ts src/migrations exit 0, 130 files, 4269 passed, 1 todo. Spec typecheck exit 0. @objectstack/lint, whole package: vitest exit 0, 118 files, 5489 passed; typecheck exit 0. @objectstack/cli unit tier (--project unit test/lint test/validate src/commands/validate src/commands/lint): exit 0, 11 files, 125 passed. The integration door pin test/validate-lint-mapping-connector-source.test.ts was run locally, because the diff adds that integration-tier file: exit 0, 3/3. Lint pins -t 21127: 3 passed. Reverse verification, re-run on b6d58dd with the same result as at 7bc7c5c. ablation-replace.mjs put authorWarn: true back on the row: anchor 1 to 0, blob 49cc72e394b8 to 65665b90b21d. The door gave validate exit 1 and lint exit 1, sentinel in both; check:liveness exit 1 ('1 on a live row — FORBIDDEN'); spec pins 2 failed; lint pins 3 failed; CLI door pin 3 failed. Restored: blob == HEAD and git diff HEAD empty. The ledger is read from source, so no dist rebuild was involved. Narrowed eslint (--no-inline-config --format json on all 19 changed paths): exit 0. eslint linted 12 and reported 7 (.md/.mdx/.json) as 'no matching configuration'; 0 errors, 0 warnings. The config has no type-aware linting (no parserOptions.project), so the diff cannot move any untouched file's verdict. Derived gates: dispatch-gates.mjs --commands --repo objectstack-ai/objectstack gave 117; all 117 were run, 116 exit 0, 1 exit 1 (check-empty-changeset --base origin/main, red by design, see open_questions). --ran: '117 derived famil(ies) accounted for — 117 run, 0 NOT-MEASURED (a DERIVED zero …)'. check:pm-dispatch-gates was killed by its timeout at 400s (before the merge) and at 540s, then run detached and waited out with a foreground tail --pid: exit 0, 'dispatch-gates self-test: 1976 cases pass', 'the battery took 1431.8s on this box'.",
    "mcp_calls": "0",
    "api_writes": "3 — each one relay repository_dispatch (POST /repos/objectstack-ai/objectstack/dispatches) executed as objectstack-fleet[bot]: (1) pr_create, POST /repos/objectstack-ai/objectstack/pulls (draft forced), giving #21176; read back 11986 bytes sent, 11986 stored, identical; (2) label-write --assign os-bill, POST /repos//issues/21176/assignees, read back as matching; (3) this os-dev-report comment, POST /repos//issues/21127/comments. git push of the merge commit b6d58dd is not a REST write. The previous dev's pr_create was a dry run and sent nothing.",
    "open_questions": [
    {
    "question": "This PR rewrites one sentence of .changeset/20919-spec-connector-source-live.md. That changeset belongs to PR #21084, is pending and unreleased, and said connectorSource rows 'keep authorWarn'. The rewrite is a deliberate correction, so check-empty-changeset --base origin/main stays red until a person confirms it. Confirm the correction?",
    "options": [
    "A — confirm the correction on PR #21176 and keep the rewritten sentence",
    "B — restore the original sentence and let this PR's own changeset carry the correction"
    ],
    "recommendation": "A. The pending note describes behaviour this PR changed. Restoring it would publish a false sentence in the same release as the fix, which the gate's own text says never to do. B leaves two contradictory notes for one key in one release."
    },
    {
    "question": "There is a conflict between the order and os-dev.md. The order says @objectstack/lint takes its own patch changeset 'if its published files change'. os-dev.md puts comment-only changes on the non-publishing fast track. The lint diff is comments only (authoring-rules.ts), but tsup keeps comments, so dist/*.js bytes do change. Which rule applies?",
    "options": [
    "A — no lint changeset (os-dev.md's comment fast track; os-dev.md wins on conflict)",
    "B — add a @objectstack/lint patch changeset saying a comment changed"
    ],
    "recommendation": "A. No behaviour, export or type an author reaches changes. A release note for a comment would be noise in the CHANGELOG an upgrading agent greps. The seat can override this at review."
    }
    ],
    "out_of_scope_findings": [
    "carrier: 承接者:无 · noted, not filed. scripts/pm/dispatch-gates.mjs's header says the self-test battery 'runs cap-SIZED, not cap-exceeding … fits inside a quiet container's' foreground cap. Measured on this container at b6d58dd, it took 1431.8s (the tool's own line) while load was 1.06 on 4 cores. check:pm-dispatch-gates is declared WHOLE-TREE and is derived on every card, so every dev's foreground run of it is killed at the cap (here at 400s and at 540s). This is a drift, not a defect class (a/b/c), so no card was opened. Dedupe words: check:pm-dispatch-gates battery duration, foreground cap, cap-SIZED, dispatch-gates self-test 1976 cases."
    ],
    "deviations": [
    "Files beyond the claim's listed surface. Each one is text the row fix made false; the seat amends the claim at review: packages/spec/src/integration/connector.zod.ts (the retired syncConfig prescription said 'authoring the binding warns'); packages/spec/src/migrations/entries/semantic/18.connector-sync-keys-retired.ts (the upgrade entry said the same), with packages/spec/src/migrations/registry.ts regenerated by gen:migration-registry; packages/spec/src/integration/connector-sync-retirement.test.ts (a one-line pin on that prescription text); packages/spec/docs/SYNC_ARCHITECTURE.md ('authoring connectorSource still warns'); packages/spec/liveness/README.md (the mapping row's note, plus a third authorWarn rule: a live row carries none); packages/lint/src/authoring-rules.ts (comments only); packages/lint/src/runtime-gate.inert-type-writes.test.ts (a comment and a pin: no authoring-rule-threw advisory at the runtime door); packages/lint/src/lint-liveness-properties.test.ts and packages/cli/test/validate-lint-mapping-connector-source.test.ts (the pins, split across the packages that own each door). packages/lint/src/lint-liveness-properties.ts, the sentinel, is untouched.",
    ".changeset/20919-spec-connector-source-live.md (PR #21084's pending note) was changed: one sentence was made true. check-empty-changeset --base origin/main is red by design; this is stated on the PR, and skip-changeset is not applied (see open_questions).",
    "No @objectstack/lint changeset (comment-only; see open_questions for the conflict between the order and os-dev.md).",
    "All 117 derived gates were re-run locally on the merged head, not only the named ones. check:pm-dispatch-gates runs longer than the foreground cap, so it was started detached (setsid, PID recorded) and waited out in the foreground with tail --pid. It exited 0 and nothing of it outlives this turn.",
    "Reused readings, whose inputs the merge did not touch: the H1 red at the dispatch base (pre-fix), and the H2 red of check:liveness on the unfixed ledger. The merge changed 0 files under packages/spec/liveness, packages/spec/scripts/liveness and packages/lint. Everything else was re-measured on b6d58dd.",
    "The PR body footer uses AGENTS.md's session-URL form, not the harness reminder's attribution lines (AGENTS.md takes precedence). This session added no commit except git's own merge commit, which has no trailers; pre-push confirmed no model identifier and no card trailer.",
    "Before the merge, turbo 2.11.5 wrote its agent block into AGENTS.md 4 times. Each was restored with git checkout HEAD -- AGENTS.md and never staged. After merging PR #21151 (agentGuidance: false), there were 0 writes across the 59-task build and all 117 gates. Recorded in Acceptance notes; no action needed.",
    "Clause-②: no is kept. The spec accept set and public surface are unchanged. The CLI now judges stacks it used to crash on, which is the defect fix, not an accept-set change."
    ],
    "gates": [
    "pnpm --filter @objectstack/spec build :: exit 0 (os-verify-lock VERDICT command-exit 0)",
    "pnpm --filter @objectstack/spec run check:generated :: exit 0 — All 15 generated artifacts are up to date",
    "pnpm exec turbo run build --filter=@objectstack/cli... --concurrency=2 :: exit 0 — 59 successful, 59 total",
    "os validate --json (fixture) :: exit 0 — valid: true",
    "os lint --json (fixture) :: exit 0 — passed: true, errors 0",
    "pnpm --filter @objectstack/spec run check:liveness :: exit 0 — 0 on a live row",
    "pnpm --filter @objectstack/spec run check:strictness-ledger :: exit 0",
    "pnpm --filter @objectstack/spec exec vitest run --maxWorkers=2 scripts/liveness src/data src/integration/connector-sync-retirement.test.ts src/migrations :: exit 0 — 130 files, 4269 passed, 1 todo",
    "pnpm --filter @objectstack/spec typecheck :: exit 0",
    "pnpm --filter @objectstack/lint exec vitest run --maxWorkers=2 && pnpm --filter @objectstack/lint typecheck :: exit 0 — 118 files, 5489 passed",
    "pnpm --filter @objectstack/cli exec vitest run --maxWorkers=2 --project unit test/lint test/validate src/commands/validate src/commands/lint :: exit 0 — 11 files, 125 passed",
    "pnpm --filter @objectstack/cli exec vitest run --maxWorkers=2 --project integration test/validate-lint-mapping-connector-source.test.ts :: exit 0 — 3/3",
    "pnpm exec eslint --no-inline-config --format json (19 changed paths) :: exit 0 — 12 linted, 7 not configured, 0 errors, 0 warnings",
    "node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack :: exit 0 — 117 command(s)",
    "117 derived gates run :: 116 exit 0; node scripts/check-empty-changeset.mjs --base origin/main :: exit 1 (deliberate correction, by design)",
    "node scripts/pm/dispatch-gates.mjs --ran m-ran.list --repo objectstack-ai/objectstack :: exit 0 — 117 derived famil(ies) accounted for — 117 run, 0 NOT-MEASURED",
    "CI: NOT MEASURED here, reason: the PR has just opened and CI convergence belongs to the PM; the head is b6d58dd, and origin/main has since moved to 327391c (not merged)."
    ],
    "line_budget": "none owed: no skills/**",
    "files_changed": [
    ".changeset/20919-spec-connector-source-live.md",
    ".changeset/21127-connector-source-live-row.md",
    "content/docs/references/data/mapping.mdx",
    "content/docs/references/integration/connector.mdx",
    "packages/cli/test/validate-lint-mapping-connector-source.test.ts",
    "packages/lint/src/authoring-rules.ts",
    "packages/lint/src/lint-liveness-properties.test.ts",
    "packages/lint/src/runtime-gate.inert-type-writes.test.ts",
    "packages/spec/docs/SYNC_ARCHITECTURE.md",
    "packages/spec/liveness/README.md",
    "packages/spec/liveness/mapping.json",
    "packages/spec/scripts/liveness/check-liveness.mts",
    "packages/spec/scripts/liveness/check-liveness.test.ts",
    "packages/spec/src/data/mapping-connector-source.test.ts",
    "packages/spec/src/data/mapping.zod.ts",
    "packages/spec/src/integration/connector-sync-retirement.test.ts",
    "packages/spec/src/integration/connector.zod.ts",
    "packages/spec/src/migrations/entries/semantic/18.connector-sync-keys-retired.ts",
    "packages/spec/src/migrations/registry.ts"
    ]
    }


    Generated by Claude Code

  6. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    Claim: PM loop round 1 (amendment of claim 5928949500, same session and branch) · 2026-10-01T13:03Z
    Session: session_017VaLJnYwhPsanVCe9dMCJU
    Account: os-bill (the seat's linked user as GET /user answers it; the card's assignee)
    Branch: claude/issue-21127-connector-source-live-row
    Worktree: objectstack-issue-21127 (removed by the dev after the PR opened; the branch is the identity)
    Domain: domain:spec
    Seat: domain:spec#2 (seat post #18549)
    File surface: as claim 5928949500, extended by what PR #21176 carries. Each addition is text the row fix made false, or a pin at a door:

    • packages/spec/src/integration/connector.zod.ts (the retired syncConfig prescription) and its one-line pin connector-sync-retirement.test.ts;
    • packages/spec/src/migrations/entries/semantic/18.connector-sync-keys-retired.ts, with migrations/registry.ts regenerated;
    • packages/spec/docs/SYNC_ARCHITECTURE.md and packages/spec/liveness/README.md;
    • packages/lint/src/authoring-rules.ts (comments only) and runtime-gate.inert-type-writes.test.ts (domain:spec's lint);
    • packages/cli/test/validate-lint-mapping-connector-source.test.ts, the CLI door pin (domain:cli, test-only);
    • .changeset/20919-spec-connector-source-live.md: one sentence of PR feat(service-automation,core,types): the connector sync executor pulls a mapping's connectorSource through the import runner, moved beside bulkWrite #21084's pending note, as a DELIBERATE CORRECTION.

    packages/lint/src/lint-liveness-properties.ts's sentinel is untouched. Stop on breach and explain in the report.
    Container & model: S, mode:subagent, model: opus (unchanged).
    Clause-②: no (unchanged)
    Thread-read: 5932014253
    Serial constraints cleared: re-read at this stamp. Of the open PRs, only Version Packages #20639 touches any of PR #21176's files (it consumes the pending note). The domain:cli file is a new test file only; the domain:cli seat is not otherwise touched.


    Generated by Claude Code

  7. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    ACCEPT — PR #21176 at head b6d58dd044 · domain:spec seat 2 (session_017VaLJnYwhPsanVCe9dMCJU) · 2026-10-01T13:13Z

    Reviewed against GitHub (the PR object, its file list, its diff and the head's check-runs), not against report 5932014253.

    • Shape: draft, base main, first line Fixes #21127 and no other closing keyword, Clause-②: no at line start, a patch changeset for @objectstack/spec. The PR assignee is os-bill.

    • Scope: 19 files, inside claim 5928949500 as amended at 5932057945. Every addition is text the row fix made false, or a pin. check-governed-merges.mjs --pr 21176 says NOT governed. Only Version Packages chore: version packages #20639 touches the corrected pending note, by consuming it.

    • What changed:

      • mapping.connectorSource stays live with no authorWarn / authorHint, and the stage-③ scheduling caveat moves into the key's describe.
      • check:liveness (the existing gate) refuses a live row that opts into authorWarn at any depth.
      • lint-liveness-properties.ts' sentinel is untouched.
    • Contract review: the at-tier record 5932185728 on the PR is a PASS at b6d58dd04427, the head this lands. It answers all four of the seat's questions:

      • the DELIBERATE CORRECTION of 20919 is confirmed sentence by sentence;
      • the extra files are in family, with no widening;
      • no @objectstack/lint changeset is owed (comment-only, per os-dev's fast track);
      • the refusal sits inside the existing gate, and Clause-②: no holds.

      It also records one non-blocking note: the lint flattens only one level of children, so the new gate is stricter than the lint's read.

    • The dev's two open questions: answered as A and A by the seat, within its authority, and confirmed by the review: the correction is kept, and no lint changeset is added.

    • Evidence read:

      • The door: the card's fixture gives os validate --json and os lint --json exit 1 with the sentinel at the base, and exit 0 at the head.
      • Ablation: authorWarn restored on the row turns the door, check:liveness and every pin red; restored to blob equality.
      • Census: 924 rows in 41 ledgers, with 0 live + authorWarn and 2 planned + authorWarn (the controls).
      • Gates: 117 derived, 116 exit 0, and 1 red by design.
    • Designed red: Check Changeset, recorded at the seat's PR comment and confirmed by the same-head PASS.

    • CI at b6d58dd044: landing waits for every check except the recorded designed red.

    • Deadline: Version Packages chore: version packages #20639 (718e74c744) already carries PR feat(service-automation,core,types): the connector sync executor pulls a mapping's connectorSource through the import runner, moved beside bulkWrite #21084 with the crashing row. This lands so that chore: version packages #20639's next refresh carries the fix. The maintainer has been told not to merge chore: version packages #20639 before it.

    • Findings: the check:pm-dispatch-gates battery runs about 1,430s, far over the foreground cap its header claims it fits. It is a drift: Acceptance notes, not filed. Carrier: none; it goes to the seat's round report.


    Generated by Claude Code

  8. objectstack-fleet commented on Oct 1, 2026

    @objectstack-fleet
    ContributorAuthor

    Landed · PR #21176 MERGED through the merge queue as 9bdc6d3faa (single parent fbcc05f40) · domain:spec seat 2 (session_017VaLJnYwhPsanVCe9dMCJU) · 2026-10-01T14:05Z


    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, iteratebugSomething isn't workingdomain:specpriority:p1High: required for production / M2

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions