@keighleykodric/weeve 0.1.0 → 0.1.2

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 (98) hide show
  1. package/README.md +75 -19
  2. package/bin/weeve.js +467 -2
  3. package/examples/core/CODEOWNERS.template +9 -0
  4. package/examples/core/README.md +63 -0
  5. package/examples/core/demo/README.md +38 -0
  6. package/examples/core/demo/weeve/ally/ally-intake.md +16 -0
  7. package/examples/core/demo/weeve/compass/compass-intake.md +15 -0
  8. package/examples/core/demo/weeve/layers-plus/figma-notes.md +31 -0
  9. package/examples/core/demo/weeve/layers-plus/layers-plus-intake.md +13 -0
  10. package/examples/core/demo/weeve/rubric/component-inventory.md +42 -0
  11. package/examples/core/demo/weeve/rubric/rubric-intake.md +14 -0
  12. package/examples/core/demo/weeve/shared/competitive.md +28 -0
  13. package/examples/core/demo/weeve/shared/roadmap.md +26 -0
  14. package/examples/core/demo/weeve/shared/weeve-guardrails.md +28 -0
  15. package/examples/core/demo/weeve/shared/weeve-intake.md +18 -0
  16. package/examples/core/demo/weeve/shared/weeve-project.md +33 -0
  17. package/examples/core/demo/weeve.yaml +15 -0
  18. package/examples/core/weeve.yaml +14 -0
  19. package/examples/engineering/CODEOWNERS.template +9 -0
  20. package/examples/engineering/README.md +61 -0
  21. package/examples/engineering/demo/README.md +20 -0
  22. package/examples/engineering/demo/weeve/forge/architecture.md +39 -0
  23. package/examples/engineering/demo/weeve/forge/ci-metrics.md +47 -0
  24. package/examples/engineering/demo/weeve/forge/forge-intake.md +41 -0
  25. package/examples/engineering/demo/weeve/guard/guard-intake.md +17 -0
  26. package/examples/engineering/demo/weeve/helm/helm-intake.md +16 -0
  27. package/examples/engineering/demo/weeve/helm/incidents.md +40 -0
  28. package/examples/engineering/demo/weeve/helm/on-call-runbook.md +33 -0
  29. package/examples/engineering/demo/weeve/shared/roadmap.md +25 -0
  30. package/examples/engineering/demo/weeve/shared/team.md +33 -0
  31. package/examples/engineering/demo/weeve/shared/weeve-guardrails.md +27 -0
  32. package/examples/engineering/demo/weeve/shared/weeve-intake.md +18 -0
  33. package/examples/engineering/demo/weeve/shared/weeve-project.md +29 -0
  34. package/examples/engineering/demo/weeve/verify/coverage-report.md +49 -0
  35. package/examples/engineering/demo/weeve/verify/verify-intake.md +16 -0
  36. package/examples/engineering/demo/weeve.yaml +15 -0
  37. package/examples/engineering/weeve.yaml +14 -0
  38. package/examples/gtm/CODEOWNERS.template +8 -0
  39. package/examples/gtm/README.md +59 -0
  40. package/examples/gtm/demo/README.md +19 -0
  41. package/examples/gtm/demo/weeve/compass/compass-intake.md +15 -0
  42. package/examples/gtm/demo/weeve/maven/maven-intake.md +35 -0
  43. package/examples/gtm/demo/weeve/maven/website-notes.md +33 -0
  44. package/examples/gtm/demo/weeve/pitch/pitch-intake.md +54 -0
  45. package/examples/gtm/demo/weeve/pitch/sales-deck-notes.md +28 -0
  46. package/examples/gtm/demo/weeve/pitch/win-loss-notes.md +40 -0
  47. package/examples/gtm/demo/weeve/shared/competitive.md +30 -0
  48. package/examples/gtm/demo/weeve/shared/roadmap.md +19 -0
  49. package/examples/gtm/demo/weeve/shared/weeve-guardrails.md +24 -0
  50. package/examples/gtm/demo/weeve/shared/weeve-intake.md +18 -0
  51. package/examples/gtm/demo/weeve/shared/weeve-project.md +25 -0
  52. package/examples/gtm/demo/weeve.yaml +22 -0
  53. package/examples/gtm/weeve.yaml +14 -0
  54. package/examples/product/CODEOWNERS.template +10 -0
  55. package/examples/product/README.md +67 -0
  56. package/examples/product/demo/README.md +21 -0
  57. package/examples/product/demo/weeve/ally/ally-intake.md +16 -0
  58. package/examples/product/demo/weeve/compass/compass-intake.md +15 -0
  59. package/examples/product/demo/weeve/felt/felt-intake.md +37 -0
  60. package/examples/product/demo/weeve/felt/user-research.md +68 -0
  61. package/examples/product/demo/weeve/layers-plus/layers-plus-intake.md +14 -0
  62. package/examples/product/demo/weeve/rubric/component-inventory.md +42 -0
  63. package/examples/product/demo/weeve/rubric/rubric-intake.md +14 -0
  64. package/examples/product/demo/weeve/shared/competitive.md +28 -0
  65. package/examples/product/demo/weeve/shared/roadmap.md +32 -0
  66. package/examples/product/demo/weeve/shared/weeve-guardrails.md +27 -0
  67. package/examples/product/demo/weeve/shared/weeve-intake.md +18 -0
  68. package/examples/product/demo/weeve/shared/weeve-project.md +29 -0
  69. package/examples/product/demo/weeve.yaml +21 -0
  70. package/examples/product/weeve.yaml +14 -0
  71. package/examples/strategy/CODEOWNERS.template +8 -0
  72. package/examples/strategy/README.md +59 -0
  73. package/examples/strategy/demo/README.md +19 -0
  74. package/examples/strategy/demo/weeve/compass/compass-intake.md +34 -0
  75. package/examples/strategy/demo/weeve/compass/customer-segments.md +34 -0
  76. package/examples/strategy/demo/weeve/layers-plus/layers-plus-intake.md +15 -0
  77. package/examples/strategy/demo/weeve/maven/maven-intake.md +33 -0
  78. package/examples/strategy/demo/weeve/shared/competitive.md +40 -0
  79. package/examples/strategy/demo/weeve/shared/roadmap.md +29 -0
  80. package/examples/strategy/demo/weeve/shared/weeve-guardrails.md +22 -0
  81. package/examples/strategy/demo/weeve/shared/weeve-intake.md +17 -0
  82. package/examples/strategy/demo/weeve/shared/weeve-project.md +25 -0
  83. package/examples/strategy/demo/weeve.yaml +15 -0
  84. package/examples/strategy/weeve.yaml +14 -0
  85. package/package.json +14 -3
  86. package/spec/contributing-template.md +109 -0
  87. package/spec/readme-template.md +55 -0
  88. package/{docs/shared/SHIP-GATE.md → spec/ship-gate.md} +7 -7
  89. package/spec/signals-schema.md +685 -0
  90. package/spec/weeve-yaml.md +274 -0
  91. package/.github/SECURITY.md +0 -22
  92. package/GOVERNANCE.md +0 -173
  93. package/WORKFLOW.md +0 -354
  94. package/docs/shared/engineering-pack-contract.md +0 -94
  95. package/docs/shared/id-prefix-reference.md +0 -235
  96. package/docs/shared/idea-intake-pattern.md +0 -99
  97. package/docs/shared/lane-conventions.md +0 -207
  98. package/docs/shared/recommendations-schema.md +0 -363
@@ -0,0 +1,63 @@
1
+ # core preset
2
+
3
+ ## Who this is for
4
+
5
+ The `core` preset is the foundation stack for early-stage startups and cross-functional teams that need strategic alignment, design coherence, and execution readiness in a single workflow. It covers the full arc from market orientation through UX quality to launch decision — without the specialized depth of dedicated engineering or marketing lanes. If you're a founding team or a small general squad shipping a new product line, start here.
6
+
7
+ ## What you get
8
+
9
+ - **compass-signals.md** — prioritized strategic moves ranked by signal strength and urgency
10
+ - **compass-context.md** — market position snapshot: competitors, shifts, and white space
11
+ - **layers-plus-map.md** — audience segmentation with needs, motivations, and decision drivers per layer
12
+ - **ally-principles.md** — accessibility requirements and inclusive design constraints for the product
13
+ - **rubric-scorecard.md** — UX quality score against defined heuristics, with flagged regressions
14
+ - **pilot-brief.md** — go/no-go recommendation with rationale, risks, and suggested launch window
15
+
16
+ ## Install
17
+
18
+ ```bash
19
+ npx weeve add core
20
+ ```
21
+
22
+ Equivalent individual lanes:
23
+
24
+ ```bash
25
+ npx weeve add compass layers-plus ally rubric pilot
26
+ ```
27
+
28
+ ## First run sequence
29
+
30
+ Run these skills in order. Steps marked **(parallel)** can be run simultaneously once their prerequisites are complete.
31
+
32
+ 1. **compass** — Scans market signals, competitor moves, and internal context to produce a ranked list of strategic opportunities and risks.
33
+ 2. **layers-plus** — Maps your audience into motivational layers; depends on compass context to weight which segments matter most right now.
34
+ 3. **(parallel)* ally** — Audits your product surface for accessibility gaps and outputs binding design constraints.
35
+ 4. **(parallel)* rubric** — Scores current UX flows against quality heuristics; uses the layers-plus audience map to calibrate severity ratings.
36
+ 5. **pilot** — Synthesizes all upstream outputs into a launch readiness brief with a go/no-go recommendation.
37
+
38
+ ## What you'll have at the end
39
+
40
+ | File | Description |
41
+ |---|---|
42
+ | `weeve/compass/compass-signals.md` | Ranked strategic signals with evidence and urgency scores |
43
+ | `weeve/compass/compass-context.md` | Current market position and competitive landscape snapshot |
44
+ | `weeve/layers-plus/layers-plus-map.md` | Audience layer map with needs and decision drivers |
45
+ | `weeve/ally/ally-principles.md` | Accessibility constraints and inclusive design requirements |
46
+ | `weeve/rubric/rubric-scorecard.md` | UX heuristic scorecard with flagged issues and severity |
47
+ | `weeve/pilot/pilot-brief.md` | Launch readiness brief with go/no-go recommendation |
48
+
49
+ ## CODEOWNERS
50
+
51
+ Copy to `.github/CODEOWNERS`:
52
+
53
+ ```
54
+ weeve/compass/ @leadership
55
+ weeve/layers-plus/ @product
56
+ weeve/ally/ @design
57
+ weeve/rubric/ @design
58
+ weeve/pilot/ @leadership
59
+ ```
60
+
61
+ ## Time estimate
62
+
63
+ First full run: **45–75 minutes** depending on how much existing context is available in your repo. Subsequent runs (incremental updates) typically take 15–25 minutes.
@@ -0,0 +1,38 @@
1
+ # Prism — core preset demo
2
+
3
+ A design token management SaaS. Use this demo to try the **core** preset (Compass, Layers+, Ally, Rubric, Pilot) without needing your own project.
4
+
5
+ ## What's included
6
+
7
+ - `weeve.yaml` — project config with `docs_root: ./docs` (no vault needed)
8
+ - `weeve/shared/weeve-project.md` — project description and current state
9
+ - `weeve/shared/weeve-guardrails.md` — hard limits and technical constraints
10
+ - `weeve/shared/weeve-intake.md` — raw observations ready for intake skills
11
+
12
+ ## Run it
13
+
14
+ ```bash
15
+ # 1. Install the core preset
16
+ weeve add core
17
+
18
+ # 2. Start with Compass
19
+ /compass-intro
20
+
21
+ # 3. Run the design system audit
22
+ /rubric-intro
23
+
24
+ # 4. Check accessibility
25
+ /ally-intro
26
+
27
+ # 5. Evaluate the product surface
28
+ /layers-plus-intro
29
+
30
+ # 6. When lane outputs exist, synthesize
31
+ /pilot-priorities
32
+ ```
33
+
34
+ All outputs land in `./weeve/<lane>/`. Nothing writes outside this folder.
35
+
36
+ ## The project
37
+
38
+ Prism is a B2B SaaS for design token management. Private beta, ~40 teams. The demo has real tension baked in: token naming drift, an unaudited accessibility surface, a design system the team knows is behind, and enterprise prospects asking for features that aren't on the roadmap. Lane runs should surface genuine findings worth acting on.
@@ -0,0 +1,16 @@
1
+ # ally-intake — Prism
2
+ # Source: user report (Safari bug), screen reader user feedback, team observation
3
+
4
+ _Feed to `/ally-intake`. Just what's been noticed — no systematic audit has been run._
5
+
6
+ ---
7
+
8
+ - Focus indicators work in Chrome, disappear completely in Safari. Reported by a user, never formally filed as a bug.
9
+ - No skip-nav link. A screen reader user reported getting stuck navigating the sidebar on every page load.
10
+ - The Figma plugin has no keyboard navigation — entirely mouse-dependent. Plugin API constraints may limit what's fixable here.
11
+ - Token editor: color swatches have no meaningful text alternative. The alt text is the hex value (#3B82F6), not a name.
12
+ - Embedded iframe (token preview): unknown AT compatibility. Never tested with assistive technology.
13
+
14
+ ---
15
+
16
+ _No WCAG audit has been run. Compliance status is unknown. These are observations, not a complete picture._
@@ -0,0 +1,15 @@
1
+ # compass-intake — Prism
2
+ # Source: team conversations, sales notes, weeve/shared/competitive.md
3
+
4
+ _Feed to `/compass-intake`. Raw strategic observations._
5
+
6
+ ---
7
+
8
+ - Private beta, ~40 teams — all Series A–C product companies. No enterprise customers yet.
9
+ - Two enterprise prospects walked away in Q2 citing missing SAML/SSO. Combined would have been ~$3,600/mo.
10
+ - ICP is undefined. The team describes customers as "design teams at startups" but there's no documented definition.
11
+ - Theo (open-source) is gaining traction with developers who want CLI-first control. Prism's advantage is the Figma plugin + web editor but this isn't clearly articulated in positioning.
12
+ - Figma Variables is a platform risk. If Figma ships native CI sync, the core token editing value prop weakens.
13
+ - The open-source CLI strategy creates tension: OSS builds developer trust but limits monetization surface.
14
+ - One customer churned citing "too much manual work to keep tokens in sync" — unclear if this is a UX problem or an onboarding mismatch.
15
+ - "Design system as a service" framing has never been tested or pitched explicitly.
@@ -0,0 +1,31 @@
1
+ # Figma audit notes — Prism
2
+
3
+ _Quick notes from a 1-hour design review, Feb 2026. Not a full audit — treat as directional._
4
+
5
+ ## What exists
6
+
7
+ - Main component library: ~35 components, mostly complete
8
+ - Color tokens: defined in Figma but not using Figma Variables (notable given our product)
9
+ - Spacing: hardcoded values in most frames, not using tokens
10
+ - Typography: 3 type styles defined; ~8 actually used across frames
11
+
12
+ ## Issues noticed
13
+
14
+ - Button component has 3 variants in Figma, 4 in code — an engineer added a variant without updating the library
15
+ - Form inputs: 2 separate components that look identical but have different internal padding
16
+ - No dark mode variants anywhere
17
+
18
+ ## Missing entirely
19
+
20
+ - Empty states: not in the library; multiple product surfaces need them
21
+ - Error states: only 2 of 12 form field types have error variants
22
+ - Loading/skeleton states: none documented
23
+
24
+ ## Marketing site
25
+
26
+ - Uses a forked button and card component — diverged ~6 months ago
27
+ - Not in this Figma file; separate file owned by marketing
28
+
29
+ ---
30
+
31
+ _No accessibility annotations. No responsive layout specs. Tokens not linked to code output._
@@ -0,0 +1,13 @@
1
+ # layers-plus-intake — Prism
2
+ # Source: weeve/layers-plus/figma-notes.md, analytics (step 3 drop-off), team observations
3
+
4
+ _Feed to `/layers-plus-intake`. Rough — not organized by layer yet._
5
+
6
+ ---
7
+
8
+ - The web app and marketing site use different button components. Fork happened ~6 months ago, never merged back.
9
+ - Token editor mental model: are tokens "variables" (key/value pairs) or "design decisions"? The UI treats them as variables, but power users think in decisions. Nobody has decided which framing the product should own.
10
+ - Onboarding step 3 ("Connect your repo") has a 34% drop-off according to analytics. No investigation done.
11
+ - No empty states designed for the token editor when a new token set is created.
12
+ - Mobile view of the web app is broken below 768px. Not officially supported but not communicated to users either.
13
+ - The Figma plugin and the web editor have diverged slightly — a color picker interaction works differently in each. Users who switch between them notice.
@@ -0,0 +1,42 @@
1
+ # Component inventory — Prism
2
+
3
+ _Partial audit. Web app only — marketing site not included._
4
+ _Last updated: March 2026_
5
+
6
+ ## Core components (in use, documented)
7
+
8
+ | Component | Storybook | Figma | Notes |
9
+ |---|---|---|---|
10
+ | Button | ✅ | ✅ | 3 variants in Figma, 4 in code. |
11
+ | Input | ✅ | ✅ | Text, email, password. No date input. |
12
+ | Select | ✅ | ✅ | Single-select only. |
13
+ | Checkbox | ✅ | ✅ | |
14
+ | Radio | ✅ | ✅ | |
15
+ | Modal | ✅ | ⚠️ | Figma link broken. |
16
+ | Toast | ✅ | ✅ | Success/error only. No warning variant. |
17
+ | Tooltip | ✅ | ✅ | |
18
+ | Badge | ✅ | ✅ | |
19
+ | Avatar | ✅ | ✅ | |
20
+ | Card | ✅ | ⚠️ | Engineer added a footer variant; Figma not updated. |
21
+ | Table | ✅ | ❌ | No Figma. Built directly in code. Used in 4 places. |
22
+ | Tabs | ✅ | ✅ | |
23
+ | Sidebar nav | ✅ | ⚠️ | Web app version differs from marketing site. |
24
+ | Token editor | ✅ | ❌ | Core product surface. No Figma component. |
25
+ | Color swatch | ✅ | ❌ | No Figma. |
26
+
27
+ ## Draft / unclear status
28
+
29
+ | Component | Status | Notes |
30
+ |---|---|---|
31
+ | DataGrid | Draft | Started for an enterprise feature, paused. |
32
+ | DatePicker | Draft | Needed for audit log feature, not shipped. |
33
+ | CommandPalette | Draft | Prototype only — never shipped. |
34
+ | Combobox | Draft | May replace Select — decision unmade. |
35
+ | Pagination | In use | One location. Not in Storybook. |
36
+ | EmptyState | ❌ Missing | Multiple surfaces need it. Not built. |
37
+ | Skeleton | ❌ Missing | No loading states exist anywhere. |
38
+
39
+ ---
40
+
41
+ _Marketing site uses forked versions of Button, Card, and SidebarNav. Not reflected here._
42
+ _6 components are confirmed as copy-pasted variants: Button (×3 — secondary and danger), Input (×1 — dark theme), Card (×1 — bordered)._
@@ -0,0 +1,14 @@
1
+ # rubric-intake — Prism
2
+ # Source: weeve/rubric/component-inventory.md, Storybook, code review, Notion docs
3
+
4
+ _Feed to `/rubric-intake`._
5
+
6
+ ---
7
+
8
+ - ~35 components in the library. ~28 are clean with documented usage. 7 are in unclear state (draft, deprecated, or in-progress — nobody is sure).
9
+ - The web app and marketing site share the same Storybook in theory, but the marketing site button was forked 6 months ago and is not in Storybook.
10
+ - Token naming: color tokens use kebab-case in CSS (`color-brand-primary`), camelCase in Swift output (`brandPrimary`). No consistency rule is documented.
11
+ - Design system docs live in Notion. Last meaningful update was pre-launch. Several component pages have broken Figma links.
12
+ - No contribution process documented. Engineers add components directly to the shared library without design review.
13
+ - One breaking change in Q1 broke the marketing site because there's no version pinning — consumers update automatically.
14
+ - The token editor (core product surface) has no Figma component and no Storybook entry.
@@ -0,0 +1,28 @@
1
+ # Competitive landscape — Prism
2
+
3
+ _Informal notes. Not a formal analysis — from team memory and occasional Twitter/LinkedIn._
4
+
5
+ ## Direct competitors
6
+
7
+ **Theo** (open-source)
8
+ - Growing fast with the developer audience. Free, CLI-first, no web UI.
9
+ - Our overlap: teams who want open-source control over token output.
10
+ - Our edge: Figma integration, web editor, CI sync out of the box.
11
+
12
+ **Style Dictionary** (open-source, Amazon)
13
+ - Older, widely adopted. No web UI, no Figma plugin.
14
+ - Many Prism users migrated from Style Dictionary — this is our main acquisition story.
15
+
16
+ ## Adjacent / partial overlap
17
+
18
+ - **Supernova** — design system documentation + tokens, more expensive, more opinionated
19
+ - **Zeroheight** — documentation only, no token management
20
+ - **Token Studio** (Figma plugin) — free, competes in the Figma plugin space specifically
21
+
22
+ ## Platform risk (not tracked formally)
23
+
24
+ - **Figma Variables** — if Figma ships native CI sync, our core token editing value prop weakens significantly. No public timeline known.
25
+
26
+ ---
27
+
28
+ _No win/loss tracking. No formal competitor research. These notes reflect what the team knows informally._
@@ -0,0 +1,26 @@
1
+ # Roadmap — Prism
2
+
3
+ _Last updated: roughly Q2. Ask Jamie for the up-to-date Notion link._
4
+
5
+ ## Now (shipping this quarter)
6
+
7
+ - Multi-token-set support — dev/staging/prod environments
8
+ - Webhook reliability improvements — dropping ~2% of events under load
9
+ - Token search and filter in the editor
10
+
11
+ ## Next (planned, not sized)
12
+
13
+ - Import from Style Dictionary — promised for 2 sprints, keeps slipping
14
+ - SAML/SSO — enterprise inbound has asked for this 3 quarters in a row
15
+ - Figma Variables sync — blocked on Figma API availability
16
+
17
+ ## Later / backlog
18
+
19
+ - Native mobile SDKs (iOS/Android)
20
+ - Team permissions and audit log
21
+ - Self-hosted option
22
+ - Custom output format templates (OSS users have asked — not planned)
23
+
24
+ ---
25
+
26
+ _For sprint-level tracking, see Jira board PRISM. This doc is a rough planning artifact, not a commitment._
@@ -0,0 +1,28 @@
1
+ # weeve-guardrails.md — Prism
2
+
3
+ ## Hard limits
4
+ - React + TypeScript only — no framework migration in scope
5
+ - Figma plugin API constraints: no background sync, must be user-initiated
6
+ - CLI must stay open-source (MIT) — cannot bundle proprietary logic there
7
+ - No native mobile apps in the current roadmap
8
+
9
+ ## Technical constraints
10
+ - Figma plugin runs in a sandboxed iframe — no direct network access from plugin
11
+ - Token output formats are fixed (CSS vars, Swift, Kotlin, JSON) — no custom template engine yet
12
+ - CI sync uses webhooks over HTTPS; no self-hosted option currently
13
+ - Auth is Clerk (social + email magic link); no SSO/SAML yet
14
+
15
+ ## Budget / resourcing
16
+ - 1 PM, 2 designers, 4 frontend engineers — no dedicated backend, QA, or accessibility role
17
+ - No design system team budget; it's owned by the two designers as a side concern
18
+
19
+ ## Non-negotiables
20
+ - Token names must be human-readable (no machine-generated hashes)
21
+ - Zero-downtime deploys — the sync pipeline cannot interrupt active CI runs
22
+ - Figma plugin must work on the free Figma plan (no Enterprise API features)
23
+
24
+ ## Current pain points (captured from team retros)
25
+ - Token naming drift: ~40% of tokens have inconsistent naming across platforms
26
+ - Rubric/design system docs in Notion are stale — nobody updates them after ship
27
+ - No automated accessibility checks in CI — manual only, rarely run
28
+ - Ally (accessibility) has never been formally audited; assumed compliant, not verified
@@ -0,0 +1,18 @@
1
+ # weeve-intake.md — Prism observations
2
+
3
+ Raw observations from the team before lane runs. Feed these to `/compass-intake`, `/rubric-intake`, or `/ally-intake`.
4
+
5
+ ---
6
+
7
+ ## Captured observations
8
+
9
+ - Token naming is inconsistent: color tokens use `color-brand-primary` in CSS but `brandPrimary` in Swift output — downstream consumers have to maintain translation maps
10
+ - The Figma plugin has a 3-second lag on large token sets (500+ tokens); users are complaining
11
+ - 2 of 35 components have no documented usage guidelines; 8 have outdated Figma links
12
+ - Focus indicators are visible in Chrome but disappear in Safari — hasn't been filed as a bug
13
+ - No skip-nav link on the web app; screen reader users have reported getting stuck in the sidebar nav
14
+ - The marketing site uses a different button component than the web app — fork happened 6 months ago, nobody merged it back
15
+ - Enterprise prospects keep asking for SAML/SSO; we've said "roadmap" for 3 quarters
16
+ - Competitor Theo (open-source) is gaining traction with the developer audience we're targeting
17
+ - The "import from Style Dictionary" feature has been promised for 2 sprints and keeps slipping
18
+ - One customer churned last month citing "too much manual work to keep tokens in sync"
@@ -0,0 +1,33 @@
1
+ # Prism — project brief
2
+
3
+ **What it is:** Prism is a design token management SaaS. Teams connect their Figma libraries, define token sets, and Prism generates platform-specific output (CSS variables, Swift, Kotlin, JSON) that syncs to their repos via CI.
4
+
5
+ **Stage:** Private beta. ~40 design teams using it, mostly Series A–C product companies. No enterprise contracts yet.
6
+
7
+ **Core product surface:**
8
+ - Token editor (web app, React)
9
+ - Figma plugin (reads/writes token values)
10
+ - CLI (syncs tokens to repos)
11
+ - Webhook integration (triggers CI on token changes)
12
+
13
+ **Current state of the design system:**
14
+ - ~200 design tokens defined; 60% have consistent naming, 40% are legacy/inconsistent
15
+ - One shared component library (~35 components), used by the web app and marketing site
16
+ - No formal accessibility audit has been run
17
+ - Design system docs live in Notion, mostly out of date
18
+
19
+ **Team:**
20
+ - 2 product designers (one is the de facto design system owner)
21
+ - 4 frontend engineers
22
+ - 1 PM
23
+ - No dedicated accessibility or QA role
24
+
25
+ **Key decisions already made:**
26
+ - Staying React + TypeScript; no plans to migrate
27
+ - Figma as the single source of truth for design
28
+ - Open-source CLI; proprietary web app
29
+
30
+ **Open questions the team is wrestling with:**
31
+ - Should we target enterprise (SSO, audit logs, custom domains) or stay SMB/startup-focused?
32
+ - The token naming inconsistency is slowing down adopters — fix now or ship more features?
33
+ - Accessibility hasn't been scoped — is it a blocker for enterprise?
@@ -0,0 +1,15 @@
1
+ # weeve.yaml — core preset demo project
2
+ schema_version: "0.4"
3
+
4
+ project:
5
+ name: Prism
6
+ tag: PRM
7
+ docs_root: ./weeve # outputs land here — no vault or Claudette needed
8
+
9
+ roads:
10
+ - name: startup
11
+ path: roads/startup
12
+
13
+ # Lanes in this preset: compass, layers-plus, ally, rubric, pilot
14
+ # Demo project: Prism — design token management SaaS
15
+ # Run /compass-intro to get started
@@ -0,0 +1,14 @@
1
+ # weeve.yaml — core preset
2
+ # Generated by: weeve init core
3
+ schema_version: "0.4"
4
+
5
+ project:
6
+ name: My Project # Replace with your project name
7
+ tag: MYP # Short ID — matches vault Projects/<tag>/ folder
8
+ # docs_root: ./weeve # Uncomment to use a local path instead of vault
9
+
10
+ roads:
11
+ - name: startup
12
+ path: roads/startup
13
+
14
+ # Lanes in this preset: compass, layers-plus, ally, rubric, pilot
@@ -0,0 +1,9 @@
1
+ # Weeve lane ownership
2
+ # Copy to .github/CODEOWNERS and replace team handles with your org's teams
3
+ # Requires GitHub branch protection with "Require review from Code Owners" enabled
4
+
5
+ weeve/forge/ @engineering
6
+ weeve/helm/ @engineering
7
+ weeve/verify/ @engineering
8
+ weeve/guard/ @security
9
+ weeve/pilot/ @leadership
@@ -0,0 +1,61 @@
1
+ # engineering preset
2
+
3
+ ## Who this is for
4
+
5
+ The `engineering` preset is built for software engineering teams that need structured visibility into code health, infrastructure risk, and release readiness. It covers the build pipeline, deployment configuration, test coverage, and security posture — giving engineering leads and platform teams a repeatable framework for assessing whether a codebase is ready to ship safely. Use this preset when your primary concern is technical quality and operational risk, not market positioning.
6
+
7
+ ## What you get
8
+
9
+ - **forge-report.md** — build pipeline analysis: bottlenecks, flaky tests, and coverage gaps
10
+ - **helm-manifest.md** — infrastructure and deployment configuration review with drift detection
11
+ - **verify-results.md** — test suite health report with coverage map and identified blind spots
12
+ - **guard-findings.md** — security scan results: CVEs, secret exposure risks, and dependency vulnerabilities
13
+ - **pilot-brief.md** — release readiness assessment with go/no-go recommendation and risk register
14
+
15
+ ## Install
16
+
17
+ ```bash
18
+ npx weeve add engineering
19
+ ```
20
+
21
+ Equivalent individual lanes:
22
+
23
+ ```bash
24
+ npx weeve add forge helm verify guard pilot
25
+ ```
26
+
27
+ ## First run sequence
28
+
29
+ Run these skills in order. Steps marked **(parallel)** can be run simultaneously once their prerequisites are complete.
30
+
31
+ 1. **forge** — Analyzes the build pipeline, CI configuration, and artifact hygiene to surface bottlenecks and failure patterns.
32
+ 2. **(parallel)* helm** — Reviews deployment manifests, infrastructure-as-code, and environment configuration for drift and misconfiguration.
33
+ 3. **(parallel)* verify** — Maps test coverage across the codebase, identifies untested critical paths, and scores suite health.
34
+ 4. **(parallel)* guard** — Scans dependencies, secrets configuration, and access controls for security vulnerabilities and exposure risks.
35
+ 5. **pilot** — Aggregates forge, helm, verify, and guard outputs into a release readiness brief with a prioritized risk register.
36
+
37
+ ## What you'll have at the end
38
+
39
+ | File | Description |
40
+ |---|---|
41
+ | `weeve/forge/forge-report.md` | Build pipeline analysis with bottlenecks and flaky test patterns |
42
+ | `weeve/helm/helm-manifest.md` | Infrastructure configuration review with drift and misconfiguration findings |
43
+ | `weeve/verify/verify-results.md` | Test coverage map with blind spots and suite health score |
44
+ | `weeve/guard/guard-findings.md` | Security findings: CVEs, dependency risks, and secrets exposure |
45
+ | `weeve/pilot/pilot-brief.md` | Release readiness brief with go/no-go recommendation and risk register |
46
+
47
+ ## CODEOWNERS
48
+
49
+ Copy to `.github/CODEOWNERS`:
50
+
51
+ ```
52
+ weeve/forge/ @engineering
53
+ weeve/helm/ @engineering
54
+ weeve/verify/ @engineering
55
+ weeve/guard/ @security
56
+ weeve/pilot/ @leadership
57
+ ```
58
+
59
+ ## Time estimate
60
+
61
+ First full run: **30–50 minutes** for a mid-sized codebase (100–500 files). The forge and verify lanes are the most time-intensive on large repos with complex CI configurations. Subsequent runs run faster as baseline artifacts are cached.
@@ -0,0 +1,20 @@
1
+ # Volta — engineering preset demo
2
+
3
+ An internal developer platform at a 120-person SaaS company. Use this demo to try the **engineering** preset (Forge, Helm, Verify, Guard, Pilot).
4
+
5
+ ## Run it
6
+
7
+ ```bash
8
+ weeve add engineering
9
+ /forge-intro # code health, architecture, CI/CD
10
+ /helm-intro # deployment ops, SLOs, rollback
11
+ /verify-intro # test strategy, regression, release readiness
12
+ /guard-intro # security posture, secrets, dependency audit
13
+ /pilot-priorities # synthesize all lanes
14
+ ```
15
+
16
+ Outputs land in `./weeve/<lane>/`.
17
+
18
+ ## The project
19
+
20
+ Volta is a real-feeling internal platform with genuine technical debt: 9% test coverage on the most critical module, 3 P1s in 60 days, a secrets module that hasn't been audited in over a year, and a single engineer who owns 70% of the codebase. Lane runs will surface actionable findings in every zone.
@@ -0,0 +1,39 @@
1
+ # Architecture notes — Volta
2
+
3
+ _Not a formal document. Assembled from code, Slack, and memory. Treat as approximate._
4
+
5
+ ## Module structure
6
+
7
+ ```
8
+ volta/
9
+ api/ REST API (Go). Auth, routing, project management.
10
+ provisioner/ Env provisioning. Wraps Terraform. Longest module in the codebase.
11
+ deployer/ Deployment pipeline. Wraps GitHub Actions. Highest traffic (~200 deploys/day).
12
+ secrets/ Secrets management. Vault integration. Original Priya code.
13
+ scheduler/ On-call rotation. Thin wrapper on PagerDuty.
14
+ config-watcher/ Watches for config drift between environments. Patched 3 times.
15
+ legacy/env-v1/ Old provisioning code. Kept "in case we need to roll back."
16
+ web/ React frontend. Self-service portal.
17
+ pkg/datastore/ Shared data layer. Used by both provisioner/ and deployer/.
18
+ ```
19
+
20
+ ## Known coupling
21
+
22
+ - `provisioner/` and `deployer/` both import `pkg/datastore` — was supposed to be temporary, never resolved
23
+ - `config-watcher/` reads directly from Terraform state files — breaks on Terraform version changes
24
+
25
+ ## What's undocumented
26
+
27
+ - How `deployer/` talks to GitHub Actions internally (no API contract)
28
+ - The secrets module data model (only Alex knows this)
29
+ - Why `legacy/env-v1/` hasn't been deleted
30
+
31
+ ## What's missing
32
+
33
+ - No formal module dependency diagram
34
+ - No documented data flow between services
35
+ - No API contract docs for internal calls
36
+
37
+ ---
38
+
39
+ _Tom designed this. Most of what's here is reconstructed from git history and asking Alex._
@@ -0,0 +1,47 @@
1
+ # CI metrics — Volta
2
+
3
+ _Pulled from GitHub Actions dashboard, Q2 2026._
4
+
5
+ ## Build performance
6
+
7
+ | Metric | Value | Target | Status |
8
+ |---|---|---|---|
9
+ | Avg build time | 18 min | 10 min | ❌ |
10
+ | p95 build time | 31 min | 15 min | ❌ |
11
+ | Flake rate | ~7% | <2% | ❌ |
12
+ | Cache hit rate | 0% | >70% | ❌ (cache not configured) |
13
+
14
+ ## Test coverage by module
15
+
16
+ | Module | Coverage | Notes |
17
+ |---|---|---|
18
+ | api/ | 71% | Stable |
19
+ | provisioner/ | 58% | Declining — 3 features added without tests in Q2 |
20
+ | deployer/ | 9% | **Critical gap.** ~200 deploys/day through here. |
21
+ | secrets/ | 34% | Low. Only Alex understands this module. |
22
+ | scheduler/ | 61% | OK |
23
+ | config-watcher/ | 22% | Low. Source of 2 of the last 3 P1 incidents. |
24
+ | web/ | 41% | Frontend — lower priority |
25
+
26
+ **Overall: ~42%**
27
+
28
+ ## Deploy volume
29
+
30
+ - ~200 deploys/day across 80 engineers
31
+ - No staged rollouts or canary deploys
32
+ - No automated rollback trigger — rollback is always manual
33
+ - Avg rollback time: ~8 min (SLO target: 5 min)
34
+
35
+ ## Known skipped tests
36
+
37
+ ```
38
+ deployer/deploy_test.go:47 t.Skip("flaky, investigate - Jan 15")
39
+ deployer/concurrent_test.go:23 t.Skip("race condition, needs fixing")
40
+ ```
41
+
42
+ Both have been skipped for 3+ months. Neither has been investigated.
43
+
44
+ ## Recent CI incidents
45
+
46
+ - March 2026: Build cache filled runner disk — all builds failed for 2 hours
47
+ - April 2026: Flaky test caused false-positive failure — 3 engineers spent 4 hours on it before realizing
@@ -0,0 +1,41 @@
1
+ # forge-intake — Volta
2
+ # Source: weeve/forge/architecture.md, weeve/forge/ci-metrics.md, git log, code review
3
+
4
+ _Feed to `/forge-intake`. Organized by Forge zone._
5
+
6
+ ---
7
+
8
+ ## Architecture
9
+
10
+ - Three-year-old codebase. No ADRs exist. Architecture decisions live in Slack threads or nowhere.
11
+ - `provisioner/` and `deployer/` share a data layer (`pkg/datastore`) that was meant to be temporary in 2023. It's still shared.
12
+ - `config-watcher/` reads directly from the Terraform state file — brittle, breaks when Terraform version changes.
13
+ - Dead code in `legacy/env-v1/` — kept "in case we need to roll back" for 18 months.
14
+ - Two original authors (Tom, Priya) built most of the core. Neither wrote architecture docs before leaving.
15
+
16
+ ## Code health
17
+
18
+ - Overall test coverage: ~42%. Deployment pipeline module (`deployer/`): 9%.
19
+ - `deployer/` processes ~200 deploys/day and has the lowest test coverage of any module.
20
+ - CI runtime: 18 min average, 31 min p95. Engineers routinely skip CI on "small" PRs — no enforcement.
21
+ - The `volta env create` CLI has 3 undocumented flags learned via Slack. Not in any docs or help output.
22
+ - High cyclomatic complexity in `deploy.go` — flagged in a PR review 4 months ago, never addressed.
23
+
24
+ ## CI/CD
25
+
26
+ - CI flake rate: ~7% (tracked informally). Two known flaky tests skipped with `t.Skip()`.
27
+ - No build cache configured. Every run installs all Go dependencies from scratch.
28
+ - ~200 deploys/day. No deploy freeze windows, no staged rollouts, no automated rollback triggers.
29
+ - Feature flags: not implemented. All deploys are full rollouts to all 80 engineers.
30
+
31
+ ## Docs
32
+
33
+ - No ADRs. No runbook for the deployment pipeline module.
34
+ - README is 18 months old — setup instructions reference a tool that was replaced.
35
+ - `--help` output for `volta env create` doesn't show 3 flags that exist in code.
36
+
37
+ ## Known tech debt
38
+
39
+ - Secrets module: built by Priya, never documented, never audited. Only Alex understands it now.
40
+ - Go modules: 3 packages not version-pinned. CVE audit not run this quarter.
41
+ - `config-watcher`: patched 3 times for config drift, root cause never fixed.
@@ -0,0 +1,17 @@
1
+ # guard-intake — Volta
2
+ # Source: team memory, code review, no formal audit has been run
3
+
4
+ _Feed to `/guard-intake`. Very thin — security hasn't been a focus._
5
+
6
+ ---
7
+
8
+ - Secrets module: built by Priya ~2.5 years ago. No security review since. Priya has left the company.
9
+ - Go dependencies: 3 packages are not version-pinned. CVE audit not run this quarter.
10
+ - The `volta env create` CLI accepts credentials via environment variables — unclear if they appear in process logs or CI output.
11
+ - No secrets rotation policy documented anywhere.
12
+ - Internal API calls between services use shared API keys, not per-service credentials.
13
+ - Auth: Clerk for user authentication. Configuration has never been reviewed.
14
+
15
+ ---
16
+
17
+ _No penetration test has been run. No formal threat model exists. Compliance: unknown._