v0.1.0 launch retro
Cutover date: TBD (filled in by the operator on launch day).
Cutover window: TBD (e.g., "Saturday 2026-MM-DD 22:00–22:45 UTC").
A short, blameless retro filled in within 24 hours of the cutover.
Lives in docs/internal/retro/ so future v2/v3 launches can read
the prior one and learn.
What worked
(Filled in post-cutover. Bullets, two sentences each. Examples from a hypothetical good run:
- The Ansible playbook applied first-try; ~12s downtime measured end-to-end. Lower than the 30s budget.
- The smoke script caught a misconfigured Caddy header within 60s of the deploy reporting success — fixed before any user noticed.
- HSTS + the Caddy default cert-renewal worked on first request; no manual cert ceremony needed.)
What surprised us
(Things we hadn't predicted. Honest writeups; this isn't a brag sheet.)
Top 3 user-reported issues in the first 24h
| # | Severity | Title | Status |
|---|---|---|---|
| 1 | TBD | TBD | TBD |
| 2 | TBD | TBD | TBD |
| 3 | TBD | TBD | TBD |
Numbers
| Metric | Value |
|---|---|
| Cutover window length | TBD |
| Downtime during cutover | TBD |
| Signups in first 24h | TBD |
| Repos created in first 24h | TBD |
| Pushes in first 24h | TBD |
| Peak RPS during HN spike | TBD |
| 5xx rate during HN spike | TBD |
| Backups successful since cutover | TBD |
| Alerts paged | TBD |
| Alerts that were false positives | TBD |
What goes into the next sprint
The first post-launch sprint focuses on:
- (Top user-reported issue from the table above, fix.)
- (Second-highest issue, or a parked S41+ feature if no urgent bug.)
- (Drop the GitHub mirror? Track its disposition; default plan is to keep it 90 days.)
Lessons for the next major release
(Things we'd do differently for v2.0.0. Operator-facing notes, not rehash of every minor decision.)
Closing
shithub is now real. The v0.1.0 surface is what users will judge the project against; what we ship from here forward is judged in the context of a public, dogfood-driven instance. That's the forcing function we wanted.
View source
| 1 | # v0.1.0 launch retro |
| 2 | |
| 3 | **Cutover date:** TBD (filled in by the operator on launch day). |
| 4 | |
| 5 | **Cutover window:** TBD (e.g., "Saturday 2026-MM-DD 22:00–22:45 UTC"). |
| 6 | |
| 7 | A short, blameless retro filled in within 24 hours of the cutover. |
| 8 | Lives in `docs/internal/retro/` so future v2/v3 launches can read |
| 9 | the prior one and learn. |
| 10 | |
| 11 | ## What worked |
| 12 | |
| 13 | (Filled in post-cutover. Bullets, two sentences each. Examples |
| 14 | from a hypothetical good run: |
| 15 | |
| 16 | - The Ansible playbook applied first-try; ~12s downtime measured |
| 17 | end-to-end. Lower than the 30s budget. |
| 18 | - The smoke script caught a misconfigured Caddy header within 60s |
| 19 | of the deploy reporting success — fixed before any user noticed. |
| 20 | - HSTS + the Caddy default cert-renewal worked on first request; |
| 21 | no manual cert ceremony needed.) |
| 22 | |
| 23 | ## What surprised us |
| 24 | |
| 25 | (Things we hadn't predicted. Honest writeups; this isn't a brag |
| 26 | sheet.) |
| 27 | |
| 28 | ## Top 3 user-reported issues in the first 24h |
| 29 | |
| 30 | | # | Severity | Title | Status | |
| 31 | |---|----------|-------|--------| |
| 32 | | 1 | TBD | TBD | TBD | |
| 33 | | 2 | TBD | TBD | TBD | |
| 34 | | 3 | TBD | TBD | TBD | |
| 35 | |
| 36 | ## Numbers |
| 37 | |
| 38 | | Metric | Value | |
| 39 | |-------------------------------------------|---------| |
| 40 | | Cutover window length | TBD | |
| 41 | | Downtime during cutover | TBD | |
| 42 | | Signups in first 24h | TBD | |
| 43 | | Repos created in first 24h | TBD | |
| 44 | | Pushes in first 24h | TBD | |
| 45 | | Peak RPS during HN spike | TBD | |
| 46 | | 5xx rate during HN spike | TBD | |
| 47 | | Backups successful since cutover | TBD | |
| 48 | | Alerts paged | TBD | |
| 49 | | Alerts that were false positives | TBD | |
| 50 | |
| 51 | ## What goes into the next sprint |
| 52 | |
| 53 | The first post-launch sprint focuses on: |
| 54 | |
| 55 | 1. (Top user-reported issue from the table above, fix.) |
| 56 | 2. (Second-highest issue, or a parked S41+ feature if no urgent |
| 57 | bug.) |
| 58 | 3. (Drop the GitHub mirror? Track its disposition; default plan |
| 59 | is to keep it 90 days.) |
| 60 | |
| 61 | ## Lessons for the next major release |
| 62 | |
| 63 | (Things we'd do differently for v2.0.0. Operator-facing notes, |
| 64 | not rehash of every minor decision.) |
| 65 | |
| 66 | ## Closing |
| 67 | |
| 68 | shithub is now real. The v0.1.0 surface is what users will judge |
| 69 | the project against; what we ship from here forward is judged in |
| 70 | the context of a public, dogfood-driven instance. That's the |
| 71 | forcing function we wanted. |