A collaborative coding-agent orchestrator for atproto radl.app

add private mode with iroh #107

Closed disnetdev.com
targeting main from radial/impl-1ed41c71b806
Closed opened by and assigned to disnetdev.com
targeting main from radial/impl-1ed41c71b806

Closed both backup/restore review findings.

  • Hardened private archive and space.json writes with unpredictable same-directory temporary files, exclusive creation, explicit 0600 permissions, atomic rename, and failure cleanup. A regression test proves the former predictable .tmp symlink cannot redirect cleartext.
  • Added shared validation for durable wants and applied it while decoding archive headers, before import opens or mutates a replica. Wants now require an admitted-envelope-compatible DID, Radial collection, rkey, and canonical private record CID, and archives are capped at 1,000 wants.
  • Added malformed, oversized, invalid-CID, invalid-collection, and over-count archive coverage while retaining valid want-list backup/restore behavior.

Checks: pnpm lint; pnpm test (core 288, atproto 32, ingest 36, sidecar 88, daemon 559, UI node 61, UI Vitest 570; all passed).

Remaining risks: none identified within this change's scope.

Radial artifact

Commits 0