@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,335 @@
1
+ ---
2
+ name: thinking-regret-minimization
3
+ description: When advising a human on a high-stakes, hard-to-undo life/career choice, weigh the asymmetry between a recoverable downside and a permanent missed opportunity, not just the short-term cost.
4
+ ---
5
+
6
+ # Regret Minimization Framework
7
+
8
+ > Scope note: This is a **human-facing advisory** lens. An autonomous agent has no "future self" to regret, so do not apply it to your own tool/architecture choices — for those use thinking-reversibility (one-way vs two-way door) and thinking-opportunity-cost. Use this skill only when helping a *person* reason through a personal/career decision. The reusable core for engineering work is the asymmetry below: a recoverable downside vs. a permanently foregone upside.
9
+
10
+ ## Trigger Card
11
+
12
+ When advising a human on a high-stakes, hard-to-undo life/career choice:
13
+
14
+ 1. **Check the asymmetry:** Is the downside recoverable but the missed upside permanent? If yes, the asymmetry favors trying. If the downside is catastrophic or harms others, the asymmetry flips — do NOT apply "just try it."
15
+ 2. **Demote short-term fear:** Which costs will have faded to nothing years from now? Which path, if untaken, leaves a permanent "what if?"
16
+ 3. **Recommend the path that minimizes lifetime regret** — inaction regrets grow larger over time; action regrets usually fade.
17
+
18
+ For agent decisions (tooling, architecture), use `thinking-reversibility` + `thinking-opportunity-cost` instead.
19
+
20
+ ## Overview
21
+
22
+ Jeff Bezos's Regret Minimization Framework reframes a hard, irreversible personal choice around long-term regret rather than short-term fear: imagine looking back from the far future and ask which path you'd regret *not* taking. The transferable insight is an **asymmetry** — a failed attempt is usually recoverable, while a never-taken opportunity is permanently gone.
23
+
24
+ **Core Principle:** Weigh a recoverable downside against a permanent foregone upside. When the downside is reversible and the missed upside is not, the asymmetry favors trying.
25
+
26
+ ## When to Use
27
+
28
+ - Career-defining decisions
29
+ - Whether to pursue a risky opportunity
30
+ - Staying safe vs. taking a leap
31
+ - Decisions with fear of failure
32
+ - When short-term costs obscure long-term value
33
+ - Life-changing personal decisions
34
+ - Entrepreneurial choices
35
+
36
+ Decision flow:
37
+
38
+ ```
39
+ Advising a human on a significant life/career decision?
40
+ → Is the downside recoverable but the missed upside permanent? → yes → APPLY THE ASYMMETRY
41
+ → Is short-term fear obscuring long-term value? → yes → WEIGH LONG-TERM REGRET
42
+ → It's an agent/engineering decision? → use thinking-reversibility + thinking-opportunity-cost instead
43
+ ```
44
+
45
+ ## When NOT to Use
46
+ - The decision is yours-as-an-agent (tooling, architecture, refactor) — there's no future self; use thinking-reversibility and thinking-opportunity-cost.
47
+ - The choice is easily reversible — regret framing is overkill; just pick and adjust.
48
+ - The downside is *not* recoverable (catastrophic, ruinous, or harms others) — the asymmetry flips; "just try it" is wrong advice. Weigh the irreversible downside directly.
49
+ - Others bear the consequences — one person's regret isn't the whole calculus; bring in affected stakeholders.
50
+
51
+ ## The Framework
52
+
53
+ ### Step 1: Take the Long-Horizon View
54
+
55
+ When advising a person, have them picture looking back from far in the future — the point is to demote short-term fear (a lost bonus, temporary discomfort) and surface what lasts:
56
+
57
+ ```
58
+ Looking back years from now:
59
+ - Which short-term costs will have faded to nothing?
60
+ - Which path, if not taken, would leave a permanent "what if?"
61
+ ```
62
+
63
+ The mechanism that matters is the **asymmetry**, not the specific age: short-term costs fade; permanently foregone opportunities don't.
64
+
65
+ ### Step 2: Frame the Decision
66
+
67
+ State the choice clearly:
68
+
69
+ ```
70
+ The decision: Should I leave my stable job to start a company?
71
+
72
+ Option A: Stay in stable job
73
+ - Known income, security, career progression
74
+ - Low risk, predictable outcomes
75
+
76
+ Option B: Start the company
77
+ - Uncertainty, potential failure
78
+ - Chance to build something meaningful
79
+ - Unknown outcomes
80
+ ```
81
+
82
+ ### Step 3: Apply the Regret Test
83
+
84
+ For each option, ask: "Will I regret NOT doing this?"
85
+
86
+ ```
87
+ At 80, will I regret:
88
+ - Not trying to start the company? → Likely YES
89
+ - Not staying in the stable job? → Likely NO
90
+
91
+ Bezos's insight: "I knew that when I was 80, I was not going to regret
92
+ having tried this. I was not going to regret trying to participate
93
+ in this thing called the Internet that I thought was going to be
94
+ a really big deal."
95
+ ```
96
+
97
+ ### Step 4: Distinguish Regret Types
98
+
99
+ **Regrets of Action:** Things you did that went wrong
100
+ - Usually fade over time
101
+ - At least you tried
102
+ - Provide learning
103
+
104
+ **Regrets of Inaction:** Things you never tried
105
+ - Grow larger over time
106
+ - "What if?" haunts you
107
+ - No closure or learning
108
+
109
+ Research shows: Regrets of inaction are more painful and persistent than regrets of action.
110
+
111
+ ### Step 5: Make the Decision
112
+
113
+ Choose the path with minimum lifetime regret:
114
+
115
+ ```
116
+ The calculus:
117
+ - If I try and fail: Temporary pain, but no regret for not trying
118
+ - If I don't try: Permanent "what if?" regret
119
+ - The expected regret of inaction > expected regret of action
120
+
121
+ Decision: Try.
122
+ ```
123
+
124
+ ## Application Patterns
125
+
126
+ ### Career Decisions
127
+
128
+ ```markdown
129
+ ## Regret Analysis: Take the startup job or stay at BigCorp?
130
+
131
+ At 80, looking back:
132
+ - Will I regret not taking the startup risk? → Likely YES
133
+ "I wonder what could have been. I played it safe."
134
+ - Will I regret not staying at BigCorp? → Likely NO
135
+ "I took a risk, it didn't work, but I learned and recovered."
136
+
137
+ Key insight: Career failures are recoverable. Unlived possibilities aren't.
138
+
139
+ Decision: Take the startup job.
140
+ ```
141
+
142
+ ### Entrepreneurial Decisions
143
+
144
+ ```markdown
145
+ ## Regret Analysis: Start the business now or wait until "ready"?
146
+
147
+ At 80, looking back:
148
+ - Will I regret not starting when I had the chance? → Likely YES
149
+ "I waited for perfect conditions that never came."
150
+ - Will I regret starting before being fully ready? → Likely NO
151
+ "I learned by doing. Even if it failed, I grew."
152
+
153
+ Key insight: "Ready" is often an illusion. Action creates readiness.
154
+
155
+ Decision: Start now.
156
+ ```
157
+
158
+ ### Personal Decisions
159
+
160
+ ```markdown
161
+ ## Regret Analysis: Relocate for the opportunity or stay near family?
162
+
163
+ At 80, looking back:
164
+ This is more nuanced—both paths have legitimate regret potential.
165
+
166
+ - Regret not relocating: "I passed up growth for comfort"
167
+ - Regret relocating: "I missed years with aging parents"
168
+
169
+ Key insight: When both paths have genuine regret potential,
170
+ the decision is about values, not just regret.
171
+
172
+ Process: Clarify which regret would be heavier for YOUR values.
173
+ ```
174
+
175
+ ### Learning Decisions
176
+
177
+ ```markdown
178
+ ## Regret Analysis: Pursue the degree/certification or focus on work?
179
+
180
+ At 80, looking back:
181
+ - Will I regret not getting the credential? → Maybe
182
+ But: Will the credential matter in 40 years?
183
+ - Will I regret spending years on credential? → Maybe
184
+ But: Education rarely creates lasting regret
185
+
186
+ Key insight: Educational regrets are rare;
187
+ missed opportunities are common regrets.
188
+
189
+ Decision: Often favors learning, but depends on opportunity cost.
190
+ ```
191
+
192
+ ## When Regret Minimization is Less Applicable
193
+
194
+ ### Reversible Decisions
195
+
196
+ If you can easily change course, regret minimization is overkill:
197
+
198
+ ```
199
+ "Which framework should I learn first?"
200
+ This isn't a lifetime regret question—just pick one and learn.
201
+ ```
202
+
203
+ ### Decisions Affecting Others
204
+
205
+ When others bear the consequences, pure regret minimization is selfish:
206
+
207
+ ```
208
+ "Should I risk the company's future on my vision?"
209
+ Your regret isn't the only consideration—employees, investors matter.
210
+ ```
211
+
212
+ ### When Both Options Have Equal Regret
213
+
214
+ Sometimes both paths lead to comparable regret:
215
+
216
+ ```
217
+ "Career A or Career B?"
218
+ If both are good options, regret minimization won't differentiate.
219
+ Use other frameworks (values alignment, opportunity cost).
220
+ ```
221
+
222
+ ## Combining with Other Frameworks
223
+
224
+ ### With Inversion
225
+
226
+ ```
227
+ Inversion: "How would I guarantee regret?"
228
+ - Never take any risks
229
+ - Always choose safety
230
+ - Never pursue what excites me
231
+
232
+ Avoiding these → Minimizing regret
233
+ ```
234
+
235
+ ### With Pre-Mortem
236
+
237
+ ```
238
+ Pre-mortem: "It's years later and I deeply regret this choice. Why?"
239
+
240
+ This is essentially regret minimization through narrative.
241
+ Write the story of future regret to clarify present choices.
242
+ ```
243
+
244
+ ### With Opportunity Cost
245
+
246
+ ```
247
+ Opportunity cost of not trying:
248
+ - Direct: Lost potential upside
249
+ - Regret: Permanent "what if?"
250
+ - Learning: Missed growth opportunity
251
+
252
+ Full cost often favors action.
253
+ ```
254
+
255
+ ## Regret Minimization Template
256
+
257
+ ```markdown
258
+ # Regret Minimization Analysis: [Decision]
259
+
260
+ ## The Decision
261
+ [Clear statement of the choice]
262
+
263
+ ## Option A: [Safe/Conservative Path]
264
+ Short-term: [Benefits and costs]
265
+ Long-term: [Likely trajectory]
266
+ Is the downside recoverable? [Yes/No]
267
+ Long-horizon regret for NOT choosing A: [Assessment]
268
+
269
+ ## Option B: [Risky/Bold Path]
270
+ Short-term: [Benefits and costs]
271
+ Long-term: [Likely trajectory]
272
+ Is the downside recoverable? [Yes/No]
273
+ Long-horizon regret for NOT choosing B: [Assessment]
274
+
275
+ ## Regret Comparison
276
+ | Scenario | Regret Level | Duration | Type |
277
+ |----------|--------------|----------|------|
278
+ | Choose A, works | Low | - | - |
279
+ | Choose A, miss B's upside | High | Permanent | Inaction |
280
+ | Choose B, works | Low | - | - |
281
+ | Choose B, fails | Medium | Temporary | Action |
282
+
283
+ ## Key Insight
284
+ [What does the regret analysis reveal?]
285
+
286
+ ## Decision
287
+ [Choice and reasoning]
288
+ ```
289
+
290
+ ## Common Regret Patterns in Tech Careers
291
+
292
+ ### Things People Regret NOT Doing
293
+
294
+ - Not taking the risk earlier
295
+ - Not starting the side project
296
+ - Not negotiating harder
297
+ - Not leaving toxic situations sooner
298
+ - Not speaking up when it mattered
299
+ - Not investing in relationships
300
+ - Not pursuing meaningful work over safe work
301
+
302
+ ### Things People Rarely Regret
303
+
304
+ - Taking the risk (even if it failed)
305
+ - Starting the company (even if it folded)
306
+ - Making the leap (even if they had to leap back)
307
+ - Speaking up (even if it was uncomfortable)
308
+ - Trying something hard (even if they failed)
309
+
310
+ ## Verification Checklist
311
+
312
+ - [ ] Confirmed this is human-facing advice, not an agent decision
313
+ - [ ] Took the long-horizon view (short-term costs demoted)
314
+ - [ ] Checked the downside is recoverable (if not, the asymmetry flips — flag it)
315
+ - [ ] Distinguished action vs. inaction regrets
316
+ - [ ] Considered impact on others, not just the individual
317
+ - [ ] Recommendation follows the recoverable-vs-permanent asymmetry
318
+
319
+ ## Key Questions
320
+
321
+ - "Is this downside recoverable, or permanent?"
322
+ - "Which short-term costs will have faded years from now?"
323
+ - "Is this fear of failure, or genuine wisdom about an unrecoverable risk?"
324
+ - "Which path, if untaken, leaves a permanent 'what if?'"
325
+ - "Are others harmed in a way that overrides the individual's regret?"
326
+
327
+ ## Bezos's Story
328
+
329
+ "I went to my boss and said I was going to start a company selling books on the Internet. He said, 'That's a great idea, but it would be a better idea for someone who didn't already have a good job.' So he convinced me to think about it for 48 hours."
330
+
331
+ "I thought about it and I used this framework, which I call a regret minimization framework. I projected myself to age 80, and I thought, 'When I'm 80, am I going to regret leaving Wall Street in the middle of the year and forgoing my bonus? No. Am I going to regret missing the beginning of the Internet? Yes.'"
332
+
333
+ "Once I thought about it that way, it was easy to make the decision."
334
+
335
+ The lesson: Short-term costs (bonus, security, status) fade. Long-term "what-ifs" don't. When in doubt, minimize lifetime regret by trying.
@@ -0,0 +1,326 @@
1
+ ---
2
+ name: thinking-reversibility
3
+ description: Before deliberating over a decision, ask if it's a one-way door (costly to undo) or two-way (cheap to undo) — decide two-way doors fast, and look for moves that make one-way doors reversible.
4
+ ---
5
+
6
+ # Reversibility Thinking
7
+
8
+ ## Overview
9
+
10
+ Jeff Bezos distinguishes between Type 1 (irreversible, one-way door) and Type 2 (reversible, two-way door) decisions. The key insight: most decisions are Type 2 but get treated as Type 1, causing analysis paralysis. Match your decision process to the reversibility of the decision.
11
+
12
+ **Core Principle:** Reversible decisions should be made quickly by individuals. Irreversible decisions deserve deliberation. Most decisions are more reversible than they appear.
13
+
14
+ ## When to Use
15
+
16
+ - Technology choices
17
+ - Architecture decisions
18
+ - Process changes
19
+ - Hiring decisions
20
+ - Feature implementations
21
+ - Organizational changes
22
+ - Any decision where you're uncertain how much analysis is warranted
23
+
24
+ Decision flow:
25
+
26
+ ```
27
+ Decision to make?
28
+ → Is it easily reversible? → yes → DECIDE QUICKLY (Type 2)
29
+ → Is it hard/impossible to reverse? → yes → DELIBERATE CAREFULLY (Type 1)
30
+ → Unsure of reversibility? → ANALYZE REVERSIBILITY FIRST
31
+ ```
32
+
33
+ ## When NOT to Use
34
+ - You've already classified the door — don't re-run the analysis; just decide at the matched depth.
35
+ - Trivial, clearly two-way calls (variable names, which test to write first) — deciding is faster than classifying.
36
+ - The decision is being forced by a hard external constraint (deadline, contract, regulation) with no real optionality — reversibility doesn't change the available move.
37
+ - An irreversible action is genuinely required and the upside justifies it — name it, accept it, and proceed deliberately rather than stalling.
38
+
39
+ ## Trigger Card
40
+
41
+ Before deliberating over a decision:
42
+
43
+ 1. **Classify the door** — is it one-way (costly to undo) or two-way (cheap to undo)? If you're not sure, it's probably one-way.
44
+ 2. **Two-way door?** → Decide fast. The cost of delay exceeds the cost of a wrong choice you can reverse.
45
+ 3. **One-way door?** → Ask: can I make it more reversible? (Feature flag, canary, small rollout, decouple the irreversible part.) Then deliberate — but only on what's actually irreversible.
46
+
47
+ If the decision is forced by an external constraint with no optionality, reversibility doesn't change the available move. If an irreversible action is genuinely required and the upside justifies it, name it and proceed.
48
+
49
+ ## Type 1 vs Type 2 Decisions
50
+
51
+ ### Type 1: One-Way Doors
52
+
53
+ **Characteristics:**
54
+ - Irreversible or very costly to reverse
55
+ - Consequences are significant and lasting
56
+ - Changing course means starting over
57
+
58
+ **Examples:**
59
+ - Fundamental architecture choices (monolith vs microservices for core systems)
60
+ - Major technology platform (cloud provider for critical infra)
61
+ - Hiring for leadership positions
62
+ - Shutting down a product line
63
+ - Major acquisitions or contracts
64
+ - Public commitments or promises
65
+
66
+ **Process:**
67
+ - Extensive analysis before acting
68
+ - Explicitly argue the opposing choice (steel-man the alternative)
69
+ - Document the reasoning and the assumptions it rests on
70
+ - Escalate / surface to the human owner before committing
71
+
72
+ ### Type 2: Two-Way Doors
73
+
74
+ **Characteristics:**
75
+ - Easily reversed if wrong
76
+ - Limited blast radius
77
+ - Can iterate and adjust
78
+
79
+ **Examples:**
80
+ - Most feature implementations
81
+ - UI/UX changes
82
+ - Internal tool selection
83
+ - Process experiments
84
+ - Meeting cadences
85
+ - Individual hiring decisions
86
+ - Marketing campaigns
87
+
88
+ **Process:**
89
+ - Decide quickly
90
+ - Pick the most reasonable option now
91
+ - Monitor results
92
+ - Adjust as needed
93
+ - Don't over-analyze
94
+
95
+ ## The Reversibility Analysis
96
+
97
+ ### Step 1: Assess True Reversibility
98
+
99
+ | Factor | Question | Impact on Reversibility |
100
+ |--------|----------|------------------------|
101
+ | Technical cost | How hard to undo technically? | High cost = less reversible |
102
+ | Time cost | How long to reverse? | Months = less reversible |
103
+ | Financial cost | How expensive to change? | High cost = less reversible |
104
+ | Reputation cost | Will reversal damage trust? | Yes = less reversible |
105
+ | Learning cost | Will we lose the learning? | Critical learning = more complex |
106
+ | Dependency cost | Have others built on this? | Many dependents = less reversible |
107
+
108
+ ### Step 2: Categorize the Decision
109
+
110
+ ```
111
+ Reversibility Score:
112
+ - Can undo in days with minimal cost: TYPE 2 (two-way door)
113
+ - Can undo in weeks with moderate cost: TYPE 2 with monitoring
114
+ - Can undo in months with significant cost: TYPE 1.5 (evaluate carefully)
115
+ - Cannot realistically undo: TYPE 1 (one-way door)
116
+ ```
117
+
118
+ ### Step 3: Match Process to Type
119
+
120
+ | Decision Type | Process | Effort | Who decides |
121
+ |---------------|---------|--------|-------------|
122
+ | Type 1 | Full analysis, argue the alternative, document | High | Surface to human owner before committing |
123
+ | Type 1.5 | Structured analysis, document rationale | Moderate | Flag to owner if stakes are high |
124
+ | Type 2+ | Quick analysis, note rationale | Low | Decide and proceed |
125
+ | Type 2 | Just decide | Minimal | Decide and proceed |
126
+
127
+ ## Common Reversibility Misclassifications
128
+
129
+ ### Treating Type 2 as Type 1
130
+
131
+ ```
132
+ Decision: Which logging library to use
133
+ Common mistake: Extensive evaluation, committee decision, weeks of analysis
134
+ Reality: Can swap libraries in a day; dependencies are isolated
135
+ Correct approach: Engineer picks one, team evaluates after 2 weeks
136
+
137
+ Cost of over-deliberation: Weeks of productivity lost
138
+ ```
139
+
140
+ ### Treating Type 1 as Type 2
141
+
142
+ ```
143
+ Decision: Database technology for core product
144
+ Common mistake: Quick decision because "we can always change later"
145
+ Reality: Changing databases means rewriting queries, data migration, retraining
146
+ Correct approach: Thorough evaluation, prototype, stakeholder alignment
147
+
148
+ Cost of under-deliberation: Months of migration pain later
149
+ ```
150
+
151
+ ### Hidden Reversibility
152
+
153
+ Some seemingly irreversible decisions are actually reversible:
154
+
155
+ ```
156
+ "We can't change our API because clients depend on it"
157
+ Reality: Versioning makes this reversible
158
+ v1 continues, v2 adds improvements
159
+
160
+ "We can't change the architecture"
161
+ Reality: Strangler pattern enables gradual change
162
+ Migrate piece by piece
163
+ ```
164
+
165
+ ### Hidden Irreversibility
166
+
167
+ Some seemingly reversible decisions lock you in:
168
+
169
+ ```
170
+ "It's just a prototype, we can rewrite later"
171
+ Reality: Prototypes often become production
172
+ "Temporary" code lives for years
173
+
174
+ "We can always switch cloud providers"
175
+ Reality: Deep integration creates massive switching cost
176
+ Proprietary services create lock-in
177
+ ```
178
+
179
+ ## Reversibility Patterns
180
+
181
+ ### The Pilot Pattern
182
+
183
+ Turn Type 1 into Type 2 through limited rollout:
184
+
185
+ ```
186
+ Type 1: "Adopt new framework for entire codebase"
187
+ Piloted: "Use new framework for one service"
188
+ → Now it's Type 2: Can abandon pilot with limited impact
189
+ → If successful, expand incrementally
190
+ ```
191
+
192
+ ### The Abstraction Pattern
193
+
194
+ Create reversibility through interfaces:
195
+
196
+ ```
197
+ Type 1: "Choose between Postgres and MySQL"
198
+ With abstraction: "Define data layer interface, start with Postgres"
199
+ → Can swap implementation later
200
+ → Cost of reversal dramatically reduced
201
+ ```
202
+
203
+ ### The Time-Box Pattern
204
+
205
+ Make long commitments into short experiments:
206
+
207
+ ```
208
+ Type 1: "Commit to vendor for 3 years"
209
+ Time-boxed: "Start with 6-month pilot"
210
+ → Can exit at known cost
211
+ → Full commitment only after validation
212
+ ```
213
+
214
+ ### The Feature Flag Pattern
215
+
216
+ Deploy with reversibility built in:
217
+
218
+ ```
219
+ Type 1: "Launch new pricing model"
220
+ With flags: "Launch to 5% of users, flag-controlled"
221
+ → Can disable instantly
222
+ → Expand only when confident
223
+ ```
224
+
225
+ ## Decision Speed Guidance
226
+
227
+ ### Decide Immediately (Type 2)
228
+
229
+ - Which test to write first
230
+ - Variable naming
231
+ - Which task to pick up next
232
+ - Local refactors within a single module
233
+
234
+ ### Quick Analysis (Type 2+)
235
+
236
+ - Library choices (within approved options)
237
+ - Implementation approach for a feature
238
+ - Code organization within a module
239
+ - Bug fix approach
240
+
241
+ ### Structured Analysis (Type 1.5)
242
+
243
+ - Design patterns for new components
244
+ - API contract changes (if unversioned)
245
+ - Tool adoption
246
+ - Architectural changes to non-critical services
247
+
248
+ ### Full Deliberation, Surface to Owner (Type 1)
249
+
250
+ - Core architecture decisions
251
+ - Platform/infrastructure choices
252
+ - Irreversible data migrations / deletions
253
+ - Public API contracts with external consumers
254
+
255
+ ## Reversibility Template
256
+
257
+ ```markdown
258
+ # Reversibility Analysis: [Decision]
259
+
260
+ ## The Decision
261
+ [What we're deciding]
262
+
263
+ ## Reversibility Assessment
264
+
265
+ | Factor | Assessment | Score (1-5) |
266
+ |--------|------------|-------------|
267
+ | Technical effort to reverse | [Details] | |
268
+ | Time to reverse | [Duration] | |
269
+ | Financial cost to reverse | [Cost] | |
270
+ | Reputation impact of reversal | [Impact] | |
271
+ | Dependencies affected | [Count/scope] | |
272
+ | Learning lost if reversed | [Value] | |
273
+
274
+ Average: [X]
275
+ - 1-2: Clear Type 2
276
+ - 3: Type 1.5
277
+ - 4-5: Type 1
278
+
279
+ ## Decision Type: [Type 1 / 1.5 / 2]
280
+
281
+ ## Appropriate Process
282
+ - Analysis depth: [Minimal / Moderate / Extensive]
283
+ - Surface to human owner before committing? [No / Yes if high-stakes / Yes]
284
+ - Documentation: [None / Brief / Full]
285
+
286
+ ## Can We Increase Reversibility?
287
+ - Pilot: [Option]
288
+ - Abstraction: [Option]
289
+ - Time-box: [Option]
290
+ - Feature flag: [Option]
291
+
292
+ ## Decision
293
+ [The choice made]
294
+
295
+ ## Reversal Plan (if needed)
296
+ [How we would reverse if this proves wrong]
297
+ ```
298
+
299
+ ## Verification Checklist
300
+
301
+ - [ ] Assessed reversibility across multiple factors
302
+ - [ ] Categorized as Type 1, 1.5, or 2
303
+ - [ ] Matched decision process to decision type
304
+ - [ ] Explored options to increase reversibility
305
+ - [ ] Not over-analyzing Type 2 decisions
306
+ - [ ] Not under-analyzing Type 1 decisions
307
+ - [ ] Have a reversal plan for non-trivial decisions
308
+
309
+ ## Key Questions
310
+
311
+ - "How hard would it be to undo this?"
312
+ - "Are we treating this like a one-way door when it's actually two-way?"
313
+ - "Can we pilot this to make it more reversible?"
314
+ - "What's the cost of being wrong vs. the cost of delay?"
315
+ - "Who else would be affected if we reverse?"
316
+ - "Is this actually irreversible, or does it just feel that way?"
317
+
318
+ ## Bezos' Wisdom
319
+
320
+ "Some decisions are consequential and irreversible or nearly irreversible – one-way doors – and these decisions must be made methodically, carefully, slowly, with great deliberation and consultation."
321
+
322
+ "But most decisions aren't like that – they are changeable, reversible – they're two-way doors. If you've made a suboptimal Type 2 decision, you don't have to live with the consequences for that long. You can reopen the door and go back through."
323
+
324
+ "As organizations get larger, there seems to be a tendency to use the heavy-weight Type 1 decision-making process on most decisions, including many Type 2 decisions. The end result of this is slowness, unthoughtful risk aversion, failure to experiment sufficiently, and consequently diminished invention."
325
+
326
+ Speed matters. Most decisions are reversible. Decide, learn, adjust.