docs: reconcile stale proposal/roadmap statuses with shipped code#108
Conversation
A systematic audit of every P-NNN status line + the two index tables (ROADMAP.md, proposals/README.md) against the actual extractor / core / CI, verified by parallel code inspection. Most statuses were accurate (the horizon proposals P-002/003/008/009/010/011 are genuinely unstarted; P-004/012/013/015/016 matched reality). Three were stale and several index rows lagged: - P-014: "draft — currently unusable on real desktop code" was badly stale. Tier A (T0–T6) is shipped and default-on: a `+=` is a subscription only when the SemanticModel binds its LHS to an IEventSymbol (arithmetic no longer leaks), and unresolved external events surface OWN050. Only Tier B (full refs) is deferred. - P-001: "v0 built (event += without -=)" understated a seam that now extracts WPF001–005, the DI graph (DI001–005), ArrayPool/Span (POOL001–005), path-sensitive flow facts (--flow-locals), and semantic resolution. - P-005: D3/D4 (double-dispose, use-after-dispose) are built via --flow-locals + the field-mediated UAF pass, not "next". - proposals/README.md index: P-004/005/006/012/014/016 were all still "draft" despite being built/in-progress — synced to the verified state. - ROADMAP index table: corrected P-001/005/012 rows and added the missing P-014/015/016 rows (the table stopped at P-013). No code change — the map now matches the territory. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fmwk5ruExKy5fQ77CJ2NtF
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
✅ Files skipped from review due to trivial changes (1)
📝 WalkthroughWalkthroughUpdated the roadmap and proposal indexes to reflect expanded proposal coverage, and rewrote three proposal pages’ status sections to describe current built capabilities and open items. ChangesProposal status updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~4 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/proposals/P-001-csharp-extractor.md`:
- Around line 3-10: The P-001 status summary overstates the ArrayPool/Span
rollout compared with the P-007 index entries. Update the bullet in the proposal
summary to match the actual shipped scope by using the same coverage language as
the P-007 rows, or explicitly note that POOL004/POOL005 are only first slices.
Keep the wording aligned with the extractor coverage described alongside
POOL001–005 and the P-007 rollout so the summary does not imply full completion.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 08ff2756-88c6-45c8-b319-439fea612e98
📒 Files selected for processing (5)
docs/ROADMAP.mddocs/proposals/P-001-csharp-extractor.mddocs/proposals/P-005-idisposable-ownership.mddocs/proposals/P-014-semantic-resolution.mddocs/proposals/README.md
P-001's status said "POOL001–005" which overstates vs P-007's own rows (POOL001–003 built; 004/005 first slices). Align it — fittingly, a stale-status nit inside the stale-status-reconciliation PR. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Fmwk5ruExKy5fQ77CJ2NtF
A systematic audit of every
P-NNNstatus line + the two index tables (docs/ROADMAP.md,docs/proposals/README.md) against the actual extractor / core / CI. No code change — the map now matches the territory.Why
Over recent work we kept rediscovering "oh, that's already built" — POOL002, the DI tails (DI002–004), and P-014 Tier A were all shipped but the docs still said draft / remaining. Drifted status docs send the next contributor down dead ends. This pass reconciles them.
What was verified accurate (no change)
--flow-locals) — already matched reality.What was stale and is now corrected
+=is a subscription only when theSemanticModelbinds its LHS to anIEventSymbol(arithmetic no longer leaks); unresolved external events → advisory OWN050. Only Tier B (full refs) deferred.event += without -=)"--flow-locals), and semantic resolution--flow-locals+ the field-mediated UAF pass; D5 (cross-callee transfer) is the open frontierNet effect
A trustworthy backlog. The genuinely remaining build work is now clearly: POOL004 field-escape, P-014 Tier B (full external refs), P-005 D5 (cross-callee ownership transfer), and the horizon tracks (effects P-008, etc.).
Verification was done by parallel code inspection (extractor
Program.cs,ownlang/, CI jobs, tests) — every corrected claim is backed by concrete shipped code + CI evidence. Full test suite stays green (docs-only).🤖 Generated with Claude Code
Generated by Claude Code
Summary by CodeRabbit