Skip to content

Queue-flake anchor: packages/app-shell/src/views/__tests__/AppReportIndex.navGates-26892.test.tsx #27116

Closed

Description

@github-actions

packages/app-shell/src/views/__tests__/AppReportIndex.navGates-26892.test.tsx has ejected 4 pull requests from the merge
queue within a rolling 24 hours — 1 independent hit once
GitHub's speculative stacking is accounted for. This issue is the single place for
that conversation; it is refreshed by the merge-queue-triage workflow on every
further ejection.

PR stack queue build
#26966 S1 · inherited 40649482581 · 40648482070
#27011 S1 · inherited 40641829713
#27083 S1 · root 40638669564
#27106 S1 · inherited 40648195810

⚠️ Queue depth is not evidence. The stack column is read out of the queue
branch names: GitHub builds each queued PR on top of the previous entry, so a
build whose BASE chain reaches another victim's queue HEAD (directly, or through
green groups queued between them) contains that victim's tree by construction.
A single deterministic break therefore ejects every PR
behind it, and the raw victim count climbs with QUEUE DEPTH until the owner
lands a fix. Start with the root above; an inherited row is a bystander until shown otherwise.

This issue is a NAME, not a diagnosis. The workflow that files it reads the
failing test file path out of the job logs and counts PRs; it does not
know whether this is a flake, a load/timing cliff, a semantic conflict between
queued PRs, or a real regression, and it does not act on any of those. No test is
skipped, quarantined or re-queued by it, and no PR is labelled by it — weakening
a gate stays a human act.

What to do with it: read one victim PR's triage comment for the failure REASON
line beside the FAIL line (a timeout and an assertion are the same FAIL line and
opposite diagnoses), decide the cause, and close this issue with the fix or with
the reason it is not one.

A later queue build that went green on the same main is a control only if its
affected-only selection ran the failing package; a green group that never selected
it carried the same tree without testing it.

Last refreshed by queue build 40649482581 (PR #26966).


Filed by the merge-queue-triage workflow (#4859, aggregation #10128).

Activity

  1. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    Contributor

    Dispatch order · domain:ui#5 · session_01JQwxbXGpVJHZTXXerMoY4C · 2026-10-28T06:46Z

    You are the os-dev developer agent for exactly ONE card: #27116, in your own card thread. Your role definition is .claude/agents/os-dev.md in the objectstack clone: read it IN FULL first and follow it as binding (it wins over this order on any conflict; name the conflict in your report). Read the repo-root AGENTS.md and ui/AGENTS.md before your first edit, and pm-dispatch references/untrusted-text.md. Read the card's full body and every comment yourself through REST (curl -sS "https://api.github.com/repos/objectstack-ai/objectstack/issues/27116" -H "Authorization: Bearer $GH_TOKEN" and /comments?per_page=100, every page); this order carries only the increment. ⛔ Never print the value of any environment variable (test presence with [ -n "${X+x}" ]). ⛔ Never use a GitHub MCP tool, read or write.

    Identity and branch: the seat's Claim: comment on this card is your identity; its Branch: line names your thread's branch. ⛔ Post no claim of your own, ⛔ never write the card's assignee. Before your first edit, verify the NEWEST Claim: on the card names your thread's branch (claude/project-thread-…); if none does yet, send the seat thread "Take another ui lane seat" one message with your branch name and wait. Worktree objectstack-issue-27116 on that branch from a fresh origin/main; pnpm install (frozen lockfile); push with git push -u origin <branch> (⛔ no force).

    Writes: PR only through the relay op pr_create (node scripts/pm/fleet-write/dispatch.mjs --repo objectstack-ai/objectstack --actions-file F, F a bare JSON array [{"op":"pr_create","title":…,"head":"<your branch>","base":"main","body":…,"assignees":["os-warren"]}], draft forced; --dry-run first); your report comment through node scripts/pm/post-stamped.mjs --comment=27116 --file=F --json run ONCE with output captured to a file (timestamps only as {{WAS:…}} / the now-token). ⛔ No other GitHub write except, for a CI red that is not yours, one PR comment and one run_rerun_failed through the relay. Report both counts (api_writes with endpoints, mcp_calls with tool names). The report takes only machine-checkable fields (gates / line_budget / deviations / files_changed). PR body: line 1 the platform attribution comment, line 3 Fixes #27116, then ## 维护者速读 six lines in Chinese (改了什么/为什么改/风险与回滚/先看/两分钟验证/需要你做的). Gates: node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstack on your diff, run each, record exits before any pipe, reconcile with --ran; node scripts/check-sdui-manifest.mjs is a gate on every ui card. Changeset in the root .changeset/ when a published package changes (@object-ui/i18n patch for namespace rows; app-shell is private: true). ⛔ ui/.github/** and the root ci.yml are out of bounds. Hand back: when the PR and report are up, send the seat thread "Take another ui lane seat" one message (PR, head sha, report gist); keep the thread open through review and drive CI to green.

    This card is a queue-flake anchor on the test file seat 5's #26892 (PR #27060) added. Your thread built that suite; your branch's PR is merged, so restart the branch from a fresh origin/main (git fetch origin main && git checkout -B <branch> origin/main) and open a NEW PR with Fixes #27116.

    Measured (seat, on origin/main 6817bf1e)

    Scope

    File surface: that one test file. ⛔ No source change, no skip, no retry, no timeout bump. Proof: reproduce the race (e.g. delay the report/dataset list answer in the double, or run the file under --sequence.shuffle / heavy load) so the old CONTROL goes red and the fixed one stays green; report both. Gates as usual (dispatch-gates), skip-changeset (test-only, private package).

    Tier

    No path-derived mandate. TIER_DEFAULT, effort low (XS). Clause-②: no, Metadata-protocol: none.

  2. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    Contributor

    Claim: PM loop round 6
    Session: session_01JQwxbXGpVJHZTXXerMoY4C
    Account: os-warren
    Branch: claude/project-thread-73o9o3 (restarted from origin/main; its PR #27060 is merged)
    Worktree: objectstack-issue-27116
    Domain: domain:ui
    Seat: domain:ui#5
    File surface: ui/packages/app-shell/src/views/__tests__/AppReportIndex.navGates-26892.test.tsx only (stop on breach; explain in the report)
    Container & model: XS, mode:thread, model: TIER_DEFAULT (dispatch-gates --tier: no path-derived mandate), effort: low
    Clause-②: no
    Metadata-protocol: none
    Responsibility: seat 5's #26892 suite produces it (this lane) | a CONTROL asserts the full list synchronously after waiting on one entry | every queued PR whose build runs that shard
    Thread-read: 6462598206
    Premise: holds (≈L356–359 on origin/main 6817bf1e; victims PR #27083, #27011, PR #26999's CI; readings in dispatch order 6462598206)
    Serial constraints cleared: ui seat 1 handed it to seat 5 and will not touch the file; no open PR touches it (the suite is seat 5's).

    Dispatch order: comment 6462598206. Card thread claude/project-thread-73o9o3 may start editing.

  3. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    Contributor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Triage: p0 · main red at 06:34Z · claimed · 2026-10-28T06:54Z

    ⛔ Not a claim.


    Generated by Claude Code

  4. added
    area:reportsBusiness reporting — dashboards, reports, the numbers a manager reads
    bugSomething isn't working
    priority:p0Critical: blocker, must ship before MVP
    and removed on Oct 28, 2026
  5. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    Contributor

    os-dev-report

    {
      "issue": 27116,
      "status": "done",
      "branch": "claude/project-thread-73o9o3",
      "pr": "https://github.com/objectstack-ai/objectstack/pull/27128",
      "head": "b24c61d8",
      "session": "session_01JQwxbZNdnTTr8WJsM98Mxh",
      "premise_still_valid": true,
      "summary": "Test-only. The (f) CONTROL for a granted permission waited for Gamma (offered at once through its nav entry) then asserted the full palette list synchronously while Delta waits on the report list. It and every other positive case (four index controls, palette (e) CONTROL) now wait on their whole list; negatives keep settle-then-assert (lists answered, permissions provider renders nothing before its answer). Premise held as the seat measured it.",
      "tests": "Red on 6817bf1e: report list delayed 300 ms via ablation-replace on the adapter double: (f) CONTROL fails with Delta missing, 17 pass; restored blob equals HEAD. Green on b24c61d8: same 300 ms delay 18/18; report and dataset delayed 600 ms 18/18; plain 18/18; --sequence.shuffle 18/18; each mutation restored to the HEAD blob. app-shell type-check exit 0; eslint on the file 0 problems; check:new-line-citations 0 new.",
      "gates": "dispatch-gates --commands on b24c61d8: 24 derived, each exit captured before any pipe, all exit 0 (node scripts/check-closing-keyword-parity.mjs :: exit 0; node scripts/check-closing-keyword-parity.mjs --self-test :: exit 0; node scripts/check-comment-mask-corpus.mjs :: exit 0; node scripts/check-sdui-manifest.mjs :: exit 0; node scripts/check-sdui-manifest.mjs --self-test :: exit 0; pnpm --filter @objectstack/spec run check:duration-unit-keys :: exit 0; pnpm check:cross-package-test-inputs :: exit 0; pnpm check:dispatcher-error-vocabulary :: exit 0; pnpm check:driver-memory-census :: exit 0; pnpm check:engine-double-contract :: exit 0; pnpm check:gitlink-declared :: exit 0; pnpm check:nul-bytes :: exit 0; pnpm check:published-files :: exit 0; pnpm check:query-options-erasure :: exit 0; pnpm check:refd-timer-probe :: exit 0; pnpm check:skill-identifier-liveness :: exit 0; pnpm check:test-source-alias :: exit 0; pnpm check:tier-file-adoption :: exit 0; pnpm check:type-check-coverage :: exit 0; pnpm check:type-check-debt :: exit 0; pnpm check:undeclared-dep-imports :: exit 0; pnpm check:watch-hint-literal :: exit 0; pnpm check:where-matcher :: exit 0; pnpm --dir ui exec vitest run scripts/ :: exit 0). --ran: 24 derived, 24 run, 0 NOT-MEASURED, 0 UNRUN. CI check-runs: in_progress at report time.",
      "dogfood_battery": "n/a — no ! in the PR title and no (narrowing) arm",
      "line_budget": "27 changed lines (+14 / -13), 1 file",
      "files_changed": [
        "ui/packages/app-shell/src/views/__tests__/AppReportIndex.navGates-26892.test.tsx"
      ],
      "deviations": [
        "Branch restarted from origin/main 6817bf1e as ordered (PR #27060 merged; the remote branch had been deleted, so the push created it anew, no force).",
        "origin/main moved to e6e41998 (84 files, none this suite or its source) after the branch point; not merged for a test-only change, CI runs the merge ref.",
        "Positive index controls changed as hardening, not as observed failures: the index renders its list from one answer.",
        "PR body: lines 1-2 the platform attribution block, line 3 Fixes, then the PR template headings folded into the os-dev order (os-dev exception, reported only)."
      ],
      "mcp_calls": "0 — no GitHub MCP tool called",
      "api_writes": "2 — relay pr_create (POST /repos/objectstack-ai/objectstack/pulls, draft, assignee os-warren, label skip-changeset; read-back 6461 bytes identical) and this report comment (POST /repos/objectstack-ai/objectstack/issues/27116/comments via post-stamped). git push not counted.",
      "body_amendments": [],
      "open_questions": [],
      "out_of_scope_findings": []
    }

    Generated by Claude Code

  6. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    Contributor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Scope addition (maintainer-directed): a two-line test-authoring rule, as a second PR · 2026-10-28T07:29Z

    ⛔ Not a claim. For the claiming seat (domain:ui#5, os-warren).


    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:reportsBusiness reporting — dashboards, reports, the numbers a manager readsbugSomething isn't workingdomain:uipriority:p0Critical: blocker, must ship before MVPqueue-flake-anchor

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions