STRATEGY.md per bet — convention + distillation policy
Why this exists
Lifted from Trevin Chow’s Compound Engineering plugin v3.4 (/ce-strategy skill), which expects a STRATEGY.md at every repo root with frontmatter (problem / approach / personas / key_metrics / work_tracks) and reads it for every per-bet decision. We adapt the convention to the RDCO vault: every active bet folder under ~/rdco-vault/01-projects/<bet>/ gets a canonical, narrative STRATEGY.md that ties the bet to the RDCO four-layer thesis (targeting / instrumentation / tools / feedback). Founder approved 2026-05-01.
The STRATEGY.md is the human-readable, narrative companion to the machine-readable ~/rdco-vault/07-bet-stacks/<bet>.yaml (when one exists). The yaml is the source of truth for HQ’s per-bet stack-view; the STRATEGY.md is the source of truth for “what is this bet, why does it exist, what’s the load-bearing approach.”
The convention
File location
~/rdco-vault/01-projects/<bet>/STRATEGY.md — at the bet folder root.
Schema (canonical)
---
date: <YYYY-MM-DD distilled date>
type: strategy
bet: <bet-slug>
status: active | discovery | dormant
last_distilled: <YYYY-MM-DD>
distilled_by: <Ray | founder | both>
companion_yaml: 07-bet-stacks/<bet>.yaml # if exists, else null
tags: [strategy, bet]
---
# <Bet Name> — STRATEGY
## Problem
<1-2 sentence problem framing — what need / what user / what bottleneck>
## Approach
<3-5 sentences on the strategy. Not the tactics, not the to-do list — the load-bearing why-this-not-that decision.>
## Personas
- <persona 1 name>: <who, what they want, where we reach them>
- <persona 2 name>: <...>
## Key metrics
- <metric 1>: <current value or "not yet instrumented">
- <metric 2>: <...>
## Work tracks
1. <track 1>: <one-line description, owner, status>
2. <track 2>: <...>
## Targeting system (RDCO 4-layer thesis)
<Where is the rev/conversion/usage signal coming from? P&L? Specific funnel?>
## Instrumentation (RDCO 4-layer thesis)
<What sensors are wired up? What's missing?>
## Tools (RDCO 4-layer thesis)
<What automation exists today for this bet? What's missing?>
## Feedback loop (RDCO 4-layer thesis)
<How does signal flow back into action? Cadence? Owner?>
## Open questions for founder
- <bullet list — every TBD section above gets an explicit question here>
## Related
- [[../../06-reference/2026-04-30-rdco-thesis-targeting-systems-feedback-loops]]
- [[../../06-reference/2026-04-30-rdco-bet-architecture-playbook]]
- [[../../07-bet-stacks/<bet>]] <- if companion YAML exists
The four RDCO-thesis sections (targeting / instrumentation / tools / feedback) are MANDATORY — they tie every bet back to 2026-04-30-rdco-thesis-targeting-systems-feedback-loops.md and 2026-04-30-rdco-bet-architecture-playbook.md.
Distillation policy
Ray drafts from existing vault notes, founder reviews. Ray’s first pass uses index/README + 2-3 most-recently-modified vault notes inside the bet folder + a QMD vault sweep for cross-references + the companion yaml if it exists. Sections that are ambiguous or haven’t been explicitly written down get marked _TBD — needs founder distillation_ rather than fabricated; every TBD becomes a bullet under “Open questions for founder.”
Re-distillation cadence: each STRATEGY.md should be re-distilled (a) whenever the bet’s portfolio status materially changes, (b) on a 90-day rolling cadence to catch drift, or (c) on demand when founder triggers a re-pass. Update last_distilled and distilled_by in frontmatter on every re-pass.
Staleness rule: if STRATEGY.md is missing OR last_distilled > 30 days old, Ray surfaces it as an “Open question for founder” rather than guessing or operating from the stale doc. The consuming skills (below) should treat missing/stale STRATEGY as a signal to ask before assuming.
Consuming skills
The following skills should read the bet’s STRATEGY.md before operating against it:
build-project— read STRATEGY.md before scaffolding any deliverable for the bet, so PRD/plan inherits the load-bearing approachbuild-landing-page— read STRATEGY.md before drafting any landing page for the bet, so personas + problem framing flow into copy + designpaid-ads— read STRATEGY.md before planning campaigns; key-metrics + personas drive targetingresearch-brief— read STRATEGY.md (newsletter bet) before producing topic angles, so editorial sequence aligns with the canonical thesis arcremix— read STRATEGY.md (newsletter bet) so distribution copy reinforces, doesn’t drift from, the canonical positioning
The parallel skill-update agent (running 2026-05-01) is responsible for wiring the read-STRATEGY.md step into each consuming skill’s SKILL.md. This SOP only documents the convention.
Initial coverage (2026-05-01)
Four STRATEGY.md files written today:
01-projects/squarely-puzzles/STRATEGY.md— companion to07-bet-stacks/squarely.yaml01-projects/newsletter/STRATEGY.md— Sanity Check work-in-public layer01-projects/automated-investing/STRATEGY.md— internal-capability bet, discovery status01-projects/positioning/STRATEGY.md— RDCO umbrella positioning
Bets explicitly excluded from v1 (per founder direction):
data-marketplace,digital-manufacturing-discovery,foundational-knowledge-discovery— still in discovery, no strategy yetdata-quality-framework,graph-db-eval— internal/eval, not betshq-raydata-co— internal tool, borderline; SKIP for v1mammoth-growth,phdata— client/employment, not RDCO betsprocess-newsletter,self-review,services-offering,skill-improvements— internal infra/metafinancials,home-rebuild-2027,life— personal/operational
Reconsider for v2 once these mature.
Related
- ../06-reference/2026-04-30-rdco-thesis-targeting-systems-feedback-loops — canonical RDCO thesis (the four layers this schema enforces)
- ../06-reference/2026-04-30-rdco-bet-architecture-playbook — bet-by-bet four-layer audit playbook
- ../07-bet-stacks/squarely — example machine-readable companion to the squarely STRATEGY.md
- Trevin Chow’s Compound Engineering plugin v3.4 (
/ce-strategyskill) — convention origin