You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
test(plugin-security): the delegated-admin own-name posture "ground truth" case boots one rig per state inside a single it, times out at 5 s in the merge queue and ejects unrelated PRs #31919
Filing gate: ④ CI node. It was routed to seat 1 because this seat holds the file's history (#31707, ADR-0090 D12). It is not a claim.
Business reason: merge-group run 42609535314 timed out at the default 5000 ms in packages/plugins/plugin-security/src/delegated-admin-own-name-set.posture.test.ts, in the case "posture 'single' > ground truth: the delegate reads the subject exactly in the states where it is a user the delegate may read". The timeout ejected unrelated PR #31864, which then had to be re-queued (comment 6739499314). One slow case costs every PR batched with it, across every seat.
Reader: seat domain:server#1.
Dedupe: no open or closed card names this file's ground-truth case. The sibling describe in the same file ("the N states get, at every door, …") was already split per state for this exact reason; its comment says so.
class: b · type: Bug (test)
Grade: p1. A merge-queue ejection hits every lane.
Split the ground-truth it into one it per state (it.each over [...STATES, CONTROL]) under each posture, as the sibling describe already does. Each state gets its own time budget and its own failure line. The assertion per state stays byte-identical in meaning.
⛔ Raising the timeout is not the fix. Use it only if a single state alone measures near the budget, and if so, record the measured time in the PR.
Scan the rest of the file, and the other *.posture.test.ts files in plugin-security, for the same shape (a loop that boots a rig per iteration inside one it), and split those too. List each one in the PR.
Acceptance
The file's case count goes up; no assertion is weakened or removed. Show it with a before/after list of assertion targets.
The plugin-security suite is green. Give per-case timings for the split cases on a local run.
Clause-②: yes (no contract change), Metadata-protocol: none, skip-changeset (test only).
Claim: PM loop round 1 · #31919 · 2026-11-09T12:01Z · bug (p1; merge-queue ejection of unrelated PRs)
Session: session_01ADHkmPF1skfu2kx89BEXZi
Account: os-steve
Branch: claude/project-thread-wyi85j (the card thread's harness-pinned branch, base main6a8f415; platform exception to claude/issue-N-slug)
Worktree: objectstack-issue-31919
Domain: domain:server
Seat: domain:server#1
File surface: packages/plugins/plugin-security/src/delegated-admin-own-name-set.posture.test.ts, plus any other plugin-security *.posture.test.ts with the same rig-per-iteration-in-one-it shape, reported first (stop on breach; explain in the report)
Container & model: S, mode:thread, model: default tier, effort: medium
Clause-②: yes (test only, no contract change)
Metadata-protocol: none
Ruling-ref: none (the shape #31707 already used for the sibling block, commit 7200f54)
Responsibility: one it boots a rig per subject state and spends the 5 s default budget under queue load · reached by every PR batched with it in the merge queue
Thread-read: none
Premise: holds (read at 6a8f4151: the ground-truth case loops the states inside one it)
Serial constraints cleared: none known; open PRs on the file are re-checked in step 0.
Order: standard order + server-seat1/31919-delta.md (project files).
{
"issue": 31919,
"status": "done",
"branch": "claude/project-thread-wyi85j",
"pr": "https://github.com/objectstack-ai/objectstack/pull/31935",
"session": "session_01ADHkmSzW7smpTAzJNeCnD2",
"premise_still_valid": true,
"summary": "Split the ground-truth case of the delegated-answer posture describe (one it booting a rig per state for 5 states) into a describe keeping the old title with it.each over [...STATES, CONTROL], following 7200f540. Three CONTROL cases in the same file with the same rig-per-iteration shape (removal by two administrators, tenant move per end over two states, tenant re-naming over two grants) got the same split. No assertion changed; case count 202 -> 226. No other plugin-security posture file has the shape.",
"tests": "head 2a121acf. File alone 5x on base 6a8f4151 (3 workers, JSON reporter, under lock): 5/5 green, 202 cases; old case max ground truth 797/706/558 ms (group/isolated/single), moves-FROM 767 ms, re-naming 528 ms, removal 340 ms. File alone 5x on head: 5/5 green, 226 cases, 0 failures; slowest split case 360 ms, ground-truth states 104-237 ms. No local repro of the 5 s timeout (shard load). plugin-security suite --maxWorkers=2: Test Files 252 passed (252), Tests 6092 passed | 45 skipped (6137), VERDICT command-exit 0. plugin-security typecheck: VERDICT command-exit 0, check:test-typecheck OK 0 errors. eslint packages/plugins/plugin-security --no-inline-config (root eslint, package lint spelling): exit 0. No ablation: no tested behaviour changed, no negative pin added or moved.",
"gates": "dispatch-gates --commands --repo objectstack-ai/objectstack on head 2a121acf: 53 commands, all 53 exit 0 (list in PR body Verification). --ran reconciliation: 53 derived, 53 run, 0 NOT-MEASURED, 0 UNRUN, exit 0. Prereqs: teardown fixture fetched, full turbo build of ./packages/** (81/81). CI check-runs: in_progress at report time (not waited, per contract).",
"dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm",
"mcp_calls": "1 — mcp__github__pull_request_read (get, read-back of PR 31935); no write tool",
"api_writes": "2 — fleet-write relay pr_create (PR 31935, label skip-changeset, read-back 9239 bytes sent = stored); this os-dev-report comment via post-stamped.mjs. Plus git push (not REST).",
"open_questions": [],
"security_findings": "none",
"out_of_scope_findings": [],
"files_changed": ["packages/plugins/plugin-security/src/delegated-admin-own-name-set.posture.test.ts"],
"line_budget": "+22 / -18, 1 file, under the 3000-line human-merge threshold",
"deviations": ["Base and head per-case timings measured with 5 runs of the file each (delta asked 5x on head; base 5x added for before/after).", "Package has no own `pnpm lint` script; ran the root eslint over the package dir with --no-inline-config, exit 0."]
}
Activity
objectstack-fleet commentedon Nov 9, 2026
domain:server#1 · os-steve · session_01ADHkmPF1skfu2kx89BEXZi
Claim: PM loop round 1 · #31919 · 2026-11-09T12:01Z · bug (p1; merge-queue ejection of unrelated PRs)
Session:
session_01ADHkmPF1skfu2kx89BEXZiAccount:
os-steveBranch:
claude/project-thread-wyi85j(the card thread's harness-pinned branch, basemain6a8f415; platform exception toclaude/issue-N-slug)Worktree:
objectstack-issue-31919Domain:
domain:serverSeat:
domain:server#1File surface:
packages/plugins/plugin-security/src/delegated-admin-own-name-set.posture.test.ts, plus any other plugin-security*.posture.test.tswith the same rig-per-iteration-in-one-it shape, reported first (stop on breach; explain in the report)Container & model:
S,mode:thread,model: default tier,effort: mediumClause-②: yes (test only, no contract change)
Metadata-protocol: none
Ruling-ref: none (the shape #31707 already used for the sibling block, commit 7200f54)
Responsibility: one
itboots a rig per subject state and spends the 5 s default budget under queue load · reached by every PR batched with it in the merge queueThread-read: none
Premise: holds (read at
6a8f4151: the ground-truth case loops the states inside oneit)Serial constraints cleared: none known; open PRs on the file are re-checked in step 0.
Order: standard order +
server-seat1/31919-delta.md(project files).objectstack-fleet commentedon Nov 9, 2026
domain:server#1 · os-steve · session_01ADHkmSzW7smpTAzJNeCnD2
os-dev-report
{ "issue": 31919, "status": "done", "branch": "claude/project-thread-wyi85j", "pr": "https://github.com/objectstack-ai/objectstack/pull/31935", "session": "session_01ADHkmSzW7smpTAzJNeCnD2", "premise_still_valid": true, "summary": "Split the ground-truth case of the delegated-answer posture describe (one it booting a rig per state for 5 states) into a describe keeping the old title with it.each over [...STATES, CONTROL], following 7200f540. Three CONTROL cases in the same file with the same rig-per-iteration shape (removal by two administrators, tenant move per end over two states, tenant re-naming over two grants) got the same split. No assertion changed; case count 202 -> 226. No other plugin-security posture file has the shape.", "tests": "head 2a121acf. File alone 5x on base 6a8f4151 (3 workers, JSON reporter, under lock): 5/5 green, 202 cases; old case max ground truth 797/706/558 ms (group/isolated/single), moves-FROM 767 ms, re-naming 528 ms, removal 340 ms. File alone 5x on head: 5/5 green, 226 cases, 0 failures; slowest split case 360 ms, ground-truth states 104-237 ms. No local repro of the 5 s timeout (shard load). plugin-security suite --maxWorkers=2: Test Files 252 passed (252), Tests 6092 passed | 45 skipped (6137), VERDICT command-exit 0. plugin-security typecheck: VERDICT command-exit 0, check:test-typecheck OK 0 errors. eslint packages/plugins/plugin-security --no-inline-config (root eslint, package lint spelling): exit 0. No ablation: no tested behaviour changed, no negative pin added or moved.", "gates": "dispatch-gates --commands --repo objectstack-ai/objectstack on head 2a121acf: 53 commands, all 53 exit 0 (list in PR body Verification). --ran reconciliation: 53 derived, 53 run, 0 NOT-MEASURED, 0 UNRUN, exit 0. Prereqs: teardown fixture fetched, full turbo build of ./packages/** (81/81). CI check-runs: in_progress at report time (not waited, per contract).", "dogfood_battery": "n/a — no `!` in the PR title and no (narrowing) arm", "mcp_calls": "1 — mcp__github__pull_request_read (get, read-back of PR 31935); no write tool", "api_writes": "2 — fleet-write relay pr_create (PR 31935, label skip-changeset, read-back 9239 bytes sent = stored); this os-dev-report comment via post-stamped.mjs. Plus git push (not REST).", "open_questions": [], "security_findings": "none", "out_of_scope_findings": [], "files_changed": ["packages/plugins/plugin-security/src/delegated-admin-own-name-set.posture.test.ts"], "line_budget": "+22 / -18, 1 file, under the 3000-line human-merge threshold", "deviations": ["Base and head per-case timings measured with 5 runs of the file each (delta asked 5x on head; base 5x added for before/after).", "Package has no own `pnpm lint` script; ran the root eslint over the package dir with --no-inline-config, exit 0."] }Stamped 2026-11-09T12:43Z.
test(plugin-security): give each subject state its own it in the dele…