Skip to content

docs(deck): the 0.6.0 showcase — four new slides and a --quality-delta examples slide, every figure re-derived on main - #143

Merged
joyful-ii-V-I merged 10 commits into
mainfrom
docs/deck-060-v2-2026-09-11
Sep 11, 2026
Merged

docs(deck): the 0.6.0 showcase — four new slides and a --quality-delta examples slide, every figure re-derived on main#143
joyful-ii-V-I merged 10 commits into
mainfrom
docs/deck-060-v2-2026-09-11

Conversation

@joyful-ii-V-I

Copy link
Copy Markdown
Collaborator

The 0.6.0 showcase deck: four new slides, a --quality-delta examples slide built from real findings, and every figure re-derived on main now that the PRs it cites have merged.

What this adds

Every number is re-derived, not restated

Each figure is quoted in the speaker notes from a PR body, a commit, or a command run against main 40a1895:

  • src/ census: files 166, symbols 5,778, edges 17,150, ambiguous 7,441, unresolved 1,658, declined 4,803.
  • --pattern='VERIFY($X)': 116 hits across 896 eligible files. --lint: 16 of 31 rules fired, 588 findings.
  • 12 orchestrator prompts, 24 vendored grammars, 602 gate scripts, 179 long flags, 34 slides.
  • Head-to-head slides carry the caveat docs(readme): the head-to-head timings predate 0.6.0's speedups, and the INSTALL.md link comes back #141 added to the README: those timings were measured 2026-08-08, before 0.6.0's performance work.

One claim was dropped rather than restated. A Kotlin card said "28 of 48 arms red on main"; that count appears in neither #126 nor anywhere on main, so the line now cites test/kotlincheck.sh §14's Java-only invariant, which a commit states verbatim. Three counts that come from PR bodies at merge time, rather than a re-derivation, are disclosed as such in the notes.

Checks

deckcheck, deckclaimcheck (179 long flags, 34 slides), readmedriftcheck, manifestcheck (including the gate count of 602 in the deck source), docanchorcheck and crossrefcheck all pass. The pptx and PDF are regenerated from the source in the same commit, 34 pages.

🤖 Generated with Claude Code

joyful-ii-V-I and others added 9 commits September 10, 2026 22:37
…ty half leads

The showcase cover now matches docs/assets/banner.svg:
- a terminal card with the three dots;
- the two-tone name, rip in cyan and wire in amber;
- "The ripgrep of AI context.";
- the wave from the README hero directly under that line;
- the one-sentence description in the right column.

Below the card the two halves are weighted on purpose. rip, the speed half, is the narrower card. wire,
"the other half: honesty", is the wide amber-framed card: floors, "a zero means none found", every
truncation disclosed, and every guess saying how many it chose from.

The wave moves out of the README (its hero now carries only the Trendshift badge under the intro).
docs/assets/paddle-out.svg stays in the repo. The deck embeds present/assets/paddle-out.png, rendered
from it at 4x on the card colour with Arial, because pptxgenjs writes an SVG's bytes into the PNG
fallback slot, which older viewers cannot draw.

The grammar count said 21 in four places. It is 23: 22 upstream projects under third_party/deps/,
with tree-sitter-typescript supplying both typescript and tsx. The deck's language row gains Elixir
and Dart, in the README's order.

Slide count is unchanged; deckcheck and deckclaimcheck pass. The pptx/pdf regenerate when this lands
after #127.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…lide rewrite

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…three honesty stories, a --quality-delta examples slot

The deck grows from 29 slides to 33. Every figure on the new slides is quoted, with its origin, in that slide's
speaker notes. Everything here is merged on main 766913d; claims about #135, #136 and #126 are in the next commit.

- 0.6.0 at a glance: Dart, the 23rd grammar (6f91fed), and the six hand-sized language arrays its landing caught;
  Rip'n Fast (#83 warm --grep 159.7 -> 9.2 s; #127 llvm cold parse -19.9% CPU, go --pack-task -27.6%); honest where
  it counts (#134 2,107 -> 3; #127 per-kind --quality-delta 12/12 -> 8/12, --help-task 13/25 -> 0); fewer tokens,
  nothing hidden (#92 --help 46,385 -> 4,473 tokens; #127 --handoff 6 -> 50, listing verbs page). Footer: the
  x86-64-v3 upgrade note from #127's body.
- The scale rung: the O(C^2) child walks (#127, #130), the inheritance cone (#83) and the cache that evicted itself
  (#127), each with its llvm-project number; a per-corpus bar row from #127's table. The title says "found at
  llvm-project scale", because only the child walk is sourced as invisible on the standard corpora. One callout
  lists what is built on or with LLVM. Each item was checked against a primary page, and the URL and quote are in
  the notes. XLA was dropped: no fetched openxla.org page says it is MLIR-based. The PS4 is the only console named,
  because only Sony's 2013 PS4 toolchain slides were read.
- Honesty stories: std::move's 2,107 callers (#134); the probe that lied (b4ebf0b corrects 150fb6d's reason:
  clang folded the one-add probe to a scalar addb, and the gate now disassembles its own probe); the audit's
  instrument was wrong twice (the #127 brief, 209f97a, 5723b2c, #127 lane H's 59/195 -> 64/151).
- What --quality-delta catches: a marked PLACEHOLDER. qdExamples() renders QD_EXAMPLES, a data-only array at the
  top of the generator, as 1-3 wide or 4-6 two-column before/after cards in the mono face. The array is empty
  until docs/QUALITY_DELTA_CATALOG.md lands, and the helper refuses more than 6 entries or an empty field.

The two drawing helpers (storyCards, qdExamples) take a slide their caller added. That keeps one literal addSlide
call per slide, which is what test/deckclaimcheck.sh counts. A first cut added the slide inside the helper: the
count still read 33, but only by coincidence, and a second call to the helper would have drifted from the pages
while the gate stayed green.

The cover and its wave are 680a0a3's, unchanged apart from notes that source its 23-grammar count. The slide count
moves in README.md (two places), present/README.md and the re-derive row. The pptx and PDF are regenerated
(pptxgenjs 4.0.1; LibreOffice 26.2 impress_pdf_Export; 33 pages).

Gates on this tree with a main-tip binary (built_from=766913d02): deckcheck ALL PASS (0 bad values, 0 stale),
deckclaimcheck ALL PASS (179 long flags, 33 slides), readmedriftcheck ALL PASS.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Rendering every page of the 0.6.0 deck turned up two overlaps that were already on main:

- "Every head-to-head round, and the ones that went against us" wrapped at 32 pt onto two lines, and the second
  line ("against us") was drawn over the r1 row. At 28 pt the title fits on one line.
- The research slide's footer wrapped to two lines under cards that already ran past the footer's top edge:
  seven classics at a 0.74 in step ended at 7.15 in, and five modern cards at 1.03 ended at 7.12, against a
  footer at 7.02. The steps are now 0.70 and 0.97 (ending at 6.87 and 6.83), and the footer is one line.

No text other than that footer changes, and no figure moves. Other slides whose footer or kicker wraps to a second
line without touching anything are left as they are.

Gates on this tree with the main-tip binary (built_from=766913d02): deckcheck, deckclaimcheck (179 long flags,
33 slides) and readmedriftcheck all pass. The pptx and PDF are regenerated (33 pages).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…, Kotlin in the overview, 24 grammars

Keep this commit only once #135, #136 and #126 have all landed. Otherwise drop it, or drop the card whose PR
missed the release. Every figure it adds is quoted in the slide notes and marked "pending merge: #N" there. The
slide text reads as if merged, so nothing on a slide goes stale when the PRs land. The deck grows from 33 slides
to 34.

- New slide "Three more: a semicolon, a silence, a new language":
  - One missing semicolon (#135 body): 472 of 487 definitions misfiled; PrintFuncSignature at cx=749 ccx=920,
    ranked #4 in --hotspots; after the re-parse cx=3 ccx=2. extentcheck has 55 checks, macroreparsecheck 103.
  - 22% of calls declined in silence (#136 body): memgraph declined 65,516 of 295,086 call references (22.2%).
    The conservation line caught #134's std:: refusals going uncounted when the branches merged (1,495 on
    ripwire, 4,966 on memgraph), now unaccounted=0; declinecheck covers 17 languages with 104 checks.
  - A new language must not change old answers (#126): commit 201ca03 records retrofit's Response.body falling
    from 279 callers to 5 once same-named Kotlin body() methods were indexed. The draft CHANGELOG (from the
    coordinator's brief) has it keeping 279, with a call reaching the other JVM language only when its own has
    no candidate, and kotlincheck at 28 of 48 arms red on main. PR #126's head body carries none of those three
    figures, and the notes say to re-verify them on the merged tree.
- 0.6.0 at a glance: the language quadrant becomes "two new languages" with a Kotlin row from #126's body
  (calls between Kotlin and Java both ways; zero sanitizer findings over 501 real .kt files, deterministic over
  ~9,500 more).
- Grammar count 23 -> 24 on the cover, the pipeline stage, the language row (Kotlin added) and the research
  slide, each with notes: #126 vendors fwcd/tree-sitter-kotlin; 23 without it (680a0a3). README.md still says 23
  vendored grammars; #126 owns that line.
- Slide count 33 -> 34 in README.md (two places), present/README.md and the re-derive row. pptx and PDF
  regenerated (34 pages).

Gates with the main-tip binary (built_from=766913d02):
- this commit: deckcheck ALL PASS, deckclaimcheck ALL PASS (179 long flags, 34 slides), readmedriftcheck ALL PASS;
- without it (cdc4024, the same tree gated before this commit): deckcheck ALL PASS, deckclaimcheck ALL PASS
  (179 long flags, 33 slides), readmedriftcheck ALL PASS.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…cs/QUALITY_DELTA_CATALOG.md

The "What --quality-delta catches" placeholder (slide 29) is filled from the catalog (commit 553dbadb on
docs/quality-delta-catalog-2026-09-11). Every example commit is on main 766913d; the catalog itself has not landed.
Four cards, varied in kind and in what the finding led to:

- #1 new-clone-of-reused-helper: vendoredPathPrefixes re-spelled registeredMacroNames, a helper with three callers,
  while the round that built the per-kind dials was under way; both now call mergeBuiltinsWithConfig.
- #6 nesting (and complexity 141 -> 178): the inline per-root scan became std::any_of in a named function.
- #7 dead-code: the predicates a rewrite orphaned were deleted, not acked. The card also names the one the kind
  missed, namesFileNotKept, whose only caller was itself dead (IP-8).
- #3 duplication, Type-3: the shared digit-run locator became headerFieldDigits, and the card says the detector
  still gates a 63-token residue, which the catalog classes as a false positive (IP-4).

Each card's speaker notes cite the catalog section, the base -> before -> after commits, the verbatim row(s), and
a one-line reproduce command copied from the catalog's Reproduce block. All five catalog examples considered for
the slide (#1, #3, #6, #7, #8) were re-run on 2026-09-11 with a built_from=766913d02 build, and every row, gating
count and exit code matched the catalog.

Why four and not six: the render shows a two-column pane holds 10 lines of 39 columns at 8 pt (a 40-column line
wraps). With 5 or 6 entries each pane drops to about 3 lines, too few for a before and an after. So #5 and #8 are
left out, and #3 carries the detector-limits card.

Layout changes in qdExamples, each forced by the render:
- The kind box is sized to its text. new-clone-of-reused-helper is 2.38 in at 11 pt and wrapped out of the old
  fixed 2.2 in box.
- Card padding and pane gap are tighter, and two-column code is 8 pt (was 8.5), so a pane fits 10 x 39 instead
  of about 9 x 36.
- Entries may carry an optional notes array, which is validated and printed under that card's line in the notes.
- The kicker for a filled slide no longer reads as a placeholder. The placeholder path is unchanged.

Snippets are the catalog's excerpts, trimmed to fit. "…" marks elided code, long lines are wrapped, and a comment
line stands for code the catalog says was elided or deleted. The notes say so.

Gates on this tree: deckcheck ALL PASS (0 bad values, 0 stale), deckclaimcheck ALL PASS (179 long flags, 34
slides), readmedriftcheck ALL PASS. All three pass with the built_from=766913d02 build, and again with the
scratchpad main_096e3544 build. The pptx and PDF are regenerated (pptxgenjs 4.0.1, LibreOffice impress_pdf_Export,
34 pages).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
…in bold

Slide 10 only. The kicker is 18 pt across the full content width instead of kicker() at 13 pt, and the file
count is the bold run: it is the slide's claim. The other kickers are unchanged.

deckcheck, deckclaimcheck (179 long flags, 34 slides) and readmedriftcheck pass; pptx and PDF regenerated
(pptxgenjs 4.0.1, LibreOffice impress_pdf_Export, 34 pages).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
#126 Kotlin, #135 extent detector, #136 declined calls, #137, #138,
#140 and #141 have all landed since 5726d4d. No conflicts: the gate
count lines the deck quotes moved only on main, so 598 became 602 by
fast merge; `python3 docs/gatecount_build.py --root . --check` agrees
all 8 marked sites state the 602 the runner's own loop names.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
… moved is re-derived

#135 (1187b7f), #136 (d752d95) and #126 (1ad9184) merged on 2026-09-11, as
did #137, #138, #140 and #141. Every "pending merge: #N" note now cites the
merged PR and its merge commit; the evidence in those notes is unchanged.

Numbers the merges moved, each re-derived on main 40a1895 (or on a git-archive
of it, so no worktree state leaks into the measurement):

- src/ census on the tripwire slide: files=153 symbols=5122 edges=14182
  ambiguous=5982 unresolved=1598 -> files=166 symbols=5778 edges=17150
  ambiguous=7441 unresolved=1658 declined=4803. declined= is #136's, and it
  belongs on that slide: it is the same contract the other three rules state.
- --pattern: VERIFY($X) 101 hits / 625 eligible files -> 116 / 896.
- --lint roll-up: 14 of 31 fired rules with zero shown rows, 368 findings ->
  16 of 31, 588 findings.
- agent wiring: "11 orchestrator loops" -> 12, which is what README.md says
  ("prompts/ holds twelve") and what readmedriftcheck arm (I1) gates.
- the 0.6.0 upgrade footer drops "Linux": #137 gives the macOS x86_64
  cross-build its -march=x86-64-v3 too, and #138 makes the installer check the
  CPU before it downloads and name what is missing.
- head-to-head: #141 put a caveat beside both round-4 tables in the README, so
  the deck carries it too - measured 2026-08-08, before 0.6.0's speedups, and
  the timing columns have not been re-measured. It changes no number.

One claim was DROPPED rather than restated. The Kotlin card's gate line said
"28 of 48 arms red on main"; nothing on main or in #126's body carries that
count, and kotlincheck's own header says the pre-Kotlin red is trivial. The
card now names §14's Java-only invariant, which commit 359adca states. The
279 -> 5 -> 279 figures ARE re-verified on the merged tree: 359adca,
test/kotlincheck.sh and docs/ARCHITECTURE.md all carry them.

Held, checked: 24 grammars, 602 gate scripts, 179 long flags, 34 slides, 31
MCP verbs, 18 skills, 13 --pattern grammar objects, 8 registered negatives,
and --callers=rankGraphTeleport's defs="1" count="6".

Gates green on the merged tree: deckcheck, deckclaimcheck, readmedriftcheck,
manifestcheck, docanchorcheck, crossrefcheck, and gatecount_build.py --check.
34 pages, unchanged.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 11, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Advanced

Run ID: 7fb406c0-9967-4f5b-9c89-4414272d84f7

📥 Commits

Reviewing files that changed from the base of the PR and between 2776391 and 3f0e208.

⛔ Files ignored due to path filters (2)
  • present/ripwire-showcase.pdf is excluded by !**/*.pdf
  • present/ripwire-showcase.pptx is excluded by !**/*.pptx
📒 Files selected for processing (1)
  • present/deck5_ripwire_build.js

Included review availability: Your plan provides up to 4 included reviews per hour; 1 remains after this review.


📝 Summary

Summary by CodeRabbit

  • Documentation

    • Updated showcase deck references to reflect the new total of 34 slides.
  • Presentation Updates

    • Added current release information, repository metrics, performance findings, language support, and agent workflow content.
    • Expanded quality-delta examples, research details, and real-world usage stories.
    • Refreshed grammar counts, measurements, wording, and slide layouts.
    • Added validated examples and clearer placeholder behavior for quality-delta demonstrations.
    • Improved accessibility metadata for the title-slide banner image.

Walkthrough

The PR refreshes the showcase deck with sourced 0.6.0 content, quality-delta examples, current repository metrics, updated language counts, layout changes, and provenance notes. README references now state that the deck contains 34 slides.

Changes

Showcase deck refresh

Layer / File(s) Summary
Quality-delta catalog and rendering
present/deck5_ripwire_build.js
Adds four sourced QD_EXAMPLES, validation for required fields and notes, story-card rendering, placeholder behavior, and a slide that displays the catalog.
Release content and measurements
present/deck5_ripwire_build.js
Adds sourced 0.6.0, scale-performance, honesty-story, language-support, provenance, and current repository measurement content.
Deck layout and published references
present/deck5_ripwire_build.js, present/README.md, README.md
Updates layout sizing, grammar counts, verification text, and README references from 29 slides to 34 slides.

Priority: ⬇️ Low

Estimated code review effort: 4 (Complex) | ~45 minutes

Change: Other

Suggested reviewers: quaterniondrift

Merge Risk: ⚪ Minimal · up to 3f0e2

The regenerated deck passes its validation checks with no unresolved merge-blocking issues.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 62.50% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 8 functions across 1 files. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the 0.6.0 showcase deck, four new slides, the quality-delta examples slide, and re-derived figures.
Description check ✅ Passed The description directly explains the deck updates, new slides, refreshed figures, validation checks, and regenerated artifacts.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/deck-060-v2-2026-09-11

Comment @coderabbitai help to get the list of available commands.

…nside the pptx

pptxgenjs writes an image's path into <p:cNvPr descr="…">, and this deck adds the wave from an absolute path built
off __dirname, so every pptx generated on the branch carried the directory it was generated in. ripwirepubliccheck
arm 2b reads ppt/slides/*.xml and failed on it (PR #143 CI, 5 jobs). An explicit altText replaces the path, the
comment says why, and the regenerated pptx extracts clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@joyful-ii-V-I
joyful-ii-V-I merged commit 5c4235b into main Sep 11, 2026
31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant