R-GLOBAL.2 · global
Fixed-width body shell, ~12 words per line cap
Body content renders inside a max-width container — never pinned to browser width. Wide monitors get readable line-lengths; mobile inherits the same column.
Internal post-call report · 2026-05-05 → 2026-05-06
The third refinement meeting after the v0.4 lockdown. Team reviewed an AHA Pressure Test report under the v0.5 grammar, named the rules to canonicalize, and converged on a single canonical grammar with paid customization as the productization path.
Snapshot
The 4-agent extraction pass surfaced ~110 rule-shaped statements from the transcript, dedup'd against the 19 existing memory feedback files into ~30 distinct rules for the v0.6 contract. Two existing canonical rules failed in the AHA report and earn pre-publish regex linters. The team converged on a single canonical grammar — client-specific stylistic variants are billable customization, never default templates.
We have one version. Our version is the version. If they want customization, they can pay us a lot of money to customize it. Nuri · 36:39 · the canonical-grammar-policy line
What was decided
Each card below summarizes one rule from the v0.6 runtime contract. Full canonical text, source quotes, and runtime impact live in applied-decisions-2026-05-05.md. Cards group by scope.
R-GLOBAL.2 · global
Body content renders inside a max-width container — never pinned to browser width. Wide monitors get readable line-lengths; mobile inherits the same column.
R-GLOBAL.3 · global
Centered or half-justified body paragraphs are forbidden. Pull-quotes and section title cards may center.
R-GLOBAL.4 · global
Long-form prose with parallel items renders as columned blocks on desktop and stacks on mobile. Paragraphs never span the full viewport width.
R-GLOBAL.1 · global
Client-specific stylistic variants (Atlantic, New Yorker, custom typography) are billable customization engagements, never default template variants.
R-GLOBAL.5 · global
A starter prompt for the reader's own AI: define terms first, answer at three depth levels, surface caveats. Pairs with the markdown so the reader composes against the report.
R-GLOBAL.7 · global
Every SAS render uses the interactive scroll-bound visualization with synchronized side-panel readout. Static SAS imagery is deprecated.
R-§02.1 · letter
The opening delivers reader-facing meaning. Sentences like "The Reframe lives at §10" or "the work is structural. No engagement metrics" stay in the appendix or build log.
R-§02.2 · letter
The reader self-arrives. Imperative thesis statements ("the answer is", "they should X") undermine the executive reader.
R-§02.3 · letter
A negative ("X cannot succeed via mechanism Y") ships only with the structural reason — never as bare dismissal.
R-§02.4 · sales
The brief is filtration. Misreads are correct outcomes — those readers self-disqualify. Never spoon-feed.
R-§03.1 · numbers
Each anchor stat = one block: large numeral, qualifier on the same horizontal band, breathing room. Reader pulls the headline number in <1 second.
R-§03.2 · numbers
"10 anchors carry inline citations… subsequent sections reference these values without reciting" is forbidden in body. Citation chain notes belong in the appendix.
R-§03.3 · numbers
Headlines pull the eye; the supporting detail is one click or one scroll away. Stacked small-type runs are cognitive overload.
R-§08.1 · network
"This measures the strength of the concepts between each other." Rewrite once, reuse system-wide. Assume the reader has never seen a knowledge graph.
R-§08.4 · network
Sticky scroll, click-or-hover for detail. Static scattergram alternatives are deprecated.
R-§08.3 · network
Default to full-screen / max-canvas. If framed, the chart is maximized and the legend renders outside the chart bounds.
R-§08.5 · network
Chart labels in IBM Plex Mono. Minimum 8px padding from node radius to label baseline prevents overlap.
R-§08.6 · network
Default state shows entity name; influence values and detail surface on rollover via a floating panel.
R-§11.1 · gaps
Named buckets with editorial meanings. Priority is the singleton imperative — the one that needs to be on every wrist. Numeric scores supplement labels but never appear unlabeled.
R-§11.2 · gaps
Run-on paragraphs across the full page width are forbidden. Mobile inherits the block structure.
R-§11.3 · gaps
The interactive frame ships in the report body — not linked out. Static rendering is fallback only.
R-§12.1 · breaks
§12 covers the if-nothing-changes future. Anti-restatement check enforces the boundary.
R-§12.2 · breaks
Sub-section labels read as plain editorial English. Two speakers caught this rewrite within thirty seconds.
R-§12.3 · breaks
Multiple sub-gaps never collapse into a run-on paragraph. Each gets a distinct container with a section-scale title.
R-§12.4 · breaks
Long stretches get a viz break between sub-blocks. Register is serious longform — New Yorker cartoon-style breaks are forbidden.
R-§12.5 · breaks
The closing block names what it costs to leave the gaps open.
R-§13.1 · ai-guide
"An AHA-grade AI guide is an evidence-grounding layer over the validated corpus." The earlier "is not a chatbot" form trips the inversion-rhetoric linter.
R-§13.2 · ai-guide
Canonical second-position thesis line for AI-guide positioning. Reuse exactly; do not paraphrase.
R-§14.1 · method-audit
The §14 table reflects database fields. The distinction governs deliverable structure and BMC integration — never collapse into prose summary.
R-§17.1 · action-set
"Action 1 and 2 in parallel, then Action 3" is forbidden. DAG, swimlane, or Gantt-style diagram primitive only.
R-§17.2 · action-set
Closure tracking surfaces in the recurring report cadence. Add-on services map to closing increments.
R-§17.3 · action-set
The 25-year-old ER scenario is the reference template. Concrete, second-person or future-tense prose lands the report.
R-METHOD.1 · architecture
Every report ships with a stack ranking for its industry. Cross-reference between surfaces appears in the Studio UI. Same brain, same database.
R-METHOD.3 · stack-rank
Strength · Narrative Ownership · Community Strength · Monetization · [+1 TBD]. A position, not a scalar. The stability layer rides on top.
R-METHOD.4 · stack-rank
"Control theoretic", "basin of attraction", "Lyapunov", "equilibrium" never appear in body copy. Plain capital-efficiency framing only.
R-METHOD.6 · process
The post-call processing agent records every direct-address rule into both report grammar and visual grammar. Visual implications never land only in prose.
R-ARCH.1 · archetype
Operationalizes the deferred Q2.5 reader-mode tagging. Gentle on-ramp for executive readers expert in their own field, not in graph analysis.
R-METHOD.5 · sourcing
European and Korean studies first; US public-health corpus is contaminated during the current administration. Vertical-specific guidance, not global.
Persistent errors named
Documentation alone is insufficient when the failure mode is a reflexive LLM pattern. v0.6 promotes both to pre-publish regex linters that block deploys when violations slip through.
R-LINT.1 · inversion rhetoric
Failures observed. "This is a starting point, not a verdict." (§02). "Trust travels through devices and consumer health platforms, not through campaigns." (§02). "An AHA-grade AI guide is not a chatbot. It is an evidence-grounding layer that revalidates." (§13 — Nuri endorsed the content; the form is in violation).
Why. The "X, not Y" construction is the most obvious AI-text tell. Already canonical in feedback_no_inversion_rhetoric.md since 2026-04-28. Production system broke the rule again.
Linter. Pre-publish regex on body copy: \bnot (a |an |the |through |just |only )?\w+[,.]?\s+(but|it'?s|it is|rather)\b. Block deploy. Override via build-log comment for direct quotes / legal disclaimers.
R-LINT.2 · scaffolding-as-prose
Failures observed. Four occurrences in the AHA report alone — "10 anchors. Each carries an inline citation tracing back to the primary score in the appendix. Subsequent sections reference these values without reciting" (§03 — Nuri caught it at 16:55); "The Reframe lives at §10. The Method Audit at §14 labels every load-bearing claim as signal or inference. The scope and source set are bounded in §05" (§02 — flagged via post-meeting screenshot); "Five breaks, unpacked into operational consequences. Numeric values reference the Numbers Spine without re-citing" (§11/§12 — flagged post-meeting); plus the §02 prelude Limore flagged at 09:33.
Why. The agent ships its internal scaffolding (section-routing references, citation-discipline meta-prose, model planning text) as reader-facing body copy. Limore at 09:33: "This means nothing. Just to anybody. None of this means anything." Jonny at 31:20 named it: "It's a leak. It's called leakage."
Linter. Reject builds containing any of §\d+, Section \d+, inline citation, traces? back to, without (re-?)?citing, Numbers Spine (in body — appendix label only), unpacked into operational, promoted from the discourse graph, \b\d+ anchors?\b, \b\d+ breaks?, unpacked\b, load-bearing claim (in body). Methodology terms stay in appendix.
What's next
Four parallel tracks. The grammar refinement extraction work is complete with this round; the runtime encoding work picks up next session.
GRAMMAR_VERSION from v0.5 → v0.6 in app/functions/lib/grammar.ts, app/src/lib/grammar.ts, and app/wrangler.toml. Wire up the two pre-publish linters (R-LINT.1 + R-LINT.2). Possible new migration if any rule requires schema changes (severity-bucket enum, LLM-Primer artifact, paired stack-rank).
aha-real-viz-v04 / aha-pressure-v04 / aha-real-pressure-bridge-v04 rebuilt under v0.6. Version label depends on whether GRAMMAR_VERSION bumped — likely v06 suffix for the new constellation. Internal review set for the team.
HANDOFF-2026-05-02-system-architecture-iteration.md. Independent of this grammar track — runs in parallel.
Outstanding questions
Each carries a placeholder default that ships in v0.6. When a generated report visibly bumps into one, log the observation and patch.
Activation (consistent with Nuri's authority→activation thread). Ratify in the next stack-rank session.
projects/shur/aha/ notes. Revisit when a second public-trust-vertical client surfaces.
Cross-links