Skip to content

v0.1.0-alpha.80

Latest

Choose a tag to compare

@fosenai fosenai released this 10 Jun 01:10

cord 0.1.0-alpha.80 — lifecycle 3 痛点 + Caveat 37 production proof advance

Lifecycle 3 痛点 (all SHIPPED + tested)

  • Subprocess kill 收敛 (Caveat 28 + 31 + 35): setsid pre_exec + ChildHandle pgid + killpg→grandchild + SIGKILL escalation [29s, 45s) + R9 scope guard; 4 e2e tests PASS
  • Daemon orphan port (Caveat 37 cause): atomic listener close on SIGTERM + launchd ExitTimeOut=60 + manual_recovery_hint; 2 e2e tests PASS
  • cargo target lifecycle (Caveat 39): cord-cli ship step 12 post_ship_cleanup w/ 3 safety guards (cargo lock check + active process check + path scope check)

Caveat 37 production proof PARTIAL PASS

  • Mac alpha.79 → alpha.80 auto-upgrade RAN end-to-end on real Mac (PIN v2 + pending_upgrade_target written, SIGTERM old daemon, NEW daemon boot path verify_pending_restart_on_boot RAN, peerId preserved)
  • 3-way invariant verify_failed because launchctl print parser assumed alpha.76/.77 design format; real macOS emits arguments = { (not program arguments) + program = <path> one-liner
  • Caveat 41 root-cause + parser fix in 1f07900; alpha.81 will be first sprint with natural ship gate #1 PASS
  • Boundary override used per design §1.5 Caveat 37c escape (one more cycle)

Caveat 38 codesign

  • install.js fail-loud fallback + /usr/bin/codesign absolute path + which fallback
  • Auto-update flow on macOS still needs manual codesign post-upgrade (npm install -g bypasses install.js) — post-install hook trigger investigation alpha.81

3 machines alpha.80 (peerId preserved)

  • Mac PID 4490 / Fosen PID 2414596 / HK PID 517581
  • Cross-NAT: Mac → Fosen 1209ms via HK relay / Fosen → Mac 323ms

Install

npm install -g @fosenai/cord

Carry to alpha.81

  • Caveat 41 production proof retry with parser fix → natural ship gate #1 PASS (no override)
  • Caveat 43 alpha54 oversize fetch_reference decryption
  • Caveat 42 alpha47/alpha39 pre-existing tests
  • 4 remaining lifecycle axes (PeerStore reconnect / Cap registration / Session lifecycle / Identity rotation)