Skip to content

Implement Atomic Pointer Activation + Success Lifecycle #31

@BLMgithub

Description

@BLMgithub

Implement atomic publish activation and success state transition.

Scope

  • Update metadata.json → status = SUCCESS, completed_at set, published = true
  • Write temporary pointer file (_latest.tmp)
  • Payload:
    • run_id
    • version = v{run_id}
    • published_at (UTC)
  • Atomically swap using os.replace_latest.json

Execution order requirement:

  1. Integrity gate passes
  2. Version copy completes
  3. metadata.json updated to SUCCESS
  4. Atomic pointer swap

Acceptance Criteria:

  • Pointer always references fully copied version
  • No partial pointer writes possible
  • Pointer never updated if metadata update fails
  • Dashboard reads only _latest.json

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

Status
Completed

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions