happy-stacks 0.6.12 → 0.6.13
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.
- package/docs/commit-audits/happy/_tools/generate-plans.mjs +453 -0
- package/docs/commit-audits/happy/_tools/generate-pr-assignment.mjs +430 -0
- package/docs/commit-audits/happy/_tools/init-pr-assignment-working.mjs +107 -0
- package/docs/commit-audits/happy/leeroy-wip.commit-analysis.md +1849 -0
- package/docs/commit-audits/happy/leeroy-wip.commit-export.fuller-stat.md +747 -1
- package/docs/commit-audits/happy/leeroy-wip.commit-index.json +11740 -0
- package/docs/commit-audits/happy/leeroy-wip.commit-index.tsv +252 -0
- package/docs/commit-audits/happy/leeroy-wip.commit-inventory.md +18 -11
- package/docs/commit-audits/happy/leeroy-wip.commit-manual-review.md +1236 -92
- package/docs/commit-audits/happy/leeroy-wip.maintainers-overview.draft.md +448 -0
- package/docs/commit-audits/happy/leeroy-wip.pr-assignment.draft.tsv +252 -0
- package/docs/commit-audits/happy/leeroy-wip.pr-assignment.working.tsv +288 -0
- package/docs/commit-audits/happy/leeroy-wip.pr-catalog.draft.md +245 -0
- package/docs/commit-audits/happy/leeroy-wip.pr-stack-plan.draft.md +350 -0
- package/docs/commit-audits/happy/leeroy-wip.rewrite-deferred-fragments.tsv +65 -0
- package/docs/commit-audits/happy/leeroy-wip.rewrite-ledger.tsv +56 -0
- package/docs/commit-audits/happy/leeroy-wip.rewrite-process.md +240 -0
- package/docs/commit-audits/happy/leeroy-wip.rewrite-status.tsv +39 -0
- package/docs/commit-audits/happy/leeroy-wip.split-plan.draft.md +93 -0
- package/docs/commit-audits/happy/leeroy-wip.topic-buckets.md +76 -0
- package/docs/commit-audits/happy/pr-desc.extraction-ledger.tsv +279 -0
- package/docs/commit-audits/happy/pr-desc.original.md +0 -0
- package/docs/commit-audits/happy/pr-desc.post-audit-extraction-ledger.tsv +54 -0
- package/docs/commit-audits/happy/pr-desc.working-document.md +536 -0
- package/docs/happy-development.md +18 -1
- package/docs/isolated-linux-vm.md +23 -1
- package/docs/stacks.md +21 -1
- package/package.json +1 -1
- package/scripts/auth.mjs +46 -8
- package/scripts/daemon.mjs +44 -21
- package/scripts/doctor.mjs +2 -2
- package/scripts/doctor_cmd.test.mjs +67 -0
- package/scripts/happy.mjs +18 -5
- package/scripts/provision/linux-ubuntu-review-pr.sh +5 -1
- package/scripts/provision/macos-lima-happy-vm.sh +34 -2
- package/scripts/review.mjs +347 -124
- package/scripts/review_pr.mjs +78 -2
- package/scripts/run.mjs +2 -1
- package/scripts/stack.mjs +265 -19
- package/scripts/stack_daemon_cmd.test.mjs +196 -0
- package/scripts/stack_happy_cmd.test.mjs +103 -0
- package/scripts/utils/cli/prereqs.mjs +12 -1
- package/scripts/utils/dev/daemon.mjs +3 -1
- package/scripts/utils/proc/pm.mjs +1 -1
- package/scripts/utils/review/detached_worktree.mjs +61 -0
- package/scripts/utils/review/detached_worktree.test.mjs +62 -0
- package/scripts/utils/review/findings.mjs +133 -20
- package/scripts/utils/review/findings.test.mjs +88 -1
- package/scripts/utils/review/runners/augment.mjs +71 -0
- package/scripts/utils/review/runners/augment.test.mjs +42 -0
- package/scripts/utils/review/runners/coderabbit.mjs +54 -10
- package/scripts/utils/review/runners/coderabbit.test.mjs +15 -48
- package/scripts/utils/review/sliced_runner.mjs +39 -0
- package/scripts/utils/review/sliced_runner.test.mjs +47 -0
- package/scripts/utils/review/tool_home_seed.mjs +99 -0
- package/scripts/utils/review/tool_home_seed.test.mjs +113 -0
- package/scripts/utils/stack/cli_identities.mjs +29 -0
- package/scripts/utils/stack/startup.mjs +45 -7
- package/scripts/worktrees.mjs +8 -5
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# GENERATED FILE - do not edit by hand.
|
|
2
|
+
# Regenerate: node docs/commit-audits/happy/_tools/generate-plans.mjs
|
|
3
|
+
n date shaShort scopeTag topicBucket subject verdictKind verdict filesChanged linesAdded linesDeleted notesReviewed reviewedAt notesUpdated
|
|
4
|
+
001 2026-01-17 58528a7c37d3 crypto crypto chore(crypto): patch react-native-libsodium keep keep, but likely squash with other libsodium/postinstall patching commits in the same topic (to keep “patch-package maintenance” cohesive). 1 20 0 yes 2026-01-24T18:00:05+0100 no
|
|
5
|
+
002 2026-01-17 552b8da0f621 deps deps test(deps): add @types/react-test-renderer keep keep; can be squashed with adjacent “test deps” commits if we’re minimizing granularity. 2 8 0 yes 2026-01-24T18:00:05+0100 no
|
|
6
|
+
003 2026-01-17 017b15c07ad7 config config chore(config): harden app variant defaults keep keep; this is reliability hardening for local dev variants and prevents “undefined name/bundle id” configs. 1 21 6 yes 2026-01-24T18:00:05+0100 no
|
|
7
|
+
004 2026-01-17 4890a471df31 auth auth fix(auth): harden tokenStorage web persistence keep keep; belongs in an “auth storage / storage scoping” topic (likely near other storage-scope commits). 2 137 9 yes 2026-01-24T18:00:05+0100 no
|
|
8
|
+
005 2026-01-17 4adc41d92af0 sync sync feat(sync): add permission mode types and mapping keep keep; foundational for later permission-mode persistence and UI toggles. Consider splitting out `MODEL_MODES/isModelMode` into its own commit if it ends up being used broadly outside permission-mode work. 4 218 0 yes 2026-01-24T18:00:05+0100 no
|
|
9
|
+
006 2026-01-17 a5fbc3e8ba00 persistence persistence feat(persistence): scope storage and validate draft modes keep keep; foundational for multi-stack reliability and later model-mode persistence. 4 255 6 yes 2026-01-24T18:03:45+0100 yes
|
|
10
|
+
007 2026-01-17 18e77c46f38a session session fix(session): clamp configurable model modes keep keep; correctness hardening, small + focused. 1 20 5 yes 2026-01-24T18:03:45+0100 no
|
|
11
|
+
008 2026-01-17 f7bb8a28fff7 tools tools fix(tools): harden ACP tool parsing and titles keep keep; this is correctness + safety hardening for tool rendering and raw message normalization. 4 202 28 yes 2026-01-24T18:03:45+0100 no
|
|
12
|
+
009 2026-01-17 292424245277 sync sync refactor(sync): centralize outgoing message metadata keep keep; this centralization reduces “optional field gotcha” drift and is a good precursor for later metadata evolution. 3 84 55 yes 2026-01-24T18:03:45+0100 no
|
|
13
|
+
010 2026-01-17 39cc25154cdd storage storage feat(storage): persist session model modes keep keep; this is key for “Gemini model mode per session” and for later reliable settings sync. 2 38 19 yes 2026-01-24T18:03:45+0100 no
|
|
14
|
+
011 2026-01-17 c2d3507357dc settings settings fix(settings): make parsing tolerant for profiles keep keep; this is a high-value reliability fix. 3 224 141 yes 2026-01-24T18:06:57+0100 yes
|
|
15
|
+
012 2026-01-17 207ef1b2f572 dev dev fix(dev): gate CLI detection logging keep keep; improves production hygiene and reduces potential leakage/noise. 3 41 24 yes 2026-01-24T18:10:19+0100 no
|
|
16
|
+
013 2026-01-17 58a892d413d1 command-palette command-palette fix(command-palette): include navigate dependency keep keep; small but correct and prevents subtle bugs when `navigateToSession` changes. 1 3 3 yes 2026-01-24T18:10:19+0100 no
|
|
17
|
+
014 2026-01-17 41479b35415f env env feat(env): add env var template parsing keep keep; this becomes a shared primitive used by later env preview commits. 3 83 8 yes 2026-01-24T18:10:19+0100 no
|
|
18
|
+
015 2026-01-17 695bcd09eb9e env env fix(env): improve remote env resolution and previews keep keep; this is a reliability + security improvement for env previews and should land before the UI-heavy env preview work (016). 4 343 26 yes 2026-01-24T18:10:19+0100 no
|
|
19
|
+
016 2026-01-17 6cdb90a49aad env env feat(env): update env var list, cards, and preview modal keep keep; likely worth splitting during rewrite only if we want more granular reviewability (e.g. “preview modal” separate from “card/list refactor”). 6 1533 381 yes 2026-01-24T18:10:19+0100 no
|
|
20
|
+
017 2026-01-17 65bae55a0b61 i18n i18n refactor(i18n): separate translation types and content keep keep, but consider splitting by intent during history rewrite: 14 1756 1006 yes 2026-01-24T18:10:19+0100 yes
|
|
21
|
+
018 2026-01-17 2993b5c860ff new-session new-session fix(new-session): restore standard modal flow keep keep, but strongly recommend splitting during rewrite (this commit is too large + multi-intent): 17 3142 1629 yes 2026-01-24T18:15:13+0100 yes
|
|
22
|
+
019 2026-01-17 9e08047d2478 profiles profiles fix(profiles): harden routing, grouping, and editing keep keep, but consider splitting into two commits in rewritten history: 13 1319 857 yes 2026-01-24T18:17:05+0100 yes
|
|
23
|
+
020 2026-01-17 8d9f56e85e5a ui ui refactor(ui): unify list selectors and modal primitives keep keep, but split in rewritten history (too many unrelated refactors in one commit): 28 1646 3588 yes 2026-01-24T18:31:18+0100 yes
|
|
24
|
+
021 2026-01-17 2ab560bb0535 cli-detection cli-detection feat(cli-detection): add daemon detect-cli RPC support keep keep; foundational for later UI that displays detected CLI status per machine. 2 99 3 yes 2026-01-24T18:32:25+0100 no
|
|
25
|
+
022 2026-01-17 2d4675a5d051 agent-input agent-input fix(agent-input): use compact permission badges keep keep; should be grouped with the i18n commit(s) that add the corresponding `agentInput.*.badge*` translation keys. 1 22 17 yes 2026-01-24T18:32:51+0100 no
|
|
26
|
+
023 2026-01-18 d97924f3ef39 test test chore(test): define __DEV__ for vitest keep keep; small and improves test determinism. Safe to squash into nearby test infra changes if desired. 1 4 1 yes 2026-01-24T18:33:10+0100 no
|
|
27
|
+
024 2026-01-18 9c19baa833b9 settings settings feat(settings): add api keys and experiment toggles keep keep; this is the foundational data-model work for the subsequent API keys UI and per-experiment UI. 4 331 0 yes 2026-01-24T18:34:24+0100 no
|
|
28
|
+
025 2026-01-18 21cc6df79f50 api-keys api-keys feat(api-keys): add saved API keys UI keep keep; can be split during rewrite into “UI primitives (ApiKeysList/Modal)” vs “screen wiring” if desired. 5 580 10 yes 2026-01-24T18:35:32+0100 yes
|
|
29
|
+
026 2026-01-18 ce9cd74d408a machine machine feat(machine): surface detected CLI status keep keep; this is a feature-sized change but brings strong reliability patterns (cache + timeout + explicit refresh). 9 894 104 yes 2026-01-24T18:37:32+0100 no
|
|
30
|
+
027 2026-01-18 7899bbd8433e profiles profiles feat(profiles): add API key requirements flow keep keep; recommend splitting in rewritten history into: 11 1515 222 yes 2026-01-24T18:40:29+0100 yes
|
|
31
|
+
028 2026-01-18 0023ba1ea5aa i18n i18n refactor(i18n): update translations and tooling keep keep; consider splitting into: 11 2913 143 yes 2026-01-24T18:44:46+0100 yes
|
|
32
|
+
029 2026-01-18 12e75a3b36fa autocomplete autocomplete fix(autocomplete): remove debug suggestion logs keep keep; small cleanup. 1 0 6 yes 2026-01-24T18:45:28+0100 no
|
|
33
|
+
030 2026-01-18 679877c26ea9 settings settings feat(settings): expose per-experiment toggles keep keep; should be adjacent to 024 in rewritten history (schema + UI). 1 94 3 yes 2026-01-24T18:46:01+0100 no
|
|
34
|
+
031 2026-01-18 4dc9c7f8759c agent-input agent-input feat(agent-input): add configurable action bar layout keep keep; should follow 024 (settings keys) and be placed near other AgentInput UX commits. 2 477 117 yes 2026-01-24T18:47:29+0100 yes
|
|
35
|
+
032 2026-01-18 e8e42a6087ad modal modal fix(modal): prevent stacked modal touch-blocking on iOS keep keep; this is a high-value UX/reliability fix and should land before any later UI that relies on stacked modals. 5 111 8 yes 2026-01-24T18:48:18+0100 yes
|
|
36
|
+
033 2026-01-18 daa0b4527d7f new-session new-session feat(new-session): add api key selection and wizard extraction keep keep; in rewritten history, keep it adjacent to (and after) the commits that introduce: 4 1719 1116 yes 2026-01-24T18:52:09+0100 yes
|
|
37
|
+
034 2026-01-18 94814465bf81 sync sync perf(sync): debounce pending settings writes keep keep; performance + reliability win, likely safe to keep as one “sync perf” commit. 1 69 4 yes 2026-01-24T18:53:41+0100 no
|
|
38
|
+
035 2026-01-18 7ffd0c3428cb ui ui fix(ui): localize error alerts keep keep; should be adjacent to i18n commits ensuring `errors.unknownError` exists across locales. 1 4 3 yes 2026-01-24T18:54:29+0100 no
|
|
39
|
+
036 2026-01-18 97ca69e0a735 i18n i18n refactor(i18n): replace remaining UI literals keep keep; this is good “i18n hygiene” and reduces future untranslated regressions. Consider grouping it near the translation-dictionary updates that add the required keys. 19 64 59 yes 2026-01-24T18:55:47+0100 yes
|
|
40
|
+
037 2026-01-18 5f5b57df5181 ui ui refactor(ui): improve item rendering and action menu timing keep keep; good incremental UX/perf improvement. Place near other modal/list primitive refactors (e.g. 020, 032). 5 33 9 yes 2026-01-24T18:57:14+0100 no
|
|
41
|
+
038 2026-01-18 7976b877259c experiments experiments feat(experiments): gate Zen, file viewer, and voice auth flow keep keep, but split during rewrite (gating vs i18n). The gating portion is a good safety/reliability change (reduces accidental exposure of unfinished features and avoids auth-path changes when experiments are broadly enabled). 7 29 21 yes 2026-01-24T19:02:45+0100 no
|
|
42
|
+
039 2026-01-21 6ed379f82c34 ui ui refactor(ui): add modal + popover overlay primitives **keep **keep, but split + reorder during rewrite**. 43 4669 930 yes 2026-01-24T19:06:52+0100 no
|
|
43
|
+
040 2026-01-21 f0787de5308e sync sync feat(sync): add secrets + terminal settings primitives **keep **keep, but split during rewrite** (this is a good foundational change, but it mixes multiple large concerns). 60 2348 636 yes 2026-01-24T19:11:23+0100 yes
|
|
44
|
+
041 2026-01-21 66ee1eaf88a6 secrets secrets feat(secrets): add secrets management + requirement resolver **keep **keep, but split during rewrite** to make the security surface area reviewable. 29 2315 1099 yes 2026-01-24T19:17:58+0100 yes
|
|
45
|
+
042 2026-01-21 bdaf6913141f terminal terminal feat(terminal): add Terminal settings + tmux metadata keep keep; this is a feature-sized commit but cohesive around “Terminal settings + tmux support”. 8 509 28 yes 2026-01-24T19:20:11+0100 yes
|
|
46
|
+
043 2026-01-21 bc779e4f7909 new-session new-session refactor(new-session): integrate secrets + terminal spawn options **keep **keep, but split during rewrite** (core new-session changes are important; the adjacent refactors should be isolated). 17 1051 661 yes 2026-01-24T19:27:57+0100 yes
|
|
47
|
+
044 2026-01-21 cb11d4bdb25a docs claude docs: add AGENTS.md symlink + update CLAUDE.md keep keep; doc-only. 2 82 1 yes 2026-01-24T19:28:37+0100 no
|
|
48
|
+
045 2026-01-21 1bc3b9715776 sync sync fix(sync): handle non-JSON 400 responses keep keep; a clean correctness fix with targeted test. 2 51 3 yes 2026-01-24T19:29:06+0100 no
|
|
49
|
+
046 2026-01-21 ea2e4d19d633 deps deps chore(deps): align react-test-renderer with react keep keep; belongs near other “test renderer / react version alignment” maintenance (e.g. 002). 2 8 8 yes 2026-01-24T19:29:31+0100 no
|
|
50
|
+
047 2026-01-21 dd041d21ecfc sync sync fix(sync): guard JSON parsing on disconnect errors keep keep; pairs well with 045 as a “robust error parsing” mini-series. 4 85 6 yes 2026-01-24T19:30:12+0100 no
|
|
51
|
+
048 2026-01-21 395da4ff3167 zen zen refactor(zen): avoid todo variable shadowing keep keep; can be squashed into other Zen refactors if desired. 1 2 2 yes 2026-01-24T19:30:36+0100 no
|
|
52
|
+
049 2026-01-21 2e956f32f220 new new fix(new): keep pick screens above iOS modal keep keep. This is a valuable reliability fix and already includes meaningful regression tests. 13 739 37 yes 2026-01-24T19:31:37+0100 no
|
|
53
|
+
050 2026-01-21 2da2f9349ec5 popover popover fix(popover): allow web fixed positioning types keep keep; can be squashed into other `Popover` portal/web fixes if we regroup by topic. 1 4 4 yes 2026-01-24T19:32:04+0100 no
|
|
54
|
+
051 2026-01-21 43f23f2f082e format format chore(format): replace stray tabs with spaces keep keep, but consider squashing into a nearby commit that already touches these files to reduce “format-only” noise. 2 26 26 yes 2026-01-24T19:32:27+0100 no
|
|
55
|
+
052 2026-01-21 e1d55fdbd9ee i18n i18n fix(i18n): improve untranslated literal scan parsing keep keep. 1 12 2 yes 2026-01-24T19:32:51+0100 no
|
|
56
|
+
053 2026-01-21 c210c1115598 sync sync test(sync): restore stubbed fetch between tests keep keep; can be squashed into the adjacent GitHub API test series if desired. 1 5 1 yes 2026-01-24T19:33:20+0100 no
|
|
57
|
+
054 2026-01-21 66c678451335 ui ui fix(ui): apply small review fixes split split or squash during history rewrite (recommended). If we keep it as-is, it should stay adjacent to the PR review context that motivated it. 8 23 25 yes 2026-01-24T19:33:50+0100 no
|
|
58
|
+
055 2026-01-21 2472b376775c modal modal test(modal): make backdrop z-index assertion safer keep keep; can be squashed into the modal test series. 1 3 1 yes 2026-01-24T20:01:38+0100 no
|
|
59
|
+
056 2026-01-21 02450d179aaf profiles profiles fix(profiles): align experimentsEnabled for built-in profiles keep keep; likely belongs near other profile picker / built-in profile series changes. 1 1 2 yes 2026-01-24T20:02:13+0100 no
|
|
60
|
+
057 2026-01-21 ff7bec72358f secrets secrets fix(secrets): tighten callback deps and fix indentation keep keep (small but worthwhile). 1 29 21 yes 2026-01-24T20:02:41+0100 no
|
|
61
|
+
058 2026-01-21 1bb65f5dd494 new-session new-session fix(new-session): avoid stuck secret requirement modal guard keep keep. 1 5 3 yes 2026-01-24T20:03:11+0100 no
|
|
62
|
+
059 2026-01-21 f7f81497444d modal modal fix(modal): prevent non-dismissible WebAlertModal split split during history rewrite (strongly recommended). 6 368 36 yes 2026-01-24T20:04:08+0100 no
|
|
63
|
+
060 2026-01-22 bb09f91de715 settings settings fix(settings): keep valid secrets when one entry is invalid keep keep. 2 44 0 yes 2026-01-24T20:04:42+0100 no
|
|
64
|
+
061 2026-01-22 765423af52b4 agent-input agent-input fix(agent-input): cycle permission mode from normalized state keep keep (small, correct, and tested). 3 43 10 yes 2026-01-24T20:05:10+0100 no
|
|
65
|
+
062 2026-01-22 e533db1813a5 popover popover fix(popover): add screens cjs helper and fix fixed positioning types keep keep, but reorder/squash for bisectability. 2 14 4 yes 2026-01-24T20:05:39+0100 no
|
|
66
|
+
063 2026-01-22 2ed3100311c7 secrets secrets fix(secrets): hide values when using secret vault keep keep (security/privacy hardening). 10 31 9 yes 2026-01-24T20:06:18+0100 no
|
|
67
|
+
064 2026-01-22 e5848c480522 ui ui fix(ui): harden overlays and permission cycling keep keep, but during rewrite reconcile with 061 (these two commits should collapse into one coherent permission-cycling implementation plus the overlay hardening pieces). 6 302 8 yes 2026-01-24T20:07:04+0100 no
|
|
68
|
+
065 2026-01-13 69fdcff96a4c sync sync fix(sync): restore session permission mode from last message keep keep (safety + UX reliability), but ensure follow-up commits handle edge cases (there are additional permission-mode persistence commits in the queue). 2 56 5 yes 2026-01-24T20:07:37+0100 no
|
|
69
|
+
066 2026-01-13 9b499c5dccce sync sync fix(sync): persist permission mode timestamp for restart-safe arbitration keep keep (required follow-up to 065). 2 39 2 yes 2026-01-24T20:08:03+0100 no
|
|
70
|
+
067 2026-01-13 def8852509d0 sync sync fix(sync): persist permission mode reliably across devices keep keep (important reliability/safety follow-up). 11 141 48 yes 2026-01-24T20:09:07+0100 no
|
|
71
|
+
068 2026-01-12 b1c8a6fecd01 session session fix(session): archive when kill RPC unavailable keep keep; this is a pragmatic reliability fix. 4 41 7 yes 2026-01-24T20:09:38+0100 no
|
|
72
|
+
069 2026-01-06 c06b6202b5d4 expo-app expo-app Add copy-to-clipboard button to message blocks keep keep. 1 84 2 yes 2026-01-24T20:15:28+0100 no
|
|
73
|
+
070 2026-01-21 9fc7d3d412b9 sessions sessions feat(sessions): group inactive sessions by project keep keep. 16 404 117 yes 2026-01-24T20:17:34+0100 no
|
|
74
|
+
071 2026-01-21 62a8b1b07c3e sessions sessions feat(sessions): add unread badge keep keep; this is a user-visible feature with reasonable persistence and unit tests. 9 199 39 yes 2026-01-24T20:18:40+0100 no
|
|
75
|
+
072 2026-01-21 82d74454c3c4 typecheck typecheck fix(typecheck): restore permission imports and Popover web styles keep keep (small typecheck/compile fix). 3 2 2 yes 2026-01-24T20:19:14+0100 no
|
|
76
|
+
073 2026-01-11 4f2b533f99c2 tools tools feat(tools): add approve/reject buttons to ExitPlanMode keep keep. 10 249 13 yes 2026-01-24T20:20:20+0100 no
|
|
77
|
+
074 2026-01-07 c86cbd26b040 queue queue feat(queue): add pending message queue UI and send modes keep keep, but consider splitting UI-only cleanup (theme/i18n) into follow-up commits during history rewrite. 12 703 59 yes 2026-01-24T20:22:09+0100 no
|
|
78
|
+
075 2026-01-07 42da6dae8fe4 session session feat(session): add session rename support keep keep. 11 192 6 yes 2026-01-24T20:23:19+0100 no
|
|
79
|
+
076 2026-01-12 057102f67904 resume resume feat(resume): add resume session option for new sessions keep keep; belongs with the broader “resume sessions” topic. 17 479 13 yes 2026-01-24T20:27:11+0100 yes
|
|
80
|
+
077 2026-01-14 05532bd65c6b resume resume feat(resume): show resume chip under path in new session keep keep; should stay adjacent to 076. 3 57 44 yes 2026-01-24T20:27:54+0100 no
|
|
81
|
+
078 2026-01-11 cd5771e50881 resume resume feat: resume inactive Claude sessions from UI keep keep, but expect to squash with 079+080+076/077 into a single coherent resume topic series. 3 261 3 yes 2026-01-24T20:29:19+0100 yes
|
|
82
|
+
079 2026-01-12 456e2ad8e2b8 resume resume refactor(resume): don't require agentSessionId from UI keep keep; should be adjacent to 078 and any daemon/server-side follow-ups that implement vendor-id derivation. 12 84 11 yes 2026-01-24T20:30:50+0100 yes
|
|
83
|
+
080 2026-01-11 9b0069e3d30c fork fork feat(fork): enable Codex resume support keep keep, but isolate into a fork-only branch/PR (or guard with a build flag/env) during history rewrite. 12 52 29 yes 2026-01-24T20:32:11+0100 yes
|
|
84
|
+
081 2026-01-22 4ddaef02210e sync sync fix(sync): omit model meta for queued messages keep keep; should be adjacent to the message queue/send-mode series (074). 1 7 6 yes 2026-01-24T20:33:19+0100 yes
|
|
85
|
+
082 2026-01-12 3fbdc10018fe tmux terminal fix: tmux parsing/targeting + review feedback split split during history rewrite (recommended). 15 153 127 yes 2026-01-24T20:34:54+0100 yes
|
|
86
|
+
083 2026-01-13 7292a29822bb daemon daemon fix(daemon): do not apply CLI active profile to GUI-spawned sessions keep keep. 1 5 54 yes 2026-01-24T20:36:02+0100 no
|
|
87
|
+
084 2026-01-13 ce94cfa512ac session session feat(session): persist profileId in session metadata via daemon spawn keep keep; should stay near other “profiles + spawn” daemon changes (083/085/086). 6 33 5 yes 2026-01-24T20:38:18+0100 no
|
|
88
|
+
085 2026-01-13 e58e97fd7ff4 pr107 pr107 fix(pr107): harden daemon spawn + align profile schema keep keep (especially the restored `await`). 3 38 11 yes 2026-01-24T20:38:46+0100 yes
|
|
89
|
+
086 2026-01-13 86330e263595 security security fix(security): redact spawn secrets from daemon logs keep keep the redaction, but during rewrite separate and re-evaluate the `fs.writeFile` await removal (it looks accidental/unrelated to redaction). 2 30 3 yes 2026-01-24T20:39:34+0100 no
|
|
90
|
+
087 2026-01-15 a25acab22b64 socket socket fix(socket): restore offline buffering for sends keep keep, but fix the `canSend` inconsistency (either restore the helper or remove the remaining call). 3 39 31 yes 2026-01-24T20:41:19+0100 yes
|
|
91
|
+
088 2026-01-15 a7d23148c311 logging logging fix(logging): gate debug output and redact templates keep keep. 6 170 17 yes 2026-01-24T20:42:12+0100 no
|
|
92
|
+
089 2026-01-13 ef418bc4dda3 pr107 pr107 fix(pr107): redact profile secrets in doctor + align tmux tmpDir keep keep (small, targeted). 2 12 8 yes 2026-01-24T20:42:51+0100 no
|
|
93
|
+
090 2026-01-13 1f90659694be profiles profiles refactor(profiles): remove unwired startup script and local env cache keep keep, but squash/reconcile with the earlier schema-alignment steps so history doesn’t oscillate. 1 9 74 yes 2026-01-24T20:43:32+0100 no
|
|
94
|
+
091 2026-01-15 7aed8aaee02f profiles profiles refactor(profiles): drop provider config objects keep keep. 2 124 75 yes 2026-01-24T20:44:29+0100 no
|
|
95
|
+
092 2026-01-15 6b0bfe546d9e runtime runtime feat(runtime): support bun for daemon-spawned subprocesses keep keep. 3 130 20 yes 2026-01-24T21:51:01+0100 yes
|
|
96
|
+
093 2026-01-15 4071466545ab rpc rpc refactor(rpc): accept arbitrary env var maps for spawn keep keep. 1 12 14 yes 2026-01-24T21:51:52+0100 no
|
|
97
|
+
094 2026-01-17 809be82b53e7 env env fix(env): implement default assignment semantics keep keep; should live adjacent to the earlier `expandEnvVars` changes (085/088). 2 36 5 yes 2026-01-24T21:52:35+0100 no
|
|
98
|
+
095 2026-01-17 4c2a671dc3f4 rpc rpc feat(rpc): add preview-env handler keep keep. 2 380 0 yes 2026-01-24T21:53:26+0100 yes
|
|
99
|
+
096 2026-01-15 2973f7fe6861 codex codex fix(codex): harden MCP command detection keep keep. 2 148 51 yes 2026-01-24T21:54:17+0100 no
|
|
100
|
+
097 2026-01-15 c863db3d5bbc offline offline refactor(offline): make offline session stub safer keep keep. 2 78 20 yes 2026-01-24T21:55:09+0100 no
|
|
101
|
+
098 2026-01-15 0a1a91a631e7 tmux tmux feat(tmux): support per-instance socket path keep keep. 2 198 84 yes 2026-01-24T21:56:06+0100 yes
|
|
102
|
+
099 2026-01-15 c52227082c2b tmux tmux fix(tmux): correct env, tmpdir, and session selection keep keep, but **split during rewrite** (too many concerns bundled). 21 915 206 yes 2026-01-24T21:59:16+0100 yes
|
|
103
|
+
100 2026-01-16 7a01a8e42629 claude claude test(claude): align sessionScanner path mapping keep keep. 1 34 7 yes 2026-01-24T22:00:22+0100 no
|
|
104
|
+
101 2026-01-17 1075a768e551 rpc rpc feat(rpc): add detect-cli handler keep keep. 2 159 2 yes 2026-01-24T22:01:26+0100 yes
|
|
105
|
+
102 2026-01-21 c988f68ca4d0 ui ui feat(ui): surface Codex/Gemini errors in session UI keep keep. 9 306 71 yes 2026-01-24T22:11:23+0100 yes
|
|
106
|
+
103 2026-01-21 b2269ee11252 claude claude fix(claude): use hook transcript path across switching keep keep, but it’s big; consider splitting during rewrite into: 18 1025 93 yes 2026-01-24T22:15:19+0100 yes
|
|
107
|
+
104 2026-01-21 f53cf71d416c persistence persistence refactor(persistence): remove deprecated tmuxConfig keep keep. 1 1 18 yes 2026-01-24T22:16:05+0100 no
|
|
108
|
+
105 2026-01-21 8dae65f6c585 rpc rpc feat(rpc): include tmux in detect-cli keep keep. 2 302 6 yes 2026-01-24T22:16:51+0100 yes
|
|
109
|
+
106 2026-01-21 ad66c6aaa3ae terminal terminal feat(terminal): add tmux metadata + attach tooling keep keep, but it’s big; during rewrite consider splitting into: 23 1036 11 yes 2026-01-24T22:18:04+0100 yes
|
|
110
|
+
107 2026-01-21 c13d51ee4638 daemon daemon feat(daemon): support tmux spawn + harden runtime keep keep; should stay adjacent to 106 and the tmux spawn series (099/098). 8 324 74 yes 2026-01-24T22:18:59+0100 yes
|
|
111
|
+
108 2026-01-21 f7db44dea458 docs cli docs: add AGENTS.md symlink keep keep. 1 1 0 yes 2026-01-24T22:20:24+0100 no
|
|
112
|
+
109 2026-01-21 af5000ea6318 ui ui fix(ui): polish Codex and Gemini error messages keep keep. 4 17 5 yes 2026-01-24T22:20:50+0100 no
|
|
113
|
+
110 2026-01-21 f68552d03ab9 tmux tmux fix(tmux): print attach instructions in correct order keep keep. 2 82 3 yes 2026-01-24T22:21:22+0100 no
|
|
114
|
+
111 2026-01-21 4e4bb65ff3f0 tmux tmux test(tmux): avoid brittle assertions keep keep. 1 15 14 yes 2026-01-24T22:21:47+0100 no
|
|
115
|
+
112 2026-01-21 45f4eb5d145c detect-cli detect-cli test(detect-cli): avoid process.env reassignment keep keep. 1 22 3 yes 2026-01-24T22:22:13+0100 no
|
|
116
|
+
113 2026-01-21 51782fdbfbcd codex codex test(codex): reset transport instances between tests keep keep. 1 1 1 yes 2026-01-24T22:22:40+0100 no
|
|
117
|
+
114 2026-01-21 0ad76f4877ae cli cli chore(cli): fix gemini daemon block indentation keep keep; can be squashed into a nearby `cli/src/index.ts` change if desired. 1 2 2 yes 2026-01-24T22:23:08+0100 no
|
|
118
|
+
115 2026-01-21 a8093e3e4ddb persistence persistence docs(persistence): update profile schema version comment keep keep; low-risk docs-only change. 1 1 1 yes 2026-01-24T22:23:33+0100 no
|
|
119
|
+
116 2026-01-21 b16c3658b944 gemini gemini fix(gemini): normalize error details for UI keep keep; belongs with the Gemini error-formatting series (102/109). 1 4 1 yes 2026-01-24T22:24:11+0100 no
|
|
120
|
+
117 2026-01-21 d9591372655f common common fix(common): handle execFileAsync exit codes keep keep; should stay adjacent to the detect-cli series (101/105/112). 1 2 1 yes 2026-01-24T22:24:48+0100 no
|
|
121
|
+
118 2026-01-22 ab95e8cf920c sync sync fix(sync): avoid hanging invalidateAndAwait on errors keep keep. 3 84 11 yes 2026-01-24T22:25:33+0100 yes
|
|
122
|
+
119 2026-01-22 6f98c95fb5d8 claude claude fix(claude): support -c/-r and avoid session loss on switch keep keep; belongs immediately after 103 in a “Claude switching + transcript” topic cluster. 13 496 60 yes 2026-01-24T22:27:03+0100 yes
|
|
123
|
+
120 2026-01-16 9489d70848f3 claude claude test(claude): align sessionScanner path mapping squash squash into nearby test commits (very small). 1 0 1 yes 2026-01-24T22:30:30+0100 no
|
|
124
|
+
121 2026-01-12 9c4cb44b7d86 daemon daemon fix(daemon): reattach sessions after daemon restart keep keep (important). 7 295 17 yes 2026-01-24T22:31:11+0100 yes
|
|
125
|
+
122 2026-01-14 dbde6d871670 daemon daemon test(daemon): add PID classification + session marker tests keep keep. 3 199 34 yes 2026-01-24T22:31:56+0100 no
|
|
126
|
+
123 2026-01-14 7cffdd5ce614 daemon daemon fix(daemon): verify PID via command hash for reattach/stop keep keep; should be adjacent to 121/122. 4 74 10 yes 2026-01-24T22:32:42+0100 no
|
|
127
|
+
124 2026-01-13 8b88dcd73d40 claude claude fix(claude): carry permission mode across remote/local switches keep keep (safety fix). 5 51 0 yes 2026-01-24T22:33:10+0100 no
|
|
128
|
+
125 2026-01-13 8f0e10c9428b claude claude fix(claude): publish permission mode in session metadata keep keep, but it should be grouped/squashed with: 7 58 10 yes 2026-01-24T22:33:49+0100 no
|
|
129
|
+
126 2026-01-13 ffad20faa406 cli cli fix(cli): publish permission mode for codex/gemini sessions keep keep, but group with 125 (Claude metadata publish) and app-side metadata consumption (067) so the end-to-end feature lands coherently. 5 129 30 yes 2026-01-24T22:34:28+0100 no
|
|
130
|
+
127 2026-01-13 eb72c6e69434 codex codex fix(codex): disable model override and remove experimental resume keep keep, but squash into the earlier Codex “model override / experimental resume” series. 1 13 96 yes 2026-01-24T22:37:39+0100 no
|
|
131
|
+
128 2026-01-21 d317f6bfa282 typecheck typecheck fix(typecheck): resolve duplicate terminalRuntime and RPC handler types keep keep, but squash into the parent commits that introduced the duplicates / handler type changes. 3 1 4 yes 2026-01-24T22:38:30+0100 no
|
|
132
|
+
129 2026-01-21 a8682d427794 cli detect-cli fix(detect-cli): relax tmux version probe timeout keep keep (small, focused reliability fix). 1 1 1 yes 2026-01-24T22:39:02+0100 no
|
|
133
|
+
130 2026-01-07 e2824dbc858b queue queue feat(queue): add server-side pending message pull support keep keep, but consider splitting `codexSessionId` metadata into the resume topic. 5 58 8 yes 2026-01-24T22:39:35+0100 no
|
|
134
|
+
131 2026-01-12 37a2c55a6c2f session session fix(session): prime agent state for readiness keep keep (small and behaviorally meaningful), but group with other readiness / resume-attach changes that rely on readiness. 2 20 0 yes 2026-01-24T22:40:05+0100 no
|
|
135
|
+
132 2026-01-21 88494b122194 tools tools fix(tools): support Windows arm64 tool unpacking likely likely squash with its revert (140) unless pieces are reintroduced later in a cleaner form. 6 70 6 yes 2026-01-24T22:40:48+0100 no
|
|
136
|
+
133 2026-01-09 d71587eda2db resume resume feat: resume Claude sessions from UI keep keep, but group with the rest of the resume/inactive-session series (134–136, 141, 137 fork-only Codex resume, etc.). 4 83 41 yes 2026-01-24T22:41:30+0100 no
|
|
137
|
+
134 2026-01-11 a80868aff50d resume resume feat: resume inactive Claude sessions from UI keep keep, but split during history rewrite (recommended). 7 253 69 yes 2026-01-24T22:42:27+0100 no
|
|
138
|
+
135 2026-01-12 bcaa530b12d7 resume resume feat(resume): add happy resume and persist vendor resume id keep keep. 3 98 27 yes 2026-01-24T22:47:01+0100 no
|
|
139
|
+
136 2026-01-12 e085e75c5d36 resume resume feat(resume): allow resume-session without agentSessionId keep keep, but must be squashed with (or followed immediately by) a compile-fix commit for the duplicate import. 3 83 64 yes 2026-01-24T22:47:53+0100 no
|
|
140
|
+
137 2026-01-12 68a6ba4bc244 fork fork feat(fork): enable Codex inactive-session resume via codex-reply keep keep (fork-only), but split during rewrite so each responsibility is reviewable: 6 224 73 yes 2026-01-24T22:48:49+0100 no
|
|
141
|
+
138 2026-01-22 d3aefaa9b598 daemon daemon refactor(daemon): extract reattach and pid safety helpers keep keep. 3 86 64 yes 2026-01-24T22:49:26+0100 no
|
|
142
|
+
139 2026-01-22 72397b7e8c94 test daemon test(daemon): add opt-in reattach integration tests keep keep (opt-in integration suite). 2 238 0 yes 2026-01-24T22:50:06+0100 no
|
|
143
|
+
140 2026-01-22 9c40c54018c2 cli cli Revert "fix(tools): support Windows arm64 tool unpacking" keep keep as a revert **only if** we truly want to drop Windows arm64 support and accept the test coverage/env fallback removal. Otherwise, during rewrite we should: 6 6 70 yes 2026-01-24T22:52:35+0100 no
|
|
144
|
+
141 2026-01-22 ab35b47ff699 resume resume fix(resume): make inactive resume reliable; gate Codex resume keep keep, but split during rewrite (large cross-cutting change). 17 483 89 yes 2026-01-24T22:54:06+0100 no
|
|
145
|
+
142 2026-01-22 aa9b11684389 codex codex fix(codex): increase installer output buffer keep keep (small reliability fix). 1 1 1 yes 2026-01-24T22:54:32+0100 no
|
|
146
|
+
143 2026-01-22 c4beebbfa375 app ui feat(ui): add Codex resume experiment toggle keep keep. 10 26 0 yes 2026-01-24T22:54:52+0100 no
|
|
147
|
+
144 2026-01-22 0140ae276869 codex codex refactor(codex): install mcp resume server via install-dep keep keep, but group/squash with the surrounding resume tooling commits (141, 146, 148+) so the installer + status UX is coherent end-to-end. 5 211 89 yes 2026-01-24T22:55:39+0100 no
|
|
148
|
+
145 2026-01-22 2ec41b621b54 codex codex fix(codex): detect resume binary on Windows keep keep. 1 4 3 yes 2026-01-24T22:56:00+0100 no
|
|
149
|
+
146 2026-01-22 e1deb6db8ddb codex codex refactor(codex): add dep-status and drop codex-resume RPCs keep keep; should be grouped with the surrounding installer changes (144/141) so the machine UI and daemon handlers agree on one stable API. 3 125 83 yes 2026-01-24T22:56:28+0100 no
|
|
150
|
+
147 2026-01-22 231d7ad9bdd9 app ui fix(ui): clarify Codex resume server label keep keep. 1 1 1 yes 2026-01-24T22:57:00+0100 no
|
|
151
|
+
148 2026-01-22 8bebf04aca92 cli cli refactor(cli): modularize capabilities and env preview keep keep, but this is a **major protocol refactor** and is a prime candidate to split during history rewrite: 18 1296 908 yes 2026-01-24T22:58:28+0100 yes
|
|
152
|
+
149 2026-01-22 bcf10af94626 test ui test(ui): update useCLIDetection hook tests for capabilities keep keep. 1 23 27 yes 2026-01-24T22:59:07+0100 no
|
|
153
|
+
150 2026-01-22 a5cac698f15b cli cli feat(cli): harden session queue, switching, and lifecycle keep keep, but this commit is **very mixed** and should almost certainly be split during history rewrite into coherent layers: 24 1429 84 yes 2026-01-24T23:10:58+0100 no
|
|
154
|
+
151 2026-01-22 3fc704424e8d app app feat(app): add pending queue, discard markers, and capabilities keep keep, but this commit is very large and spans multiple topics. For history rewrite, strongly consider splitting into coherent groups: 44 2248 957 yes 2026-01-24T23:14:06+0100 yes
|
|
155
|
+
152 2026-01-22 49893dd7d16a terminal terminal fix(terminal): harden remote→local switching input keep keep (high-value reliability fix + tests). 4 218 42 yes 2026-01-24T23:15:23+0100 yes
|
|
156
|
+
153 2026-01-22 0126667539b6 claude claude fix(claude): forward signals to binary child process keep keep. 2 78 2 yes 2026-01-24T23:15:59+0100 no
|
|
157
|
+
154 2026-01-22 39c7b8a56b32 app app refactor(app): rename tmux/message-send settings under session keep keep. 11 235 231 yes 2026-01-24T23:17:24+0100 no
|
|
158
|
+
155 2026-01-22 fcec6c311b6b sync sync feat(sync): add cross-device unread markers keep keep (core UX correctness improvement + tests). 6 187 41 yes 2026-01-24T23:21:35+0100 no
|
|
159
|
+
156 2026-01-22 8c16ee8f9cef auth auth fix(auth): surface auth failures and gate unauth routes keep keep; this is a cohesive auth hardening commit with focused tests. 6 89 2 yes 2026-01-24T23:22:24+0100 no
|
|
160
|
+
157 2026-01-22 320a89e19ca0 test happy test(happy): run cli and server checks from root scripts keep keep. 1 9 9 yes 2026-01-24T23:22:55+0100 no
|
|
161
|
+
158 2026-01-22 3b3609fed434 rpc rpc fix(rpc): add structured code for missing RPC methods keep keep; this is a clean robustness upgrade that reduces brittle string matching and improves client/server compatibility. 7 186 9 yes 2026-01-24T23:25:15+01:00 no
|
|
162
|
+
159 2026-01-22 0e2c7928f24c scanner scanner fix(scanner): tolerate onMessage exceptions keep keep. 3 106 2 yes 2026-01-24T23:25:44+01:00 no
|
|
163
|
+
160 2026-01-22 7fbe1f1cc727 permission permission fix(permission): avoid no-op permissionModeUpdatedAt bumps keep keep; important correctness fix for permission-mode arbitration across devices/UI. 6 128 18 yes 2026-01-24T23:26:19+01:00 no
|
|
164
|
+
161 2026-01-22 2026fbab5cb3 claude claude fix(claude): accept -c as continue flag keep keep. 1 1 1 yes 2026-01-24T23:26:49+01:00 no
|
|
165
|
+
162 2026-01-22 ee0bec2a0b90 resume resume Delete INACTIVE_SESSION_RESUME.md likely likely squash into a broader “docs cleanup/reorg” topic, or drop if we still want to keep the design rationale in-repo. 1 0 127 yes 2026-01-24T23:27:08+01:00 no
|
|
166
|
+
163 2026-01-22 84df0d260513 expo-app expo-app fix(expo-app): stabilize postinstall and libsodium patches keep keep (high-value install stability). 6 69 29 yes 2026-01-24T23:27:39+01:00 no
|
|
167
|
+
164 2026-01-23 544f9711b6cf app ui fix(ui): respond to plan/question tools via session RPC keep keep. 5 295 14 yes 2026-01-24T23:28:17+01:00 no
|
|
168
|
+
165 2026-01-23 8b3f39f22664 cli cli feat(cli): add interaction.respond for AskUserQuestion keep keep; important plumbing for interactive tools and mid-turn user responses. 5 141 42 yes 2026-01-24T23:28:57+01:00 no
|
|
169
|
+
166 2025-12-24 ed4bc007308a codex codex feat: add execpolicy approval option for Codex keep keep, but group/squash with the follow-up Codex execpolicy plumbing commits (167/168/169/175 etc) so UI + daemon + agent all agree on the protocol. 13 117 27 yes 2026-01-24T23:29:59+01:00 no
|
|
170
|
+
167 2025-12-24 78adc9c58811 codex codex feat(codex): support execpolicy approvals and MCP tool calls keep keep; should be grouped with the UI-side execpolicy option commit (166) and the follow-up approvals/MCP tooling commits (175/208/211/etc) so the whole approval loop is coherent. 5 459 106 yes 2026-01-24T23:46:10+01:00 no
|
|
171
|
+
168 2026-01-22 9dfa09bef8d8 i18n i18n fix(i18n): add Codex execpolicy button text keep keep, but it’s a perfect squash candidate into commit 166 (or a single “add execpolicy approval + translations” topic group) in a rewritten history. 2 2 0 yes 2026-01-24T23:46:30+01:00 no
|
|
172
|
+
169 2026-01-22 559d39da116d reducer reducer fix(reducer): keep permission messages idempotent keep keep; should be adjacent to commit 166 in a rewritten history (it’s effectively a follow-up correctness fix to keep the permission UI stable). 1 18 3 yes 2026-01-24T23:46:56+01:00 no
|
|
173
|
+
170 2026-01-18 cc3c711ae28e claude claude fix: move claudeArgs to end of args array for slash command support keep keep. 1 5 5 yes 2026-01-24T23:47:37+01:00 no
|
|
174
|
+
171 2026-01-19 d06d5a833f8e claude claude Add signal forwarding to claudeLocal.ts keep keep; small reliability fix. Can be grouped with other “process lifecycle / signal handling” commits. 1 22 0 yes 2026-01-24T23:47:58+01:00 no
|
|
175
|
+
172 2025-11-20 1b7cb3bfea86 codex codex feat: handle /clear command as session reset in codex keep keep. 3 41 11 yes 2026-01-24T23:48:32+01:00 no
|
|
176
|
+
173 2026-01-11 332ab2b0cd93 cli cli fix(cli): improve abort error handling to reduce spurious error messages keep keep. 1 58 2 yes 2026-01-24T23:54:36+01:00 no
|
|
177
|
+
174 2025-12-24 e956463db3e2 codex codex fix: use runtime execPath for MCP bridge keep keep; small but important reliability fix for MCP bridge execution. 3 9 7 yes 2026-01-24T23:55:09+01:00 no
|
|
178
|
+
175 2026-01-23 f0a7d8d0b40c codex codex fix(codex): use mcp tool call id for approvals keep keep; this is a correctness fix that should sit immediately after the Codex execpolicy/elicitation refactor (167). 2 44 30 yes 2026-01-24T23:55:40+01:00 no
|
|
179
|
+
176 2026-01-22 da620b6865ad server server feat(server): add full/light flavors with sqlite migrations keep keep, but strongly consider splitting into multiple commits during rewrite: 38 2210 165 yes 2026-01-24T23:57:40+01:00 yes
|
|
180
|
+
177 2026-01-23 893ce7af5df0 expo-app expo-app fix(expo-app): avoid hooks order violation on redirect keep keep (correctness fix + test). 2 113 1 yes 2026-01-24T23:58:23+01:00 no
|
|
181
|
+
178 2026-01-23 7afbc9a2decd expo-app expo-app fix(expo-app): persist resumeSessionId and harden clipboard paste keep keep. 5 65 3 yes 2026-01-25T00:34:53+01:00 no
|
|
182
|
+
179 2026-01-23 9a13879b753a expo-app expo-app fix(expo-app): avoid false homeDir prefix matches keep keep. 2 19 2 yes 2026-01-25T00:35:24+01:00 no
|
|
183
|
+
180 2026-01-23 c107a779e07d expo-app expo-app fix(expo-app): avoid stuck loading in capabilities cache keep keep (important robustness fix + test). 2 61 1 yes 2026-01-25T00:35:58+01:00 no
|
|
184
|
+
181 2026-01-23 35c0974eff1f expo-app expo-app refactor(expo-app): remove dead code and dedupe types keep keep (small cleanup), but note the `useCLIDetection` output change during history rewrite if consumers relied on `error`. 3 5 7 yes 2026-01-25T00:36:44+01:00 no
|
|
185
|
+
182 2026-01-23 b319d85e72c3 i18n i18n fix(i18n): correct Spanish resumable label keep keep (tiny, focused). 1 1 1 yes 2026-01-25T00:37:12+01:00 no
|
|
186
|
+
183 2026-01-23 46186162ae14 happy-cli happy-cli test(happy-cli): fix timer cleanup and MCP schema mocks keep keep; this is a pragmatic “test stability” commit. It can be squashed with nearby test-only cleanup if we want fewer commits, but it’s coherent enough on its own. 3 14 6 yes 2026-01-25T00:37:43+01:00 no
|
|
187
|
+
184 2026-01-23 ac5bf2f3abfa happy-cli happy-cli test(happy-cli): reset modules for runtime override keep keep. 1 5 1 yes 2026-01-25T00:38:29+01:00 no
|
|
188
|
+
185 2026-01-23 947b8d1814fb expo-app expo-app refactor(expo-app): remove unused optimistic flag keep keep (tiny cleanup), or squash into adjacent session-status work if desired. 1 0 1 yes 2026-01-25T00:39:01+01:00 no
|
|
189
|
+
186 2026-01-23 8cc823d1ba2d server-light server-light fix(server-light): validate PORT and normalize paths keep keep. 4 12 7 yes 2026-01-25T00:39:44+01:00 no
|
|
190
|
+
187 2026-01-23 8cb995a1abe1 server server test(server): fix schema generation sort regex keep keep (tiny but important test fix). 1 1 1 yes 2026-01-25T00:40:20+01:00 no
|
|
191
|
+
188 2026-01-23 04d9c60ef8e7 happy-cli happy-cli refactor(happy-cli): remove unreachable gemini error branch keep keep (small cleanup). 1 0 2 yes 2026-01-25T00:40:59+01:00 no
|
|
192
|
+
189 2026-01-23 2616e5e19253 server server fix(server): handle missing UI index.html keep keep (correctness + focused test). 2 29 1 yes 2026-01-25T00:41:36+01:00 no
|
|
193
|
+
190 2026-01-23 911365366024 server server fix(server): make build typecheck tests keep keep. 3 3 0 yes 2026-01-25T00:42:18+01:00 no
|
|
194
|
+
191 2026-01-23 0dd19e7fb257 expo-app expo-app fix(expo-app): default codex resume spec to empty keep keep. 3 2 11 yes 2026-01-25T00:55:34+01:00 no
|
|
195
|
+
192 2026-01-23 229e5fc36570 server-light server-light fix(server-light): use file URLs for sqlite db keep keep. 2 3 2 yes 2026-01-25T00:56:15+01:00 no
|
|
196
|
+
193 2026-01-23 e6f597e436c5 server server fix(server): fix server-light typecheck keep keep, but squash with 194 (tsconfig churn). 2 3 3 yes 2026-01-25T00:56:54+01:00 no
|
|
197
|
+
194 2026-01-23 1564e800e355 server server fix(server): relax module settings for typecheck squash squash into 193 (choose one final module configuration). 1 2 2 yes 2026-01-25T00:57:31+01:00 no
|
|
198
|
+
195 2026-01-23 8ab11f2788c1 happy-cli happy-cli fix(happy-cli): parse CLI versions from full output keep keep. 1 3 3 yes 2026-01-25T00:58:11+01:00 no
|
|
199
|
+
196 2026-01-23 21e096e9454e i18n i18n fix(i18n): localize session settings item keep keep. 10 29 2 yes 2026-01-25T00:58:49+01:00 no
|
|
200
|
+
197 2026-01-23 7ca9e93196d6 i18n i18n fix(i18n): translate ExitPlanMode strings keep keep. 8 40 40 yes 2026-01-25T00:59:32+01:00 no
|
|
201
|
+
198 2026-01-23 c4a81947f002 expo-app i18n fix(i18n): localize search error keep keep (behavior improvement + test). 3 56 8 yes 2026-01-25T09:03:20+01:00 no
|
|
202
|
+
199 2026-01-23 208f0222a997 expo-app i18n fix(i18n): localize Codex resume dialog keep keep, but split during rewrite (recommended) because it mixes i18n strings with a substantial web UI refactor. 10 119 18 yes 2026-01-25T09:04:11+01:00 no
|
|
203
|
+
200 2026-01-23 02ad6b4a8352 i18n i18n fix(i18n): move openMachine to connect scope keep keep (small, coherent i18n refactor). 9 9 9 yes 2026-01-25T09:04:54+01:00 no
|
|
204
|
+
201 2026-01-23 ce42bf56d7b6 web web fix(web): correct libsodium wrapper typing keep keep. 1 12 2 yes 2026-01-25T09:05:34+01:00 no
|
|
205
|
+
202 2026-01-23 f0417ca11ac5 web web fix(web): keep libsodium wrapper namespace typing keep keep; squash into 201 in a rewritten history (direct follow-up). 1 1 1 yes 2026-01-25T09:06:11+01:00 no
|
|
206
|
+
203 2026-01-23 b6d3874bf175 settings settings fix(settings): include Codex resume in master experiment toggle keep keep. 1 2 0 yes 2026-01-25T09:06:54+01:00 no
|
|
207
|
+
204 2026-01-23 a4d7faba961f expo-app i18n fix(i18n): localize session error fallbacks keep keep (user-facing correctness), but consider splitting out unrelated `expInboxFriends` translation additions during rewrite if they belong to a different feature. 10 67 13 yes 2026-01-25T09:07:54+01:00 no
|
|
208
|
+
205 2026-01-23 1ea2bddb8bbd server server test(server): validate processImage resize output keep keep. 1 11 6 yes 2026-01-25T09:08:38+01:00 no
|
|
209
|
+
206 2026-01-23 1e7d7f8a4747 server server fix(server): keep light server running keep keep. 1 0 3 yes 2026-01-25T09:09:48+01:00 no
|
|
210
|
+
207 2026-01-23 61bf70183ebf cli cli test(cli): set DEBUG before importing logger keep keep. 1 2 1 yes 2026-01-25T09:10:29+01:00 no
|
|
211
|
+
208 2026-01-23 61a18ac95e17 tools tools fix(tools): require permission id for ExitPlanMode actions keep keep; this is a correctness + safety hardening change (prevents silent no-op approvals and reduces state inconsistencies). 11 100 6 yes 2026-01-25T09:11:18+01:00 no
|
|
212
|
+
209 2026-01-23 5b36c9bf91c1 tools tools test(tools): avoid null permission in ExitPlanToolView tests squash squash into 208 during history rewrite (it’s a direct follow-up to make the new tests type-correct). 1 2 2 yes 2026-01-25T09:12:06+01:00 no
|
|
213
|
+
210 2026-01-23 b7f63e928e4f persistence persistence fix(persistence): retry daemon state read when file appears keep keep. 2 51 4 yes 2026-01-25T09:29:01+01:00 no
|
|
214
|
+
211 2026-01-23 55428fb0253c tools tools fix(tools): alert when AskUserQuestion permission id is missing keep keep; it’s consistent with 208’s hardening approach (permission id must exist before user actions are accepted). 2 59 1 yes 2026-01-25T09:29:44+01:00 no
|
|
215
|
+
212 2026-01-23 dc6955f88abd terminal terminal fix(terminal): prevent sessionId path traversal in attachment info keep keep, but treat as a 3-commit security patch series with 237/238 and keep them adjacent during rewrite. 2 66 5 yes 2026-01-25T09:30:31+01:00 no
|
|
216
|
+
213 2026-01-23 bb685fbeff7b terminal terminal fix(terminal): clarify missing --happy-starting-mode value keep keep. 2 7 2 yes 2026-01-25T09:32:18+0100 no
|
|
217
|
+
214 2026-01-23 5bcc7d20cd6b utils utils test(utils): stabilize serverConnectionErrors retry count test keep keep (or squash into the commit that introduced this reconnection/backoff test during history rewrite). 1 9 7 yes 2026-01-25T09:32:38+0100 no
|
|
218
|
+
215 2026-01-23 82968aa8fe6c ui ui fix(ui): send pending messages before closing modal keep keep. 2 172 4 yes 2026-01-25T09:33:08+0100 no
|
|
219
|
+
216 2026-01-23 b7219c8bfe2b ink ink fix(ink): avoid async useInput handler keep keep. 1 13 5 yes 2026-01-25T09:33:26+0100 no
|
|
220
|
+
217 2026-01-23 d70a6f6669fe claude claude fix(claude): trim CLAUDE_CONFIG_DIR overrides keep keep. 2 9 1 yes 2026-01-25T09:33:54+0100 no
|
|
221
|
+
218 2026-01-23 47f638b73fca utils utils test(utils): cover failuresCount with custom backoff keep keep, but keep adjacent to 219 (the implementation fix). 1 32 1 yes 2026-01-25T09:34:15+0100 no
|
|
222
|
+
219 2026-01-23 2abc70fef03c utils utils fix(utils): track failuresCount for custom backoff keep keep (optionally squash with 218). 1 13 8 yes 2026-01-25T09:34:44+0100 no
|
|
223
|
+
220 2026-01-23 dc8016f01c56 server server fix(server): validate HAPPY_SERVER_LIGHT_DATA_DIR for light migrations keep keep. 3 67 5 yes 2026-01-25T09:35:12+0100 no
|
|
224
|
+
221 2026-01-23 b0085827322c server server fix(server): handle missing UI index in error handlers keep keep. 2 49 7 yes 2026-01-25T09:35:43+0100 no
|
|
225
|
+
222 2026-01-23 abf288056636 cli cli fix(cli): reject invalid messageQueueV1 inFlight keep keep. 2 19 2 yes 2026-01-25T09:36:02+0100 no
|
|
226
|
+
223 2026-01-23 73ce32d242a0 i18n i18n fix(i18n): translate Spanish experiment subtitles keep keep (or squash into a broader i18n sweep commit during history rewrite). 1 8 8 yes 2026-01-25T09:36:24+0100 no
|
|
227
|
+
224 2026-01-23 98bc00096e86 new-session i18n fix(i18n): localize Codex resume banner split split (recommended) or squash with its dependencies. 10 161 66 yes 2026-01-25T09:37:18+0100 no
|
|
228
|
+
225 2026-01-23 4fabec9b69b3 new-session new-session feat(new-session): add WizardSectionHeaderRow keep keep, but reorder to land before 224 (since 224 uses it). 1 44 0 yes 2026-01-25T09:37:37+0100 no
|
|
229
|
+
226 2026-01-23 c461ed1cb4ef permission permission feat(permission): add permission mode option helpers keep keep; belongs alongside other permission-mode UX work. 1 74 0 yes 2026-01-25T09:38:18+0100 no
|
|
230
|
+
227 2026-01-23 23b595edd0fe sync sync refactor(sync): simplify path formatting keep keep (or squash into adjacent “session list UI” refactors during rewrite). 1 1 7 yes 2026-01-25T09:38:41+0100 no
|
|
231
|
+
228 2026-01-23 523989b4de8e server-light server-light fix(server-light): avoid master secret race keep keep; should be adjacent to 176 in the rewritten history under the “server-light init reliability” topic. 1 16 2 yes 2026-01-25T09:39:02+0100 no
|
|
232
|
+
229 2026-01-23 d89a9427e765 cli cli fix(cli): clean up metadata waiters on disconnect keep keep. 2 31 7 yes 2026-01-25T09:39:36+0100 no
|
|
233
|
+
230 2026-01-23 fedb8a66160a cli cli test(cli): accept lowercase preview-env keys keep keep, but keep adjacent to 231 (the implementation). 1 17 0 yes 2026-01-25T09:40:11+0100 no
|
|
234
|
+
231 2026-01-23 fc0ce89b13b7 cli cli fix(cli): allow lowercase preview-env keys keep keep; this is a nice “accept lowercase” change with an important security follow-through. 2 19 6 yes 2026-01-25T09:40:41+0100 no
|
|
235
|
+
232 2026-01-23 ad95c5b01c25 hooks happy test(happy): keep useCLIDetection timestamp stable keep keep as part of the 232–235 “useCLIDetection timestamp stabilization” series; likely squash into 234 during rewrite. 1 52 0 yes 2026-01-25T09:41:05+0100 no
|
|
236
|
+
233 2026-01-23 c251edf3c307 hooks happy test(happy): fix useCLIDetection timestamp test squash squash into 232 (or into the final “stabilize timestamp” commit) during history rewrite; it’s a direct test follow-up. 1 47 42 yes 2026-01-25T09:41:39+0100 no
|
|
237
|
+
234 2026-01-23 34fa4091d3cc hooks happy fix(happy): stabilize useCLIDetection timestamp keep keep, but squash with 232/233/235 during rewrite to avoid the request-constant back-and-forth. 1 11 12 yes 2026-01-25T09:43:58+0100 no
|
|
238
|
+
235 2026-01-23 31340e53294c hooks happy fix(happy): inline CLI detection request squash squash into 234 during rewrite. 1 11 4 yes 2026-01-25T09:44:24+0100 no
|
|
239
|
+
236 2026-01-23 054250f408e2 i18n i18n fix(i18n): localize codex resume install modals keep keep; it’s a coherent i18n+UX polish change. 11 143 16 yes 2026-01-25T09:45:05+0100 no
|
|
240
|
+
237 2026-01-23 241f0ae24b1d cli cli test(cli): prevent legacy sessionId path traversal keep keep; in a rewritten history, place this immediately before 238 (RED → GREEN) and keep it adjacent to 212. 1 23 0 yes 2026-01-25T09:45:37+0100 no
|
|
241
|
+
238 2026-01-23 a1e4a6dd3fbd cli cli fix(cli): block legacy sessionId path traversal keep keep; this is the actual security fix that pairs with 237’s regression test and 212’s encoding change. 1 4 0 yes 2026-01-25T09:45:58+0100 no
|
|
242
|
+
239 2026-01-23 e2618e04a26b a11y a11y fix(a11y): add labels to codex resume actions keep keep; high-value a11y improvement. 1 10 0 yes 2026-01-25T09:46:21+0100 no
|
|
243
|
+
240 2026-01-23 d0f9ad5e8310 claude claude test(claude): remove stale transcriptPath red-test scaffolding squash squash into the `transcriptPath` feature commit during rewrite. 1 3 5 yes 2026-01-25T09:46:58+0100 no
|
|
244
|
+
241 2026-01-23 1464402758bf codex codex fix(codex): preserve falsy MCP tool results keep keep; this is a correctness fix for tool-call result propagation and should be near other MCP/tool-call handling commits. 2 41 1 yes 2026-01-25T09:47:16+0100 no
|
|
245
|
+
242 2026-01-23 57f84f0691c6 server-light server-light fix(server-light): harden public file path encoding keep keep (security-sensitive). 2 43 19 yes 2026-01-25T09:47:54+0100 no
|
|
246
|
+
243 2026-01-23 0b7db6945325 storage storage fix(storage): validate S3_PORT and bucket existence keep keep (prod safety; clearer configuration errors). 2 58 2 yes 2026-01-25T09:48:35+0100 no
|
|
247
|
+
244 2026-01-23 74fc860b07b5 queue queue refactor(queue): simplify stale in-flight reclaim keep keep (or squash into the surrounding messageQueueV1 series during rewrite; it’s not a standalone behavior change). 1 1 6 yes 2026-01-25T09:49:14+0100 no
|
|
248
|
+
245 2026-01-23 82bf82cb6715 hooks hooks fix(hooks): prevent stale capabilities cache overwrite keep keep (this is a real correctness/race fix with good coverage). 2 78 4 yes 2026-01-25T09:49:50+0100 no
|
|
249
|
+
246 2026-01-23 384b15252026 expo expo fix(expo): harden tool submit and pending send keep keep, but consider splitting during rewrite: 8 282 4 yes 2026-01-25T09:50:50+0100 no
|
|
250
|
+
247 2026-01-23 24b607abfa07 server server Refactor schema sync and centralize Prisma types keep keep, but likely split as noted above during history rewrite. 29 373 185 yes 2026-01-25T09:52:04+0100 yes
|
|
251
|
+
248 2026-01-23 bf3027799623 expo-app expo-app Set EXPO_UNSTABLE_WEB_MODAL env var in Expo scripts keep keep, but likely split as above during rewrite. 4 35 17 yes 2026-01-25T09:52:35+0100 no
|
|
252
|
+
249 2026-01-23 c803115dcbdc expo-app expo-app Improve postinstall script for symlinked paths and patching keep keep; belongs immediately after the commit(s) that add patches under `expo-app/patches-expo-app/*` (e.g. 248) so the system becomes functional. 1 9 1 yes 2026-01-25T09:52:58+0100 no
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
# `happy` WIP branch commit inventory (`leeroy-wip`)
|
|
2
2
|
|
|
3
|
-
Generated: 2026-01-
|
|
3
|
+
Generated: 2026-01-25
|
|
4
4
|
Worktree: `/Users/leeroy/Documents/Development/happy-local/components/.worktrees/happy/slopus/tmp/leeroy-wip`
|
|
5
5
|
|
|
6
6
|
## Scope
|
|
7
7
|
|
|
8
8
|
- Branch: `leeroy-wip`
|
|
9
|
-
- HEAD: `
|
|
9
|
+
- HEAD: `8aaacbfaac7acb3b946c9e7bdd99ee6af5be3a62`
|
|
10
10
|
- Upstream base ref: `upstream/main`
|
|
11
11
|
- Merge-base (HEAD vs `upstream/main`): `40792d9eddf7fdaabd375e00134c5cfe5aea2db5`
|
|
12
|
-
- Commits in scope (`upstream/main..HEAD`): `
|
|
13
|
-
- Working tree state at capture time: **dirty** (
|
|
12
|
+
- Commits in scope (`upstream/main..HEAD`): `278`
|
|
13
|
+
- Working tree state at capture time: **dirty** (modified + untracked files)
|
|
14
|
+
- Planned backup label (create only when starting the rewrite): `2026-01-25-10dca4ca-chore-expo-pin-libsodium`
|
|
15
|
+
- Backup branch (planned): `backup/leeroy-wip-2026-01-25-10dca4ca-chore-expo-pin-libsodium`
|
|
16
|
+
- Backup tag (planned): `backup/leeroy-wip-2026-01-25-10dca4ca-chore-expo-pin-libsodium`
|
|
17
|
+
- Bundle path (planned): `/tmp/leeroy-wip-2026-01-25-10dca4ca-chore-expo-pin-libsodium.bundle`
|
|
18
|
+
- `upstream/main` at snapshot: `f1144d58da0498137c639b7d2970f1c89945bbc9`
|
|
14
19
|
|
|
15
20
|
## Mandatory Workflow (incremental audit → regroup → rewrite)
|
|
16
21
|
|
|
@@ -39,20 +44,22 @@ For each commit:
|
|
|
39
44
|
|
|
40
45
|
Progress tracking (update manually while auditing):
|
|
41
46
|
|
|
42
|
-
- Auto-triaged commits: `
|
|
43
|
-
- Manually reviewed commits: `
|
|
47
|
+
- Auto-triaged commits: `278/278`
|
|
48
|
+
- Manually reviewed commits: `278/278` (verified by counting `## NNN` sections in `leeroy-wip.commit-manual-review.md`)
|
|
44
49
|
- Missing manual reviews: `0`
|
|
45
50
|
- Next unreviewed commit: n/a (complete)
|
|
46
|
-
- Pass 2 full-diff verification markers: `
|
|
47
|
-
- Pass 2 diff capture: `
|
|
48
|
-
- Pass 2 notes verification (manual): `
|
|
51
|
+
- Pass 2 full-diff verification markers: `278/278` (each `## NNN` has a `Pass2FullDiff:` line; patch artifacts under `/tmp/leeroy-wip-pass2/NNN.patch`)
|
|
52
|
+
- Pass 2 diff capture: `278/278` (`/tmp/leeroy-wip-pass2/NNN.patch` exists; hash/size recorded in each `Pass2FullDiff:` line)
|
|
53
|
+
- Pass 2 notes verification (manual): `278/278` (this requires reading the patch and confirming/updating `### Manual Review Notes`)
|
|
54
|
+
- Pass 3 PR planning markers: `278/278` (each `## NNN` has a `Pass3PrPlan:` line with `manualReviewedForPrPlan=yes`)
|
|
55
|
+
- Pass 3 PR assignment (source of truth): `docs/commit-audits/happy/leeroy-wip.pr-assignment.working.tsv`
|
|
49
56
|
|
|
50
|
-
Current state (2026-01-
|
|
57
|
+
Current state (2026-01-25):
|
|
51
58
|
|
|
52
59
|
- `docs/commit-audits/happy/leeroy-wip.commit-export.fuller-stat.md` covers all commits with full message + files + diffstat.
|
|
53
60
|
- `docs/commit-audits/happy/leeroy-wip.commit-analysis.md` covers all commits with a diff-based summary and flags “Manual review needed: YES” for higher-risk commits.
|
|
54
61
|
- `docs/commit-audits/happy/leeroy-wip.manual-review-queue.md` lists flagged commits in audit order.
|
|
55
|
-
- `docs/commit-audits/happy/leeroy-wip.commit-manual-review.md` contains deep-review notes for all `
|
|
62
|
+
- `docs/commit-audits/happy/leeroy-wip.commit-manual-review.md` contains deep-review notes for all `278/278` commits.
|
|
56
63
|
|
|
57
64
|
### Phase 2: Keep the audit fresh (when new commits land)
|
|
58
65
|
|