Make system-model opportunities output deterministic #1505
Labels
No labels
P0
P1
P2
P3
bug
category/code-change
category/cross-repo
category/eval-run
category/investigation
category/no-test-target
category/owner-ruling
category/prose-artifact
category/recurring-chore
category/structure
category/umbrella
crc-refactor
create
delete
enhancement
filed-by/agent
filed-by/user
frozen
lint-rule
needs-info
needs-triage
next
plugin/cc-architect
plugin/os
plugin/os-adr
plugin/os-aidd-lint
plugin/os-backlog
plugin/os-context
plugin/os-doc-hygiene
plugin/os-sdlc
plugin/os-vault
project/cc-os
ready-for-agent
ready-for-human
recurring
review
rule-proposal
update
waiting
wayfinder:grilling
wayfinder:map
wayfinder:map
wayfinder:research
wayfinder:task
wayfinder:task
wontfix
worklist/deviations
worklist/lint-rule
worklist/new-implement-build
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
jared/cc-os#1505
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
system-model opportunitiesgives different output for the same code. Thecoverage.touchedfigure changed from 92 to 91 between two runs with no code change. Component sizes depend on journey coverage, so finding scores and counts are not reproducible. Proof figures and before/after comparisons are then not reliable.Observed
Two agents on 2026-11-01 reported this independently. One saw
coverage.touchedgo from 92 to 91 with no code change. Another sawopportunitiesJSON differ between a "before" run during concurrent activity and a clean rerun.Reproduce
Approach
Find the source of the variation in journey tracing (for example a timing-dependent trace subprocess, a shared temp path, or an unordered set). Make the coverage result depend only on the code under analysis.
Required work: none beyond the acceptance criteria.
Acceptance criteria
system-model opportunities plugins/os-sdlc --jsonruns several times, including while other suites run, then every run gives the same output.Origin
coverage.touched← unknown (IMPROVISATION: reruns)VERDICT: CREATE (ticket-skeptic, 2026-11-01: reproduced on a clean tree, coverage.touched 91, 91, 92 over three runs)
Work started on branch worktree-agent-a6cbc6cbefffeaf7a
Resolution
Done: Tracer runs the trace subprocess with a pinned Minitest seed (Tracer::SEED = 0), so journey order and coverage are stable
Evidence: merged on main; cause: random seed let the first journey absorb 39 Boot lazy-load messages (355 vs 316); 5 sequential + 8 parallel runs under suite load gave one md5; suite 0 failures
Follow-ups: none: lazy-load calls still land in the first journey's trace; noted in the session handoff for the next judged re-measure