docs(rfc): Codex declines container decomposition — the partition was 46% overstated - #657
Open
pjm17971 wants to merge 1 commit into
Open
docs(rfc): Codex declines container decomposition — the partition was 46% overstated#657pjm17971 wants to merge 1 commit into
pjm17971 wants to merge 1 commit into
Conversation
…overstated pjm asked for the Codex adversarial pass before acting on the RFC. It returned DO NOT BUILD IT at high confidence, and it is right. I re-verified every decisive claim against the source before accepting; all hold, and my own first check was the faulty one (a backwards- searching regex reported "not deprecated" for all five props — Codex's line citations were exact). THE DEFECT. Five of the ten "shared-x effects" props — cursor, cursorSequence, cursorTime, crosshairSnap, cursorFormat — are ALREADY @deprecated in favour of mounted cursor components (ChartContainer.tsx 432/461/576/590/675). §4 called only onRegionSelect and regionSelectModifier deprecated. There are seven, not two. So half that group is migration residue from the interaction wave, not evidence for <Domain>. `snap` was also mis-filed as mapping when it gates annotation-to-annotation guide snapping (annotations.tsx:374-388). claimed to <Domain>: 24 of 38 defensible: 13 (18 counting contested) overstatement: 11 props, 46% of the claim Every error ran in the same direction — making the cluster look larger. TWO CLAIMS WITHDRAWN. "Fixes friction #24 by construction" is false: suppression is global because every row runs a query over ALL annotations (Layers.tsx:519); the fix is row-scoping it, available today with no decomposition. And "annotations are layers" was not a proposal — they are already children of <Layers> (annotations.tsx:30). What is actually unhomed is their cross-row coordination, which the RFC never located. The recursion was asserted, not closed. Codex also supplied the third option §10.1 missed: keep ChartContainer as a single-domain facade and add an outer ChartGroup only for the uncommon multi-domain case, or decompose internally via BoxContext/DomainContext with no public tree break at all. Outcome: RFC marked DECLINED, body left unedited as the record, review and author response appended per the streaming.md convention. PND-XAXISOWN is unblocked — the reviewer's explicit finding is that xAxis="auto" is NOT wasted work. Friction #24 now carries its located code fix instead of the doc sentence it proposed. PLAN.md's "structural work must precede consumers" rule survives, but now carries the guard this cost us: urgency is a reason to review harder, not less. That RFC reached "decide in weeks" while its own §10 was unresolved and its evidence was wrong. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
pjm asked for the Codex adversarial pass before acting on
#656. It returned do not build it
at high confidence, and it's right.
I re-verified every decisive claim against the source before accepting. All hold
— and my own first check was the faulty one: a backwards-searching regex
reported "not deprecated" for all five props. Codex's line citations were exact.
The defect
cursor,cursorSequence,cursorTime,crosshairSnap,cursorFormatarealready
@deprecatedin favour of mounted cursor components(
ChartContainer.tsx:432, 461, 576, 590, 675). §4 called onlyonRegionSelectand
regionSelectModifierdeprecated. There are seven, not two — so half the"shared-x effects" group is migration residue from the interaction wave, not
evidence for
<Domain>.snapwas also mis-filed as mapping when it gatesannotation-to-annotation guide snapping (
annotations.tsx:374-388).<Domain>Every error ran the same direction: making the cluster look larger.
Two claims withdrawn
because every row runs a query over all annotations (
Layers.tsx:519).The fix is row-scoping it — available today, no decomposition needed.
<Layers>(annotations.tsx:30). What's actually unhomed is their cross-rowcoordination, which the RFC never located. The recursion was asserted, not
closed.
What Codex added
The third option §10.1 missed: keep
ChartContaineras a single-domainfacade and add an outer
ChartGrouponly for the uncommon multi-domain case —or decompose internally via
BoxContext/DomainContextwith no public treebreak at all. Also flagged that
useChartFrame()exposes onexScale/xKind/bands(useChartFrame.ts:154-191), which multiple domains would leaveundefined — I'd treated that as a footnote.
Outcome
response appended per the
streaming.mdconvention.[PND-XAXISOWN]is unblocked — the reviewer's explicit finding is thatxAxis="auto"is not wasted work. (Consumer evidence gathered en route:Tidal passes
showAxisat 2 of 2 sites, estela at 5 of 14.)it proposed.
guard this cost us: urgency is a reason to review harder, not less. That
RFC reached "decide in weeks" while its own §10 was unresolved and its
evidence was wrong.
Docs only.
🤖 Generated with Claude Code