Skip to content

adapters: verify append-only for claude-code and codex, then enable merge #25

Description

@fosskar

Both file-backed adapters ship with append_only() = false, so conflicts fall back to newest-wins instead of the lossless line-union merge (DECISIONS #8). The adapters landed in PR #21; real-file append-only verification stalled on unauthenticated CLIs (see the closing comments on #6 and #7 for what was proven and what remains).

Remaining, per adapter:

  • claude-code (adapters: Claude Code session sync #6): drive an authed session through real conversational growth, /compact, and a rewind; prefix-diff the transcript across each (cmp -n). Criteria: docs/claude-code-format-notes.md. Partial proof exists (resume appends, layout/identity confirmed).
  • codex (adapters: Codex session sync #7): could not be exercised at all (CLI 401, failed runs write no rollout file). Full check from scratch: docs/codex-format-notes.md.

When a file only ever grows: flip append_only() to true for that adapter (one line each, crates/ssync-adapters/src/{claude_code,codex}.rs) and drop the gating comments. A wrong true scrambles content on conflict, so no flip without the diff evidence.

Metadata

Metadata

Assignees

No one assigned

    Labels

    adapterNew or changed agent adapterverificationManual or e2e check, not a code change

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions