Repository navigation
Description
Context
PR #2477 (queue task 3059, issue #1842, paths.config two-pass chain resolution) merged as 0b06b277 at 2026-10-30T01:09:11Z. The implementation landed, but 6 Codex P2 review threads from round bcf91515 remain open and undispositioned on the merged PR — the PR merged while the queue task was parked on that gate.
This issue exists so the findings are not silently dropped: each needs either a fix-forward or a reply on its thread explaining why the current behaviour is intended. Nothing here reopens #1842's acceptance criteria; they were met and the mechanism is in main.
Findings to disposition (all at head e013229f)
pkgs/mcpx/cmd/mcpx/main.go— forward the bootstrap seed to auto-started daemons. The seed installed in the bootstrap interception is not forwarded to daemons started by the same invocation, so an auto-started daemon resolves a different chain than the parent.pkgs/mcpx/internal/config/chain.go:308— preserve the seed list's null splice around default locations. ForMCPX_PATHS_CONFIG='[null,"/custom/config.json"]',expandAlldiscards the splice position and places the custom file before every default location (higher precedence instead of lower). A seed without null also retains all default locations instead of replacing them, contradicting the registry help "Without a null the list replaces outright".pkgs/mcpx/cmd/mcpx/main.go:101— accumulate repeated config-search flags.mcpx --paths-config /a --paths-config /b configreplacesflagSeedon each call, so only/bparticipates. The setting isRepeatable: trueand the normal binding accumulates repeated occurrences.pkgs/mcpx/internal/config/chain.go:185— accept existing string-valued path lists during discovery.{"paths":{"config":"./shared"}}fails discovery with a JSON unmarshal error because discovery requires arrays, whileApplyFile/Set.Listaccept comma/newline strings. Because chain resolution now runs before dispatch, a previously valid config prevents commands from running at all.pkgs/mcpx/internal/config/chain.go:340— canonicalize cycle-graph endpoints by file identity. Symlink aliases are recognised by the membership test but the graph stores raw path strings, sofindCycletreats aliases as unrelated vertices and accepts a real cycle. Reproducible with A declaring a symlink to B and B a symlink to A.pkgs/mcpx/internal/config/chain.go:365— apply declarations in resolved chain order. Declarations are applied in discovery order, not load order: for discovery order A,B,C where A declares[C,B], B declares[X], C declares[B](no null), the result is A,C,B andXis dropped even though B stays in the chain.
Done when
Each of the 6 threads above carries either a commit that fixes it (with a test in internal/config or cmd/mcpx where testable) or a reply on the thread with the rationale, and go test ./pkgs/mcpx/... is green.
Links
- Merged PR: mcpx: paths.config governs the config chain (two-pass, #1842) #2477
- Closed issue: paths.config should govern the rest of the config chain #1842
- Queue task: 3059 (completed
fixed_merged)
Acceptance criteria
- All 6 Codex P2 findings from PR mcpx: paths.config governs the config chain (two-pass, #1842) #2477 round
bcf91515are dispositioned: each either fixed forward (PR linked) or answered on its thread with the intended-behaviour rationale - The seed-forwarding, null-splice, and repeated-flag findings (items 1–3 in the body) are verified against current main before disposition — a finding already fixed by a later merge is dispositioned as such with the commit cited
- No thread on PR mcpx: paths.config governs the config chain (two-pass, #1842) #2477 is left open without a reply
Activity
dezren39 commentedon Oct 30, 2026
Intake review
Related: PR #2477 (merged 0b06b27, 2026-10-30T01:09Z), #1842 (the paths.config two-pass chain issue whose acceptance was met)
Notes: Filed 2026-10-30T01:57Z so six undispositioned Codex P2 threads on the merged PR #2477 are not silently dropped: bootstrap seed not forwarded to auto-started daemons,
expandAlldiscarding the null-splice position at chain.go:308, repeated--paths-configflags not accumulating, and three more in the body. The parent mechanism is on main and #1842 stays closed — this issue is findings disposition only. This pass appends acceptance criteria and normalizes labels.Risks: Undispositioned review findings are how merged defects become folklore; two of the named findings change chain precedence semantics, so a wrong 'intended' call here corrupts config resolution quietly.
Suggested approach: Work the six threads in body order: reproduce or read-verify each against main, fix forward in one branch+PR where real, reply-and-resolve where intended; cite this issue in the fix PR.
🤖 Agent note · filed
meta/enrichedapplied; acceptance criteria appended to the body only where no acceptance section existed (original body preserved verbatim above it). Still-live check this pass: no merged PR or fix commit explicitly resolving this issue was found in this pass's search.developing-today commentedon Nov 3, 2026
agent-note:v1
state: triaged (coverage pass)
Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as triage at priority 40 (priority/normal). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
Found via: coverage pass 2026-11-03
29 remaining items
dezren39 commentedon Nov 3, 2026
🤖 Agent note · picked up
dezren39 commentedon Nov 3, 2026
🤖 Agent note · parked
-→ settings.NullMarker decode, both with regression tests) and resolved this shift. Parked because the two basic CI checks (mcpx fix carries a test; production line limit) have been QUEUED since 2026-11-03T21:48:37Z — Actions runner backlog, still pending after a 5-minute poll at 22:20Z.dezren39 commentedon Nov 3, 2026
CI backlog tracked in issue #5194 (basic-tier Actions runs queued 30+ min without starting). The park on this issue's PR resumes once those runs start and pass.
Merge pull request #5165 from developing-today/queue/8773-2507-paths-…
dezren39 commentedon Nov 3, 2026
Agent note — task 8773 done (lane F shift, 2026-11-03)
07168f959f65ffae0e6cd1756cdb01eb0d768d13.3c8fe987unchanged; both Codex review threads on PR mcpx: disposition the six paths.config chain findings from PR #2477 (#2507) #5165 confirmed resolved via GraphQL (fixed in head, replies on thread); PR body records laptopgo test ./internal/config/ ./internal/cli/pass (7 new chain tests) with full-suite failures proven identical on clean main.