01-projects/printables-product

Charter re-baseline — Scribble Works studio (draft for founder confirmation)

2026-09-02·decision-brief·status: pending-founder
scribble-worksprintableschartergovernanceamendmentstudio

Charter re-baseline — draft amendment

Not in force until you confirm it.

Why

[[C-charter-alignment|Audit C]] graded the studio DRIFTING on 2026-09-02: the product surface tracks your rulings closely, the governance text tracks nothing. On 09-02 the studio merged 24 PRs, ran 13 production deploys, stood up two D1 databases and a Worker, provisioned Turnstile and a Resend domain, and took one incident with a 6-minute rollback (rounds.md 08:10 ET; day tally 13:18). Every one of those deploys traces to an explicit founder word. None is legal under the charter, which still marks production deploys as engineering's hard gate. The same gap runs through §4 (generation was to stay local on Max; metered since 09-01), §2's org table (sw-* agents never stood up), and §8c (its breaker governs the 4:41 round only). A charter contradicted daily by authorized behavior is no control. This introduces no kind of authority you have not given by voice, but makes two standing rather than per-day: §2 and §4 are yours to rule on.


The amendment, section by section

§2 Org table — engineering row (replaces the "Hard gate" cell)

Autonomous: production deploys and merges to main when all four hold: (a) fresh-clone build and every test suite passed; (b) an independent fresh-eyes critic returned PASS; (c) any change to the model request shape, buildRequest, or the gateway JSON schema carried one real gateway call, not a mock; (d) a source-blind live check ran against production before the founder is pinged. A failed gate returns the artifact to the queue with findings.

Still escalated, no exceptions: new external accounts · anything that starts a bill (including the $5 Workers Paid flip) · production data migrations · secrets · Email Routing and DNS · anything touching payment or a credits balance.

Conditions (c) and (d) are the post-#49 rules, now charter text.

§2 Org table — the org row

Replaces "four role-scoped standing agents": work runs as role-scoped in-session subagents dispatched per task (product, design, engineering, growth are scopes, not sessions), Ray coordinating. The sw-* fleet sessions are retired until traffic justifies them; manifest lines stay commented. The escalation column binds the coordinator, not an agent.

§4 Cost model — the line you must rule on

The charter's settled premise: "generation stays local on the founder's Max subscription until volume forces the API." Production has run metered on the AI Gateway since 2026-09-01. That was Ray's "default proceed" (escalations.md 12b), not a founder ruling; no authorization exists in any document. So it goes back as a question:

Option A: metered stands, and gets a meter. §4 becomes "generation is metered on the AI Gateway from day one," plus a per-round cost line in the morning brief. Sub-toggle, your open item (escalations.md 12a): A1 gateway logs stay OFF, spend metered by our own per-call counter (tokens x published price, in the UGC log row), so no parent text leaves our stack — Ray's default; A2 gateway logs ON with short retention — audit C's recommendation, and it puts parents' sentences in Cloudflare's logs.

Option B: revert. Generation returns to local-on-Max behind the global generative switch. Price it first: that switch turns Customize off in production. Customize now sits behind the sign-in you tested at 12:03 (preview) and 13:18 (production), and rulings 22, 25a and 26 sit on that surface. The planner's code path (ruling 20) survives.

Either way, the Sonnet round-count test (queue item 7) runs before the next cost claim.

§8c — new DAYTIME-WAVE breaker (mirrors the overnight one)

Daytime waves (founder-live) run under a breaker, like the overnight round. Per wave: max 8 merged PRs before a mandatory §8d hardening pause (ruling 29's 5–10 band). Stop after 2 consecutive gate failures — the §7 "manufacturing rework" signal, intra-day. One production incident ends the wave: roll back first, fix second. A written rounds.md entry within the hour with deploy hashes, gates run, any miss, and the §7 signal-2 instrument: that day's count of founder rulings and owed taps (09-02 baseline: 8 rulings, 6 taps). Founder-named work preempts but does not reset the counter.

As written, this would have paused 09-02 three times, plus the #49 rollback.

§8d — hardening cadence

Amended 2026-09-02 13:41 ET under ruling 29. No change proposed; §8c uses the same counter.

QA gate map — two additions, one substitution rule

Add: verify-pdf-output runs as a batch on every library re-render and blocks R2 publication of that batch. Never run; 22 PDFs are live in R2. Add: build-landing-page four-layer runs on any Home or Browse change and blocks its production deploy. Substitution rule: where a named gate is impractical, an equivalent fresh-eyes critic running the same rubric from zero context is acceptable and must be named in the PR. An ad-hoc critic with no stated rubric is not a substitute. The 09-02 round used an unnamed critic in place of design-critic and caught four blockers — write the rubric down, do not drop the gate.

§7 — falsification signal 3

Audit C records signal 3 ("any round requires a morning correction the founder did not ask for") as tripped at least three times: the false "Ray mark" blocker relayed to four builders, the ~1h clock drift, and the #49 outage. The charter's consequence, reverting the cron to on-demand, was never applied. Proposal:

Signal 3 is counted per overnight round, from a written tally in rounds.md, starting 2026-09-03. The three accrued trips stand on the board until you clear them; Ray does not reset a pre-registered falsification trip on its own default. Two trips in any rolling seven overnight rounds reverts the cron to on-demand until you re-arm it. The three accrued trips do not seed that window; they are a standing item to clear or act on. Daytime waves fall under the §8c breaker, not signal 3.

§5 — the mark is in use ahead of clearance

"Clearance precedes adoption" is charter §5. The mark is now on a purchased domain, the mail domain, 27 sheets in main (22 live in R2), and two legal pages. Clearance is open (queue item 3), the attorney packet deferred. Two clean exits, no third:

Clear it: Ray runs a USPTO knockout search this week; the attorney packet un-defers if it is not clean. Or record it: the charter carries a dated line — "Accepted risk, [date]: Scribble Works adopted without USPTO clearance."

Founder 18:52 ET: no USPTO look now; revisit at maturity.


What this does NOT change

Decisions (6)

  1. §2 engineering gate — four-condition autonomous rule replaces the hard gate; escalated list stands. Makes your episodic "allow deploys" / "ship accounts" grants standing. Default: accept.
  2. §2 org row — in-session subagents; sw-* retired until traffic justifies it. Default: accept.
  3. §4 generation — A1 metered + our own cost counter, gateway logs off; A2 metered + gateway logs on, short retention (audit C's pick); B revert to local-on-Max, which turns Customize off. Default: A1. This one is genuinely yours; the current state was my default.
  4. §8c daytime breaker — 8 merged PRs per wave, stop on 2 consecutive gate failures, incident = roll back first, log within the hour. Default: accept at 8; name a number to change it.
  5. §7 signal 3 — three trips stay on the board, counting starts 09-03, 2-in-7 reverts the cron. Default: leave them standing, keep the cron. Co-equal pre-registered option: revert to on-demand today.
  6. §5 mark — clear it, or record accepted risk with today's date. Default: knockout search this week, decide by 2026-09-09.

Apply on confirmation

Ray edits, in order, and reports a diff:

  1. [[2026-08-31-studio-charter]] — §2 (two rows), §4, §8c daytime clause, QA gate map, §7 counting, §5 clearance line, as a dated AMENDMENT 2026-09-02 (charter re-baseline) block; original text preserved.
  2. [[DESIGN-scribble-works]] — record the two added QA gates and the substitution rule.
  3. state/studio/escalations.md — close 12(a) with the logs pick, 12(b) with A/B, 12(c) with the mark ruling; rewrite the gate list to match §2.
  4. Fleet manifest — sw-* lines stay commented; retirement is charter text now, not a hold.
  5. state/studio/rounds.md — open the signal-3 tally (starting at 3), the signal-2 instrument, the per-wave PR counter.

Proposed addendum (2026-09-02 18:00 ET, awaiting founder confirmation)

Agent-facing surface, sequenced. Prompted by the founder's read of the Anthropic commerce-agents material ([[2026-09-02-commerce-agents-takeaways]]) and his note that we should have MCP and/or x402 plans.

Charter today names rung 3 (MCP) but not x402; credits are the only metering model written down.