Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
285 commits
Select commit Hold shift + click to select a range
c65b035
feat(port): Phase 3.15 — REST/WS breadth (files DirectoryPicker + tab…
codex Jul 6, 2026
c33f7ff
docs(oracle): Phase 4 — comprehensive equivalence report (honest caps…
codex Jul 6, 2026
093c105
fix(oracle): make T2-opencode deterministic — wait for the durable as…
codex Jul 6, 2026
f07c259
docs(oracle): mark T2-opencode RESOLVED in the equivalence report
codex Jul 6, 2026
9e91c6d
chore(port): Phase 5 converge — STATE final (port equivalence-proven,…
codex Jul 6, 2026
8efa62d
feat(port): 3.16 terminal batch framing + fix(oracle): ENV-0001 quara…
codex Jul 6, 2026
1965e31
feat(port): 3.17 Tauri desktop features (tray/hotkey/window-state/wiz…
codex Jul 6, 2026
b4f89de
docs(oracle): ENV-0001 RESOLVED — stale dist build; clean rebuild res…
codex Jul 6, 2026
bda1c73
feat(port): 3.18 REST breadth — browser-pane proxy + screenshots + fi…
codex Jul 6, 2026
8529d86
docs(port): final convergence — report addendum + STATE (all follow-u…
codex Jul 6, 2026
d469a6e
feat(port): 3.19 deep REST breadth — availableClis + network status +…
codex Jul 6, 2026
494a7d1
fix(port): /api/health returns the full discovery shape (legacy Elect…
codex Jul 6, 2026
f82b8ce
fix(port): freshell-server binds 0.0.0.0 on WSL2 by default (Windows …
codex Jul 6, 2026
486c4e6
fix(port): stop char-boundary panic in session text parser (multibyte…
codex Jul 6, 2026
bd2d6fc
build(port): add x86_64-pc-windows-gnu linker config (Windows server …
codex Jul 6, 2026
8d2b1d2
fix(port): WS terminal.create honors `mode` — coding-CLI panes launch…
codex Jul 6, 2026
4e14866
fix(port): WSL-launched cmd/powershell inherit a valid /mnt cwd (no m…
codex Jul 6, 2026
49ef0f7
fix(port): native-Windows CLI launch branch — Windows-server matrix 8…
codex Jul 7, 2026
1c2c9c7
feat(tauri): remote provisioning (port of desktop-provisioning.ts) — …
codex Jul 8, 2026
7035a89
docs(port): HANDOFF.md (exhaustive agent handoff) + GOAL.md (definiti…
codex Jul 8, 2026
fc61fca
docs(port): reconcile stranded VM-session artifacts, hardened per 3 a…
codex Jul 10, 2026
b1b9a46
docs(spec): cli-argv-fidelity rev 2.1 — restore 6 review items lost t…
codex Jul 10, 2026
efeae8d
docs(port): HANDOFF v2 — delete v1, write the new-host handoff (perfe…
codex Jul 10, 2026
b7b50ff
docs(port): laptop-bootstrap kit — clean-Windows machine to port-read…
codex Jul 10, 2026
c824074
docs(port): hand off prepared WSL host to Amplifier
danshapiro Jul 10, 2026
40d8b56
chore(port): remove phantom tsclient/ dir accidentally committed with…
codex Jul 10, 2026
bfacfe6
docs(port): mark Amplifier authentication ready
danshapiro Jul 11, 2026
d20b4af
docs(port): require absolute Windows interop calls
danshapiro Jul 11, 2026
8735bfc
docs(port): record Phase-0 capability probe for SurfaceBookPro9 WSL host
danshapiro Jul 11, 2026
59a585a
test(port): re-green deterministic base on SurfaceBookPro9 host (orac…
danshapiro Jul 11, 2026
14b756d
test(port): re-baseline original T3 profile on this host (117/126, 8 …
danshapiro Jul 11, 2026
f91d727
test(port): add REST parity sweep — 111 cases, 14 divergence root cau…
danshapiro Jul 11, 2026
984294f
fix(port): close all 14 REST/WS parity divergences; sweep 111/111, or…
danshapiro Jul 11, 2026
8778b50
fix(port): default terminal cwd fallback (4 T3 defects); T3 profile n…
danshapiro Jul 11, 2026
e19dfea
test(port): Chromium×{original,rust-wsl,rust-win} matrix legs verifie…
danshapiro Jul 12, 2026
305eb7c
test(port): Tauri matrix legs A (app-bound) + B (remote provisioning.…
danshapiro Jul 12, 2026
44a4dc4
fix(port): full /api/terminals port — directory GET + paged read-mode…
danshapiro Jul 12, 2026
9866ec2
test(port): Electron-from-source (WSLg) legs vs both Rust servers ver…
danshapiro Jul 12, 2026
eaf3fd1
fix(port): /api/bootstrap shell.ready/tasks+perf and strict POST /api…
danshapiro Jul 12, 2026
24ecdb8
fix(port): knownProviders persisted-migration semantics + cwd-relativ…
danshapiro Jul 12, 2026
c5e2337
fix(port): native-Windows machineHostname + lanIps in /api/network/st…
danshapiro Jul 12, 2026
42443c5
docs(port): task-005 close-out - matrix + REST parity convergence com…
danshapiro Jul 12, 2026
b90b1d5
feat(port): GET /api/terminals/:id/search ported - PORT-GAP-002 searc…
danshapiro Jul 12, 2026
d60d22f
feat(port): CLI argv/env fidelity - full resolveCodingCliCommand + MC…
danshapiro Jul 13, 2026
2eae97d
fix(port): Windows ConPTY exit/kill wedge + DEV-0007 B1 adjudication …
danshapiro Jul 13, 2026
878846f
docs(port): task-006 close-out - s7.D.4 rendering legs vision-verifie…
danshapiro Jul 13, 2026
b0133b9
feat(port): natural-exit terminal.exit parity - finishTerminalPtyExit…
danshapiro Jul 13, 2026
9665acc
feat(port): graceful-shutdown 4009 close parity + s7.I robustness bat…
danshapiro Jul 13, 2026
959e9d9
fix(port): session-indexer lossy UTF-8 read parity + seeded-home diff…
danshapiro Jul 13, 2026
aadd41a
feat(port): task-007 close-out - s7.F interchange + Tauri window-stat…
danshapiro Jul 14, 2026
969933e
docs(port): task-008 T2 live results - claude+codex PASS (original ≡ …
danshapiro Jul 14, 2026
343d39a
docs(port): task-009 campaign close-out - EQUIVALENCE-REPORT this-hos…
danshapiro Jul 14, 2026
2164b9b
fix(tauri): use visible native app icons
codex Jul 14, 2026
befdb3e
docs(port): add parity completion checklist
codex Jul 14, 2026
0d67efe
feat(rust): persistent sessionOverrides in SettingsStore with title-s…
codex Jul 16, 2026
c683bb8
feat(rust): overlay sessionOverrides onto session-directory read model
codex Jul 16, 2026
e37d9e8
test(sessions): pin claude title precedence (custom_title > agent_nam…
codex Jul 16, 2026
7ad5aeb
feat(rust): add /api/sessions PATCH + generate-title router
codex Jul 16, 2026
ce96cfc
style(rust): apply cargo fmt to freshell-server (formatting only, ver…
codex Jul 16, 2026
18b5175
test(rust): pin featureFlags.aiEnabled parity for /api/bootstrap + /a…
codex Jul 16, 2026
39c8838
feat(rust-server): legacy-parity .env loading at boot
codex Jul 16, 2026
334f834
test(e2e): add owned Rust-server Playwright fixture (HARNESS-01)
codex Jul 16, 2026
567ab1b
test(e2e): run shared browser specs as a Node/Rust matrix (HARNESS-02)
codex Jul 16, 2026
2cb5728
fix(e2e): prove real PTY child reaping in HARNESS-01, not process-gro…
codex Jul 16, 2026
4f58279
test(e2e): round out HARNESS-02 matrix scenario coverage (review fixes)
codex Jul 16, 2026
197f731
docs(port): check off HARNESS-01 and HARNESS-02 with evidence
codex Jul 16, 2026
6e3af24
fix(server): stop config.json persist from dropping unmanaged top-lev…
codex Jul 16, 2026
5c020be
feat(server): cache the session-directory index instead of rescanning…
codex Jul 16, 2026
05fa66c
feat(rust): codex fresh-agent WS interrupt/kill + onExit self-heal (B…
codex Jul 16, 2026
ffa83d0
fix(server): make the session-directory index refresh incremental, no…
codex Jul 16, 2026
b1b853d
feat(rust): opencode fresh-agent WS runtime — create/send/kill + cont…
codex Jul 17, 2026
f7358d0
feat(rust): bridge opencode serve stream into freshAgent.event (Batch…
codex Jul 17, 2026
408d0cd
feat(server): add codex + opencode session sources to the directory i…
codex Jul 17, 2026
47f3bae
style(sessions): apply cargo fmt to freshell-sessions (formatting onl…
codex Jul 17, 2026
0d46bc3
feat(freshagent): freshAgent.attach reload-rehydrate + codex lazy-res…
codex Jul 17, 2026
d78e1f0
feat(terminal): add amplifier as a generic extension-manifest CLI mode
codex Jul 17, 2026
0002a1d
feat(freshagent): fresh-agent thread-snapshot REST endpoint (Batch D …
codex Jul 17, 2026
ff8edc7
feat(freshagent): rich transcript items for the fresh-agent snapshot …
codex Jul 17, 2026
f4cd1ab
fix(freshagent): codex snapshot turn role + per-role splitting; openc…
codex Jul 17, 2026
314d2f7
style(freshagent): apply cargo fmt (formatting-only reflow from rustf…
codex Jul 17, 2026
e5670ae
fix(freshagent): session-metadata route, codex ensure-runtime-on-dema…
codex Jul 17, 2026
f7e9c08
style: apply cargo fmt workspace-wide (formatting-only reflow from ru…
codex Jul 17, 2026
42f2475
fix(freshagent): skip unrecognized codex thread item types instead of…
codex Jul 17, 2026
ff3a5da
fix(codex): widen thread/read + thread/resume RPC timeout to 30s
codex Jul 17, 2026
b9e0c1a
fix(terminal): pane title on resume + surface instant-exit after attach
codex Jul 17, 2026
89f4b2f
fix(freshagent): bulletproof restore — codex/opencode attach no longe…
codex Jul 17, 2026
764242c
fix(ws): server-initiated keepalive ping/pong — idle connections no l…
codex Jul 17, 2026
58089d1
test(e2e): add restore-matrix acceptance suite to Node/Rust HARNESS-0…
codex Jul 17, 2026
b4a3e5b
fix(freshagent): codex attach no longer double-emits a status snapshot
codex Jul 17, 2026
a220d84
feat(server): port POST /api/fresh-agent/checkpoints (create-only)
codex Jul 17, 2026
40ef4d9
test(e2e): drive restore-matrix scenario 2 to GREEN on both server kinds
codex Jul 17, 2026
d5cf534
fix(rust): session naming cluster — pane rename, rename cascades, sid…
codex Jul 17, 2026
2d7612b
style(server): cargo fmt reflow in checkpoints.rs (formatting only, r…
codex Jul 17, 2026
b48eb63
docs(port): transition campaign status snapshot (2026-07-17)
codex Jul 17, 2026
3dcf3f0
docs(port): link status snapshot to the 233-item checklist (2 checked…
codex Jul 17, 2026
53c77bf
docs(port): self-hosting readiness plan from 233-item checklist triage
codex Jul 17, 2026
9c346fc
fix(rust): harden settings_store for side-by-side legacy-server bake-in
codex Jul 17, 2026
3fae265
test(rust): prove reverse rename cascade with positive-match coverage
codex Jul 17, 2026
737cb00
docs(port): record active side-by-side bake-in state and launch caveats
codex Jul 17, 2026
6408398
feat(rust): add Amplifier as a fourth session-directory source
codex Jul 17, 2026
8888df3
feat(rust): persist the FileEntry parse cache to disk (kill the cold …
codex Jul 17, 2026
f7b2c9e
fix(rust): honor autoKillIdleMinutes + terminal.scrollback, align FRE…
codex Jul 18, 2026
1cb497e
fix(rust): SAFE-01 auth hardening + SAFE-03 WS Origin policy + deflake
codex Jul 18, 2026
4067721
fix(rust): count scrollback cap in UTF-16 chars, not UTF-8 bytes (TER…
codex Jul 18, 2026
953515c
style: cargo fmt on security-gate files (corrects the fmt-clean claim…
codex Jul 18, 2026
05ddcf9
docs(port): codify the standing wave process in the campaign status doc
codex Jul 18, 2026
4a96665
docs(port): codify outcome-oriented double-loop TDD + destructive-tes…
codex Jul 18, 2026
c03299f
feat(sandbox): add containerized test sandbox for destructive/ops suites
codex Jul 18, 2026
85b4f31
fix(sandbox): pre-create volume mount-points and harden selftest agai…
codex Jul 18, 2026
41b0414
feat(server): config.json backup + conservative auto-restore (CFG-03)
codex Jul 18, 2026
d5a526d
feat(rust-server): structured JSONL logging with redaction + rotation…
codex Jul 18, 2026
8fd9233
test(e2e): fix restore-matrix scenario 3 seeding + author SYNC-05 qui…
codex Jul 18, 2026
4e50bb9
docs(port): 233-item checklist reconciliation - 2 checkable / 93 part…
codex Jul 18, 2026
33f7b01
test(e2e): matrix-wiring TERM-02/AGENT-02/TERM-18/SESSION-01/AGENT-08
codex Jul 18, 2026
edf1e93
fix(rust-server): reap owned terminals + hard-timeout shutdown watchd…
codex Jul 18, 2026
96e354e
feat(rust-server): port checkpoint list/restore/metadata routes (AGEN…
codex Jul 18, 2026
94a3ca9
fix(rust-freshagent): codex resume-first crash recovery + capabilitie…
codex Jul 18, 2026
0db588c
feat(rust-server): live sidebar updates via sessions.changed sweep (S…
codex Jul 18, 2026
a8d43d9
fix(rust-terminal): harden kill_all against stale-pid group-kill (SAF…
codex Jul 18, 2026
b068d28
fix(rust-freshagent): unify sessions.changed revision counter with fr…
codex Jul 18, 2026
d4b8630
test(e2e): seed Amplifier session + strengthen SESSION-01 matrix asse…
codex Jul 18, 2026
0855e27
fix(rust-server): broadcast sessions.changed on override writes (SESS…
codex Jul 18, 2026
f766ad6
feat(rust-server): narrow live reload for autoKillIdleMinutes/scrollback
codex Jul 18, 2026
7905f10
fix(rust-server): unify sessions_revision doc, correct e2e citation, …
codex Jul 18, 2026
c3120e4
docs(port): overnight run status snapshot (waves 1-6, gates, staging …
codex Jul 18, 2026
3dae7a9
feat(rust-server): SAFE-02 global authenticated API rate limit
codex Jul 18, 2026
c200a65
feat(diag-01): add WS/terminal/fresh-agent lifecycle tracing events
codex Jul 18, 2026
6b2b527
fix(docs): demote TERM-02/TERM-18 to PARTIAL per strict review + fix …
codex Jul 18, 2026
c62385a
fix(freshell-freshagent): make diag01 tracing capture deterministic u…
codex Jul 18, 2026
348b0ac
docs(port): wave-8 implementer specs (CFG-07/SAFE-08/SAFE-10/DIAG-05)
codex Jul 18, 2026
bb29e9d
feat(session-directory): SESSION-07 userMessages/fullText tier search…
codex Jul 18, 2026
15b4842
feat(rust-server): TERM-09 bounded output queue + SAFE-06 WS frame si…
codex Jul 18, 2026
61dc23e
feat(freshell-ws): SAFE-08 restore diagnostics + SAFE-10 broadcast-la…
codex Jul 18, 2026
a2d23d4
feat(rust-server): CFG-07 persistent instance identity + DIAG-05 debu…
codex Jul 18, 2026
6213950
docs(port): PARTIAL annotations for SESSION-07/TERM-09/SAFE-06 + wave…
codex Jul 18, 2026
59fb319
fix(e2e): send auth token on HARNESS-02 bite's /api/server-info fetch
codex Jul 18, 2026
cd35c24
fix(restore): cherry-pick main 5c56ecc3 (#516) bounded resume, breadc…
codex Jul 18, 2026
a783126
fix(rust-tabs): match legacy recordCount/deviceCount semantics in /ap…
codex Jul 18, 2026
aeccc72
test(e2e): pin double-restart-mid-restore FreshCodex regression
codex Jul 18, 2026
0a4c192
test(restore-matrix): close TERM-02/TERM-18 acceptance gaps
codex Jul 18, 2026
17734b8
docs(port): resolve <sha> placeholder in deviation record
codex Jul 18, 2026
76f5ae3
fix(freshagent): honor codex resume_session_id on create + bound side…
codex Jul 18, 2026
031a7c1
fix(tests): deflake registry inventory tie-break, tab-array perf gate…
codex Jul 18, 2026
1a44e24
fix(freshagent): close dead-thread race, bound negative cache, fix re…
codex Jul 18, 2026
a77828b
style: cargo fmt line-wrap in settings_store test (stray fmt from rat…
codex Jul 18, 2026
c240f30
docs(plan): amplifier terminal restore-across-restart fix spec (rust …
codex Jul 18, 2026
008e8cf
fix(amplifier): restore terminal panes across server restart (rust port)
codex Jul 18, 2026
af5e99a
docs(port): disk-usage analysis - top-5 durable wins ~54GB (cargo pro…
codex Jul 18, 2026
428d819
perf(build): dev-profile debuginfo tuning - deps debug=false, workspa…
codex Jul 18, 2026
f53196a
fix(amplifier-restore): idle short-circuit + spawn_blocking for locat…
codex Jul 18, 2026
eb0eac6
docs(plan): agent-API + MCP parity spec for the Rust Tauri port
danshapiro Jul 19, 2026
5d96e4b
docs(restore): opencode terminal-pane durable session restore spec
danshapiro Jul 19, 2026
bfdb9ea
feat(opencode-restore): terminal-pane durable session restore via SQL…
codex Jul 19, 2026
c10f677
feat(agent-api): Slice 1 REST parity -- shell/browser/editor tabs + t…
codex Jul 19, 2026
82618cc
fix(opencode-parity): load-bearing submit-filter test, known-ids-snap…
codex Jul 19, 2026
587ab98
docs(ops): hardened :3002 launch procedure (distinct prod binary path…
codex Jul 19, 2026
da8d71b
test(safe-05): matrix-prove JSON ping/pong exchange; docs: annotate p…
codex Jul 19, 2026
18ad654
test(mcp-bridge): pin MCP QA lever against ephemeral Rust server (Sli…
codex Jul 19, 2026
7bd43fc
fix(freshagent): dedup freshAgent.create by requestId (codex parity gap)
codex Jul 19, 2026
83206d4
feat(agent-api): Slice 3a REST parity -- rich-mode terminal create (a…
codex Jul 19, 2026
dd88ce0
feat(safe-05): JSON ping/pong reply + hello-timeout enforcement (Rust…
codex Jul 19, 2026
9eaaf12
fix(freshagent): extend freshAgent.create requestId dedup to claude +…
codex Jul 19, 2026
b948511
fix(freshagent): gate codex notification consumer on freshAgent.creat…
codex Jul 19, 2026
f3dc4bf
docs(port): Add TERM-28 checklist item for CLI command PATH resolutio…
codex Jul 19, 2026
b951f31
feat(server): stamp commit/dirty provenance on server-info + fail-clo…
codex Jul 19, 2026
cebb17a
feat(agent-api): Slice 3b-1 REST parity -- pane lifecycle routes (spl…
codex Jul 19, 2026
8e7482e
style: rustfmt line-wraps in claude.rs dedup tests (stray fmt from 9e…
codex Jul 19, 2026
d15923c
fix(persist): guard against overwriting a non-empty layout with empty…
codex Jul 19, 2026
252c01f
docs(port): implementer-ready spec for closing DEV-0006 (codex manage…
codex Jul 19, 2026
6f2899d
feat(agent-api): Slice 3b-2 REST parity -- pane swap/navigate/respawn…
codex Jul 19, 2026
57a8281
fix(freshell-ws): wire claude branches into freshAgent.kill/interrupt…
codex Jul 19, 2026
8d60f7e
test(session-01): close icon + amplifier click-resume clauses, discov…
codex Jul 19, 2026
dddbf26
fix(rust-port): resolve bare CLI commands via $PATH only, never cwd (…
codex Jul 19, 2026
efd72c1
docs(checklist): mark TERM-28 complete with evidence
codex Jul 19, 2026
57104f8
test(mcp-qa-smoke): full mode-matrix MCP QA lever pin (shell/amplifie…
codex Jul 19, 2026
f92869c
docs(rust-transition-status): append MCP QA smoke ops section
codex Jul 19, 2026
bd33de4
feat(freshell-codex): port codex remote-proxy envelope/side-effect ex…
codex Jul 19, 2026
f18554a
test(e2e): add SAFE-01/SAFE-03/CFG-03 browser-matrix specs
codex Jul 19, 2026
ffb99f4
perf(session-index): bound warm-sweep lock so foreground reads never …
codex Jul 19, 2026
c82e59b
test(e2e): close AGENT-02 reload/turn-accumulation and AGENT-14 UI-re…
codex Jul 19, 2026
da428f7
docs(json_scan): correct module doc - the two legacy scanners DO diff…
codex Jul 19, 2026
e85784f
feat(freshell-codex): port codex remote-proxy WS relay server (DEV-00…
codex Jul 19, 2026
8c78e48
fix(rust-server): emit config.fallback on boot fallback; surface pers…
codex Jul 19, 2026
fc1fc3f
test(e2e): close TERM-13 scrollback boundary and SYNC-05 codex-restar…
codex Jul 19, 2026
c76c146
fix(freshell-sessions): preserve cached snapshot on panicked refresh …
codex Jul 19, 2026
304c941
docs(rust-transition-status): record 2026-07-19 batch accounting; clo…
codex Jul 19, 2026
ffccba2
docs(checklist): TERM-28 checked - upstream-filing clause waived by u…
codex Jul 19, 2026
263bae0
fix(client): preserve restore flag across interrupted restore rounds
codex Jul 19, 2026
2c58ef9
fix(client): stateless persist-empty guard v2 with rolling backup
codex Jul 19, 2026
1a5403d
test(client): couple persist-guard literal action-type to removeTab c…
codex Jul 19, 2026
2309aac
docs(oracle): record e2e-discovered intentional divergences as EDEV-0…
codex Jul 19, 2026
cf404fb
docs(rust-transition-status): record src/ deviation growth to 7 files…
codex Jul 19, 2026
ad77b57
fix(server): emit client-log entries into rust-server.jsonl; add tab-…
codex Jul 20, 2026
6b1d063
fix(client): salvage valid persisted tabs instead of nuking whole layout
codex Jul 20, 2026
1cfb507
test(e2e): flip rest-tab-persistence.spec.ts to a hard pass
codex Jul 20, 2026
1845ced
docs(rust-transition-status): record src/ deviation growth to 8 files…
codex Jul 20, 2026
68dc558
docs(plans): state-sync & crash-resilience assessment
codex Jul 20, 2026
9635c08
docs(plans): state-sync cartography — tab strip / panes / sidebar sta…
codex Jul 20, 2026
42dd009
test(e2e): AGENT-08 cumulative-context clause — proven
codex Jul 20, 2026
f5fe5ef
test(e2e): DIAG-03 rotation/redaction PW-RUST spec + checklist update
codex Jul 20, 2026
efe3bb9
test(e2e): SESSION-10 — prove session dedupe/reuse on sidebar click
codex Jul 20, 2026
75019af
test(e2e): TERM-25 wrong-thread Codex recovery spec (product bug pinned)
codex Jul 21, 2026
4afcc1d
docs(plans): reconnection-reconciliation handshake design (Option B k…
codex Jul 22, 2026
80772ff
feat(rust-server): stamp canonical sessionRef on REST resume creates …
codex Jul 22, 2026
3310817
test(e2e): remote-tab-linkage proof for the REST sessionRef synthesis…
codex Jul 22, 2026
daf20a9
fix(rust-server): require ses_ prefix for opencode sessionRef synthes…
codex Jul 22, 2026
8231f98
docs(plans): revise reconciliation-handshake design per council review
codex Jul 22, 2026
6a163bd
feat(freshell-codex): port codex launch-planning decision layer (DEV-…
codex Jul 22, 2026
d5d6e42
feat(codex): flag-gated managed app-server launch wiring, WS create p…
codex Jul 22, 2026
5006e7d
feat(codex): REST path + shutdown wiring + e2e leg for the managed la…
codex Jul 22, 2026
e242147
fix(server): scrub nested-JSON-encoded secrets in client-log re-emission
codex Jul 22, 2026
49e85d3
fix(server): watch the git index so buildDirty restamps on staging-si…
codex Jul 22, 2026
136b9e9
fix(ws): derive codex resume from sessionRef; log real mode/resume at…
codex Jul 23, 2026
6ee90cb
docs: add implementation plan for continuity-safety-trio
codex Jul 23, 2026
70a072c
docs(plans): harden continuity-safety-trio plan per load-bearing vali…
codex Jul 23, 2026
a825a0d
docs(plans): revise continuity-safety-trio plan after independent pla…
codex Jul 23, 2026
ae55afc
docs(plans): revise plan after independent plan review r2 (28 findings)
codex Jul 23, 2026
897718a
docs(plans): revise plan after independent plan review r3 (18 findings)
codex Jul 23, 2026
4440c00
feat(tabs-sync): persist rolling per-(device,client) snapshot generat…
codex Jul 23, 2026
59dcc1e
refactor(tabs-sync): move tabs_persist tests to their own file to res…
codex Jul 23, 2026
f79ffef
feat(tabs-sync): REST read surface for persisted snapshot generations
codex Jul 23, 2026
3b11916
feat(tabs-sync): POST /api/tabs-sync/restore rebuilds a device's tabs…
codex Jul 23, 2026
39529bd
feat(scripts): one-command tab restore operator script (restore-tabs.sh)
codex Jul 23, 2026
c026b33
fix(scripts): restore-tabs --list fails loud with exit 1 on HTTP errors
codex Jul 23, 2026
d7216ec
fix(tabs-sync): restore rerun skips already-restored panes before liv…
codex Jul 23, 2026
078d6b0
test(e2e): snapshot->wipe->restore round-trip proves tabs come back w…
codex Jul 23, 2026
9a13644
refactor(tabs-sync): remove unreachable duplicate already-restored sk…
codex Jul 23, 2026
34cf3c0
test(e2e): fail-closed FRESHELL_E2E_RUST_SERVER_BIN override (+ self-…
codex Jul 23, 2026
2c77af6
test(smoke): real-CLI continuity smoke (<=5 min) pre-deploy gate (npm…
codex Jul 23, 2026
46365eb
fix(e2e): gate continuity-smoke project out of project-less playwrigh…
codex Jul 23, 2026
b427f64
docs: continuity smoke regression-catch evidence (FAIL @136b9e94~1, P…
codex Jul 23, 2026
4ce5bc9
feat(scripts): deploy tab-diff ritual -- capture/verify pane identity…
codex Jul 23, 2026
174e9c9
fix(scripts): deploy-tab-diff remediation prints --components unescap…
codex Jul 23, 2026
a67885e
test(e2e): deploy tab-diff ritual acceptance -- OK across a clean res…
codex Jul 23, 2026
6eb8893
fix(tabs-sync): keep orphan-tmp sweep from reaping the restore marker…
codex Jul 23, 2026
f87c4bf
fix(scripts): restore-tabs surfaces the server's error body (409 gate…
codex Jul 23, 2026
95699c5
fix(tabs-sync): harden restore idempotency and selectors (review r1)
codex Jul 23, 2026
15ccd7e
style(freshell-freshagent): cargo fmt on claude.rs interrupt test ass…
codex Jul 23, 2026
841f348
fix(scripts): add generation-index fence and targeted remediation
codex Jul 23, 2026
af420b6
docs(plans): repair six continuity runbook steps (cluster C)
codex Jul 23, 2026
5fd7234
fix(tabs-sync): close restore persistence and delivery gaps
codex Jul 23, 2026
70f576b
fix(scripts): fence capture on ordered generation metadata
codex Jul 23, 2026
62052ed
docs(plans): repair continuity runbook review gaps
codex Jul 23, 2026
c8969f6
fix(restore): provable delivery, eviction lease, and strict pane vali…
codex Jul 24, 2026
8cb4f8d
fix(scripts): restore-tabs --force passthrough and honest success cri…
codex Jul 24, 2026
57aafa8
fix(tabs-sync): acceptance-time validation, monotonic ordering, and h…
codex Jul 24, 2026
5fed250
fix(scripts,e2e): fail-closed deploy capture and resolved historical …
codex Jul 24, 2026
8b7fdb7
docs(plans): align continuity runbook with HEAD and repo branch policy
codex Jul 24, 2026
e7a4add
fix(tabs-sync): custom CLI modes, cross-client ordering, and bounded …
codex Jul 24, 2026
2e9054b
merge: origin/main into feat/rust-tauri-port (pre-landing sync)
codex Jul 24, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
14 changes: 14 additions & 0 deletions .cargo/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Additive cross-compile config for the freshell Rust port (worktree-local).
#
# This file ONLY configures the Windows GNU cross target so a Windows
# `freshell-server.exe` can be produced from this WSL2 host for the test matrix
# ("Windows server" leg). It does NOT touch the default (host Linux) build: the
# `[target.x86_64-pc-windows-gnu]` table applies solely when that target is
# selected via `--target x86_64-pc-windows-gnu`.
#
# Toolchain: `rustup target add x86_64-pc-windows-gnu` + Debian/Ubuntu
# `mingw-w64` (provides `x86_64-w64-mingw32-gcc`, used both as the linker and as
# the C compiler the `cc` crate picks up for rusqlite's bundled SQLite).
[target.x86_64-pc-windows-gnu]
linker = "x86_64-w64-mingw32-gcc"
ar = "x86_64-w64-mingw32-ar"
21 changes: 21 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -38,3 +38,24 @@ artifacts/perf/
.opencode/
sdk.session.snapshot
.kata.local.toml

# --- Rust/Tauri port (additive; port-scoped so the Node repo is undisturbed) ---
# Cargo build output for the workspace at this worktree root.
/target
**/*.rs.bk
# Note: Cargo.lock IS committed for the workspace (it will host binaries).

# claude sidecar deps (npm install in the sidecar dir; not vendored in git)
crates/freshell-claude-sidecar/node_modules/

# --- vm-bridge session scratch (SECURITY: mandatory, per 2026-07-10 adversarial
# security review). The bridge watchers EXECUTE any *.cmd that appears in an
# inbox. If an inbox file were ever committed, `git pull`/checkout would drop it
# into a watched folder and it would run on any machine with a watcher live --
# i.e. git becomes an RCE channel. These patterns keep every bridge artifact
# (inboxes, outboxes, liveness beacons, quarantine, outbound bundles) out of git.
port/vm-bridge/inbox-*/
port/vm-bridge/outbox-*/
port/vm-bridge/quarantine-*/
port/vm-bridge/alive-*.txt
port/vm-bridge/outbound/
4 changes: 4 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,10 @@ Freshell is a self-hosted, browser-accessible terminal multiplexer and session o
- Use `npm run test:vitest -- ...` for a repo-owned direct Vitest path. Raw `npx vitest` is not a coordinated workflow.
- `test:unit` is the exact default-config `test/unit` workload, `test:integration` is the exact server-config `test/server` workload, and `test:server` stays watch-capable unless you pass an explicit broad `--run`.

## Destructive Test Sandbox
- Process-kill, config-corruption, and restart-storm suites run inside a disposable Docker sandbox, never directly on host: `scripts/sandbox-test.sh "<command>"` (or `npm run test:sandbox -- "<command>"`).
- See `docs/development/test-sandbox.md` for the safety guarantees, the `--corpus` read-only real-data flag, and cache-volume management.

## Kata
- `.kata.toml` is committed project configuration. Always commit it after modifying it.

Expand Down
Loading
Loading