naive-framework 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) hide show
  1. package/AGENTS.md +61 -0
  2. package/LICENSE +21 -0
  3. package/README.md +37 -2
  4. package/docs/decisions/decisions.json +861 -0
  5. package/docs/ontology.json +796 -0
  6. package/docs/ontology.md +163 -0
  7. package/docs/reference/ROUTES.md +125 -0
  8. package/evidence/benchmarks/2026-10-27-golden.jev.after-catalog-fix.json +558 -0
  9. package/evidence/benchmarks/2026-10-27-golden.jev.json +501 -0
  10. package/evidence/benchmarks/2026-10-27-golden.reasoning-answers.json +177 -0
  11. package/evidence/benchmarks/JEV_VS_REASONING_MODEL_2026-10-27.md +68 -0
  12. package/evidence/capabilities/agent-capabilities.json +86 -0
  13. package/evidence/design-documents.registry.json +2896 -0
  14. package/evidence/evals/evals.json +25 -0
  15. package/evidence/evals/harness-evals.json +140 -0
  16. package/evidence/layer.json +51 -0
  17. package/evidence/skills/agent-capabilities/SKILL.md +35 -0
  18. package/evidence/skills/design-coverage/SKILL.md +57 -0
  19. package/evidence/skills/design-coverage/check.mjs +192 -0
  20. package/evidence/skills/design-coverage/scan.mjs +45 -0
  21. package/evidence/skills/fidelity-ladder-audit/SKILL.md +121 -0
  22. package/evidence/skills/fidelity-ladder-audit/ladder-census.mjs +180 -0
  23. package/evidence/skills/findability/SKILL.md +32 -0
  24. package/evidence/skills/findability/inventory.rb +41 -0
  25. package/evidence/skills/foreshadowing-audit/SKILL.md +183 -0
  26. package/evidence/skills/metrics-review/SKILL.md +177 -0
  27. package/evidence/tooling/integrations.json +153 -0
  28. package/governance/layer.json +101 -0
  29. package/governance/references/references.json +26 -0
  30. package/governance/skills/board-design/SKILL.md +68 -0
  31. package/governance/skills/brand-pillar/SKILL.md +90 -0
  32. package/governance/skills/business-pillar/SKILL.md +96 -0
  33. package/governance/skills/chief-of-staff/SKILL.md +45 -0
  34. package/governance/skills/cofounder-structure/SKILL.md +64 -0
  35. package/governance/skills/cross-pillar-tradeoff/SKILL.md +168 -0
  36. package/governance/skills/equity-and-share-classes/SKILL.md +68 -0
  37. package/governance/skills/executive-roles/SKILL.md +95 -0
  38. package/governance/skills/exit-planning/SKILL.md +66 -0
  39. package/governance/skills/financing-and-investor-rights/SKILL.md +73 -0
  40. package/governance/skills/office-hours-mode/SKILL.md +113 -0
  41. package/governance/skills/product-pillar/SKILL.md +81 -0
  42. package/governance/skills/publication-policy/SKILL.md +63 -0
  43. package/governance/skills/role-and-candidate-authoring/SKILL.md +198 -0
  44. package/governance/skills/stakeholder-update/SKILL.md +177 -0
  45. package/governance/tooling/integrations.json +37 -0
  46. package/governance/venture-template/AGENT_ROLES_AND_DECISION_RIGHTS.md +58 -0
  47. package/governance/venture-template/COMPANY_VAULT_DEFINITION_2026-10-25.md +204 -0
  48. package/governance/venture-template/README.md +74 -0
  49. package/governance/venture-template/decision-rights.json +186 -0
  50. package/governance/venture-template/index.md +151 -0
  51. package/governance/venture-template/pillars/brand.md +209 -0
  52. package/governance/venture-template/pillars/business.md +255 -0
  53. package/governance/venture-template/pillars/product.md +254 -0
  54. package/governance/venture-template/render-roles.py +11 -0
  55. package/governance/venture-template/roles/README.md +85 -0
  56. package/governance/venture-template/roles/agent-roles.json +202 -0
  57. package/governance/venture-template/roles/ceo.md +163 -0
  58. package/governance/venture-template/roles/chief-of-staff.md +153 -0
  59. package/governance/venture-template/roles/cmo.md +165 -0
  60. package/governance/venture-template/roles/coo.md +189 -0
  61. package/governance/venture-template/roles/cto.md +158 -0
  62. package/governance/venture-template/roles/department-head.md +47 -0
  63. package/governance/venture-template/roles/forward-deployed-engineer.md +51 -0
  64. package/governance/venture-template/roles/founder.md +173 -0
  65. package/governance/venture-template/roles/hr-manager.md +49 -0
  66. package/governance/venture-template/roles/talent-acquisition-manager.md +50 -0
  67. package/interface/api/server.mjs +69 -0
  68. package/interface/cli/find-venture.mjs +15 -0
  69. package/interface/cli/mentura.mjs +271 -0
  70. package/interface/cli/naive.mjs +169 -0
  71. package/interface/demo/board.mjs +581 -0
  72. package/interface/demo/decision-harness.mjs +91 -0
  73. package/interface/demo/live-agent.mjs +47 -0
  74. package/interface/harness/evals.mjs +90 -0
  75. package/interface/harness/examples/pt-no-shows.dump.md +19 -0
  76. package/interface/harness/run.mjs +313 -0
  77. package/interface/harness/site.mjs +59 -0
  78. package/interface/layer.json +31 -0
  79. package/interface/mcp/server.mjs +122 -0
  80. package/interface/operator-console/README.md +58 -0
  81. package/interface/provenance.mjs +42 -0
  82. package/interface/references/references.json +28 -0
  83. package/interface/route-aliases.json +32 -0
  84. package/interface/router.mjs +580 -0
  85. package/interface/skills/install-mentura/SKILL.md +88 -0
  86. package/interface/tooling/integrations.json +112 -0
  87. package/knowledge/connectors/README.md +54 -0
  88. package/knowledge/connectors/catalog.mjs +118 -0
  89. package/knowledge/connectors/contract.mjs +56 -0
  90. package/knowledge/connectors/eval.mjs +176 -0
  91. package/knowledge/connectors/filesystem.mjs +79 -0
  92. package/knowledge/connectors/index.mjs +102 -0
  93. package/knowledge/connectors/resolve.mjs +44 -0
  94. package/knowledge/connectors/suite.mjs +80 -0
  95. package/knowledge/layer.json +42 -0
  96. package/knowledge/skills/find-reference/SKILL.md +38 -0
  97. package/knowledge/skills/industry-awareness/SKILL.md +277 -0
  98. package/knowledge/tooling/integrations.json +127 -0
  99. package/knowledge/tooling/questions.md +46 -0
  100. package/operations/FOUNDER_OPERATING_MODEL_CAMPAIGN_2026-10-14.md +16 -0
  101. package/operations/departments.json +162 -0
  102. package/operations/handoff-v2.md +93 -0
  103. package/operations/layer.json +60 -0
  104. package/operations/marketing/check-public.mjs +68 -0
  105. package/operations/marketing/site/README.md +86 -0
  106. package/operations/marketing/site/matrix.json +731 -0
  107. package/operations/marketing/site/plan.mjs +117 -0
  108. package/operations/marketing/site/presence.mjs +252 -0
  109. package/operations/references/references.json +45 -0
  110. package/operations/skills/recruiting/SKILL.md +32 -0
  111. package/operations/skills/team-design/SKILL.md +36 -0
  112. package/operations/skills/tool-selection/SKILL.md +46 -0
  113. package/operations/templates/recruiting-brief.md +35 -0
  114. package/operations/tooling/integrations.json +158 -0
  115. package/package.json +57 -4
  116. package/packages/catalog.json +272 -0
  117. package/packages/cofounder/package.json +42 -0
  118. package/packages/counsel/package.json +47 -0
  119. package/packages/customers/package.json +21 -0
  120. package/packages/decisions/package.json +17 -0
  121. package/packages/engineering/package.json +41 -0
  122. package/packages/evidence/package.json +17 -0
  123. package/packages/finance/package.json +48 -0
  124. package/packages/foundation/package.json +52 -0
  125. package/packages/investor/package.json +57 -0
  126. package/packages/investors/package.json +21 -0
  127. package/packages/legal/package.json +73 -0
  128. package/packages/marketing/package.json +57 -0
  129. package/packages/money/package.json +21 -0
  130. package/packages/operations/package.json +74 -0
  131. package/packages/partner/package.json +38 -0
  132. package/packages/people/package.json +64 -0
  133. package/packages/product/package.json +49 -0
  134. package/packages/raw/package.json +19 -0
  135. package/packages/relationships/package.json +52 -0
  136. package/packages/validation/package.json +99 -0
  137. package/platform/README.md +45 -0
  138. package/platform/connectors/eval.mjs +154 -0
  139. package/platform/connectors/fake-github.mjs +91 -0
  140. package/platform/connectors/github.mjs +105 -0
  141. package/platform/integrations/jev.mjs +30 -0
  142. package/platform/integrations/langsmith-docket.mjs +53 -0
  143. package/platform/integrations/langsmith-setup.mjs +115 -0
  144. package/platform/integrations/langsmith.mjs +47 -0
  145. package/platform/integrations/rho.mjs +145 -0
  146. package/platform/integrations/site.mjs +75 -0
  147. package/platform/kits/README.md +7 -0
  148. package/platform/mcp/research.mjs +64 -0
  149. package/purpose/checklists/vault-and-tooling-consultancy-setup.md +216 -0
  150. package/purpose/frameworks/business-discovery-framework-amendments-2026-05-20.md +181 -0
  151. package/purpose/frameworks/business-discovery-framework.html +938 -0
  152. package/purpose/frameworks/business-discovery-framework.md +326 -0
  153. package/purpose/frameworks/idea-map/README.md +74 -0
  154. package/purpose/frameworks/idea-map/conventions.json +146 -0
  155. package/purpose/frameworks/idea-map/graph.mjs +182 -0
  156. package/purpose/frameworks/idea-map/ideamap.mjs +179 -0
  157. package/purpose/frameworks/idea-map/route.mjs +140 -0
  158. package/purpose/frameworks/onboarding-handoff-framework.md +269 -0
  159. package/purpose/frameworks/post-discovery-deliverable-playbook.md +274 -0
  160. package/purpose/frameworks/product-anatomy/README.md +63 -0
  161. package/purpose/frameworks/product-anatomy/anatomy.mjs +195 -0
  162. package/purpose/frameworks/product-anatomy/examples/polity.answers.reasoned.json +11 -0
  163. package/purpose/frameworks/product-anatomy/examples/polity.json +89 -0
  164. package/purpose/frameworks/product-anatomy/phases.json +107 -0
  165. package/purpose/frameworks/product-anatomy/questions.json +74 -0
  166. package/purpose/kits/validation/README.md +14 -0
  167. package/purpose/kits/validation/references/references.json +122 -0
  168. package/purpose/kits/validation/skills/problem-validation/SKILL.md +43 -0
  169. package/purpose/kits/validation/skills/validation-score/SKILL.md +35 -0
  170. package/purpose/kits/validation/templates/go-to-market.md +19 -0
  171. package/purpose/kits/validation/templates/operations-readiness.md +20 -0
  172. package/purpose/kits/validation/templates/pricing.md +22 -0
  173. package/purpose/kits/validation/templates/problem-interview.md +36 -0
  174. package/purpose/kits/validation/templates/problem.md +45 -0
  175. package/purpose/kits/validation/templates/product-market-fit.md +23 -0
  176. package/purpose/kits/validation/templates/solution.md +18 -0
  177. package/purpose/kits/validation/templates/team.md +19 -0
  178. package/purpose/kits/validation/weights.json +22 -0
  179. package/purpose/layer.json +53 -0
  180. package/purpose/references/references.json +324 -0
  181. package/purpose/skills/ambition-tier/SKILL.md +205 -0
  182. package/purpose/skills/telos/SKILL.md +52 -0
  183. package/purpose/strategic-foundation.json +133 -0
  184. package/purpose/templates/telos-based-smart.md +39 -0
  185. package/purpose/tooling/integrations.json +48 -0
  186. package/schema/README.md +61 -0
  187. package/schema/VERSION +1 -0
  188. package/schema/account.schema.json +79 -0
  189. package/schema/add-department.mjs +41 -0
  190. package/schema/agent-capability.schema.json +94 -0
  191. package/schema/alignment.schema.json +61 -0
  192. package/schema/assess-problem.mjs +131 -0
  193. package/schema/bdd.mjs +56 -0
  194. package/schema/board.schema.json +101 -0
  195. package/schema/check-boundary.mjs +54 -0
  196. package/schema/check-data-model.mjs +170 -0
  197. package/schema/check-data-packages.mjs +83 -0
  198. package/schema/check-departments.mjs +45 -0
  199. package/schema/check-execution.mjs +85 -0
  200. package/schema/check-governance.mjs +98 -0
  201. package/schema/check-integrations.mjs +33 -0
  202. package/schema/check-nextjs-status.mjs +77 -0
  203. package/schema/check-nouns.mjs +49 -0
  204. package/schema/check-private.mjs +61 -0
  205. package/schema/check-provenance.mjs +55 -0
  206. package/schema/check-publication.mjs +96 -0
  207. package/schema/check-ready.mjs +89 -0
  208. package/schema/check-sources.mjs +66 -0
  209. package/schema/check-team.mjs +94 -0
  210. package/schema/check-telos.mjs +59 -0
  211. package/schema/check-validation.mjs +165 -0
  212. package/schema/check-ventures.mjs +81 -0
  213. package/schema/check-where-used.mjs +58 -0
  214. package/schema/data-master.schema.json +14 -0
  215. package/schema/data-model.json +1258 -0
  216. package/schema/data-model.schema.json +152 -0
  217. package/schema/decision-analytics.mjs +77 -0
  218. package/schema/decision-record.schema.json +290 -0
  219. package/schema/decision-rights.schema.json +34 -0
  220. package/schema/decision.schema.json +30 -0
  221. package/schema/decisions.mjs +321 -0
  222. package/schema/department-catalog.schema.json +55 -0
  223. package/schema/department.schema.json +15 -0
  224. package/schema/departments.mjs +32 -0
  225. package/schema/docket-eval.mjs +89 -0
  226. package/schema/docket.mjs +135 -0
  227. package/schema/eval-suite.schema.json +45 -0
  228. package/schema/evidence.schema.json +110 -0
  229. package/schema/examples/migrate/agent.mjs +12 -0
  230. package/schema/examples/workspace/ventures/studio/accounts/bakery/account.json +18 -0
  231. package/schema/examples/workspace/ventures/studio/evidence/.gitkeep +0 -0
  232. package/schema/examples/workspace/ventures/studio/governance/.gitkeep +0 -0
  233. package/schema/examples/workspace/ventures/studio/knowledge/.gitkeep +0 -0
  234. package/schema/examples/workspace/ventures/studio/operations/.gitkeep +0 -0
  235. package/schema/examples/workspace/ventures/studio/print/knowledge/.gitkeep +0 -0
  236. package/schema/examples/workspace/ventures/studio/print/purpose/.gitkeep +0 -0
  237. package/schema/examples/workspace/ventures/studio/print/venture.json +37 -0
  238. package/schema/examples/workspace/ventures/studio/products/brand-care.json +19 -0
  239. package/schema/examples/workspace/ventures/studio/products/brand-kit.json +23 -0
  240. package/schema/examples/workspace/ventures/studio/provenance.jsonl +3 -0
  241. package/schema/examples/workspace/ventures/studio/purpose/.gitkeep +0 -0
  242. package/schema/examples/workspace/ventures/studio/venture.json +43 -0
  243. package/schema/examples/workspace/ventures/tandem/accounts/.gitkeep +0 -0
  244. package/schema/examples/workspace/ventures/tandem/evidence/README.md +3 -0
  245. package/schema/examples/workspace/ventures/tandem/governance/README.md +3 -0
  246. package/schema/examples/workspace/ventures/tandem/governance/agreements/dee-fast.md +3 -0
  247. package/schema/examples/workspace/ventures/tandem/governance/board.json +51 -0
  248. package/schema/examples/workspace/ventures/tandem/governance/departments/finance/charter.md +5 -0
  249. package/schema/examples/workspace/ventures/tandem/governance/departments/finance/department.json +5 -0
  250. package/schema/examples/workspace/ventures/tandem/governance/departments/primary/marketing-and-sales/charter.md +5 -0
  251. package/schema/examples/workspace/ventures/tandem/governance/departments/primary/marketing-and-sales/department.json +5 -0
  252. package/schema/examples/workspace/ventures/tandem/governance/exit.json +33 -0
  253. package/schema/examples/workspace/ventures/tandem/governance/founder-agreement.json +24 -0
  254. package/schema/examples/workspace/ventures/tandem/governance/founder-agreement.md +3 -0
  255. package/schema/examples/workspace/ventures/tandem/governance/ownership.json +131 -0
  256. package/schema/examples/workspace/ventures/tandem/governance/publication-policy.json +171 -0
  257. package/schema/examples/workspace/ventures/tandem/knowledge/README.md +3 -0
  258. package/schema/examples/workspace/ventures/tandem/knowledge/research/friends-feedback-2026-08.md +3 -0
  259. package/schema/examples/workspace/ventures/tandem/knowledge/research/pilot-2026-10.md +3 -0
  260. package/schema/examples/workspace/ventures/tandem/knowledge/research/problem-interviews-2026-09.md +20 -0
  261. package/schema/examples/workspace/ventures/tandem/knowledge/sources.json +8 -0
  262. package/schema/examples/workspace/ventures/tandem/knowledge/where-used.json +13 -0
  263. package/schema/examples/workspace/ventures/tandem/operations/README.md +3 -0
  264. package/schema/examples/workspace/ventures/tandem/operations/departments/finance/README.md +5 -0
  265. package/schema/examples/workspace/ventures/tandem/operations/departments/finance/department.json +5 -0
  266. package/schema/examples/workspace/ventures/tandem/operations/departments/primary/marketing-and-sales/README.md +5 -0
  267. package/schema/examples/workspace/ventures/tandem/operations/departments/primary/marketing-and-sales/department.json +5 -0
  268. package/schema/examples/workspace/ventures/tandem/pillars/brand.md +5 -0
  269. package/schema/examples/workspace/ventures/tandem/pillars/business.md +5 -0
  270. package/schema/examples/workspace/ventures/tandem/pillars/product.md +5 -0
  271. package/schema/examples/workspace/ventures/tandem/products/.gitkeep +0 -0
  272. package/schema/examples/workspace/ventures/tandem/products/shop-app.json +22 -0
  273. package/schema/examples/workspace/ventures/tandem/profile.md +5 -0
  274. package/schema/examples/workspace/ventures/tandem/provenance.jsonl +13 -0
  275. package/schema/examples/workspace/ventures/tandem/purpose/README.md +3 -0
  276. package/schema/examples/workspace/ventures/tandem/purpose/telos.json +78 -0
  277. package/schema/examples/workspace/ventures/tandem/purpose/validation/go-to-market.json +35 -0
  278. package/schema/examples/workspace/ventures/tandem/purpose/validation/pricing.json +37 -0
  279. package/schema/examples/workspace/ventures/tandem/purpose/validation/problem.json +74 -0
  280. package/schema/examples/workspace/ventures/tandem/purpose/validation/product-market-fit.json +66 -0
  281. package/schema/examples/workspace/ventures/tandem/purpose/validation/solution.json +33 -0
  282. package/schema/examples/workspace/ventures/tandem/purpose/validation/team.json +52 -0
  283. package/schema/examples/workspace/ventures/tandem/venture.json +79 -0
  284. package/schema/examples/workspace/ventures/woodworking/knowledge/.gitkeep +0 -0
  285. package/schema/examples/workspace/ventures/woodworking/venture.json +21 -0
  286. package/schema/examples/workspace/workspace.json +8 -0
  287. package/schema/exit.schema.json +74 -0
  288. package/schema/foundation.mjs +118 -0
  289. package/schema/founder-agreement.schema.json +83 -0
  290. package/schema/gate.mjs +39 -0
  291. package/schema/handoff.schema.json +239 -0
  292. package/schema/icp.schema.json +136 -0
  293. package/schema/idea-graph.schema.json +61 -0
  294. package/schema/init-venture.mjs +98 -0
  295. package/schema/integration.schema.json +143 -0
  296. package/schema/knowledge-sources.schema.json +130 -0
  297. package/schema/layer.json +46 -0
  298. package/schema/layer.schema.json +119 -0
  299. package/schema/load-packages.mjs +26 -0
  300. package/schema/marketing-sitemap.schema.json +232 -0
  301. package/schema/migrate-venture.mjs +192 -0
  302. package/schema/need-now.json +601 -0
  303. package/schema/need-now.mjs +107 -0
  304. package/schema/nextjs-status.schema.json +29 -0
  305. package/schema/ownership.schema.json +282 -0
  306. package/schema/packages.json +4 -0
  307. package/schema/packages.mjs +247 -0
  308. package/schema/payouts.mjs +91 -0
  309. package/schema/port-venture.mjs +161 -0
  310. package/schema/product.schema.json +223 -0
  311. package/schema/provenance-entry.schema.json +154 -0
  312. package/schema/publication-policy.schema.json +293 -0
  313. package/schema/raw-source.schema.json +15 -0
  314. package/schema/reference.schema.json +115 -0
  315. package/schema/route-aliases.schema.json +25 -0
  316. package/schema/run-handoff.mjs +51 -0
  317. package/schema/scaffold/defaults.json +54 -0
  318. package/schema/site-presence.schema.json +337 -0
  319. package/schema/strategic-foundation.schema.json +74 -0
  320. package/schema/stream.schema.json +14 -0
  321. package/schema/team-plan.schema.json +157 -0
  322. package/schema/telos.schema.json +197 -0
  323. package/schema/time-to-ready.mjs +93 -0
  324. package/schema/upgrade-venture.mjs +129 -0
  325. package/schema/use-model.mjs +10 -0
  326. package/schema/validate.py +49 -0
  327. package/schema/validation-evidence.schema.json +123 -0
  328. package/schema/validation-go-to-market.schema.json +110 -0
  329. package/schema/validation-operations-readiness.schema.json +91 -0
  330. package/schema/validation-pricing.schema.json +114 -0
  331. package/schema/validation-problem.schema.json +118 -0
  332. package/schema/validation-product-market-fit.schema.json +135 -0
  333. package/schema/validation-solution.schema.json +79 -0
  334. package/schema/validation-team.schema.json +116 -0
  335. package/schema/venture.schema.json +407 -0
  336. package/schema/vocab/business-models.json +298 -0
  337. package/schema/where-used.schema.json +56 -0
  338. package/schema/workspace.schema.json +38 -0
@@ -0,0 +1,938 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Business Discovery Framework</title>
7
+ <style>
8
+ :root {
9
+ --bg: #fbf8f1;
10
+ --bg-elevated: #ffffff;
11
+ --bg-subtle: #f4efe3;
12
+ --ink: #1a1814;
13
+ --ink-soft: #4a443a;
14
+ --ink-faint: #807868;
15
+ --gold: #b8862b;
16
+ --gold-soft: #d4a94a;
17
+ --gold-pale: #f0e0b2;
18
+ --rule: #e3dccb;
19
+ --rule-soft: #ece6d5;
20
+ --shadow: 0 1px 2px rgba(28, 24, 16, 0.04), 0 4px 16px rgba(28, 24, 16, 0.05);
21
+ --shadow-strong: 0 2px 4px rgba(28, 24, 16, 0.06), 0 8px 32px rgba(28, 24, 16, 0.08);
22
+ --serif: 'Iowan Old Style', 'Palatino', 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
23
+ --sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, system-ui, sans-serif;
24
+ --mono: 'SF Mono', 'Menlo', 'Monaco', 'Consolas', monospace;
25
+ }
26
+
27
+ @media (prefers-color-scheme: dark) {
28
+ :root {
29
+ --bg: #1a1814;
30
+ --bg-elevated: #221f1a;
31
+ --bg-subtle: #2a2620;
32
+ --ink: #f0ead8;
33
+ --ink-soft: #c4bda8;
34
+ --ink-faint: #8a836f;
35
+ --gold: #d4a94a;
36
+ --gold-soft: #e8c266;
37
+ --gold-pale: #3d3320;
38
+ --rule: #38332a;
39
+ --rule-soft: #2e2920;
40
+ }
41
+ }
42
+
43
+ * { box-sizing: border-box; }
44
+
45
+ html { scroll-behavior: smooth; }
46
+
47
+ body {
48
+ margin: 0;
49
+ background: var(--bg);
50
+ color: var(--ink);
51
+ font-family: var(--sans);
52
+ font-size: 17px;
53
+ line-height: 1.65;
54
+ -webkit-font-smoothing: antialiased;
55
+ -moz-osx-font-smoothing: grayscale;
56
+ }
57
+
58
+ .page {
59
+ max-width: 740px;
60
+ margin: 0 auto;
61
+ padding: 80px 32px 120px;
62
+ }
63
+
64
+ /* ── Header ─────────────────────────────────────────────────────── */
65
+
66
+ header.doc-header {
67
+ margin-bottom: 64px;
68
+ padding-bottom: 32px;
69
+ border-bottom: 1px solid var(--rule);
70
+ }
71
+
72
+ .kicker {
73
+ font-family: var(--sans);
74
+ font-size: 11px;
75
+ font-weight: 600;
76
+ letter-spacing: 0.16em;
77
+ text-transform: uppercase;
78
+ color: var(--gold);
79
+ margin: 0 0 14px;
80
+ }
81
+
82
+ h1 {
83
+ font-family: var(--serif);
84
+ font-size: 48px;
85
+ line-height: 1.1;
86
+ font-weight: 500;
87
+ letter-spacing: -0.02em;
88
+ margin: 0 0 18px;
89
+ color: var(--ink);
90
+ }
91
+
92
+ .subtitle {
93
+ font-family: var(--serif);
94
+ font-style: italic;
95
+ font-size: 22px;
96
+ line-height: 1.45;
97
+ color: var(--ink-soft);
98
+ margin: 0 0 16px;
99
+ font-weight: 400;
100
+ }
101
+
102
+ .meta {
103
+ font-size: 14px;
104
+ color: var(--ink-faint);
105
+ margin: 0;
106
+ }
107
+
108
+ /* ── Table of contents ──────────────────────────────────────────── */
109
+
110
+ nav.toc {
111
+ background: var(--bg-elevated);
112
+ border: 1px solid var(--rule);
113
+ border-radius: 10px;
114
+ padding: 24px 28px;
115
+ margin-bottom: 64px;
116
+ box-shadow: var(--shadow);
117
+ }
118
+
119
+ .toc-heading {
120
+ font-size: 11px;
121
+ font-weight: 600;
122
+ letter-spacing: 0.16em;
123
+ text-transform: uppercase;
124
+ color: var(--gold);
125
+ margin: 0 0 12px;
126
+ }
127
+
128
+ nav.toc ol {
129
+ list-style: none;
130
+ padding: 0;
131
+ margin: 0;
132
+ counter-reset: section;
133
+ }
134
+
135
+ nav.toc > ol > li {
136
+ counter-increment: section;
137
+ padding: 4px 0;
138
+ }
139
+
140
+ nav.toc ol ol {
141
+ margin: 6px 0 6px 14px;
142
+ counter-reset: subsection;
143
+ }
144
+
145
+ nav.toc ol ol li {
146
+ counter-increment: subsection;
147
+ padding: 3px 0;
148
+ }
149
+
150
+ nav.toc a {
151
+ color: var(--ink-soft);
152
+ text-decoration: none;
153
+ font-size: 15px;
154
+ border-bottom: 1px solid transparent;
155
+ transition: color 0.15s, border-color 0.15s;
156
+ }
157
+
158
+ nav.toc > ol > li > a {
159
+ font-weight: 500;
160
+ color: var(--ink);
161
+ }
162
+
163
+ nav.toc a:hover {
164
+ color: var(--gold);
165
+ border-bottom-color: var(--gold-soft);
166
+ }
167
+
168
+ nav.toc > ol > li::before {
169
+ content: counter(section) ".";
170
+ display: inline-block;
171
+ width: 24px;
172
+ color: var(--gold);
173
+ font-variant-numeric: tabular-nums;
174
+ font-weight: 600;
175
+ }
176
+
177
+ nav.toc ol ol li::before {
178
+ content: counter(section) "." counter(subsection);
179
+ display: inline-block;
180
+ width: 36px;
181
+ color: var(--ink-faint);
182
+ font-variant-numeric: tabular-nums;
183
+ font-size: 13px;
184
+ }
185
+
186
+ /* ── Section headings ───────────────────────────────────────────── */
187
+
188
+ h2 {
189
+ font-family: var(--serif);
190
+ font-size: 32px;
191
+ line-height: 1.2;
192
+ font-weight: 500;
193
+ letter-spacing: -0.015em;
194
+ margin: 72px 0 24px;
195
+ color: var(--ink);
196
+ padding-top: 8px;
197
+ }
198
+
199
+ h2:first-child { margin-top: 0; }
200
+
201
+ h3 {
202
+ font-family: var(--sans);
203
+ font-size: 18px;
204
+ line-height: 1.35;
205
+ font-weight: 600;
206
+ margin: 36px 0 14px;
207
+ color: var(--ink);
208
+ letter-spacing: -0.005em;
209
+ }
210
+
211
+ h4 {
212
+ font-family: var(--sans);
213
+ font-size: 13px;
214
+ font-weight: 600;
215
+ letter-spacing: 0.08em;
216
+ text-transform: uppercase;
217
+ color: var(--gold);
218
+ margin: 24px 0 10px;
219
+ }
220
+
221
+ /* ── Body text ──────────────────────────────────────────────────── */
222
+
223
+ p {
224
+ margin: 0 0 18px;
225
+ color: var(--ink-soft);
226
+ }
227
+
228
+ strong {
229
+ color: var(--ink);
230
+ font-weight: 600;
231
+ }
232
+
233
+ em {
234
+ font-style: italic;
235
+ }
236
+
237
+ /* ── Layer cards ────────────────────────────────────────────────── */
238
+
239
+ .layer {
240
+ background: var(--bg-elevated);
241
+ border: 1px solid var(--rule);
242
+ border-radius: 14px;
243
+ padding: 36px 36px 28px;
244
+ margin: 32px 0;
245
+ box-shadow: var(--shadow);
246
+ position: relative;
247
+ }
248
+
249
+ .layer-badge {
250
+ position: absolute;
251
+ top: -18px;
252
+ left: 32px;
253
+ display: inline-flex;
254
+ align-items: center;
255
+ gap: 10px;
256
+ background: var(--gold);
257
+ color: #fff;
258
+ padding: 8px 16px;
259
+ border-radius: 24px;
260
+ font-family: var(--sans);
261
+ font-size: 11px;
262
+ font-weight: 700;
263
+ letter-spacing: 0.14em;
264
+ text-transform: uppercase;
265
+ box-shadow: var(--shadow);
266
+ }
267
+
268
+ .layer-badge .num {
269
+ font-family: var(--serif);
270
+ font-size: 16px;
271
+ font-weight: 600;
272
+ letter-spacing: normal;
273
+ }
274
+
275
+ .layer h2 {
276
+ margin: 6px 0 16px;
277
+ font-size: 28px;
278
+ }
279
+
280
+ .layer .purpose {
281
+ font-style: italic;
282
+ color: var(--ink-soft);
283
+ margin-bottom: 24px;
284
+ }
285
+
286
+ /* ── Magic prompts ──────────────────────────────────────────────── */
287
+
288
+ .magic-prompt {
289
+ font-family: var(--serif);
290
+ font-style: italic;
291
+ font-size: 21px;
292
+ line-height: 1.4;
293
+ color: var(--ink);
294
+ border-left: 3px solid var(--gold);
295
+ padding: 6px 0 6px 24px;
296
+ margin: 20px 0 24px;
297
+ }
298
+
299
+ .magic-prompt::before {
300
+ content: '"';
301
+ font-family: var(--serif);
302
+ font-size: 48px;
303
+ line-height: 0;
304
+ vertical-align: -16px;
305
+ color: var(--gold-soft);
306
+ margin-right: 4px;
307
+ }
308
+
309
+ .magic-prompt::after {
310
+ content: '"';
311
+ font-family: var(--serif);
312
+ font-size: 48px;
313
+ line-height: 0;
314
+ vertical-align: -16px;
315
+ color: var(--gold-soft);
316
+ margin-left: 2px;
317
+ }
318
+
319
+ /* ── Prompt lists ───────────────────────────────────────────────── */
320
+
321
+ .prompts {
322
+ list-style: none;
323
+ padding: 0;
324
+ margin: 0 0 24px;
325
+ }
326
+
327
+ .prompts li {
328
+ padding: 10px 0 10px 28px;
329
+ position: relative;
330
+ color: var(--ink-soft);
331
+ border-bottom: 1px dashed var(--rule-soft);
332
+ }
333
+
334
+ .prompts li:last-child {
335
+ border-bottom: none;
336
+ }
337
+
338
+ .prompts li::before {
339
+ content: "›";
340
+ position: absolute;
341
+ left: 6px;
342
+ top: 9px;
343
+ color: var(--gold);
344
+ font-weight: 700;
345
+ font-size: 18px;
346
+ }
347
+
348
+ /* ── Listen-for callout ─────────────────────────────────────────── */
349
+
350
+ .listen-for {
351
+ background: var(--bg-subtle);
352
+ border-radius: 8px;
353
+ padding: 16px 20px;
354
+ margin: 20px 0 0;
355
+ font-size: 15px;
356
+ color: var(--ink-soft);
357
+ }
358
+
359
+ .listen-for strong {
360
+ display: block;
361
+ font-size: 11px;
362
+ letter-spacing: 0.14em;
363
+ text-transform: uppercase;
364
+ color: var(--gold);
365
+ margin-bottom: 6px;
366
+ font-weight: 700;
367
+ }
368
+
369
+ /* ── Tables ─────────────────────────────────────────────────────── */
370
+
371
+ table {
372
+ width: 100%;
373
+ border-collapse: collapse;
374
+ margin: 24px 0;
375
+ font-size: 15px;
376
+ background: var(--bg-elevated);
377
+ border: 1px solid var(--rule);
378
+ border-radius: 8px;
379
+ overflow: hidden;
380
+ }
381
+
382
+ th, td {
383
+ text-align: left;
384
+ padding: 12px 16px;
385
+ vertical-align: top;
386
+ }
387
+
388
+ th {
389
+ background: var(--bg-subtle);
390
+ color: var(--ink);
391
+ font-weight: 600;
392
+ font-size: 13px;
393
+ letter-spacing: 0.04em;
394
+ text-transform: uppercase;
395
+ border-bottom: 1px solid var(--rule);
396
+ }
397
+
398
+ td {
399
+ color: var(--ink-soft);
400
+ border-top: 1px solid var(--rule-soft);
401
+ }
402
+
403
+ tr:first-child td { border-top: none; }
404
+
405
+ /* ── Lists ──────────────────────────────────────────────────────── */
406
+
407
+ ul, ol {
408
+ padding-left: 22px;
409
+ color: var(--ink-soft);
410
+ }
411
+
412
+ ul li, ol li {
413
+ margin: 8px 0;
414
+ }
415
+
416
+ ul.bare {
417
+ list-style: none;
418
+ padding-left: 0;
419
+ }
420
+
421
+ ul.bare li {
422
+ padding: 8px 0;
423
+ border-bottom: 1px solid var(--rule-soft);
424
+ }
425
+
426
+ ul.bare li:last-child {
427
+ border-bottom: none;
428
+ }
429
+
430
+ ul.checklist {
431
+ list-style: none;
432
+ padding-left: 0;
433
+ }
434
+
435
+ ul.checklist li {
436
+ padding: 6px 0 6px 30px;
437
+ position: relative;
438
+ }
439
+
440
+ ul.checklist li::before {
441
+ content: "";
442
+ position: absolute;
443
+ left: 0;
444
+ top: 11px;
445
+ width: 16px;
446
+ height: 16px;
447
+ border: 1.5px solid var(--ink-faint);
448
+ border-radius: 4px;
449
+ background: var(--bg-elevated);
450
+ }
451
+
452
+ /* ── Callouts ───────────────────────────────────────────────────── */
453
+
454
+ .callout {
455
+ border-left: 3px solid var(--gold);
456
+ background: var(--gold-pale);
457
+ border-radius: 0 8px 8px 0;
458
+ padding: 16px 20px;
459
+ margin: 24px 0;
460
+ color: var(--ink-soft);
461
+ }
462
+
463
+ .callout-warn {
464
+ border-left-color: #c2773a;
465
+ background: rgba(194, 119, 58, 0.08);
466
+ }
467
+
468
+ .callout strong {
469
+ color: var(--ink);
470
+ }
471
+
472
+ /* ── Anti-patterns ──────────────────────────────────────────────── */
473
+
474
+ .anti-pattern {
475
+ padding: 10px 0 10px 36px;
476
+ position: relative;
477
+ color: var(--ink-soft);
478
+ border-bottom: 1px solid var(--rule-soft);
479
+ }
480
+
481
+ .anti-pattern:last-child { border-bottom: none; }
482
+
483
+ .anti-pattern::before {
484
+ content: "✕";
485
+ position: absolute;
486
+ left: 8px;
487
+ top: 10px;
488
+ color: #c2773a;
489
+ font-weight: 700;
490
+ }
491
+
492
+ /* ── Section dividers ───────────────────────────────────────────── */
493
+
494
+ hr.divider {
495
+ border: none;
496
+ margin: 80px 0;
497
+ height: 1px;
498
+ background: linear-gradient(to right, transparent, var(--rule), transparent);
499
+ }
500
+
501
+ /* ── Footer ─────────────────────────────────────────────────────── */
502
+
503
+ footer {
504
+ margin-top: 80px;
505
+ padding-top: 32px;
506
+ border-top: 1px solid var(--rule);
507
+ font-size: 13px;
508
+ color: var(--ink-faint);
509
+ text-align: center;
510
+ }
511
+
512
+ footer p { color: var(--ink-faint); }
513
+
514
+ /* ── Print styles ───────────────────────────────────────────────── */
515
+
516
+ @media print {
517
+ body { background: white; }
518
+ .page { max-width: 100%; padding: 0; }
519
+ nav.toc { page-break-after: always; }
520
+ .layer { page-break-inside: avoid; box-shadow: none; }
521
+ h2 { page-break-after: avoid; }
522
+ }
523
+
524
+ /* ── Mobile ─────────────────────────────────────────────────────── */
525
+
526
+ @media (max-width: 640px) {
527
+ .page { padding: 40px 20px 80px; }
528
+ h1 { font-size: 36px; }
529
+ .subtitle { font-size: 19px; }
530
+ h2 { font-size: 26px; }
531
+ .layer { padding: 32px 20px 24px; }
532
+ .layer-badge { left: 16px; }
533
+ .magic-prompt { font-size: 18px; padding-left: 18px; }
534
+ table { font-size: 14px; }
535
+ th, td { padding: 10px 12px; }
536
+ }
537
+ </style>
538
+ </head>
539
+ <body>
540
+ <div class="page">
541
+
542
+ <header class="doc-header">
543
+ <p class="kicker">Wonka · Methodology Consultancy · Framework</p>
544
+ <h1>Business Discovery Framework</h1>
545
+ <p class="subtitle">A conversation framework for understanding another operator's business comprehensively enough to build their vault and systems on top of it.</p>
546
+ <p class="meta">Industry-agnostic structure with industry-specific addenda. Open during a discovery / intake session. This is not a script — it is a structure that ensures the conversation surfaces what needs to be surfaced.</p>
547
+ </header>
548
+
549
+ <nav class="toc">
550
+ <p class="toc-heading">Contents</p>
551
+ <ol>
552
+ <li><a href="#how-to-use">How to use this</a></li>
553
+ <li><a href="#layers">The Seven Layers</a>
554
+ <ol>
555
+ <li><a href="#layer-1">Layer 1 — The Vivid Present</a></li>
556
+ <li><a href="#layer-2">Layer 2 — The Full Surface</a></li>
557
+ <li><a href="#layer-3">Layer 3 — The Pain &amp; Friction</a></li>
558
+ <li><a href="#layer-4">Layer 4 — The Dreams (apply BASED)</a></li>
559
+ <li><a href="#layer-5">Layer 5 — The Gap</a></li>
560
+ <li><a href="#layer-6">Layer 6 — The Next Step</a></li>
561
+ <li><a href="#layer-7">Layer 7 — Tooling Inventory</a></li>
562
+ </ol>
563
+ </li>
564
+ <li><a href="#capture">Capture protocol</a></li>
565
+ <li><a href="#outputs">Output artifacts</a></li>
566
+ <li><a href="#addenda">Industry-specific addenda</a></li>
567
+ <li><a href="#anti-patterns">Anti-patterns</a></li>
568
+ <li><a href="#variations">Variations by operator type</a></li>
569
+ <li><a href="#prep">Pre-session prep</a></li>
570
+ <li><a href="#after">After-session protocol</a></li>
571
+ </ol>
572
+ </nav>
573
+
574
+ <section id="how-to-use">
575
+ <h2>How to use this</h2>
576
+ <ul>
577
+ <li>Open this doc and the consultancy checklist <em>side-by-side</em> at the start of the session.</li>
578
+ <li>Run the layers in order for a first session; you can jump between them in later sessions.</li>
579
+ <li>Take notes <em>directly in the operator's vault</em> — they see capture happening; this enacts the data sovereignty principle.</li>
580
+ <li>Use the operator's own words wherever possible; don't translate to methodology vocabulary in real-time.</li>
581
+ <li>Don't fill silences too quickly — the best answers come after a pause.</li>
582
+ </ul>
583
+ <p>Expect 60-120 minutes for a first session covering all seven layers. If you have less time, prioritize Layers 1, 3, 4, and 7.</p>
584
+ </section>
585
+
586
+ <hr class="divider">
587
+
588
+ <section id="layers">
589
+ <h2>The Seven Layers</h2>
590
+ <p>Each layer is a conversational arc that surfaces a different dimension of the operator's business. They flow naturally from concrete (today) → emotional (pain &amp; dreams) → actionable (next step) → factual (tools). Don't force completion; sense the energy.</p>
591
+ </section>
592
+
593
+ <article class="layer" id="layer-1">
594
+ <span class="layer-badge"><span class="num">01</span> Layer One</span>
595
+ <h2>The Vivid Present</h2>
596
+ <p class="purpose">Get the operator talking comfortably. Surface ops, tools, customers, time-use, energy, frustrations, and joys — all in one pass.</p>
597
+
598
+ <h4>Magic prompt</h4>
599
+ <p class="magic-prompt">Walk me through what a typical Tuesday looks like — from when you wake up until you stop working.</p>
600
+
601
+ <h4>Follow-on prompts</h4>
602
+ <ul class="prompts">
603
+ <li>Walk me through what happens when a new client first contacts you — from their first message to their first visit.</li>
604
+ <li>What's the most recent thing you did for the business, in the last 24 hours?</li>
605
+ <li>What did this week look like? Last week?</li>
606
+ </ul>
607
+
608
+ <div class="listen-for">
609
+ <strong>What to listen for</strong>
610
+ Tools mentioned in passing, time of day they work, energy peaks and valleys, who else is involved, recurring frustrations they don't even name as frustrations.
611
+ </div>
612
+ </article>
613
+
614
+ <article class="layer" id="layer-2">
615
+ <span class="layer-badge"><span class="num">02</span> Layer Two</span>
616
+ <h2>The Full Surface</h2>
617
+ <p class="purpose">A factual picture of the business — what, who, when, where, how much, with whom.</p>
618
+
619
+ <h4>Prompts</h4>
620
+ <ul class="prompts">
621
+ <li><strong>What</strong> — What services do you offer, and what does each one cost?</li>
622
+ <li><strong>Who</strong> — How many active clients do you have right now? How many are recurring?</li>
623
+ <li><strong>When</strong> — What does your schedule look like? Are there busy days or seasons?</li>
624
+ <li><strong>Where</strong> — What geography do you serve? How far do you travel? Do you have a physical location?</li>
625
+ <li><strong>How much</strong> — Roughly, what's a good month vs. a tough month? <em>(Calibrate to relationship.)</em></li>
626
+ <li><strong>With whom</strong> — Are you the only person doing this, or do you have help? Contractors? Partners?</li>
627
+ </ul>
628
+
629
+ <h4>Optional deeper cuts</h4>
630
+ <ul class="prompts">
631
+ <li>What's your client mix — long-term recurring, one-time, mix?</li>
632
+ <li>How do new clients usually find you?</li>
633
+ <li>What's your booking lead time — same-day, week ahead, month ahead?</li>
634
+ </ul>
635
+
636
+ <div class="listen-for">
637
+ <strong>What to listen for</strong>
638
+ Revenue model (recurring vs. transactional), capacity constraints (solo vs. team), geographic scope, customer acquisition channels.
639
+ </div>
640
+ </article>
641
+
642
+ <article class="layer" id="layer-3">
643
+ <span class="layer-badge"><span class="num">03</span> Layer Three</span>
644
+ <h2>The Pain &amp; Friction</h2>
645
+ <p class="purpose">Surface where the vault and methodology will deliver immediate value. Pain points point to where to build first.</p>
646
+
647
+ <h4>Prompts</h4>
648
+ <ul class="prompts">
649
+ <li>What part of the business takes way more time than it should?</li>
650
+ <li>What's something that keeps slipping through the cracks?</li>
651
+ <li>If you could wave a wand and eliminate one part of your job, what would it be?</li>
652
+ <li>Tell me about the last time something went wrong — a missed visit, a billing issue, a lost client. What happened?</li>
653
+ <li>What's the Sunday-night feeling about the week ahead? <em>(Emotional temperature check.)</em></li>
654
+ <li>What part of running the business do you dread?</li>
655
+ </ul>
656
+
657
+ <div class="listen-for">
658
+ <strong>What to listen for</strong>
659
+ Repeated manual tasks (automation candidates), forgotten or dropped things (capture-system candidates), high-stakes errors (process candidates), emotional weight (coaching candidates).
660
+ </div>
661
+ </article>
662
+
663
+ <article class="layer" id="layer-4">
664
+ <span class="layer-badge"><span class="num">04</span> Layer Four</span>
665
+ <h2>The Dreams <span style="color: var(--ink-faint); font-size: 0.7em;">— apply BASED silently</span></h2>
666
+ <p class="purpose">Surface the operator's actual ambition, uncensored. This is the Phase 0C work — refuse premature narrowing.</p>
667
+
668
+ <h4>Prompts (deploy progressively)</h4>
669
+ <ul class="prompts">
670
+ <li>If you could design the business of your dreams, with zero constraints on money, time, or possibility — what does it look like in five years?</li>
671
+ <li>What would make you say "I made it"?</li>
672
+ <li>What's the most ambitious version of this you've ever imagined, even if you've never said it out loud?</li>
673
+ <li>If a customer wrote you a review you'd love to receive — what does it say?</li>
674
+ <li>What would you build if you knew you couldn't fail?</li>
675
+ </ul>
676
+
677
+ <h4>Watch for self-censorship</h4>
678
+ <table>
679
+ <thead>
680
+ <tr>
681
+ <th style="width: 30%">Cue</th>
682
+ <th style="width: 30%">What it usually means</th>
683
+ <th style="width: 40%">Gentle redirect</th>
684
+ </tr>
685
+ </thead>
686
+ <tbody>
687
+ <tr>
688
+ <td>"I just want to..."</td>
689
+ <td>Pre-narrowed</td>
690
+ <td>"What if 'just' wasn't a limit — what would you actually want?"</td>
691
+ </tr>
692
+ <tr>
693
+ <td>"Realistically..."</td>
694
+ <td>Pre-narrowing</td>
695
+ <td>"Set realism aside for a sec — what's the dream?"</td>
696
+ </tr>
697
+ <tr>
698
+ <td>"I don't know if I could..."</td>
699
+ <td>Premature humility</td>
700
+ <td>"If you could, what would it be?"</td>
701
+ </tr>
702
+ <tr>
703
+ <td>"That's probably too..."</td>
704
+ <td>Premature dismissal</td>
705
+ <td>"Say it anyway — let's see what it sounds like."</td>
706
+ </tr>
707
+ <tr>
708
+ <td>"But the market is..."</td>
709
+ <td>Pre-defensiveness</td>
710
+ <td>"Forget the market for a moment — what's the version you'd build for yourself?"</td>
711
+ </tr>
712
+ </tbody>
713
+ </table>
714
+
715
+ <h4>Apply each BASED letter as a check</h4>
716
+ <ul class="bare">
717
+ <li><strong>B — Broad.</strong> Is the aperture as wide as it could be?</li>
718
+ <li><strong>A — Audacious.</strong> Would they be willing to say this in public?</li>
719
+ <li><strong>S — Silly.</strong> Is there a playful, Willy-Wonka-tier vivid version of this?</li>
720
+ <li><strong>E — Egotistical.</strong> Are they willing to put themselves at the center?</li>
721
+ <li><strong>D — Delusional.</strong> Are they refusing current evidence long enough to imagine what isn't yet?</li>
722
+ </ul>
723
+
724
+ <div class="callout">
725
+ <strong>Important:</strong> Don't say "BASED" or explain the framework to the operator. You're applying it as the consultant; the operator just experiences thoughtful, generative questions.
726
+ </div>
727
+ </article>
728
+
729
+ <article class="layer" id="layer-5">
730
+ <span class="layer-badge"><span class="num">05</span> Layer Five</span>
731
+ <h2>The Gap</h2>
732
+ <p class="purpose">Surface what stands between today (Layers 1-2) and the dream (Layer 4).</p>
733
+
734
+ <h4>Prompts</h4>
735
+ <ul class="prompts">
736
+ <li>What's standing between you and that dream version of the business?</li>
737
+ <li>What's one thing that, if solved, would make the biggest difference?</li>
738
+ <li>Is the bottleneck time, money, knowledge, energy, people, or something else?</li>
739
+ <li>What have you tried that didn't work?</li>
740
+ <li>What do you wish you knew that you don't?</li>
741
+ </ul>
742
+
743
+ <div class="listen-for">
744
+ <strong>What to listen for</strong>
745
+ The <em>specific</em> shape of the bottleneck. "I need more clients" is vague; "I lose every Friday to billing reconciliation" is specific. Specificity is the substrate of action.
746
+ </div>
747
+ </article>
748
+
749
+ <article class="layer" id="layer-6">
750
+ <span class="layer-badge"><span class="num">06</span> Layer Six</span>
751
+ <h2>The Next Step</h2>
752
+ <p class="purpose">Identify the smallest immediate action that moves the needle — so the operator walks away with momentum, not just structure.</p>
753
+
754
+ <h4>Prompts</h4>
755
+ <ul class="prompts">
756
+ <li>If we did ONE thing today that would make this week better, what would it be?</li>
757
+ <li>What's a small win that would feel disproportionately good?</li>
758
+ <li>What's something you've been meaning to do but haven't gotten around to?</li>
759
+ <li>What's the smallest version of the dream we could start on today?</li>
760
+ </ul>
761
+
762
+ <p>This conversation produces <strong>the first planned session</strong> for the operator's vault — concrete, scoped, actionable.</p>
763
+ </article>
764
+
765
+ <article class="layer" id="layer-7">
766
+ <span class="layer-badge"><span class="num">07</span> Layer Seven</span>
767
+ <h2>Tooling Inventory</h2>
768
+ <p class="purpose">Groundwork for connector setup; understand what already exists vs. what needs to be built.</p>
769
+
770
+ <h4>Prompts</h4>
771
+ <ul class="prompts">
772
+ <li>Walk me through every tool, app, or piece of software you use for the business.</li>
773
+ <li>Where do client records live? Schedules? Payments? Photos? Communications?</li>
774
+ <li>Phone setup — separate business line, or personal?</li>
775
+ <li>How do you take payment?</li>
776
+ <li>Business email? Social accounts? Website?</li>
777
+ <li>What tools do you wish you used but haven't set up?</li>
778
+ </ul>
779
+
780
+ <h4>Walk through systematically</h4>
781
+ <table>
782
+ <tbody>
783
+ <tr><td>Scheduling / calendar</td><td>Client intake / forms</td></tr>
784
+ <tr><td>Client database / CRM</td><td>Payment processing</td></tr>
785
+ <tr><td>Accounting / bookkeeping</td><td>Tax preparation</td></tr>
786
+ <tr><td>Communications (email, SMS, social DMs)</td><td>Photo / file storage</td></tr>
787
+ <tr><td>Marketing (social, email lists, ads)</td><td>Supplier portals / inventory</td></tr>
788
+ <tr><td>Insurance / licensing portals</td><td>Banking</td></tr>
789
+ <tr><td>Domain / website / hosting</td><td></td></tr>
790
+ </tbody>
791
+ </table>
792
+
793
+ <p>For each tool, capture: what's used, who else has access, what data lives there, whether they're happy with it. This feeds Phase 5 of the consultancy checklist (external tool connections).</p>
794
+ </article>
795
+
796
+ <hr class="divider">
797
+
798
+ <section id="capture">
799
+ <h2>Capture Protocol</h2>
800
+ <p>During the session:</p>
801
+ <ol>
802
+ <li>Open her vault. Create a new file: <code>_sessions/raw/&lt;date&gt;-discovery-session.md</code></li>
803
+ <li>Take notes there in real time, in her own words.</li>
804
+ <li>Don't pre-categorize — capture raw; organize later.</li>
805
+ <li>Use timestamps for major shifts in topic (helpful when reviewing).</li>
806
+ <li>Don't try to be comprehensive in-line — flag for follow-up rather than chasing every thread.</li>
807
+ </ol>
808
+ <p>After the conversation, take a 10-15 minute break and synthesize. Pull observations into the entity-profile draft. Pull ideas into <code>_ideas/</code>. Pull next-steps into <code>_sessions/planned/</code>. Pull dreams into a draft VISION_SPEC.</p>
809
+ </section>
810
+
811
+ <section id="outputs">
812
+ <h2>Output Artifacts by End of Session</h2>
813
+ <p>By the time the operator leaves the first session, her vault should contain:</p>
814
+ <ul class="checklist">
815
+ <li><code>entity-profile.md</code> for the business (concept or scoped stage)</li>
816
+ <li>3-5 idea notes in <code>_ideas/</code> (captured from Layers 3, 4, 5)</li>
817
+ <li>1-2 planned sessions in <code>_sessions/planned/</code> (from Layer 6)</li>
818
+ <li>Session-log entry for today's discovery session</li>
819
+ <li>VISION_SPEC draft (rough — Phase 0C output from Layer 4)</li>
820
+ <li>Tooling inventory note at <code>_meta/tooling-inventory.md</code></li>
821
+ <li>Pain points / friction note for prioritization</li>
822
+ <li><code>code-pointer.md</code> placeholder if any tech work will follow</li>
823
+ </ul>
824
+ <div class="callout">
825
+ The vault should feel <strong>populated</strong>, not empty. She should be able to open it and see her business reflected back.
826
+ </div>
827
+ </section>
828
+
829
+ <hr class="divider">
830
+
831
+ <section id="addenda">
832
+ <h2>Industry-Specific Addenda</h2>
833
+
834
+ <h3>Pet-care / pet-sitting</h3>
835
+ <p>Specific questions to surface pet-care nuance:</p>
836
+ <ul>
837
+ <li><strong>Pet types served</strong> — dogs only? Cats? Exotic? Special needs?</li>
838
+ <li><strong>Service types</strong> — boarding, drop-in visits, dog walks, overnight stays, transport, training, grooming?</li>
839
+ <li><strong>Visit cadence</strong> — daily for some clients? Weekly? Ad-hoc?</li>
840
+ <li><strong>Key handoff protocol</strong> — does she hold keys, use lockboxes, smart locks?</li>
841
+ <li><strong>Insurance + bonding</strong> — Pet Sitters International? Local liability? Bonded for key-holding?</li>
842
+ <li><strong>Vet partnerships</strong> — does she have go-to vets for emergencies? Referral relationships?</li>
843
+ <li><strong>Emergency protocols</strong> — what happens when a pet gets injured, loose, or sick during her visit?</li>
844
+ <li><strong>Vehicle / travel</strong> — does she travel between clients? Mileage tracked? Vehicle insured commercially?</li>
845
+ <li><strong>Equipment owned</strong> — leashes, treats, first aid, transport carriers, cleanup supplies?</li>
846
+ <li><strong>Background check / certifications</strong> — pet CPR? Pet first aid? Background check for client trust?</li>
847
+ <li><strong>Pet info storage</strong> — where do allergy, medication, behavior, vet info live today?</li>
848
+ <li><strong>Photo / update protocol</strong> — does she send daily photos? Update clients in real-time?</li>
849
+ <li><strong>Pricing structure</strong> — per-visit, per-day, monthly package, sliding by service?</li>
850
+ <li><strong>Geographic radius</strong> — how far does she travel? Strict limits?</li>
851
+ <li><strong>Seasonal patterns</strong> — summer or holiday peaks? Slow seasons?</li>
852
+ </ul>
853
+
854
+ <h3>Other industries (future)</h3>
855
+ <table>
856
+ <thead>
857
+ <tr><th>Industry</th><th>Focus areas</th></tr>
858
+ </thead>
859
+ <tbody>
860
+ <tr><td>Restaurant / food-service</td><td>Menu/recipe versioning · Vendor relationships · Health code · Shift scheduling · POS integration · Liquor license</td></tr>
861
+ <tr><td>Solo consulting</td><td>Service offerings/packaging · Client intake/contracts · Time tracking/invoicing · Knowledge management <em>is</em> the product</td></tr>
862
+ <tr><td>E-commerce / D2C</td><td>Product catalog · Inventory · Fulfillment · Customer support</td></tr>
863
+ <tr><td>Software / SaaS</td><td>Existing SAD applies directly · Code repo, CI/CD, deploy · Customer onboarding flows</td></tr>
864
+ </tbody>
865
+ </table>
866
+ </section>
867
+
868
+ <hr class="divider">
869
+
870
+ <section id="anti-patterns">
871
+ <h2>Anti-Patterns</h2>
872
+ <p>Things to avoid during the discovery session:</p>
873
+ <div class="anti-pattern">Don't lead with the methodology. Lead with her business. The methodology is invisible scaffolding.</div>
874
+ <div class="anti-pattern">Don't translate her vocabulary to yours. Capture in her language; harmonize later.</div>
875
+ <div class="anti-pattern">Don't fill silences too quickly. The best answers come after a pause.</div>
876
+ <div class="anti-pattern">Don't make it feel like an interview or audit. This is a generative conversation.</div>
877
+ <div class="anti-pattern">Don't commit to building anything mid-session. Capture, decide between sessions.</div>
878
+ <div class="anti-pattern">Don't pre-narrow her BASED ambition with "well, realistically..."</div>
879
+ <div class="anti-pattern">Don't pretend you have answers you don't have. "I don't know — let's figure it out" is a strong consultant move.</div>
880
+ <div class="anti-pattern">Don't try to cover all seven layers if it's killing the energy. A great Layer 1-4 + Layer 7 is better than a forced full pass.</div>
881
+ <div class="anti-pattern">Don't tell her the Wonka story today. The brand isn't ready; the methodology is doing the work.</div>
882
+ </section>
883
+
884
+ <section id="variations">
885
+ <h2>Variations by Operator Type</h2>
886
+ <table>
887
+ <thead>
888
+ <tr><th style="width: 35%">Operator type</th><th>Adjustments</th></tr>
889
+ </thead>
890
+ <tbody>
891
+ <tr><td>Solo founder</td><td>All layers as-is</td></tr>
892
+ <tr><td>Team-based</td><td>Add: "Walk me through your team — roles, who does what, who you trust with what."</td></tr>
893
+ <tr><td>Service business</td><td>Standard framework applies</td></tr>
894
+ <tr><td>Product business</td><td>Layer 2 emphasis on inventory / catalog / fulfillment</td></tr>
895
+ <tr><td>Pre-launch</td><td>Layer 1 → "what does a typical week look like <em>now</em>, even though the business isn't started yet?"</td></tr>
896
+ <tr><td>Running business</td><td>Standard framework</td></tr>
897
+ <tr><td>Local</td><td>Layer 2: emphasis on geographic constraints and community</td></tr>
898
+ <tr><td>Online / national</td><td>Layer 2: emphasis on channel mix and customer acquisition</td></tr>
899
+ </tbody>
900
+ </table>
901
+ </section>
902
+
903
+ <hr class="divider">
904
+
905
+ <section id="prep">
906
+ <h2>Pre-Session Prep <span style="color: var(--ink-faint); font-size: 0.65em; font-weight: 400;">— 30 minutes before</span></h2>
907
+ <ul class="checklist">
908
+ <li>Open this framework + the consultancy checklist</li>
909
+ <li>Confirm her machine has Obsidian (or be ready to install)</li>
910
+ <li>Confirm Claude Code / Cowork is reachable</li>
911
+ <li>Have a notebook ready (in case her vault isn't accessible at start)</li>
912
+ <li>Hydrate; restroom</li>
913
+ <li>Set time expectation with her ("This will probably take 2-3 hours; let me know when you need breaks")</li>
914
+ <li>Note your own energy — discovery work is dense; pace matters</li>
915
+ <li>Make sure no other Claude session has heavy state competing for your attention</li>
916
+ </ul>
917
+ </section>
918
+
919
+ <section id="after">
920
+ <h2>After-Session Protocol <span style="color: var(--ink-faint); font-size: 0.65em; font-weight: 400;">— within 24 hours</span></h2>
921
+ <ul class="checklist">
922
+ <li>Synthesize the raw session notes into the output artifacts</li>
923
+ <li>Send her the entity-profile draft + VISION_SPEC draft for review</li>
924
+ <li>Schedule the follow-up session (this is when actual setup work happens)</li>
925
+ <li>Add your retrospective notes to <code>a consulting practice/_ideas/</code>: what worked, what didn't, what's missing from this framework</li>
926
+ </ul>
927
+ <div class="callout">
928
+ The framework gets better every time you use it. <strong>Refine.</strong>
929
+ </div>
930
+ </section>
931
+
932
+ <footer>
933
+ <p>Business Discovery Framework · Methodology Consultancy (Wonka, working name) · v0.1 · 2026-05-19</p>
934
+ </footer>
935
+
936
+ </div>
937
+ </body>
938
+ </html>