n	shaShort	subject	finalPr	finalTitle	extracted	extractedAt	extractionNotes
001	58528a7c37d3	chore(crypto): patch react-native-libsodium	PR01	Foundations / DevX	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
002	552b8da0f621	test(deps): add @types/react-test-renderer	PR01	Foundations / DevX	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
003	017b15c07ad7	chore(config): harden app variant defaults	PR01	Foundations / DevX	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
004	4890a471df31	fix(auth): harden tokenStorage web persistence	PR04	Auth + storage scoping	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
005	4adc41d92af0	feat(sync): add permission mode types and mapping	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
006	a5fbc3e8ba00	feat(persistence): scope storage and validate draft modes	PR04	Auth + storage scoping	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
007	18e77c46f38a	fix(session): clamp configurable model modes	PR28	Model modes (per-session selection + persistence)	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
008	f7bb8a28fff7	fix(tools): harden ACP tool parsing and titles	PR39	Tool UX: normalization + specialized views + tracing	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
009	292424245277	refactor(sync): centralize outgoing message metadata	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
010	39cc25154cdd	feat(storage): persist session model modes	PR28	Model modes (per-session selection + persistence)	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
011	c2d3507357dc	fix(settings): make parsing tolerant for profiles	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
012	207ef1b2f572	fix(dev): gate CLI detection logging	PR01	Foundations / DevX	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
013	58a892d413d1	fix(command-palette): include navigate dependency	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
014	41479b35415f	feat(env): add env var template parsing	PR07	Env var templates + preview/resolution end-to-end	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
015	695bcd09eb9e	fix(env): improve remote env resolution and previews	PR07	Env var templates + preview/resolution end-to-end	yes	2026-01-25T21:36:52.291Z	Seeded PR description with batch 001-015 details (foundations/auth storage scoping/permissions+modes/tools/env templates+preview)
016	6cdb90a49aad	feat(env): update env var list, cards, and preview modal	PR07	Env var templates + preview/resolution end-to-end	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
017	65bae55a0b61	refactor(i18n): separate translation types and content	PR03	i18n foundation sweep (optional)	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
018	2993b5c860ff	fix(new-session): restore standard modal flow	PR26	New session wizard end-to-end	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
019	9e08047d2478	fix(profiles): harden routing, grouping, and editing	PR08	Profiles feature	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
020	8d9f56e85e5a	refactor(ui): unify list selectors and modal primitives	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
021	2ab560bb0535	feat(cli-detection): add daemon detect-cli RPC support	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
022	2d4675a5d051	fix(agent-input): use compact permission badges	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
023	d97924f3ef39	chore(test): define __DEV__ for vitest	PR01	Foundations / DevX	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
024	9c19baa833b9	feat(settings): add api keys and experiment toggles	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
025	21cc6df79f50	feat(api-keys): add saved API keys UI	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
026	ce9cd74d408a	feat(machine): surface detected CLI status	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
027	7899bbd8433e	feat(profiles): add API key requirements flow	PR08	Profiles feature	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
028	0023ba1ea5aa	refactor(i18n): update translations and tooling	PR03	i18n foundation sweep (optional)	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
029	12e75a3b36fa	fix(autocomplete): remove debug suggestion logs	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
030	679877c26ea9	feat(settings): expose per-experiment toggles	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:39:53.388Z	PR description updated with batch 016-030 (env vars UX, i18n refactor/tooling, new-session wizard refactor, profiles plumbing+requirements, UI primitives mega-refactor, machine CLI detection UX, settings experiments/api-keys flows)
031	4dc9c7f8759c	feat(agent-input): add configurable action bar layout	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
032	e8e42a6087ad	fix(modal): prevent stacked modal touch-blocking on iOS	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
033	daa0b4527d7f	feat(new-session): add api key selection and wizard extraction	PR26	New session wizard end-to-end	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
034	94814465bf81	perf(sync): debounce pending settings writes	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
035	7ffd0c3428cb	fix(ui): localize error alerts	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
036	97ca69e0a735	refactor(i18n): replace remaining UI literals	PR03	i18n foundation sweep (optional)	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
037	5f5b57df5181	refactor(ui): improve item rendering and action menu timing	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
038	7976b877259c	feat(experiments): gate Zen, file viewer, and voice auth flow	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
039	6ed379f82c34	refactor(ui): add modal + popover overlay primitives	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
040	f0787de5308e	feat(sync): add secrets + terminal settings primitives	PR09	Secrets / vault feature	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
041	66ee1eaf88a6	feat(secrets): add secrets management + requirement resolver	PR09	Secrets / vault feature	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
042	bdaf6913141f	feat(terminal): add Terminal settings + tmux metadata	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
043	bc779e4f7909	refactor(new-session): integrate secrets + terminal spawn options	PR26	New session wizard end-to-end	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
044	cb11d4bdb25a	docs: add AGENTS.md symlink + update CLAUDE.md	PR01	Foundations / DevX	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
045	1bc3b9715776	fix(sync): handle non-JSON 400 responses	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:41:58.326Z	PR description updated with batch 031-045 (agent-input layout/density, iOS stacked modal fix, new-session wizard extraction + api-key→secrets transition, sync debounce+error parsing, experiments per-flag gating, overlay portal+popover primitives, secrets/vault primitives+UX, terminal/tmux settings+metadata, docs guidance)
046	ea2e4d19d633	chore(deps): align react-test-renderer with react	PR01	Foundations / DevX	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
047	dd041d21ecfc	fix(sync): guard JSON parsing on disconnect errors	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
048	395da4ff3167	refactor(zen): avoid todo variable shadowing	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
049	2e956f32f220	fix(new): keep pick screens above iOS modal	PR26	New session wizard end-to-end	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
050	2da2f9349ec5	fix(popover): allow web fixed positioning types	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
051	43f23f2f082e	chore(format): replace stray tabs with spaces	PR01	Foundations / DevX	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
052	e1d55fdbd9ee	fix(i18n): improve untranslated literal scan parsing	PR01	Foundations / DevX	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
053	c210c1115598	test(sync): restore stubbed fetch between tests	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
054	66c678451335	fix(ui): apply small review fixes	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
055	2472b376775c	test(modal): make backdrop z-index assertion safer	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
056	02450d179aaf	fix(profiles): align experimentsEnabled for built-in profiles	PR08	Profiles feature	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
057	ff7bec72358f	fix(secrets): tighten callback deps and fix indentation	PR09	Secrets / vault feature	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
058	1bb65f5dd494	fix(new-session): avoid stuck secret requirement modal guard	PR26	New session wizard end-to-end	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
059	f7f81497444d	fix(modal): prevent non-dismissible WebAlertModal	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
060	bb09f91de715	fix(settings): keep valid secrets when one entry is invalid	PR09	Secrets / vault feature	yes	2026-01-25T21:44:50.827Z	PR description updated with batch 046-060 (test deps alignment, sync JSON parse guards, iOS pick screen presentation, popover typings+hardening, i18n tool parsing fixes, misc UI review fixes, profiles gating tweak, secrets list reliability, secret requirement modal guard fix, WebAlertModal default OK, tolerant secrets parsing)
061	765423af52b4	fix(agent-input): cycle permission mode from normalized state	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
062	e533db1813a5	fix(popover): add screens cjs helper and fix fixed positioning types	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
063	2ed3100311c7	fix(secrets): hide values when using secret vault	PR09	Secrets / vault feature	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
064	e5848c480522	fix(ui): harden overlays and permission cycling	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
065	69fdcff96a4c	fix(sync): restore session permission mode from last message	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
066	9b499c5dccce	fix(sync): persist permission mode timestamp for restart-safe arbitration	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
067	def8852509d0	fix(sync): persist permission mode reliably across devices	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
068	b1c8a6fecd01	fix(session): archive when kill RPC unavailable	PR29	Sessions & message list UX	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
069	c06b6202b5d4	Add copy-to-clipboard button to message blocks	PR29	Sessions & message list UX	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
070	9fc7d3d412b9	feat(sessions): group inactive sessions by project	PR29	Sessions & message list UX	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
071	62a8b1b07c3e	feat(sessions): add unread badge	PR29	Sessions & message list UX	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
072	82d74454c3c4	fix(typecheck): restore permission imports and Popover web styles	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
073	4f2b533f99c2	feat(tools): add approve/reject buttons to ExitPlanMode	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
074	c86cbd26b040	feat(queue): add pending message queue UI and send modes	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
075	42da6dae8fe4	feat(session): add session rename support	PR29	Sessions & message list UX	yes	2026-01-25T21:49:06.307Z	PR description updated with batch 061-075 (permission mode cycling + cross-device persistence, overlay portal tests + action reliability, popover infra helper, vault UI hiding, sessions UX: archive fallback/unread/grouping/rename/copy, ExitPlanMode buttons, early pending queue UI/send modes)
076	057102f67904	feat(resume): add resume session option for new sessions	PR19	Resume end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
077	05532bd65c6b	feat(resume): show resume chip under path in new session	PR19	Resume end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
078	cd5771e50881	feat: resume inactive Claude sessions from UI	PR19	Resume end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
079	456e2ad8e2b8	refactor(resume): don't require agentSessionId from UI	PR19	Resume end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
080	9b0069e3d30c	feat(fork): enable Codex resume support	PR19	Resume end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
081	4ddaef02210e	fix(sync): omit model meta for queued messages	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
082	3fbdc10018fe	fix: tmux parsing/targeting + review feedback	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
083	7292a29822bb	fix(daemon): do not apply CLI active profile to GUI-spawned sessions	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
084	ce94cfa512ac	feat(session): persist profileId in session metadata via daemon spawn	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
085	e58e97fd7ff4	fix(pr107): harden daemon spawn + align profile schema	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
086	86330e263595	fix(security): redact spawn secrets from daemon logs	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
087	a25acab22b64	fix(socket): restore offline buffering for sends	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
088	a7d23148c311	fix(logging): gate debug output and redact templates	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
089	ef418bc4dda3	fix(pr107): redact profile secrets in doctor + align tmux tmpDir	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
090	1f90659694be	refactor(profiles): remove unwired startup script and local env cache	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:51:16.430Z	PR description updated with batch 076-090 (resume new-session + inactive resume + request-shape hardening; tmux parsing correctness; daemon spawn boundaries/profileId propagation; spawn/doctor log redaction + template masking; CLI offline buffering; profile schema alignment/cleanup)
091	7aed8aaee02f	refactor(profiles): drop provider config objects	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
092	6b0bfe546d9e	feat(runtime): support bun for daemon-spawned subprocesses	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
093	4071466545ab	refactor(rpc): accept arbitrary env var maps for spawn	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
094	809be82b53e7	fix(env): implement default assignment semantics	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
095	4c2a671dc3f4	feat(rpc): add preview-env handler	PR15	preview-env end-to-end	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
096	2973f7fe6861	fix(codex): harden MCP command detection	PR21	Codex MCP tool-call result correctness	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
097	c863db3d5bbc	refactor(offline): make offline session stub safer	PR19	Resume end-to-end	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
098	0a1a91a631e7	feat(tmux): support per-instance socket path	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
099	c52227082c2b	fix(tmux): correct env, tmpdir, and session selection	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
100	7a01a8e42629	test(claude): align sessionScanner path mapping	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
101	1075a768e551	feat(rpc): add detect-cli handler	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
102	c988f68ca4d0	feat(ui): surface Codex/Gemini errors in session UI	PR30	Agent error surfaces (Codex/Gemini)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
103	b2269ee11252	fix(claude): use hook transcript path across switching	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
104	f53cf71d416c	refactor(persistence): remove deprecated tmuxConfig	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
105	8dae65f6c585	feat(rpc): include tmux in detect-cli	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:53:48.322Z	PR description updated with batch 091-105 (CLI schema: drop provider config objects, spawn env map flexibility, bun runtime for subprocesses, expandEnvVars := semantics, preview-env handler security features, detect-cli handler + versions/login/tmux, codex MCP detection hardening, offline resume stub safety, tmux socket isolation/tmpdir/session selection, claude hook transcript switching reliability, agent error surfaces)
106	ad66c6aaa3ae	feat(terminal): add tmux metadata + attach tooling	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
107	c13d51ee4638	feat(daemon): support tmux spawn + harden runtime	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
108	f7db44dea458	docs: add AGENTS.md symlink	PR01	Foundations / DevX	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
109	af5000ea6318	fix(ui): polish Codex and Gemini error messages	PR30	Agent error surfaces (Codex/Gemini)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
110	f68552d03ab9	fix(tmux): print attach instructions in correct order	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
111	4e4bb65ff3f0	test(tmux): avoid brittle assertions	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
112	45f4eb5d145c	test(detect-cli): avoid process.env reassignment	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
113	51782fdbfbcd	test(codex): reset transport instances between tests	PR21	Codex MCP tool-call result correctness	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
114	0ad76f4877ae	chore(cli): fix gemini daemon block indentation	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
115	a8093e3e4ddb	docs(persistence): update profile schema version comment	PR05	Persistence / drafts	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
116	b16c3658b944	fix(gemini): normalize error details for UI	PR30	Agent error surfaces (Codex/Gemini)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
117	d9591372655f	fix(common): handle execFileAsync exit codes	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
118	ab95e8cf920c	fix(sync): avoid hanging invalidateAndAwait on errors	PR27	Sync robustness (transport/error parsing + backoff semantics)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
119	6f98c95fb5d8	fix(claude): support -c/-r and avoid session loss on switch	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
120	9489d70848f3	test(claude): align sessionScanner path mapping	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T21:56:27.359Z	PR description updated with batch 106-120 (terminal attach metadata + attach command, daemon tmux spawn support, error surfacing polish for codex/gemini, tmux attach UX + test robustness, detect-cli/codex test hygiene, sync invalidateAndAwait no-hang fix, claude switch/continue/resume reliability, misc doc/indent/comment cleanup)
121	9c4cb44b7d86	fix(daemon): reattach sessions after daemon restart	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:00:49.574Z	Added daemon restart reattach details (session markers under HAPPY_HOME_DIR + atomic persisted state notes).
122	dbde6d871670	test(daemon): add PID classification + session marker tests	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:00:49.574Z	Added coverage for strict PID classification + session marker semantics tests.
123	7cffdd5ce614	fix(daemon): verify PID via command hash for reattach/stop	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:00:49.574Z	Added coverage for PID reuse mitigation via process command hashing during reattach/stop.
124	8b88dcd73d40	fix(claude): carry permission mode across remote/local switches	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T22:00:49.574Z	Added coverage for lastPermissionMode tracking and ensuring local Claude spawns use matching permission args on remote↔local switch.
125	8f0e10c9428b	fix(claude): publish permission mode in session metadata	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T22:00:49.574Z	Added coverage for publishing permissionMode(+updatedAt) into session metadata to seed UI before first app-originated message meta exists.
126	ffad20faa406	fix(cli): publish permission mode for codex/gemini sessions	PR11	Agent permissions (Codex/Gemini): permission modes + allowlists	yes	2026-01-25T22:00:49.574Z	Added coverage for Codex/Gemini permissionMode metadata seeding + canonical PERMISSION_MODES + CLI arg parsing/clamping.
127	eb72c6e69434	fix(codex): disable model override and remove experimental resume	PR19	Resume end-to-end	yes	2026-01-25T22:00:49.574Z	Added Codex runtime correctness: remove experimental resume-by-transcript scanning and disable per-message model overrides (mode changes restart with explicit context drop).
128	d317f6bfa282	fix(typecheck): resolve duplicate terminalRuntime and RPC handler types	PR11	Agent permissions (Codex/Gemini): permission modes + allowlists	yes	2026-01-25T22:00:49.574Z	Applied compile-fix note: remove duplicated terminalRuntime keys; align async stopSession mock typing (squash-style follow-up).
129	a8682d427794	fix(detect-cli): relax tmux version probe timeout	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:00:49.574Z	Added capabilities probe tuning: tmux version timeout increased to reduce false negatives on slow hosts.
130	e2824dbc858b	feat(queue): add server-side pending message pull support	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:00:49.574Z	Added early pending-pop/pull note: agents can pop server-staged messages when idle before declaring ready; codexSessionId metadata flagged as resume-adjacent.
131	37a2c55a6c2f	fix(session): prime agent state for readiness	PR19	Resume end-to-end	yes	2026-01-25T22:00:49.574Z	Added coverage for priming agentStateVersion so Codex/Gemini UI readiness becomes true immediately after session creation.
132	88494b122194	fix(tools): support Windows arm64 tool unpacking	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:00:49.574Z	Reviewed as mixed + later reverted by 140 (Windows ARM64 tools mapping + test harness tweaks); kept out of final-state narrative pending net-effect verification.
133	d71587eda2db	feat: resume Claude sessions from UI	PR19	Resume end-to-end	yes	2026-01-25T22:00:49.574Z	Added resume plumbing: vendor resume id passed through daemon spawn with supportsVendorResume allowlist (Claude upstream).
134	a80868aff50d	feat: resume inactive Claude sessions from UI	PR19	Resume end-to-end	yes	2026-01-25T22:00:49.574Z	Added inactive-resume core details: resume-session RPC + persisted session file + --existing-session + initial message injection; large mixed commit.
135	bcaa530b12d7	feat(resume): add happy resume and persist vendor resume id	PR19	Resume end-to-end	yes	2026-01-25T22:00:49.574Z	Added CLI resume command and persisting vendorResumeId into local session file for deterministic reattach.
136	e085e75c5d36	feat(resume): allow resume-session without agentSessionId	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added resume robustness details: resume-session no longer requires agentSessionId; daemon can derive vendor resume id from persisted local session file; happy resume supports bulk ids.
137	68a6ba4bc244	feat(fork): enable Codex inactive-session resume via codex-reply	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Reviewed large Codex inactive-resume series (existing-session attach + vendor id persistence + experimental gating/install surfaces); PR desc describes final-state Codex resume as experimental + MCP resume server based.
138	d3aefaa9b598	refactor(daemon): extract reattach and pid safety helpers	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:05:00.939Z	Added daemon reliability detail: extracted pidSafety/reattach helpers for strict ownership gating and marker adoption.
139	72397b7e8c94	test(daemon): add opt-in reattach integration tests	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:05:00.939Z	Added coverage note: opt-in “real process” integration tests gated by env var validate PID hashing + marker adoption.
140	9c40c54018c2	Revert \"fix(tools): support Windows arm64 tool unpacking\"	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:05:00.939Z	Confirmed revert of 132 (Windows ARM64 tools mapping + scripts tests + writable-dir test fallback). Net effect: original changes removed; kept out of final-state narrative.
141	ab35b47ff699	fix(resume): make inactive resume reliable; gate Codex resume	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added inactive-resume finalization: remove message-via-spawn env flow; enqueue message first then spawn-only resume; add experimental Codex resume gating (UI + daemon) and resume-server install/status surfaces.
142	aa9b11684389	fix(codex): increase installer output buffer	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added installer reliability: increase npm exec buffer to avoid maxBuffer failures.
143	c4beebbfa375	feat(ui): add Codex resume experiment toggle	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added UI gating: expCodexResume experiment toggle + translations.
144	0140ae276869	refactor(codex): install mcp resume server via install-dep	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added Codex resume tooling refactor: install `codex-mcp-resume` MCP server wrapper via install-dep; separate resume tooling from system codex CLI; legacy path fallback.
145	2ec41b621b54	fix(codex): detect resume binary on Windows	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added Windows correctness: use F_OK existence checks for resume bin detection on win32.
146	e1deb6db8ddb	refactor(codex): add dep-status and drop codex-resume RPCs	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added API consolidation: generic dep-status + install-dep replace codex-resume-specific RPCs; machine UI switches to dep APIs.
147	231d7ad9bdd9	fix(ui): clarify Codex resume server label	PR19	Resume end-to-end	yes	2026-01-25T22:05:00.939Z	Added UX polish: rename machine section to “Codex resume server”.
148	8bebf04aca92	refactor(cli): modularize capabilities and env preview	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:05:00.939Z	Added major capabilities refactor: checklist-based capabilities.* RPC (describe/detect/invoke), cliSnapshot detection, and codex-mcp-resume dep management; preview-env handler extracted.
149	bcf10af94626	test(ui): update useCLIDetection hook tests for capabilities	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:05:00.939Z	Updated PR desc coverage for capabilities UI migration; tests updated to snapshot/results model.
150	a5cac698f15b	feat(cli): harden session queue, switching, and lifecycle	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:05:00.939Z	Added MessageQueueV1 CLI core details: metadata-backed queue claim/inFlight ack via localId, discard policy on switching, idle wake on metadata updates, and ACP task lifecycle event emission.
151	3fc704424e8d	feat(app): add pending queue, discard markers, and capabilities	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:08:12.544Z	Added app-side MessageQueueV1 (CAS metadata updates + submit-mode policy + discard markers + optimistic thinking) and noted this mega-commit also migrates UI machine detection to capabilities.*
152	49893dd7d16a	fix(terminal): harden remote→local switching input	PR31	Terminal switching reliability (remote↔local)	yes	2026-01-25T22:08:12.544Z	Added remote-mode input determinism (Ctrl+T + tested key interpreter) and stdin cleanup helper for switching.
153	0126667539b6	fix(claude): forward signals to binary child process	PR31	Terminal switching reliability (remote↔local)	yes	2026-01-25T22:08:12.544Z	Added signal-forwarding to Claude binary child (prevents orphaned stdin owners) with tests.
154	39c7b8a56b32	refactor(app): rename tmux/message-send settings under session	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T22:08:12.544Z	Added session settings consolidation: tmux keys renamed under session + sessionMessageSendMode rename and migrations/aliases.
155	fcec6c311b6b	feat(sync): add cross-device unread markers	PR29	Sessions & message list UX	yes	2026-01-25T22:08:12.544Z	Added cross-device unread: readStateV1 stored in encrypted metadata + focus/blur marking and debounced updates.
156	8c16ee8f9cef	fix(auth): surface auth failures and gate unauth routes	PR04	Auth + storage scoping	yes	2026-01-25T22:08:12.544Z	Added auth hardening: tolerate usage.service_tier null in raw parsing + layout-level unauth route guard with explicit public allowlist.
157	320a89e19ca0	test(happy): run cli and server checks from root scripts	PR01	Foundations / DevX	yes	2026-01-25T22:08:12.544Z	Added DevX: root test/typecheck scripts run expo-app + cli + server to prevent partial validation.
158	3b3609fed434	fix(rpc): add structured code for missing RPC methods	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T22:08:12.544Z	Added RPC robustness: structured errorCode=RPC_METHOD_NOT_AVAILABLE (back-compat with legacy message) + app fallback helpers/tests.
159	0e2c7928f24c	fix(scanner): tolerate onMessage exceptions	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:08:12.544Z	Added scanner robustness: catch onMessage callback exceptions (prevents scanner crashes) + regression test.
160	7fbe1f1cc727	fix(permission): avoid no-op permissionModeUpdatedAt bumps	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T22:08:12.544Z	Added permission arbitration correctness: avoid bumping permissionModeUpdatedAt on no-op updates via shared helper + tests.
161	2026fbab5cb3	fix(claude): accept -c as continue flag	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:08:12.544Z	Added small Claude CLI correctness: treat -c as --continue for “session control provided” detection.
162	ee0bec2a0b90	Delete INACTIVE_SESSION_RESUME.md	PR19	Resume end-to-end	yes	2026-01-25T22:08:12.544Z	Docs-only: removed inactive resume design doc; left out of final-state PR narrative (feature described elsewhere).
163	84df0d260513	fix(expo-app): stabilize postinstall and libsodium patches	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T22:08:12.544Z	Added expo-app install stability: hoist-safe patch-package postinstall + libsodium-wrappers ESM patch; includes typing tweak and lockfile adjustments.
164	544f9711b6cf	fix(ui): respond to plan/question tools via session RPC	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:08:12.544Z	Added tool UX: AskUserQuestion answers via interaction.respond with back-compat fallback; ExitPlan uses allow/deny without extra chat message; tests included.
165	8b3f39f22664	feat(cli): add interaction.respond for AskUserQuestion	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:08:12.544Z	Added CLI plumbing: interaction.respond RPC injects tool_result into active Claude remote prompt stream (after approving tool call).
166	ed4bc007308a	feat: add execpolicy approval option for Codex	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	Added Codex execpolicy “always allow command” approval button + payload plumbing; reducer refresh ensures latest tool arguments appear in existing permission tool messages.
167	78adc9c58811	feat(codex): support execpolicy approvals and MCP tool calls	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	Added CLI-side execpolicy amendment decision mapping + version-aware elicitation formatting + surfacing of MCP tool call begin/end into transcript.
168	9dfa09bef8d8	fix(i18n): add Codex execpolicy button text	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	Translation completion for execpolicy approval button (it/ja); folded into the Codex execpolicy approvals narrative.
169	559d39da116d	fix(reducer): keep permission messages idempotent	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	UI stability: only refresh tool input for permission tool messages when arguments actually changed (prevents rerender churn).
170	cc3c711ae28e	fix: move claudeArgs to end of args array for slash command support	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:13:10.783Z	Claude local-runner correctness: append custom claudeArgs last so prompts/slash commands are positioned correctly.
171	d06d5a833f8e	Add signal forwarding to claudeLocal.ts	PR31	Terminal switching reliability (remote↔local)	yes	2026-01-25T22:13:10.783Z	Terminal reliability: forward OS signals from CLI to Claude local child and clean up listeners on exit (prevents orphaned processes).
172	1b7cb3bfea86	feat: handle /clear command as session reset in codex	PR33	Codex special commands (/clear session reset)	yes	2026-01-25T22:13:10.783Z	Codex /clear semantics: treat as session boundary and reset MCP client + processors; emits “Session reset.” status.
173	332ab2b0cd93	fix(cli): improve abort error handling to reduce spurious error messages	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:13:10.783Z	Claude remote launcher UX: classify abort errors and suppress spurious “process error” noise when user aborts/switches.
174	e956463db3e2	fix: use runtime execPath for MCP bridge	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	MCP bridge runner reliability: spawn happy-mcp via process.execPath (node/bun) instead of relying on executable .mjs.
175	f0a7d8d0b40c	fix(codex): use mcp tool call id for approvals	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:13:10.783Z	Codex approvals correctness: prefer MCP tool-call id for permission request ids and cached proposed execpolicy amendments; unit tests included.
176	da620b6865ad	feat(server): add full/light flavors with sqlite migrations	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:13:10.783Z	Added server flavors + sqlite “light” mode: dynamic sqlite Prisma client generation/migrations and local public files backend (+ optional UI serving support).
177	893ce7af5df0	fix(expo-app): avoid hooks order violation on redirect	PR04	Auth + storage scoping	yes	2026-01-25T22:13:10.783Z	Auth redirect correctness: RootLayout keeps hook order stable on redirect; regression test added.
178	7afbc9a2decd	fix(expo-app): persist resumeSessionId and harden clipboard paste	PR26	New session wizard end-to-end	yes	2026-01-25T22:13:10.783Z	New-session reliability: persist resumeSessionId in drafts; safe clipboard paste helper with tests.
179	9a13879b753a	fix(expo-app): avoid false homeDir prefix matches	PR29	Sessions & message list UX	yes	2026-01-25T22:13:10.783Z	Sessions list correctness: avoid false homeDir prefix matches when formatting paths; regression test.
180	c107a779e07d	fix(expo-app): avoid stuck loading in capabilities cache	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:13:10.783Z	Capabilities UX reliability: cache moves to error when detect throws (avoids stuck loading) with hook regression test.
181	35c0974eff1f	refactor(expo-app): remove dead code and dedupe types	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:14:57.344Z	Small cleanup: dedupe MessageSendMode import and minor PendingMessagesModal refactor; noted useCLIDetection error-shape tweak (kept out of narrative unless needed).
182	b319d85e72c3	fix(i18n): correct Spanish resumable label	PR19	Resume end-to-end	yes	2026-01-25T22:14:57.344Z	Tiny i18n typo fix for resume label (es).
183	46186162ae14	test(happy-cli): fix timer cleanup and MCP schema mocks	PR32	Codex approvals + MCP tool interactions (execpolicy + elicitation)	yes	2026-01-25T22:14:57.344Z	Test stability: reset timers for terminal stdin cleanup tests and provide zod-backed MCP schema mocks for Codex client tests; small logger test correction.
184	ac5bf2f3abfa	test(happy-cli): reset modules for runtime override	PR01	Foundations / DevX	yes	2026-01-25T22:14:57.344Z	Test reliability: vi.resetModules so env-driven runtime override selection doesn’t leak across tests.
185	947b8d1814fb	refactor(expo-app): remove unused optimistic flag	PR29	Sessions & message list UX	yes	2026-01-25T22:14:57.344Z	Tiny cleanup: remove unused optimistic-only flag.
186	8cc823d1ba2d	fix(server-light): validate PORT and normalize paths	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Server-light env hardening: validate PORT range for default public URL; normalize backslashes in public paths; tests included.
187	8cb995a1abe1	test(server): fix schema generation sort regex	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Server-light schema-gen test fix: correct whitespace regex.
188	04d9c60ef8e7	refactor(happy-cli): remove unreachable gemini error branch	PR30	Agent error surfaces (Codex/Gemini)	yes	2026-01-25T22:14:57.344Z	Small cleanup: remove redundant/unreachable Gemini error formatting branch.
189	2616e5e19253	fix(server): handle missing UI index.html	PR23	Server serves UI + public files safely	yes	2026-01-25T22:14:57.344Z	Serve-UI reliability: missing index.html returns 404 with no-cache (not crash); focused test.
190	911365366024	fix(server): make build typecheck tests	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Tooling: add server typecheck alias and ensure vitest imports in light specs.
191	0dd19e7fb257	fix(expo-app): default codex resume spec to empty	PR19	Resume end-to-end	yes	2026-01-25T22:14:57.344Z	Codex resume safety: default codexResumeInstallSpec to empty (avoid fork-specific defaults); removed dead sessionRename lookup block.
192	229e5fc36570	fix(server-light): use file URLs for sqlite db	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Server-light correctness: form sqlite URL via pathToFileURL (proper file:/// + escaping); test updated.
193	e6f597e436c5	fix(server): fix server-light typecheck	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Server-light typecheck: Buffer.from for S3 putObject data + TS module settings (noted churn with 194).
194	1564e800e355	fix(server): relax module settings for typecheck	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:14:57.344Z	Tsconfig follow-up: module/moduleResolution adjusted; treat as final end-state (squash with 193 if rewriting).
195	8ab11f2788c1	fix(happy-cli): parse CLI versions from full output	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:14:57.344Z	Capabilities robustness: extract semver from combined stdout+stderr when first-line parsing fails.
196	21e096e9454e	fix(i18n): localize session settings item	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T22:17:46.903Z	Settings list i18n: localize session settings item title/subtitle with new keys across locales.
197	7ca9e93196d6	fix(i18n): translate ExitPlanMode strings	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:17:46.903Z	Tool UI i18n: translate ExitPlanMode strings across locales.
198	c4a81947f002	fix(i18n): localize search error	PR35	Friends: UX + reliability (search errors + follow-ups)	yes	2026-01-25T22:17:46.903Z	Friends search UX: useSearch returns stable error code and UI localizes via errors.searchFailed; debounce/retry hook test added.
199	208f0222a997	fix(i18n): localize Codex resume dialog	PR26	New session wizard end-to-end	yes	2026-01-25T22:17:46.903Z	New-session web UX: present wizard in BaseModal on web; localize Codex resume “not installed” dialog.
200	02ad6b4a8352	fix(i18n): move openMachine to connect scope	PR26	New session wizard end-to-end	yes	2026-01-25T22:17:46.903Z	i18n taxonomy: move openMachine key from common.* to connect.* and update new-session dialog.
201	ce42bf56d7b6	fix(web): correct libsodium wrapper typing	PR01	Foundations / DevX	yes	2026-01-25T22:17:46.903Z	Web runtime stability: force libsodium-wrappers CJS build to avoid Metro ESM/top-level await parsing failures (typed export).
202	f0417ca11ac5	fix(web): keep libsodium wrapper namespace typing	PR01	Foundations / DevX	yes	2026-01-25T22:17:46.903Z	Typing follow-up: export cast uses typeof sodiumType; squash into 201 if rewriting.
203	b6d3874bf175	fix(settings): include Codex resume in master experiment toggle	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T22:17:46.903Z	Settings UX correctness: master experiments toggle also controls expCodexResume.
204	a4d7faba961f	fix(i18n): localize session error fallbacks	PR29	Sessions & message list UX	yes	2026-01-25T22:17:46.903Z	Session UI copy/i18n: localize error fallbacks and profile-info modal; includes some unrelated expInboxFriends translations (noted mixed).
205	1ea2bddb8bbd	test(server): validate processImage resize output	PR23	Server serves UI + public files safely	yes	2026-01-25T22:17:46.903Z	Server test correctness: validate processImage resize output pixel buffer length vs target dims (width/height metadata remains original).
206	1e7d7f8a4747	fix(server): keep light server running	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:17:46.903Z	Server-light correctness: main.light.ts no longer exits after startServer resolves.
207	61bf70183ebf	test(cli): set DEBUG before importing logger	PR01	Foundations / DevX	yes	2026-01-25T22:17:46.903Z	Test correctness: set DEBUG before importing logger (reads env at import time).
208	61a18ac95e17	fix(tools): require permission id for ExitPlanMode actions	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:17:46.903Z	Tool safety: ExitPlan approve/reject requires permission id; missing id shows localized error and does not mark responded; tests included.
209	5b36c9bf91c1	test(tools): avoid null permission in ExitPlanToolView tests	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:17:46.903Z	Test follow-up: align missing permission shape (undefined vs null); squash into 208 if rewriting.
210	b7f63e928e4f	fix(persistence): retry daemon state read when file appears	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:17:46.903Z	Daemon state race hardening: readDaemonState retries on ENOENT when state file appears shortly after start; regression test.
211	55428fb0253c	fix(tools): alert when AskUserQuestion permission id is missing	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:22:13.597Z	Tools safety: AskUserQuestion shows localized modal error and no-ops when permission id is missing (aligns with ExitPlanMode hardening); targeted test.
212	dc6955f88abd	fix(terminal): prevent sessionId path traversal in attachment info	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T22:22:13.597Z	Terminal attachment security: encode sessionId filenames (encodeURIComponent) for attachment info storage with legacy fallback; later commits further restrict legacy fallback.
213	bb685fbeff7b	fix(terminal): clarify missing --happy-starting-mode value	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T22:22:13.597Z	CLI argv validation: fail closed if --happy-starting-mode is missing/invalid (not another flag); test added.
214	5bcc7d20cd6b	test(utils): stabilize serverConnectionErrors retry count test	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T22:22:13.597Z	Test stability: stub Math.random for jittered backoff and ensure cleanup/cancel in retry-count test.
215	82968aa8fe6c	fix(ui): send pending messages before closing modal	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:22:13.597Z	PendingMessagesModal integrity: send-now ordering is abort→send→delete→close; send failure does not delete/close; testIDs + regression tests.
216	b7219c8bfe2b	fix(ink): avoid async useInput handler	PR31	Terminal switching reliability (remote↔local)	yes	2026-01-25T22:22:13.597Z	Ink reliability: avoid async useInput handler; use cancellable timeouts and clear on unmount/messageBuffer changes.
217	d70a6f6669fe	fix(claude): trim CLAUDE_CONFIG_DIR overrides	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:22:13.597Z	Claude robustness: trim CLAUDE_CONFIG_DIR overrides (treat as user input); regression test.
218	47f638b73fca	test(utils): cover failuresCount with custom backoff	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T22:22:13.597Z	Backoff semantics test: failuresCount increments per attempt under custom backoff.
219	2abc70fef03c	fix(utils): track failuresCount for custom backoff	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T22:22:13.597Z	Backoff semantics fix: InvalidateSync tracks failuresCount internally so custom backoff implementations report consistent counts.
220	dc8016f01c56	fix(server): validate HAPPY_SERVER_LIGHT_DATA_DIR for light migrations	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:22:13.597Z	Server-light migration reliability: validate/trim required light data dir and centralize deploy plan args; tests included.
221	b0085827322c	fix(server): handle missing UI index in error handlers	PR23	Server serves UI + public files safely	yes	2026-01-25T22:22:13.597Z	Serve-UI reliability: SPA error handlers return 404 (not 500) when UI index missing; regression test.
222	abf288056636	fix(cli): reject invalid messageQueueV1 inFlight	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:22:13.597Z	Queue parsing hardening: reject invalid messageQueueV1.inFlight shapes (fail closed) + test.
223	73ce32d242a0	fix(i18n): translate Spanish experiment subtitles	PR06	Settings: API keys + experiments + settings screens	yes	2026-01-25T22:22:13.597Z	i18n polish: translate Spanish experiment subtitles (pure translations).
224	98bc00096e86	fix(i18n): localize Codex resume banner	PR19	Resume end-to-end	yes	2026-01-25T22:22:13.597Z	New-session i18n: localize Codex resume banner strings; commit also includes wizard header + permission option refactors (noted mixed).
225	4fabec9b69b3	feat(new-session): add WizardSectionHeaderRow	PR26	New session wizard end-to-end	yes	2026-01-25T22:22:13.597Z	New-session UI primitive: add WizardSectionHeaderRow component; reorder before commits that use it if rewriting.
226	c461ed1cb4ef	feat(permission): add permission mode option helpers	PR10	Permission framework (Claude/cloud baseline)	yes	2026-01-25T22:28:25.546Z	Permission mode option helpers centralize per-agent options/labels/icons and normalization (note: descriptions still hardcoded English where used).
227	23b595edd0fe	refactor(sync): simplify path formatting	PR29	Sessions & message list UX	yes	2026-01-25T22:28:25.546Z	Session list home-relative path formatting simplified to consistent `~` prefix (refactor-only).
228	523989b4de8e	fix(server-light): avoid master secret race	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:28:25.546Z	Server-light: master secret persistence made atomic (exclusive create + EEXIST read-back) to avoid multi-process race/corruption.
229	d89a9427e765	fix(cli): clean up metadata waiters on disconnect	PR17	CLI reliability (waiters + reconnection + backoff semantics)	yes	2026-01-25T22:28:25.546Z	CLI socket reliability: waitForMetadataUpdate resolves `false` on disconnect and cleans up listeners; regression test added.
230	fedb8a66160a	test(cli): accept lowercase preview-env keys	PR15	preview-env end-to-end	yes	2026-01-25T22:28:25.546Z	Added test coverage for preview-env accepting lowercase env keys.
231	fc0ce89b13b7	fix(cli): allow lowercase preview-env keys	PR15	preview-env end-to-end	yes	2026-01-25T22:28:25.546Z	Preview-env: accept lowercase keys, block `__proto__/constructor/prototype`, use Object.create(null) for extraEnv; adds invalid-key test.
232	ad95c5b01c25	test(happy): keep useCLIDetection timestamp stable	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:28:25.546Z	Added fake-timer test for stable useCLIDetection timestamp when loaded snapshot lacks `checkedAt`.
233	c251edf3c307	test(happy): fix useCLIDetection timestamp test	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:28:25.546Z	Test hygiene for useCLIDetection timestamp test (act + fake timer cleanup).
234	34fa4091d3cc	fix(happy): stabilize useCLIDetection timestamp	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:28:25.546Z	Capabilities hook reliability: stabilize useCLIDetection timestamp via fallback detect-at ref when `checkedAt` missing (prevents flapping).
235	31340e53294c	fix(happy): inline CLI detection request	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:28:25.546Z	Follow-up cleanup: keep CLI detection request construction self-contained (squash with 234 if rewriting).
236	054250f408e2	fix(i18n): localize codex resume install modals	PR19	Resume end-to-end	yes	2026-01-25T22:28:25.546Z	Localized Codex resume install/update/reinstall modals (Machine + New Session) and added deps.* status strings across locales; note key-scope duplication to unify later.
237	241f0ae24b1d	test(cli): prevent legacy sessionId path traversal	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T22:28:25.546Z	Regression test: legacy terminal attachment info fallback must not allow traversal-like session ids.
238	a1e4a6dd3fbd	fix(cli): block legacy sessionId path traversal	PR18	TMUX end-to-end (headless sessions + attach + settings)	yes	2026-01-25T22:28:25.546Z	Security fix: block legacy fallback reads when sessionId contains `/` or `\\`.
239	e2618e04a26b	fix(a11y): add labels to codex resume actions	PR19	Resume end-to-end	yes	2026-01-25T22:28:25.546Z	A11y: added accessibilityRole/Label to Codex resume banner actions (install/update/reinstall/check updates).
240	d0f9ad5e8310	test(claude): remove stale transcriptPath red-test scaffolding	PR20	Claude session reliability (switching + transcript/scanner + local runner)	yes	2026-01-25T22:28:25.546Z	Test cleanup: removed stale transcriptPath red-test scaffolding/casts now that the final API exists.
241	1464402758bf	fix(codex): preserve falsy MCP tool results	PR21	Codex MCP tool-call result correctness	yes	2026-01-25T22:33:42.998Z	Codex MCP: extract Ok/Err outputs via hasOwnProperty so falsy values are preserved; unit tests added.
242	57f84f0691c6	fix(server-light): harden public file path encoding	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:33:42.998Z	Server-light: strict public path normalization (reject traversal/absolute/drive-letter/null bytes) + segment-wise encodeURIComponent URL building; expanded tests.
243	0b7db6945325	fix(storage): validate S3_PORT and bucket existence	PR24	Storage S3 validation	yes	2026-01-25T22:33:42.998Z	Storage safety: validate S3_PORT (1..65535) and fail-fast if bucket does not exist; focused tests added.
244	74fc860b07b5	refactor(queue): simplify stale in-flight reclaim	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:33:42.998Z	MessageQueueV1 maintenance: simplified stale inFlight reclaim code path (refactor-only).
245	82bf82cb6715	fix(hooks): prevent stale capabilities cache overwrite	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:33:42.998Z	Capabilities cache race fix: guard updates by inFlightToken so stale requests can’t clobber newer loaded results; race regression test added.
246	384b15252026	fix(expo): harden tool submit and pending send	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:33:42.998Z	User-action hardening: PendingMessagesModal discards queued item if delete fails after send; adds per-item discard helper; AskUserQuestion submit failures show alert + regression test.
247	24b607abfa07	Refactor schema sync and centralize Prisma types	PR22	Server-light flavor (variant + schema/prisma sync)	yes	2026-01-25T22:33:42.998Z	Server schema maintenance: replaced schema:sqlite with schema:sync, generated enums + drift tests, centralized Prisma init/types with fail-fast db proxy (note: unrelated yarn.lock hunk exists).
248	bf3027799623	Set EXPO_UNSTABLE_WEB_MODAL env var in Expo scripts	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T22:33:42.998Z	Expo web modal reliability: set EXPO_UNSTABLE_WEB_MODAL=1, pin expo-router 6.0.22 and patch web modal stack; includes small session-info gating tweak (expCodexAcp).
249	c803115dcbdc	Improve postinstall script for symlinked paths and patching	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T22:33:42.998Z	Expo postinstall reliability: resolve symlinked paths and run patch-package from both repo root and expo-app so hoisted and non-hoisted patches apply.
250	0c3b41030bbc	Add Vitest stubs for Expo and React Native modules	PR01	Foundations / DevX	yes	2026-01-25T22:33:42.998Z	Testing infra: added Vitest stubs/setup for Expo/React Native modules (incl. in-memory MMKV mock) to run UI unit tests in Node.
251	7d60e6fc77f2	cli(acp): support loadSession + replay capture; normalize tool events	PR36	ACP agents end-to-end (runtimes + replay + tool normalization)	yes	2026-01-25T22:36:01.317Z	ACP CLI: replay capture + import helpers, `loadSession` support, publishSlashCommands, and tool event + permission payload normalization; focused tests added.
252	e35328ab19ad	cli(permissions): persist per-session allowlists; harden shell approvals	PR11	Agent permissions (Codex/Gemini): permission modes + allowlists	yes	2026-01-25T22:36:01.317Z	Codex/Gemini permissions: persist per-session allowlists via BasePermissionHandler; add stable tool identifier helpers and hardened shell command allowlist; targeted tests.
253	caf5adfe3449	cli(claude): support AskUserQuestion answers + ExitPlanMode negotiation	PR12	AskUserQuestion + ExitPlan native handling	yes	2026-01-25T22:36:01.317Z	Claude remote: AskUserQuestion answers and ExitPlanMode negotiation routed via permission decision path; regression tests; removed legacy prompt/interactionRespond helpers.
254	011a3602411f	cli(api): observe self-broadcasts for pending-queue; add tool tracing	PR13	MessageQueueV1 + Pending messages end-to-end	yes	2026-01-25T22:36:01.317Z	CLI pending queue reliability: treat self-broadcasts as pending-queue signals and add transcript recovery behavior in apiSession; introduces toolTrace JSONL writer/tests (noted separately as tracing).
255	809d2bb385e0	cli(tool-trace): add fixture extraction + CLI script	PR39	Tool UX: normalization + specialized views + tracing	yes	2026-01-25T22:36:01.317Z	Tool tracing: JSONL→fixtures extractor (truncation/sanitization) plus tsx script and npm script for local fixture generation.
256	553781556305	cli(auth): add --no-open to skip browser open	PR04	Auth + storage scoping	yes	2026-01-25T22:36:01.317Z	Auth UX: `happy auth login --no-open` (and env compat) skips auto-opening browser; unit test ensures browser open is skipped.
257	5955ea5c21a3	cli(daemon): idempotent resume + attach files + shutdown policy	PR16	Daemon reliability (ownership + reattach/restart safety)	yes	2026-01-25T22:36:01.317Z	Daemon reliability: idempotent resume (avoid duplicates), per-session attach files + startup metadata merge/update helpers, shutdown watchdog policy, and non-interactive auth gating regression test.
258	cce05b18a5d7	cli(agents): wire ACP agents into factory/transport registry	PR36	ACP agents end-to-end (runtimes + replay + tool normalization)	yes	2026-01-25T22:36:01.317Z	Agent plumbing: register Codex ACP + OpenCode factories in agent factory/transport registries.
259	27bb2523f690	cli(opencode): add OpenCode ACP agent runtime	PR36	ACP agents end-to-end (runtimes + replay + tool normalization)	yes	2026-01-25T22:36:01.317Z	OpenCode ACP: new runtime + transport handler, session-id helpers and permission handler; focused unit tests.
260	abe1cf8ed370	cli(codex-acp): add runtime + capability gating	PR36	ACP agents end-to-end (runtimes + replay + tool normalization)	yes	2026-01-25T22:36:01.317Z	Codex ACP: runtime + command resolution + session-id metadata helpers; extends capabilities for ACP probing/Codex ACP dependency checks; tests included (note: can be split if needed).
261	d9100a80112b	cli(entry): refactor agent subcommands and startup flags	PR36	ACP agents end-to-end (runtimes + replay + tool normalization)	yes	2026-01-25T22:41:30.073Z	CLI entry: aligned agent subcommands/startup flags (OpenCode wiring, Codex/Gemini arg parsing), parses permission-mode-updated-at, and removes legacy resume subcommand in favor of existing-session/resume flags.
262	2edc5305ca3f	expo-app(test): harden vitest stubs + unistyles typing	PR01	Foundations / DevX	yes	2026-01-25T22:41:30.073Z	Test infra: hardened Vitest stubs/config aliases/setup and improved unistyles typing/bootstrap; moved/added RootLayout hook-order regression test.
263	5575d7267cd0	expo-app(tools): normalize tool inference + rendering inputs	PR39	Tool UX: normalization + specialized views + tracing	yes	2026-01-25T22:41:30.073Z	Tool UX: added shared normalization/parsing helpers (safe JSON parse, identifier parsing, permission summaries, shell command parsing) and made ToolView/ToolFullView rely on normalized shapes.
264	d115797fcdde	expo-app(tools): add specialized tool views + tests	PR39	Tool UX: normalization + specialized views + tracing	yes	2026-01-25T22:41:30.073Z	Tool UX: added specialized tool views (bash/read/grep/glob/web/structured results), improved permission UI flows, and expanded tool rendering regression tests (inference + fallbacks).
265	23014814ea50	expo-app(agents): introduce agent registry + UI behavior helpers	PR37	Agent registry end-to-end (selection + settings + UX helpers)	yes	2026-01-25T22:41:30.073Z	App agent registry: typed registry + UI helpers for enabled agents, CLI warnings, permission UI copy, and resume option derivation; tests for picker options/behavior.
266	b142327f5e32	expo-app(sync): capabilities protocol + resume/pending-queue plumbing	PR14	Capabilities end-to-end (protocol + wiring + reliability)	yes	2026-01-25T22:41:30.073Z	Mixed plumbing: introduced installable deps registry + capabilities request protocol and extended sync/types/tests for resume and pending queue; core capabilities/registry captured in PR description.
267	552f517e9823	expo-app(ui): add InlineAddExpander; inline add for secrets/env vars	PR09	Secrets / vault feature	yes	2026-01-25T22:41:30.073Z	UI UX: InlineAddExpander enables inline add flows for SecretsList and EnvironmentVariablesList with tests (secrets + env vars).
268	cbaf39a63c60	expo-app(secret-requirement): add picker route + modularized modal	PR26	New session wizard end-to-end	yes	2026-01-25T22:41:30.073Z	Secret requirement UX: modularized SecretRequirementModal, added full-screen picker route, and introduced pure apply/gating helpers with tests; improved /new web modal sizing/layout.
269	36641d906490	expo-app(session): capability-gated resume flows + pending queue UX	PR19	Resume end-to-end	yes	2026-01-25T22:41:30.073Z	App UX: capability-gated resume flows wired via agent registry + machine capabilities; added pending message rendering and clearer inactive/offline notices; supporting UI tests.
270	9a9d439e5499	expo-app(settings): wire agent registry into settings	PR37	Agent registry end-to-end (selection + settings + UX helpers)	yes	2026-01-25T22:41:30.073Z	Settings: session/account settings screens now use agent registry defaults/available agents to stay aligned with new permission/default behavior.
271	67ceab362d6b	expo-app(experiments): add inbox friends experiment gate	PR35	Friends: UX + reliability (search errors + follow-ups)	yes	2026-01-25T22:43:41.514Z	Adds inbox/friends experiment flag + hooks and gates inbox/friends routes/routing based on the experiment; includes unit tests for the experiment helper.
272	05b45b4f505d	expo-app(settings): update features toggles for agents/inbox/codex	PR37	Agent registry end-to-end (selection + settings + UX helpers)	yes	2026-01-25T22:43:41.514Z	Settings feature toggles: switch to agent-registry-backed experimental agent toggles, add inbox friends toggle, and add Codex ACP toggle with mutual-exclusion to Codex resume (mixed UI toggle commit).
273	ec9225a8f935	expo-app(i18n): add device locale helpers + update translations	PR03	i18n foundation sweep (optional)	yes	2026-01-25T22:43:41.514Z	i18n runtime: add device locale helpers (shared + native) and update translation dictionaries/index wiring (translations sweep noted as split/distribute in a stacked rewrite).
274	98b7138360ff	expo-app(agents): align resume helpers + temp session data typing	PR19	Resume end-to-end	yes	2026-01-25T22:43:41.514Z	Resume helpers: align resume capability helpers to agent registry, add vendor resume-id lookup helper, and type temp session data agentType as AgentId; regression tests included.
275	63cda8b20882	expo-app(ui): add list/pending primitives and polish	PR38	UI list primitives + pending UI polish	yes	2026-01-25T22:43:41.514Z	UI primitives: add list/item-group row position + title-with-action helpers, improve dividers/tests, and refine list/pending UI layout/behavior; also touches some profile list model helpers (noted as mixed).
276	10dca4ca7057	chore(expo): pin libsodium-wrappers and align patch-package dirs	PR02	UI modal/overlay/popover + Expo web modal behavior	yes	2026-01-25T22:43:41.514Z	Expo dependency plumbing: pin libsodium-wrappers to 0.7.15, move expo-router patch into expo-app/patches, and align postinstall patch-package invocation; updates yarn.lock.
277	cfe2ecd3e626	refactor: migrate StyleSheet imports to react-native-unistyles	PR01	Foundations / DevX	yes	2026-01-25T22:43:41.514Z	Mechanical refactor: migrate StyleSheet imports to react-native-unistyles across expo-app sources and add invariant test to prevent regressions.
278	8aaacbfaac7a	docs: add Conventional Commits instructions	PR01	Foundations / DevX	yes	2026-01-25T22:43:41.514Z	Adds Conventional Commits guidance for tooling via `.github/copilot-commit-instructions.md`.
