Repository navigation
test(server): prevent worker PID collisions in ACP rotation fixture - #190
Conversation
|
What: Focused proof passes for final head Base refreshed before final proof/review: Host-neutral Node 24.13.1 proof, with immediate per-batch one-minute load check (<8):
Changed upstream file: Review pending: visible T3 Code reviewer thread Limits: macOS focused tests are not Linux cgroup live proof; CI owns Linux and repo-wide validation and is still running. Production unchanged; no waiver or retry fix. No versions bumped, no merge/install/deployment. Worktrees remain for this open PR. |
Agent work on this PREstimated cost unknown · 0 responses · 49 sessions · 7.8 h wall time
Flags: 4 human corrections · 89 large tool outputs · 108 repeated commands · 11 repeated failures · 107 repeated reads · 17 repeated skill loads · 48 sessions with usage bound to no task · 1 session without usage records Details: snapshot, prices, coverage, counters
Token counters by model (native counter semantics; never added across semantics): Selected rates (USD per million tokens). These rates value the report at the selected schedule date; they do not establish historical prices or subscription spending.
Other output and reasoning are priced without double counting inclusive native output. Missing rates remain unknown. Local measurement from native records; usage totals are not billing. Updated in place by |
Thread transfer impact✅ Thread transfer remains within every enforced ceiling.
Baseline: unavailable · PR result: Scenario and decoded snapshot size10 historical turns, 5 command tools per turn, 878.9 KiB retained MCP result per historical turn, and a 1.05 MiB retained result in the measured turn.
Updated in place by a trusted workflow. PR artifacts are strictly validated and never executed. |
|
What: Independent exact-head review passed with no actionable findings. Reviewer thread: Exact-head verdict
The fixture cause is supported by the code: The upstream candidate #16633 is open; its full diff contains the same allocation correction. The inspected upstream Reviewer identity: GPT-6-Luna ( |
|
What: PR #190 is open, ready for review and unmerged at Linux Server 4: https://github.com/toolboxmd/chromeria/actions/runs/37846842942/job/113549717557 (success). Latest exact-head |
What: Make the ACP process-tree rotation test pass independently of its worker PID.
Why: Its synthetic parent/child ranges collide with
process.pid, causing valid runtime self-protection to retain the CI pairs 1111/11111 and 1127/11127.So what: The single PR is ready for maintainer review on
fork/v2; it remains unmerged.Closes #189. Refs #166.
Allocate the fixture root, parents, children and tombstones above the worker PID, following the fully inspected open upstream candidate pingdotgg/t3code#16633 at
c8175050793c3bc46995479f97ed0c6af2259ad0. Preserve all budget, rotation, tombstone, snapshot and cleanup assertions. Run the rotation test for the native PID and four fixed parent/child collisions; restore the real PID withEffect.ensuring. Production code is unchanged.Upstream bug candidate: This is an upstream test-fixture defect, already proposed in #16633. No merged fix exists in the inspected ACP history at
upstream/main9b0df1358f9f9c3277bcb33777c2435b88ee75c4; #17299 leaves this test in place and only changes the runtime's process-group import. Windows candidates #17274/#17080 do not address this cause.Proof:
36d5c0169fc042930aa36e41248c1292cec781d0, Node 24.13.1, forced worker PIDs 1111 and 1127 reproduce the exact CI retained pairs. Regression-only parameterization fails all four collision cases before allocation correction, while the native case passes. Commands and causal evidence.review/independent=successoneb4d7f6c3a36288fad64429fa5304869a3deba07, creatorlukemaj, matches authenticated gh account.Upstream edit inventory relative to the PR base:
apps/server/src/provider/acp/AcpSessionRuntime.processTree.test.tsfork-maintenanceThe single test hunk exceeds 15 lines because parameterization and unconditional PID restoration indent the existing test body. Ignoring whitespace shows only PID allocation, fixed regression cases and restoration changes. All existing behavioral assertions remain. The other two edited files are fork-owned metadata: one allowlist line and one primary-owner entry.
Requirements and who asked: User requested one small PR, deterministic reproduction and regression, upstream-first investigation, fork ownership metadata and visible independent exact-head review.
Deleted: No production change, skips, waivers, retries, helper abstraction, UI evidence or repo-wide proof.
Bottleneck: The fixture aliases the protected worker PID; removing that alias makes the existing teardown oracle meaningful.
Checked myself: Reproduced both exact CI signatures and all four permanent collision cases before fixing; inspected complete upstream candidate and runtime protection; checked the complete final diff and focused green proof.
Agent Observer cost record published with required
publish --task toolboxmd/chromeria#189 --repo toolboxmd/chromeria --pr 190; usage attribution unavailable, estimated cost unknown. CI remains in progress; macOS focused proof is not Linux cgroup live verification.Exact head:
eb4d7f6c3a36288fad64429fa5304869a3deba07. Exact current base:36d5c0169fc042930aa36e41248c1292cec781d0. No rebase needed. Workspace:/Users/lukaszmaj/dev/toolboxmd/chromeria-worktrees/166-acp-pid.Website impact: none, because only a server test fixture and fork maintenance inventory change. Version policy: no bump, as required by repository policy and this task.
Implemented with GPT-6.1-Sol, medium reasoning, Codex harness in T3 Code. Independently reviewed with GPT-6-Luna, max reasoning effort, Codex harness, Prism reviewer defaults.