File three docsReviewed under the strategic-relevance track: - 2026-06-28-vision-sanity-check.md (Claude Opus 4.8): the idea-level review. Six findings S1-S6 (wedge emphasis, differentiation valley, compliance paradox, turn-taking ownership at the tap, solo scope vs. category timing, reframe to boundary+data loop as moat). - 2026-06-28-gtm-path.md (Claude Opus 4.8): the GTM/positioning/ pivots review. Seven findings G1-G6 + R1 (revenue-vector sequence, CLA before contributor #2 — the time-sensitive irreversible one, services as early engine, hosted = BYO-cloud, open-core seam, funding fork; plus pressure-test R1 gating the outbound beachhead). - 2026-06-29-strategic-reviews-post-pivot-rescore.md (GLM-5.2): re-scores every vision + GTM finding against ADR-0007 (rent the trunk) + ADR-0008 (FOB / green-zone doctrine). Most findings strengthened or ratified by the pivot. One finding flagged as needing active user decision rather than doc-only action: G2 (CLA posture), because ADR-0008 explicitly states multiple coding agents now work this repo and every commit without a CLA in place erodes the dual-license / AGPL / paid-embedding options. Per AGENTS.md, ratifying strategy/ADR changes warrants the user's signoff — this commit files the reviews and re-score as input to that decision, not the decision itself. The user's pivot changes (ADR-0007, ADR-0008, AGENTS, README, ARCHITECTURE, PORT_PLAN, Cargo.toml, ADR-0003 status flip) are unstaged in the working tree on this branch and remain the user's to commit.
8.8 KiB
Re-scoring the strategic reviews under ADR-0007 / ADR-0008
- Date: 2026-06-29
- Re-scores:
2026-06-28-vision-sanity-check.md(S1–S6) and2026-06-28-gtm-path.md(G1–G6, P1–P4, R1) - Trigger: the 2026-06 strategic pivot — ADR-0007 (rent the trunk transport; no first-party SIP stack) + ADR-0008 (the FOB / green-zone build-vs-reuse doctrine). README, ARCHITECTURE, PORT_PLAN, AGENTS all updated to match.
This doc does not ratify any strategy changes. It re-scores each finding against the post-pivot state so the load-bearing decisions surface as actionable items rather than sitting in unaddressed review docs. Per AGENTS.md, ratification of strategy/ADR changes warrants the user's signoff — this is the input to that decision, not the decision itself.
Verdict changes (summary)
| Finding | Pre-pivot | Post-pivot | Action |
|---|---|---|---|
| S1 (wedge leads with contestable determinism) | open | Strengthened — pivot ratifies the critique verbatim | Note only |
| S2 (differentiation valley — pull rung-2 forward) | open, load-bearing | Sharper but easier — ADR-0007 retires the longest pole (trunk-SIP rewrite); valley shortens, core thesis stands | Sequencing (capability ladder planning) |
| S3 (compliance paradox — builders are day-1, not regulated) | open | Reinforced — ADR-0007's "PSTN data-ownership is a graduation, not day-one" matches S3's "regulated is the eventual prize, not the beachhead" | Note only (README already honest) |
| S4 (turn-taking ownership — OpenAI Realtime server VAD vs. core-authoritative) | open, slice-3 spec decision | Unchanged + clarified — ADR-0008 makes the OpenAI adapter green-zone and the reflex loop FOB; core-authoritative VAD is the only doctrine-consistent choice | Slice-3 spec decision (deferred until slice-2 green) |
| S5 (long pole = integration/hardening) | open | Partially retired — ADR-0007 retires the named schedule risk (SIP-trunk rewrite); remaining long pole is the reflex loop, which is also the differentiator | Note only |
| S6 (self-improvement loop is the actual moat) | open | Strengthened — ADR-0008 admits "the differentiating" as a FOB criterion; ARCHITECTURE's "Biggest technical risk" re-write makes the same correction from the other end | Note only |
| G1 (OSS→contract→hosted sequence) | open | Unchanged | Note only |
| G2 (CLA + commercial dual-license before contributor #2) | open — the load-bearing finding | Strengthened + urgent. ADR-0008 explicitly states multiple coding agents now work this repo — the CLA window is already closing. Every commit an agent makes without a CLA in place erodes the option. | Needs active decision (not a doc edit) |
| G3 (services as early engine + tripwires) | open | Unchanged | Note only |
| G4 (hosted = BYO-cloud, not multi-tenant SaaS) | open | Strengthened — ADR-0008's green-zone framing makes multi-tenant SaaS a doctrine violation (FOB-protected data on green-zone infrastructure) | Note only |
| G5 (open-core seam: free wedge, paid convenience/scale) | open | Unchanged — gated by G2 | Note only |
| G6 (bootstrap-via-services → optional raise) | open | Unchanged | Note only |
| P1 (identity: substrate, not contact-center engine) | open, high-leverage | Sharpened — pivot makes the "white space = contact-center + reflex/eval loop + tap-as-open-protocol" framing explicit; README still says "AI-era contact center." Positioning decision. | Positioning decision |
| P2 (beachhead: outbound + compliance, gated by R1) | open, gated by R1 | Reshaped but not retired — ADR-0007 makes outbound easier (no trunk to build; CPaaS call-control API for outbound dial); R1's consented-enterprise scoping + AUP guardrails stand | Sequencing decision |
| P3 (north star: nothing leaves your boundary, including the model) | open, directional | Strengthened as direction — ADR-0008 admits the brain as green-zone but doesn't prevent an in-boundary open-weights brain later; the tap is brain-agnostic | Note only |
| P4 (form: "Home Assistant for voice AI") | open, later identity | Unchanged | Note only |
| R1 (outbound beachhead is double-edged) | open, gates P2 | Unchanged — guardrails stand | Note only |
The one finding that needs active decision: G2
Adopt a contributor-licensing posture (DCO at minimum; CLA with copyright control if you want the commercial options open) before merging the first external PR.
ADR-0008 explicitly states: "multiple coding agents now work this repo and need one explicit, mechanical rule so they classify consistently." The same observation applies to copyright: every commit an agent makes without a CLA in place narrows the option to ever go AGPL, dual-license commercially, or sell paid-embedding. None of these must be used — but all close silently without a CLA.
Today the user is the sole author → total copyright control is free. The CLA question becomes irreversible the moment an external PR merges. Coding agents (me included) are in a gray zone — derivative work made at the user's direction is the user's, but if the project ever wants to dual-license, the chain of authorship needs to be clean.
This is a strategy decision the user must make consciously; I cannot ratify it automatically. The action item is: address G2 before merging any external PR (and ideally before the project's identity pivots — P1 — gets committed to positioning that might attract contributors).
Findings now folded into the pivot itself
These findings were ratified by ADR-0007 / ADR-0008 — the docs now carry the position the review advocated. No further action beyond recording the alignment:
- S1 (wedge emphasis on determinism is the contestable leg): ARCHITECTURE.md's "Biggest technical risk" rewrite ("no longer the SIP stack → the reflex loop itself, which is also the differentiator") is the same correction the review raised. Pivot ratifies S1.
- S3 (compliance paradox — builders, not regulated, are day-1): ADR-0007's "PSTN data-ownership dilutes in layer 1; it's a graduation" matches the review's "regulated is the eventual prize reached via the builder persona, not the beachhead." README already re-scoped wedge bullet 2 honestly.
- S5 (long pole = integration/hardening, AI helps least): ADR-0007 retires the named schedule risk (SIP-trunk rewrite) and redirects the solo-years to the differentiation surface. The remaining long pole (reflex loop hardening) is also the differentiator, so it's not undifferentiated plumbing. S5 substantially dissolves.
- S6 (the self-improvement loop is the actual moat, not determinism): ADR-0008's FOB admission criteria make the data/eval loop FOB-by-doctrine (it's differentiating); ARCHITECTURE's risk rewrite makes the same correction.
Findings that remain open + actionable
- S2 (differentiation valley — pull rung-2 forward): sequencing work, not doc work. ADR-0007 shortened the valley, but the core thesis (spearhead-end = Vapi parity; differentiation lives in capability ladder + spend-gate) stands. When scheduling rung-2 (human takeover via audiohook), weigh against the spearhead's "brutally thin" mandate.
- S4 (turn-taking ownership at the tap): slice-3 spec decision. Unchanged by the pivot; ADR-0008 clarifies it. Slice-3 spec must make "who owns turn detection" an explicit decision defaulting to core-authoritative, brain VAD off, with the integration cost budgeted. Deferred until slice-2 lands green.
- G2 (CLA posture): needs active user decision. See section above.
- P1 (identity: substrate, not contact-center engine): positioning decision. README still says "AI-era contact center." The pivot sharpens the alternative framing ("self-hostable voice-agent substrate") without endorsing it. User's call.
- P2 (beachhead: outbound + compliance, gated by R1): sequencing decision. ADR-0007 makes outbound easy (rented CPaaS call-control API), but R1's guardrails (consented enterprise outbound, sell-through-contract, AUP) still gate the beachhead.
Findings unchanged (recorded for completeness)
G1, G3, G4, G5, G6, P3, P4, R1 — see the GTM and vision-sanity-check docs for their original rationale. None of these were materially moved by the pivot; their original verdicts and decision-implied items stand.
Reference: the load-bearing pivot docs
- ADR-0007 — rent the trunk transport; no first-party SIP stack. Supersedes ADR-0003.
- ADR-0008 — the FOB / green-zone build-vs-reuse doctrine.
- Vision sanity-check — the original review (S1–S6).
- GTM / positioning / pivots — the original review (G1–G6, P1–P4, R1).