Files
jason.woltje 068d868a99 lead: commit rocko's untracked evidence (4471 files: queue-124 queue-129 queue-171 queue-178 queue-280 queue-31 queue-84 queue-85 queue-94)
Unclaimed files left in the canonical checkout. Inventory: canonical-cleanup-inventory.md (commit-as-evidence groups). detect-secrets scan clean on 2026-11-02: hits are sha256 pins, git object ids, test sentinels already in tracked tests and unit-file lines.
2026-11-02 15:05:15 -06:00

8.4 KiB
Raw Permalink Blame History

Row 124 / #1618 — round 2

This packet supersedes the root round-1 candidate; the root packet is retained unchanged. Base: 23533625d, a descendant of landed 640f4cef5. All changes from 9098c33f7 to this base are documentation, queue and logs; no product drift. Detached build: /mnt/storage/src/mosaic-stack-rocko-124-r2.

Review 28920 and sage-0728

  • (a) Store's timedTables includes usage_records. The new store.test.mjs case usage_records refuses non-canonical timestamps atomically proves the bad timestamp throws invalid-timestamp, leaves no row, and canonical time works. store-red.log records the expected missing-exception failure before the fix. Mutant 65 removes this exact table entry and must fail that test.
  • (b) transcript.test.mjs runs its full guard table on pi and claude-code: cut lines, fatal UTF-8, missing/negative/fractional/unsafe counters, oversized file/line, symlink session and hardlink. Root-directory symlinks are checked on both harnesses. The added claude-code refuses a symlinked project directory test exercises the separate project-directory descent. Mutant 66 is Dewey's d1: replace that open's DIR with O_RDONLY | O_DIRECTORY, dropping only O_NOFOLLOW. No product change to the transcript source was required.
  • Doc fix: MIGRATION.md says "their approved window" for Mos.

Dewey's complete verdict and probes were read from agents/dewey/work/queue-124-review/. Notes 1–4 are non-blocking: unread state can yield an unknown without a harness invocation; transcript growth eventually makes future turns unknown; full baseline cursors grow quadratically; two sources can double-report one turn. They remain follow-ups, with no new source kind or accounting semantics in this round.

Gate and process boundaries

Slot sage-0728; busy check CLEAR/exit 0 at 2026-10-18T15:44:38Z. TMPDIR=/mnt/storage/scratch/rocko-124/tmp. DOCKER_HOST=unix:///nonexistent.sock. No Docker, live file/store/unit action. The same five packages and two shell readers as r1 run again; source readers and exclusions remain those recorded in r1 BUILD.md and sage-0714.

First gate passed plugins and bus, then stopped at harness: the new worktree was missing the existing node_modules symlink and pi was not found. Kept suite-harness-first-dependency.log and gate-first-dependency.log, added only the ignored node_modules symlink to canonical installed dependencies, and resumed at harness. No failing assertion was bypassed and no source/test changed for this environment correction. This is not a known flake.

Mutants rerun all 64 prior cases plus 65 and 66. The runner requires exact-once edits, checks syntax, starts a new process group, kills descendants/groups on timeout and restores source in finally. Timeout/import/syntax failures do not count as kills. Results and suite counts are recorded below after completion.

Public landing still waits for Mos (decision 123); the fixture-only 3g→3h migration does not authorize activation. Mos owns the separate offline window.

Final verification

2026-10-18T15:52:09Z

Suite Passed Failed Skipped
plugins 64 0 0
bus 363 0 0
harness 110 0 0
cli 244 0 0
webui 146 0 0

927 package tests passed; land-work 86/0, config 24/0. No tracked flake recurrence.

Mutant Owning killing test file Result
01-dir-no-follow packages/plugins/tests/transcript.test.mjs KILLED
02-file-no-follow packages/plugins/tests/transcript.test.mjs KILLED
03-regular-single-link packages/plugins/tests/transcript.test.mjs KILLED
04-stat-size-before-read packages/plugins/tests/transcript.test.mjs KILLED
05-stream-size-bound packages/plugins/tests/transcript.test.mjs KILLED
06-snapshot-stability packages/plugins/tests/transcript.test.mjs KILLED
07-fatal-utf8 packages/plugins/tests/transcript.test.mjs KILLED
08-cut-line packages/plugins/tests/transcript.test.mjs KILLED
09-line-byte-bound packages/plugins/tests/transcript.test.mjs KILLED
10-record-bound packages/plugins/tests/transcript.test.mjs KILLED
11-directory-entry-bound packages/plugins/tests/transcript.test.mjs KILLED
12-root-confinement packages/plugins/tests/transcript.test.mjs KILLED
13-harness-validation packages/plugins/tests/transcript.test.mjs KILLED
14-json-object packages/plugins/tests/transcript.test.mjs KILLED
15-assistant-id packages/plugins/tests/transcript.test.mjs KILLED
16-usage-object packages/plugins/tests/transcript.test.mjs KILLED
17-nonnegative-safe-integers packages/plugins/tests/transcript.test.mjs KILLED
18-conflicting-duplicates packages/plugins/tests/transcript.test.mjs KILLED
19-claude-kinds packages/plugins/tests/transcript.test.mjs KILLED
20-pi-kinds packages/plugins/tests/transcript.test.mjs KILLED
21-dedup-identical packages/plugins/tests/transcript.test.mjs KILLED
22-baseline-required packages/bus/tests/usage.test.mjs KILLED
23-rewritten-history packages/bus/tests/usage.test.mjs KILLED
24-no-new-usage-unknown packages/bus/tests/usage.test.mjs KILLED
25-turn-idempotence packages/bus/tests/usage.test.mjs KILLED
26-unknowns-beside-totals packages/bus/tests/usage.test.mjs KILLED
27-log-unknown packages/bus/tests/usage.test.mjs KILLED
28-safe-parse-code packages/bus/tests/usage.test.mjs KILLED
29-business-scoped-view packages/bus/tests/usage.test.mjs KILLED
30-loader-only-source packages/bus/tests/usage.test.mjs KILLED
31-run-grouping packages/bus/tests/usage.test.mjs KILLED
32-thread-transcript-root packages/bus/tests/usage.test.mjs KILLED
33-exact-large-totals packages/bus/tests/usage.test.mjs KILLED
34-runner-role-check packages/bus/tests/usage-broker.test.mjs KILLED
35-bound-delivered-turn packages/bus/tests/usage-broker.test.mjs KILLED
36-no-path-in-request packages/bus/tests/usage-broker.test.mjs KILLED
37-reader-usage-allowed packages/bus/tests/usage-broker.test.mjs KILLED
38-view-bound-business packages/bus/tests/usage-broker.test.mjs KILLED
39-runtime-injection packages/bus/tests/usage-runtime.test.mjs KILLED
40-await-usage packages/bus/tests/usage-runtime.test.mjs KILLED
41-runner-begin packages/harness/tests/runner.test.mjs KILLED
42-runner-end packages/harness/tests/runner.test.mjs KILLED
43-cli-unknown packages/cli/tests/usage.test.mjs KILLED
44-cli-json packages/cli/tests/usage.test.mjs KILLED
45-dispatch packages/cli/tests/usage.test.mjs KILLED
46-read-adapter packages/cli/tests/usage.test.mjs KILLED
47-settings-unknown packages/webui/tests/usage-browser.test.mjs KILLED
48-settings-four-kinds packages/webui/tests/usage-browser.test.mjs KILLED
49-settings-section packages/webui/tests/usage-browser.test.mjs KILLED
50-settings-safe-labels packages/webui/tests/usage-browser.test.mjs KILLED
51-http-arguments packages/webui/tests/usage.test.mjs KILLED
52-http-shape packages/webui/tests/usage.test.mjs KILLED
53-migration-step packages/bus/tests/usage-migration.test.mjs KILLED
54-migration-chain packages/bus/tests/comment-migration.test.mjs KILLED
55-nonblocking-open packages/plugins/tests/transcript.test.mjs KILLED
56-entry-name-validation packages/plugins/tests/transcript.test.mjs KILLED
57-source-output-validation packages/bus/tests/usage.test.mjs KILLED
58-turn-sum-precision packages/bus/tests/usage.test.mjs KILLED
59-source-failure-is-unknown packages/bus/tests/usage.test.mjs KILLED
60-all-enabled-sources packages/bus/tests/usage.test.mjs KILLED
61-instance-group packages/bus/tests/usage.test.mjs KILLED
62-model-group packages/bus/tests/usage.test.mjs KILLED
63-provider-group packages/bus/tests/usage.test.mjs KILLED
64-account-unassigned packages/bus/tests/usage.test.mjs KILLED
65-usage-timestamp packages/bus/tests/store.test.mjs KILLED
66-claude-project-no-follow packages/plugins/tests/transcript.test.mjs KILLED

66/66 killed; no survivors, timeouts or invalid runs. All 38 hashes and staged blobs restored; clean-index reconstruction matches all 38 paths. Final cwd/argv node/chromium sweep is empty; every runner has exited. No Docker network was created. Candidate manifest SHA-256: e09313aba4d155a1c5af7bfb227ec397e96c0d57444782cd0b48593102bcc684.