@polderlabs/bizar 10.7.0 → 10.7.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 (148) hide show
  1. package/.claude/agents/_shared/AGENT_BASELINE.md +266 -0
  2. package/.claude/agents/_shared/CLAUDE_TOOLS.md +412 -0
  3. package/.claude/agents/_shared/SKILLS.md +109 -0
  4. package/.claude/agents/brand-designer.md +55 -0
  5. package/.claude/agents/exec-assistant.md +34 -0
  6. package/.claude/agents/help-desk.md +44 -0
  7. package/.claude/agents/it-lead.md +53 -0
  8. package/.claude/agents/knowledge-manager.md +49 -0
  9. package/.claude/agents/office-coordinator.md +39 -0
  10. package/.claude/agents/office-greeter.md +53 -0
  11. package/.claude/agents/office-manager.md +287 -0
  12. package/.claude/agents/principal-engineer.md +58 -0
  13. package/.claude/agents/qa-reviewer.md +51 -0
  14. package/.claude/agents/research-analyst.md +53 -0
  15. package/.claude/agents/senior-engineer.md +55 -0
  16. package/.claude/agents/support-tech.md +87 -0
  17. package/.claude/agents/vp-engineering.md +54 -0
  18. package/.claude/commands/audit.md +48 -0
  19. package/.claude/commands/bizar.md +22 -0
  20. package/.claude/commands/cron.md +36 -0
  21. package/.claude/commands/explain.md +17 -0
  22. package/.claude/commands/goal.md +99 -0
  23. package/.claude/commands/init.md +15 -0
  24. package/.claude/commands/learn.md +46 -0
  25. package/.claude/commands/plan.md +35 -0
  26. package/.claude/commands/plow-through.md +50 -0
  27. package/.claude/commands/pr-review.md +49 -0
  28. package/.claude/commands/setup-provider.md +96 -0
  29. package/.claude/commands/spec.md +47 -0
  30. package/.claude/commands/sprint.md +43 -0
  31. package/.claude/commands/tailscale-serve.md +100 -0
  32. package/.claude/commands/team.md +132 -0
  33. package/.claude/commands/test.md +62 -0
  34. package/.claude/commands/validate.md +68 -0
  35. package/.claude/commands/visual-plan.md +24 -0
  36. package/.claude/hooks/README.md +108 -0
  37. package/.claude/hooks/__tests__/pretooluse-editwrite.test.mjs +146 -0
  38. package/.claude/hooks/__tests__/sessionend-recall.test.mjs +256 -0
  39. package/.claude/hooks/__tests__/sessionstart-prime.test.mjs +325 -0
  40. package/.claude/hooks/__tests__/thinking-route.test.mjs +319 -0
  41. package/.claude/hooks/auto-instinct.sh +81 -0
  42. package/.claude/hooks/learning-extract.mjs +92 -0
  43. package/.claude/hooks/post-merge-audit.sh +93 -0
  44. package/.claude/hooks/posttooluse-editwrite.mjs +91 -0
  45. package/.claude/hooks/pretooluse-bash.mjs +87 -0
  46. package/.claude/hooks/pretooluse-editwrite.mjs +117 -0
  47. package/.claude/hooks/sessionend-recall.mjs +384 -0
  48. package/.claude/hooks/sessionstart-prime.mjs +278 -0
  49. package/.claude/hooks/thinking-route.mjs +314 -0
  50. package/.claude/hooks/worker-suggest.mjs +110 -0
  51. package/.claude/settings.json +167 -0
  52. package/.claude/skills/9router/SKILL.md +80 -0
  53. package/.claude/skills/9router-chat/SKILL.md +73 -0
  54. package/.claude/skills/9router-embeddings/SKILL.md +69 -0
  55. package/.claude/skills/9router-image/SKILL.md +86 -0
  56. package/.claude/skills/9router-stt/SKILL.md +79 -0
  57. package/.claude/skills/9router-tts/SKILL.md +80 -0
  58. package/.claude/skills/9router-web-fetch/SKILL.md +99 -0
  59. package/.claude/skills/9router-web-search/SKILL.md +91 -0
  60. package/.claude/skills/agent-browser/SKILL.md +64 -0
  61. package/.claude/skills/bizar/README.md +9 -0
  62. package/.claude/skills/bizar/SKILL.md +447 -0
  63. package/.claude/skills/cpp-coding-standards/README.md +28 -0
  64. package/.claude/skills/cpp-coding-standards/SKILL.md +634 -0
  65. package/.claude/skills/cpp-coding-standards/references/concurrency.md +320 -0
  66. package/.claude/skills/cpp-coding-standards/references/error-handling.md +229 -0
  67. package/.claude/skills/cpp-coding-standards/references/memory-safety.md +216 -0
  68. package/.claude/skills/cpp-coding-standards/references/modern-idioms.md +282 -0
  69. package/.claude/skills/cpp-coding-standards/references/review-checklist.md +96 -0
  70. package/.claude/skills/cpp-testing/README.md +28 -0
  71. package/.claude/skills/cpp-testing/SKILL.md +304 -0
  72. package/.claude/skills/cpp-testing/references/coverage.md +370 -0
  73. package/.claude/skills/cpp-testing/references/framework-compare.md +175 -0
  74. package/.claude/skills/cpp-testing/references/host-test-for-embedded.md +499 -0
  75. package/.claude/skills/cpp-testing/references/mocking.md +364 -0
  76. package/.claude/skills/cpp-testing/references/tdd-workflow.md +308 -0
  77. package/.claude/skills/cubesandbox/SKILL.md +148 -0
  78. package/.claude/skills/de-sloppify/SKILL.md +38 -0
  79. package/.claude/skills/de-sloppify/cleanup.mjs +253 -0
  80. package/.claude/skills/de-sloppify/cleanup.test.mjs +189 -0
  81. package/.claude/skills/embedded-esp-idf/README.md +41 -0
  82. package/.claude/skills/embedded-esp-idf/SKILL.md +439 -0
  83. package/.claude/skills/embedded-esp-idf/references/freertos-patterns.md +214 -0
  84. package/.claude/skills/embedded-esp-idf/references/host-tests.md +164 -0
  85. package/.claude/skills/embedded-esp-idf/references/idf-py-commands.md +157 -0
  86. package/.claude/skills/embedded-esp-idf/references/kconfig.md +159 -0
  87. package/.claude/skills/embedded-esp-idf/references/logging-discipline.md +118 -0
  88. package/.claude/skills/embedded-esp-idf/references/memory-and-iram.md +137 -0
  89. package/.claude/skills/embedded-esp-idf/references/nvs.md +121 -0
  90. package/.claude/skills/embedded-esp-idf/references/packed-structs.md +192 -0
  91. package/.claude/skills/embedded-esp-idf/scripts/idf_env.sh +47 -0
  92. package/.claude/skills/embedded-esp-idf/scripts/size_check.sh +77 -0
  93. package/.claude/skills/glyph/SKILL.md +163 -0
  94. package/.claude/skills/harness-engineering/SKILL.md +142 -0
  95. package/.claude/skills/lightrag/SKILL.md +81 -0
  96. package/.claude/skills/memory-protocol/SKILL.md +105 -0
  97. package/.claude/skills/obsidian/SKILL.md +306 -0
  98. package/.claude/skills/read-the-damn-docs/SKILL.md +113 -0
  99. package/.claude/skills/self-improvement/SKILL.md +64 -0
  100. package/.claude/skills/skillopt/SKILL.md +129 -0
  101. package/.claude/skills/thinking-archetypes/SKILL.md +90 -0
  102. package/.claude/skills/thinking-bayesian/SKILL.md +267 -0
  103. package/.claude/skills/thinking-bounded-rationality/SKILL.md +406 -0
  104. package/.claude/skills/thinking-circle-of-competence/SKILL.md +216 -0
  105. package/.claude/skills/thinking-cynefin/SKILL.md +70 -0
  106. package/.claude/skills/thinking-debiasing/SKILL.md +192 -0
  107. package/.claude/skills/thinking-dual-process/SKILL.md +282 -0
  108. package/.claude/skills/thinking-effectuation/SKILL.md +366 -0
  109. package/.claude/skills/thinking-feedback-loops/SKILL.md +464 -0
  110. package/.claude/skills/thinking-fermi-estimation/SKILL.md +263 -0
  111. package/.claude/skills/thinking-first-principles/SKILL.md +167 -0
  112. package/.claude/skills/thinking-five-whys-plus/SKILL.md +139 -0
  113. package/.claude/skills/thinking-inversion/SKILL.md +195 -0
  114. package/.claude/skills/thinking-jobs-to-be-done/SKILL.md +363 -0
  115. package/.claude/skills/thinking-kepner-tregoe/SKILL.md +154 -0
  116. package/.claude/skills/thinking-leverage-points/SKILL.md +390 -0
  117. package/.claude/skills/thinking-lindy-effect/SKILL.md +331 -0
  118. package/.claude/skills/thinking-map-territory/SKILL.md +111 -0
  119. package/.claude/skills/thinking-margin-of-safety/SKILL.md +330 -0
  120. package/.claude/skills/thinking-model-combination/SKILL.md +406 -0
  121. package/.claude/skills/thinking-model-router/SKILL.md +360 -0
  122. package/.claude/skills/thinking-model-selection/SKILL.md +341 -0
  123. package/.claude/skills/thinking-occams-razor/SKILL.md +129 -0
  124. package/.claude/skills/thinking-ooda/SKILL.md +127 -0
  125. package/.claude/skills/thinking-opportunity-cost/SKILL.md +360 -0
  126. package/.claude/skills/thinking-pre-mortem/SKILL.md +170 -0
  127. package/.claude/skills/thinking-probabilistic/SKILL.md +324 -0
  128. package/.claude/skills/thinking-red-team/SKILL.md +142 -0
  129. package/.claude/skills/thinking-regret-minimization/SKILL.md +335 -0
  130. package/.claude/skills/thinking-reversibility/SKILL.md +326 -0
  131. package/.claude/skills/thinking-scientific-method/SKILL.md +162 -0
  132. package/.claude/skills/thinking-second-order/SKILL.md +184 -0
  133. package/.claude/skills/thinking-socratic/SKILL.md +198 -0
  134. package/.claude/skills/thinking-steel-manning/SKILL.md +332 -0
  135. package/.claude/skills/thinking-systems/SKILL.md +238 -0
  136. package/.claude/skills/thinking-theory-of-constraints/SKILL.md +338 -0
  137. package/.claude/skills/thinking-thought-experiment/SKILL.md +354 -0
  138. package/.claude/skills/thinking-triz/SKILL.md +171 -0
  139. package/.claude/skills/thinking-via-negativa/SKILL.md +358 -0
  140. package/bizar-dash/skills/publishing/SKILL.md +2 -1
  141. package/cli/install/postinstall.mjs +54 -28
  142. package/cli/install/postinstall.test.mjs +98 -0
  143. package/cli/provision.mjs +29 -0
  144. package/install.sh +7 -0
  145. package/package.json +7 -2
  146. package/scripts/git-hooks/__tests__/commit-msg.test.mjs +61 -0
  147. package/scripts/git-hooks/commit-msg +38 -0
  148. package/scripts/install-hooks.sh +9 -0
@@ -0,0 +1,154 @@
1
+ ---
2
+ name: thinking-kepner-tregoe
3
+ description: Use when a defect is selective (some endpoints/regions/users/times affected, not all) and the cause is unclear — map what IS vs IS-NOT affected; the boundary contrast points at the root cause.
4
+ ---
5
+
6
+ # Kepner-Tregoe Problem Analysis
7
+
8
+ ## Overview
9
+
10
+ Kepner-Tregoe (KT) is a structured root-cause method. **This skill focuses on Problem Analysis (PA) — the IS/IS-NOT boundary contrast — which is the high-value KT process for debugging.** When a defect is *selective* (some cases affected, others not), the boundary between IS and IS-NOT reveals the distinction that points at the root cause.
11
+
12
+ Decision Analysis (DA) and Potential Problem Analysis (PPA) are de-emphasized here. For pure decision-making among alternatives, use `thinking-opportunity-cost`. For risk anticipation before a change, use `thinking-pre-mortem`. Those skills are purpose-built for those tasks; KT's DA/PPA add overhead without unique mechanism.
13
+
14
+ Situation Analysis (SA) is retained as a lightweight triage step when facing multiple concerns, but it is not a required preamble — jump directly to PA when the problem is already clear.
15
+
16
+ **Core Principle:** The boundary between what IS affected and what IS NOT affected encodes the root cause. Find the distinction, find the cause.
17
+
18
+ ## When to Use
19
+
20
+ - A defect is **selective**: affects some endpoints/regions/users/times but NOT others — there is an IS-vs-IS-NOT boundary to contrast
21
+ - The cause is unclear and not obvious from a stack trace, error message, or a single recent change
22
+ - Multiple possible causes exist and you need a systematic way to narrow them
23
+ - A complex situation has multiple concerns that need triage before diving in
24
+
25
+ Decision flow:
26
+
27
+ ```
28
+ Defect is selective (not 100%)? → No → IS/IS-NOT has no signal; use direct debugging or thinking-systems
29
+ → Yes → Cause obvious from stack trace/recent change? → Yes → Just fix it
30
+ → No → APPLY KT PROBLEM ANALYSIS
31
+ ```
32
+
33
+ ## When NOT to Use
34
+
35
+ - **The failure is uniform** (affects 100% of requests/everything) — there is no IS-vs-IS-NOT boundary to contrast; PA gives no signal. Use `thinking-systems` or direct debugging.
36
+ - **The cause is already obvious** from a stack trace, error message, or a single recent change — just fix it; IS/IS-NOT is overhead here.
37
+ - **A pam hypothesis is cheaply testable** — test it (`thinking-occams-razor`) before building a full specification matrix.
38
+ - **Pure decision-making with no deviation to diagnose** — use `thinking-opportunity-cost`, not KT's Decision Analysis.
39
+ - **Risk assessment for a planned change** — use `thinking-pre-mortem`, not KT's Potential Problem Analysis.
40
+
41
+ ## Trigger Card
42
+
43
+ When a defect is selective (some cases affected, others not) and the cause is unclear:
44
+
45
+ 1. **State the problem precisely** — what is the deviation? In what object? Where/when does it occur?
46
+ 2. **Map IS vs IS-NOT** — what IS affected vs what IS NOT, side by side. The boundary is the signal.
47
+ 3. **Find the distinction** — what is different about the IS cases vs the IS-NOT cases? That distinction IS the cause.
48
+
49
+ Skip if the failure is uniform (100%) — there's no boundary to contrast; use direct debugging. If the cause is obvious from a stack trace or recent change, just fix it. For a single cheaply-testable hypothesis, test it first.
50
+
51
+ ## Procedure
52
+
53
+ ### Step 1 (optional): Situation Analysis — Triage Multiple Concerns
54
+
55
+ Only when facing several problems at once. List all concerns, separate them if compound, and prioritize by Timing/Impact/Trend:
56
+
57
+ | Concern | Timing | Impact | Trend | Priority |
58
+ |---------|--------|--------|-------|----------|
59
+ | API latency spike | Urgent | High | Worsening | P0 |
60
+ | Checkout errors | Soon | High | Stable | P1 |
61
+
62
+ For each concern, decide: Problem Analysis (PA), or delegate to another skill.
63
+
64
+ ### Step 2: State the Problem Precisely
65
+
66
+ Describe the deviation from expected behavior with specificity:
67
+
68
+ ```
69
+ "API response time increased from 200ms to 800ms for /checkout endpoint,
70
+ US-East only, starting Monday 9 AM, affecting ~30% of requests."
71
+ ```
72
+
73
+ ### Step 3: Build the IS/IS-NOT Matrix
74
+
75
+ Specify the problem across four dimensions. The power is in the **distinction** column — what's unique about the IS side?
76
+
77
+ | Dimension | IS (affected) | IS NOT (not affected) | Distinction |
78
+ |-----------|---------------|----------------------|-------------|
79
+ | **WHAT** — object | /checkout endpoint | /cart, /product, /user | Payment processing |
80
+ | **WHAT** — defect | 4x latency increase | Errors, timeouts, data corruption | Performance only |
81
+ | **WHERE** — location | Production US-East | EU, US-West, staging | Single region |
82
+ | **WHERE** — on object | Database query phase | Auth, validation, serialization | DB layer |
83
+ | **WHEN** — first seen | Monday 9:00 AM | Before Monday, after 6 PM | Business hours |
84
+ | **WHEN** — pattern | During checkout submit | During browsing, cart add | Write operations |
85
+ | **EXTENT** — how many | ~30% of requests | 100% of requests | Intermittent |
86
+ | **EXTENT** — trend | Stable since Tuesday | Getting worse | Plateaued |
87
+
88
+ ### Step 4: Extract Distinctions
89
+
90
+ For each row, ask: "What's unique or distinctive about the IS side compared to the IS-NOT side?"
91
+
92
+ ```
93
+ Distinctions:
94
+ - Only /checkout (payment processing) — not other endpoints
95
+ - Only US-East (specific DB replica) — not other regions
96
+ - Only during business hours (load-related?) — not off-peak
97
+ - Only ~30% of requests (specific query pattern?) — not all
98
+ - Started Monday 9 AM — what changed?
99
+ ```
100
+
101
+ ### Step 5: Identify Changes
102
+
103
+ What changed in, on, around, or about the distinctions near the first observation time?
104
+
105
+ ```
106
+ Changes near Monday 9 AM:
107
+ - Payment provider SDK updated (Sunday night deploy)
108
+ - Database index rebuild scheduled (Sunday maintenance)
109
+ - New fraud detection rules enabled (Monday 8:45 AM)
110
+ ```
111
+
112
+ ### Step 6: Generate and Test Possible Causes
113
+
114
+ Each candidate cause must explain BOTH the IS and the IS-NOT:
115
+
116
+ | Possible Cause | Explains IS? | Explains IS-NOT? | Verdict |
117
+ |----------------|-------------|------------------|---------|
118
+ | Fraud rules adding DB queries | ✓ Only checkout, only write ops | ✓ Not other endpoints | **Pursue** |
119
+ | Payment SDK change | ✓ Only checkout | ✗ Would affect all regions | Ruled out |
120
+ | Index rebuild | ✓ DB layer | ✗ Would affect all queries | Ruled out |
121
+
122
+ ### Step 7: Verify the True Cause
123
+
124
+ Design a test to confirm or rule out the leading candidate:
125
+
126
+ ```
127
+ Verification for "Fraud detection rules":
128
+ 1. Check: Rules enabled 8:45 AM (matches timeline)
129
+ 2. Check: Rules only on checkout (matches scope)
130
+ 3. Test: Disable rules in canary, measure latency
131
+ 4. Examine: Query logs for fraud check queries
132
+ ```
133
+
134
+ ## Output Contract
135
+
136
+ A completed KT Problem Analysis produces:
137
+
138
+ 1. **Problem Statement** — specific, measurable deviation
139
+ 2. **IS/IS-NOT Matrix** — all four dimensions with distinctions extracted
140
+ 3. **Changes List** — what changed near the distinctions around the first observation
141
+ 4. **Cause Test Table** — each candidate tested against IS and IS-NOT
142
+ 5. **Confirmed Root Cause** — with verification evidence
143
+ 6. **If used, SA Triage** — prioritized concern list with assigned processes
144
+
145
+ ## Anti-Patterns
146
+
147
+ | Anti-Pattern | Symptom | Correction |
148
+ |---|---|---|
149
+ | **KT on uniform failure** | Running PA when 100% of requests fail | No boundary to contrast; use direct debugging or `thinking-systems` |
150
+ | **Over-specifying the matrix** | Filling every IS/IS-NOT cell for a simple bug | Stop when the distinction is clear; don't ritualize |
151
+ | **DA/PPA sprawl** | Running full Decision Analysis or Potential Problem Analysis for routine tasks | Redirect to `thinking-opportunity-cost` (decisions) or `thinking-pre-mortem` (risks) |
152
+ | **Skipping cause testing** | Pursuing the first plausible cause without testing against IS-NOT | Every cause must explain BOTH IS and IS-NOT |
153
+ | **SA as mandatory preamble** | Running full Situation Analysis before every PA | Jump directly to PA when the problem is already clear |
154
+ | **Ignoring the distinction** | Building the matrix but not extracting what's unique about IS | The distinction IS the signal; without it, the matrix is just a table |
@@ -0,0 +1,390 @@
1
+ ---
2
+ name: thinking-leverage-points
3
+ description: Use when picking where to intervene in a system and tuning parameters keeps not sticking—rank candidate interventions by Meadows' hierarchy and choose the highest-leverage point you can move.
4
+ ---
5
+
6
+ # Leverage Points
7
+
8
+ ## Overview
9
+
10
+ Donella Meadows' "Places to Intervene in a System" ranks intervention points by their power to change behavior. Most effort goes into low-leverage moves (parameters, buffers) when higher-leverage points (rules, goals, structure) change behavior with less force. This is the canonical home of the 12-level hierarchy—other skills (`thinking-systems`, `thinking-feedback-loops`) reference it instead of duplicating it.
11
+
12
+ **Core Principle:** Higher in the hierarchy = more leverage, but more resistance. Find the highest leverage point you can actually move.
13
+
14
+ ## When to Use
15
+
16
+ - Choosing where to focus engineering effort on a system you can already see
17
+ - Incremental tweaks (timeouts, buffer sizes, more instances) keep not solving the problem
18
+ - Deciding between a pam parameter change and a structural fix
19
+
20
+ ```
21
+ Want to change system behavior?
22
+ → Stuck tuning parameters with no lasting effect? → MOVE UP THE HIERARCHY
23
+ → Found the lever but the change won't stick? → look for a balancing loop resisting it
24
+ ```
25
+
26
+ ## When NOT to Use
27
+
28
+ - You haven't yet located the cause or mapped the system → use `thinking-systems` first; you can't rank interventions on a system you don't understand.
29
+ - A single low-level parameter genuinely is the fix (e.g., a wrong timeout value) → just change it; don't manufacture a paradigm shift.
30
+ - The decision is a one-off with no system behind it → this hierarchy adds nothing.
31
+
32
+ ## Trigger Card
33
+
34
+ When tuning parameters keeps not sticking and you need to pick where to intervene:
35
+
36
+ 1. **Identify the system goal** — what is the system trying to do? This is the highest-leverage point.
37
+ 2. **Scan the hierarchy top-down** — from goals/rules/power down to parameters. Don't start at the bottom.
38
+ 3. **Intervene at the highest feasible point** — pick the highest-leverage point you can actually change, not the easiest.
39
+
40
+ If a single low-level parameter genuinely is the fix (wrong timeout value), just change it. If there's no system behind the decision, skip — this hierarchy adds nothing.
41
+
42
+ ## The 12 Leverage Points (Low to High)
43
+
44
+ ### Level 12: Constants and Parameters (LOWEST LEVERAGE)
45
+
46
+ **What:** Numbers—budgets, rates, thresholds, timeouts
47
+
48
+ **Examples:**
49
+ - Adjusting cache TTL
50
+ - Changing retry counts
51
+ - Modifying timeout values
52
+ - Tweaking rate limits
53
+
54
+ **Why low leverage:** Parameters rarely change behavior fundamentally. The system absorbs parameter changes and continues its pattern.
55
+
56
+ ```
57
+ Intervention: Increase server timeout from 30s to 60s
58
+ Result: Slow requests succeed, but root cause remains
59
+ Leverage: Very low—masks symptom, doesn't fix system
60
+ ```
61
+
62
+ ### Level 11: Buffer Sizes
63
+
64
+ **What:** Stabilizing stocks—queues, caches, inventories
65
+
66
+ **Examples:**
67
+ - Queue depth limits
68
+ - Connection pool sizes
69
+ - Memory allocations
70
+ - Batch sizes
71
+
72
+ **Why low leverage:** Buffers absorb fluctuations but don't change system dynamics. Bigger buffer = slower response to change.
73
+
74
+ ```
75
+ Intervention: Increase message queue size
76
+ Result: Handles traffic spikes, but processing lag grows
77
+ Leverage: Low—buys time but doesn't address throughput
78
+ ```
79
+
80
+ ### Level 10: Stock-and-Flow Structures
81
+
82
+ **What:** Physical architecture—how things are connected
83
+
84
+ **Examples:**
85
+ - Database schema
86
+ - Service topology
87
+ - Network architecture
88
+ - Team structure
89
+
90
+ **Why medium leverage:** Hard to change once built; design matters but is often locked in.
91
+
92
+ ```
93
+ Intervention: Add read replica to reduce DB load
94
+ Result: Significant improvement in read performance
95
+ Leverage: Medium—structural change, but within existing paradigm
96
+ ```
97
+
98
+ ### Level 9: Delays
99
+
100
+ **What:** Time lags in feedback loops
101
+
102
+ **Examples:**
103
+ - Deployment pipeline duration
104
+ - Feedback cycle time
105
+ - Onboarding time
106
+ - Release frequency
107
+
108
+ **Why medium leverage:** Shortening delays makes systems more responsive and stable. Many oscillation problems are actually delay problems.
109
+
110
+ ```
111
+ Intervention: Reduce deployment time from 2 hours to 10 minutes
112
+ Result: Faster feedback, fewer bugs reaching production
113
+ Leverage: Medium-high—changes system responsiveness fundamentally
114
+ ```
115
+
116
+ ### Level 8: Balancing Feedback Loops
117
+
118
+ **What:** Negative feedback that counteracts change
119
+
120
+ **Examples:**
121
+ - Auto-scaling rules
122
+ - Circuit breakers
123
+ - Quality gates
124
+ - Alerting thresholds
125
+
126
+ **Why medium-high leverage:** Strengthening balancing loops increases stability; weakening them enables change.
127
+
128
+ ```
129
+ Intervention: Implement circuit breaker with automatic recovery
130
+ Result: Failures isolated, cascade prevention
131
+ Leverage: Medium-high—changes failure dynamics
132
+ ```
133
+
134
+ ### Level 7: Reinforcing Feedback Loops
135
+
136
+ **What:** Positive feedback that amplifies change
137
+
138
+ **Examples:**
139
+ - Growth loops (viral, network effects)
140
+ - Technical debt spirals
141
+ - Talent attraction/attrition cycles
142
+ - Performance improvement loops
143
+
144
+ **Why high leverage:** Reinforcing loops drive exponential growth or collapse. Controlling gain = controlling trajectory.
145
+
146
+ ```
147
+ Intervention: Create "fix broken windows" culture that reinforces quality
148
+ Result: Quality begets quality, technical debt decreases
149
+ Leverage: High—self-sustaining improvement
150
+ ```
151
+
152
+ ### Level 6: Information Flows
153
+
154
+ **What:** What signal is surfaced, and where
155
+
156
+ **Examples:**
157
+ - Surfacing a previously-hidden metric (queue depth, error budget, p99)
158
+ - Logging the value that was silently defaulting
159
+ - Making a failure mode observable instead of swallowed
160
+
161
+ **Why high leverage:** A component can only respond to what it can see. Adding a feedback signal where one was missing changes behavior without changing any logic.
162
+
163
+ ```
164
+ Intervention: Emit and alert on cache hit-rate that was previously invisible
165
+ Result: Regression caught immediately instead of after an outage
166
+ Leverage: High—behavior change through visibility
167
+ ```
168
+
169
+ ### Level 5: System Rules
170
+
171
+ **What:** Constraints the system enforces—what's allowed, required, or rejected
172
+
173
+ **Examples:**
174
+ - A required CI gate / merge check
175
+ - A schema or contract that rejects invalid input at the boundary
176
+ - A deployment policy (canary, required rollback path)
177
+ - A rate limit or quota
178
+
179
+ **Why high leverage:** Rules define what's even possible. Change the rule and a whole class of behavior changes or becomes impossible.
180
+
181
+ ```
182
+ Intervention: Make the type checker / schema validation a hard CI gate
183
+ Result: An entire class of bug can no longer reach production
184
+ Leverage: High—changes what's acceptable
185
+ ```
186
+
187
+ ### Level 4: Self-Organization
188
+
189
+ **What:** Ability of the system to change its own structure
190
+
191
+ **Examples:**
192
+ - Plugin/extension points instead of hardcoded behavior
193
+ - Services that can register/discover each other dynamically
194
+ - Auto-scaling and self-healing instead of fixed topology
195
+ - Schema/config that the system can evolve safely
196
+
197
+ **Why very high leverage:** Systems that can adapt their own structure survive change; rigid systems eventually break.
198
+
199
+ ```
200
+ Intervention: Replace a hardcoded dispatch table with a plugin registry
201
+ Result: New behavior added without touching the core; the system evolves
202
+ Leverage: Very high—enables adaptation
203
+ ```
204
+
205
+ ### Level 3: System Goals
206
+
207
+ **What:** What the system is actually optimizing for
208
+
209
+ **Examples:**
210
+ - The objective a scheduler/optimizer maximizes
211
+ - The SLO the system is built to hold
212
+ - The success metric a pipeline is tuned against
213
+
214
+ **Why very high leverage:** Everything downstream serves the goal. Optimizing for the wrong target reliably produces the wrong behavior, no matter how good the parts are.
215
+
216
+ ```
217
+ Intervention: Change a cache eviction goal from "max hit rate" to "bound tail latency"
218
+ Result: Different eviction policy, different downstream behavior entirely
219
+ Leverage: Very high—redirects all effort
220
+ ```
221
+
222
+ ### Level 2: Paradigm (Mindset)
223
+
224
+ **What:** The shared assumptions from which goals and architecture arise
225
+
226
+ **Examples:**
227
+ - "Cache everything" vs "Cache only what's measured hot"
228
+ - "Microservices always" vs "Right tool for context"
229
+ - "Avoid failure" vs "Design for graceful degradation"
230
+
231
+ **Why transformational:** Paradigms are upstream of goals, rules, and structure. Shift the paradigm, transform the system.
232
+
233
+ ```
234
+ Intervention: Shift from "retry until success" to "fail fast + shed load"
235
+ Result: Retry storms become impossible; the whole failure mode changes
236
+ Leverage: Transformational—changes what's thinkable
237
+ ```
238
+
239
+ ### Level 1: Transcending Paradigms (HIGHEST LEVERAGE)
240
+
241
+ **What:** The ability to change paradigms, recognizing no paradigm is "true"
242
+
243
+ **Examples:**
244
+ - Recognizing that current best practices are temporary
245
+ - Ability to hold multiple paradigms simultaneously
246
+ - Knowing when to abandon a paradigm
247
+
248
+ **Why highest leverage:** Freedom from paradigm lock-in enables choosing the right paradigm for each context.
249
+
250
+ ```
251
+ Mastery: Recognize when "microservices always" became dogma
252
+ Choose monolith when it's right
253
+ Result: Optimal architecture for each situation
254
+ Leverage: Highest—freedom from ideological constraints
255
+ ```
256
+
257
+ ## Applying Leverage Points
258
+
259
+ ### Step 1: Identify Current Interventions
260
+
261
+ Where are you currently trying to create change?
262
+
263
+ ```markdown
264
+ Current interventions:
265
+ - Increasing server count (Level 11 - buffers)
266
+ - Adjusting timeout parameters (Level 12 - parameters)
267
+ - Adding monitoring (Level 6 - information flows)
268
+ ```
269
+
270
+ ### Step 2: Map to Hierarchy
271
+
272
+ Plot on the hierarchy to see leverage distribution:
273
+
274
+ ```
275
+ High Leverage [3] Goals
276
+ [5] Rules
277
+ [6] Information ← Monitoring
278
+ [7] Reinforcing loops
279
+ Medium [8] Balancing loops
280
+ [9] Delays
281
+ [10] Structure
282
+ Low Leverage [11] Buffers ← Server count
283
+ [12] Parameters ← Timeouts
284
+ ```
285
+
286
+ ### Step 3: Look Higher
287
+
288
+ For each low-leverage intervention, ask: "What's the higher-leverage version?"
289
+
290
+ | Low Leverage | Ask | Higher Leverage |
291
+ |--------------|-----|-----------------|
292
+ | More instances | Why do we need more capacity? | Fix the inefficient algorithm/query (structure) |
293
+ | Longer timeouts | Why are things slow? | Reduce a delay in the pipeline (Level 9) |
294
+ | Patch each bug instance | Why does this class recur? | Make it unrepresentable / add a CI gate (10, 5) |
295
+
296
+ ### Step 4: Assess Feasibility
297
+
298
+ Higher leverage usually means more cost or more resistance. Evaluate before committing:
299
+
300
+ ```markdown
301
+ Intervention: Make schema validation a hard gate (Level 5)
302
+ Leverage: High—blocks a whole bug class
303
+ Cost/resistance: Touches every caller; needs migration of existing data
304
+ Strategy: Validate in warn-only mode first, then flip to enforce
305
+ ```
306
+
307
+ ### Step 5: Choose Highest Feasible Leverage
308
+
309
+ Select the highest-leverage intervention you can actually execute now.
310
+
311
+ ## Common Patterns
312
+
313
+ ### The Parameter Trap
314
+
315
+ Endlessly tuning parameters when the real issue is structural:
316
+
317
+ ```
318
+ Symptom: Constantly adjusting cache TTLs, retry counts, timeouts
319
+ Reality: Architecture doesn't match access patterns
320
+ Solution: Redesign the data flow (Level 10) instead of tuning parameters
321
+ ```
322
+
323
+ ### The Information Unlock
324
+
325
+ A component behaves badly because a signal is invisible to it:
326
+
327
+ ```
328
+ Symptom: A regression ships repeatedly and is only caught downstream
329
+ Reality: The relevant metric is never surfaced
330
+ Solution: Emit + alert on it (Level 6)—behavior corrects without new logic
331
+ ```
332
+
333
+ ### The Goal Inversion
334
+
335
+ The system optimizes a proxy that diverges from the real objective:
336
+
337
+ ```
338
+ Symptom: Cache maximizes hit-rate but tail latency is terrible
339
+ Reality: The optimization target is wrong
340
+ Solution: Change the goal to "bound p99" (Level 3)
341
+ ```
342
+
343
+ ### The Paradigm Shift
344
+
345
+ Sometimes the whole frame is wrong:
346
+
347
+ ```
348
+ Symptom: Recurring retry storms despite tuning retry counts
349
+ Reality: "Retry until success" is the wrong paradigm under load
350
+ Solution: Shift to "fail fast + shed load" (Level 2)
351
+ ```
352
+
353
+ ## Leverage Points for Common Problems
354
+
355
+ | Problem | Low-Leverage Response | High-Leverage Alternative |
356
+ |---------|----------------------|---------------------------|
357
+ | System too slow | Add caching (11) | Fix algorithm; surface latency in feedback (6, 10) |
358
+ | Too many bugs slip through | More manual testing (12) | Make the check a required gate / CI rule (5) |
359
+ | Repeated cascading failures | Bigger timeouts (12) | Add circuit breaker / backpressure loop (8) |
360
+ | Retry storms under load | Lower retry count (12) | Change the retry paradigm: fail fast + shed (2) |
361
+ | Same bug class recurs | Patch each instance (12) | Make it unrepresentable via type/schema (10, 4) |
362
+ | Hidden, wrong defaults | Tune the value (12) | Make the config visible/validated (6, 5) |
363
+
364
+ ## Verification Checklist
365
+
366
+ - [ ] Identified current intervention points
367
+ - [ ] Mapped interventions to leverage hierarchy
368
+ - [ ] Asked "what's the higher-leverage version?" for each
369
+ - [ ] Assessed feasibility vs. leverage tradeoff
370
+ - [ ] Selected highest feasible leverage point
371
+ - [ ] Considered resistance and how to address it
372
+ - [ ] Have strategy for paradigm-level resistance if applicable
373
+
374
+ ## Key Questions
375
+
376
+ - "What level of leverage am I operating at?"
377
+ - "What's one level higher I could try?"
378
+ - "Why hasn't this parameter tuning fixed the problem?"
379
+ - "What information is missing that would change behavior?"
380
+ - "What rule change would make this unnecessary?"
381
+ - "What goal are we actually optimizing for?"
382
+ - "What paradigm is constraining our thinking?"
383
+
384
+ ## Meadows' Wisdom
385
+
386
+ "People who manage to intervene in systems at the level of paradigm hit a leverage point that totally transforms systems."
387
+
388
+ "Magical leverage points are not easily accessible, even if we know where they are. There are no cheap tickets to mastery."
389
+
390
+ The highest leverage requires the most skill and often the most patience. But knowing where leverage exists helps you stop wasting effort at the bottom of the hierarchy.