Skip to content

bug(provider-switch): publish complete native transcript artifacts atomically #928

Description

@Juliusolsson05

Expected behavior

Use provider-aware staging and identity-checked no-clobber publication with explicit recovery receipts. Preserve original source; never delete a target adopted by another process. OpenCode import uncertainty needs its native API contract.

Source finding and impact

Claude and Codex target writers call writeFile on final discoverable native filenames. Full in-memory projection validation does not prevent an interruption or partial write from leaving an incomplete target under that name.

Evidence and environment

Inspected source at 552914f5610518458f944fa1bdaf63f243685bd1 on 2026-09-12 in the local macOS workspace. This finding has not yet been reproduced through a running application or the package integration suite.

Regression and acceptance

Inject partial writes, failure before publish, publish-success/receipt-failure and destination collision in temporary provider roots. Discovery must not see an incomplete final artifact; recovery must recognize completed publication without duplicate creation.

The resolving PR must protect the observable contract and document any remaining uncertainty. This planning pass makes no runtime changes.

Refs #918; planning finding F15.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions