Repository navigation
docs: phased roadmap → founder-set MVP ladder (explorer → restructure → v0.1.0 → extension → MVP) - #211
Conversation
|
Warning Review limit reached
More reviews will be available in 1 minute and 12 seconds. Learn how PR review limits work. Your organization has run out of usage credits. Purchase more in the billing tab. ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans include higher PR review limits than trial, open-source, and free plans. In all cases, reviews become available again over time. During sustained high-volume PR review activity, CodeRabbit may temporarily slow when the next review becomes available. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (3)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Ready to review this PR? Stage has broken it down into 2 individual chapters for you:
Chapters generated by Stage for commit f95163d on Jun 11, 2026 2:36am UTC. |
There was a problem hiding this comment.
Code Review
This pull request updates the CLAUDE.md file to revise the project's phased roadmap, replacing the previous v0.1 to v1.0 plan with a more detailed 'MVP ladder' that outlines specific epics, milestones, and release strategies. There are no review comments, and I have no feedback to provide.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
📄 Rendered report previewAll golden examples regenerated cleanly. 🟡 Golden examplesCommitted to
🐶 Live dogfood previewThis PR doesn't touch ▶ Open ↗ opens the report in your browser in one click — The Pages preview may take ~1 min to update after this comment Alternative: GitHub CLI# gh CLI >= 2.63 extracts into ./report-preview-playground/.
gh run download 27320024283 -R breezy-bays-labs/cute-dbt -n report-preview-playground
open report-preview-playground/playground-report.htmlPosted by |
|
Scope note: this PR now also carries two repo-hygiene commits — the scratch .gitignore guards, and removal of the accidentally-committed |
…tmp) Root-hygiene guard after sweeping 34 untracked scratch files (session screenshots, logs) out of the repo root on 2026-06-10. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
… pattern The #115 PR-body draft (written for gh pr create --body-file) rode that PR's squash into main. PR-body drafts belong in /tmp. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
d6e6c1b to
f95163d
Compare
…mini fix delta) All three examples re-rendered per the example-report-check recipe after merging origin/main (#204/#205/#211/#212). Byte audit: every changed line traces to the truthful fold-toggle/copy-outcome fix (a4c95d7) — main's cross-join/source-binding golden content came through the merge intact. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…mini fix delta) All three examples re-rendered per the example-report-check recipe after merging origin/main (#204/#205/#211/#212). Byte audit: every changed line traces to the truthful fold-toggle/copy-outcome fix (a4c95d7) — main's cross-join/source-binding golden content came through the merge intact. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ng, split-view folds, per-diff fold toggle, copy-icon buttons (#213) * feat(render): design-2 fold steppers — gutter +/− steppers, expand-step setting, split-view folds, per-diff fold toggle, copy-icon buttons Ports the pass-2 directional fold model onto the shipped diff renderers (cute-dbt#199, design package design-return-2): - settings.expandStep in cute-dbt.settings.v1 (default 20, clamp 0–500, 0 = all; NaN-tolerant hydrate) + the static #settings-expand-step row (the #188 static-markup contract). Read live by expandFold/contractFold — no re-render on change. - Unified renderer: data-fold-dir (leading fold expands UP toward the hunk, else DOWN), gutter .fold-steppers (+ by step / − by step, disabled at bounds), per-hunk .fold-collapse-all once anything is revealed, label progression Show N unchanged lines → All N lines shown, and updateFoldControl re-parks the control adjacent to the remaining hidden run (below the run when fully revealed). Reveal stays parent-scoped via closest(code, tbody) — the #132 duplicate-fold-id rule. - Split renderer folds long context runs with the SAME fold model (fold row: stepper gutter + colspan label cell) and gains the ds-c-num/ds-c-code colgroup (3.8em/auto) for a true 50/50; setAllFolds drives both layouts from one control set, so __cuteExpandAllFolds / __cuteCollapseAllFolds keep mirroring every fold control (label + aria-expanded + steppers + collapse-all — the #136 symmetric-mirror invariant on the new anatomy). - Per-diff fold toggle (buildFoldToggleBtn, aria-pressed) in the Model-SQL and Model-YAML diff code headers; the #132 top-of-report .diff-expand-all strip is removed (diffAllExpanded / renderExpandAllToggle / bindDiffViewControls retired with it). - copyIconBtn (inline-SVG icon, aria-label Copy, copied-class flash, execCommand fallback) replaces the absolutely-positioned text Copy in the Model-SQL header and is added to the Model-YAML header; code-header padding per engine/base.css. Functional-SVG-only iconography (README §2.4) — no icon fonts, nothing external, zero-egress untouched. No payload change; no src/domain change. Goldens + insta snapshots regenerated — every changed byte traces to this delta. Closes #199 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * test: supersede the #132/#136 fold guards with the #199 step-expansion contract Deliberate guard migration (never deleted, each replaced with the new-behavior assertion): - block_diff_folds_long_context_runs_and_reveals_on_activate: activate = expand-by-step (default step 20 >= hidden 4 still reveals all in one activation); the 'Hide N unchanged lines' relabel assertion is superseded by 'All N lines shown' + disabled + stepper + visible collapse-all; re-collapse moved from band-click to the explicit .fold-collapse-all. Kept: parent-scoped reveal, control stays visible, aria-expanded truth, Enter/Space keyboard activation, short-block never folds, new data-fold-dir/steppers markup assertions. - global_expand_collapse_mirrors_every_fold: the #136 bidirectional mirror retained on the new control anatomy (label, stepper disabled-states, collapse-all visibility); now also pins the retired top-of-report .diff-view-controls strip at 0 nodes. - settings_context_lines_refolds_block_diffs_live: contextLines re-render still live; extended with the expandStep no-re-render proof (a block mounted before the setting change steps by the new value). - split_diff_renders_the_same_block_diff_as_unified: parity extends to folds — same directional control anatomy, count, colgroup geometry, band activation + setAllFolds mirror on the split tbody. - model_sql_section_defaults_to_diff_and_toggles_to_raw / yaml_diff_drawer_defaults_to_diff_and_toggles_to_authored: assert the per-diff fold toggle + the inline-SVG copy-icon button (real focusable <button>, aria-label Copy) in both code headers. - NEW expand_step_steppers_reveal_contract_directionally_and_persist: + reveals exactly step lines toward the hunk, − re-hides them mirroring direction, collapse-all restores, up/down direction proofs, control re-parking, and cute-dbt.settings.v1 persistence across reload. - NEW per_diff_fold_toggle_drives_its_own_diffs_folds: the header toggle expands/restores every fold in its own diff (unified + split) with aria-pressed + label tracking. render_block_diff_honors_a_configurable_fold_pad is unchanged — its fold-pad arithmetic and labels survive the new model. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * fix(render): truthful fold-toggle + copy outcome state (Gemini PR #213 findings) Applies all three Gemini findings — each holds the new controls to the same symmetric-DOM-mirror standard the #136 guards assert: 1. copyIconBtn signals failure truthfully: success flashes 'copied', failure flashes 'copy-failed' (title AND aria-label carry the outcome; both reset after the flash). Write strategy now mirrors copySql — writeText, then the shared execCommand fallbackCopy (which reports its own success) on rejection/absence. The .copy-failed CSS is no longer dead. 2. buildFoldToggleBtn is stateless: the click derives intent from the DOM at activation time (any hidden folded line in this diff => expand-all, else collapse-all) instead of a cached boolean that desyncs under per-hunk stepping or the __cute hooks. 3. setAllFolds keeps the per-diff toggles truthful: every fold mutation funnels through updateFoldControl -> syncFoldToggles, which relabels each toggle (text + aria-pressed) from ITS OWN diff's DOM truth via the root accessor stored on the element. Per-root truth is deliberately stronger than relabeling 'toggles in scope' to one shared state: a partial-scope op never lies about an untouched sibling diff, and per-hunk steppers stay covered too. New/extended guards (headless_toggle): - per_diff_fold_toggle_drives_its_own_diffs_folds: (a) global __cuteExpandAllFolds flips the toggle's label/aria-pressed; a click after the global op acts on DOM truth and collapses; (b) stepping the unified fold fully keeps the toggle truthful while the split twin still holds hidden rows, and the next click expands the remainder. - NEW copy_icon_button_signals_failure_truthfully: both write paths stubbed to fail in-page (writeText rejects, execCommand false) => copy-failed + 'Copy failed' title/aria-label, never 'copied', reset to rest state after the flash. insta render_integration snapshot regenerated (inlined interaction.js). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * chore: regenerate goldens on the merged tree (main @ 3cd2441 + the Gemini fix delta) All three examples re-rendered per the example-report-check recipe after merging origin/main (#204/#205/#211/#212). Byte audit: every changed line traces to the truthful fold-toggle/copy-outcome fix (a4c95d7) — main's cross-join/source-binding golden content came through the merge intact. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Replaces the stale v0.2/v0.3 phased-roadmap table in CLAUDE.md with the MVP ladder set by the founder on 2026-06-10:
Docs-only; the old v0.2/v0.3 rows described work already shipped or superseded. The single-crate identity language elsewhere in CLAUDE.md/AGENTS.md stays as-is until #209 lands (docs reflect present reality; the table carries the plan).
🤖 Generated with Claude Code