Skip to content

L05-06 — Qualify restartable batch publication #46

Open

Description

@mberrys

Outcome

Demonstrate idempotent resume, atomic output, per-job provenance, and failure recovery across large batches.

Parent and boundary

Parent: #6. Owner: PdfTool. This issue owns one bounded slice of Production Orchestrator; consume accepted upstream contracts and keep PDF/verdict/publication authority with Core.

Acceptance

  • Restart never duplicates publication or misattributes output; terminal failures remain inspectable.
  • Failure case: Interrupted writes cannot leave a plausible success artifact.

Required proof

Kill/restart batch suite with exact output hashes and resource metrics. Record the exact source SHA, test command or hosted run, fixture/artifact identity, and any skipped or unavailable lane. Run the repository's mapped proof and check-change gate for a PR.

Handoff

Record changed files, observed result, remaining risk, and a 1–3 sentence anti-slop review. Completion means acceptance evidence, not merely a merged implementation.

Sources

Approved master roadmap.

Activity

  1. mberrys commented on Oct 7, 2026

    @mberrys
    ContributorAuthor

    Related open question from docs/adr/adr-004-pagemaster-batch-manifest.md:63: a process killed between the producer write and QSaveFile::commit() leaves <finalPath>.XXXXXX staging residue (measured as 0-byte files). The ADR says the residue never lands at a final path but leaves open what cleans it up. The kill/restart suite here seems the natural place to decide and prove that, e.g. resume sweeps residue for outputs it owns, or the residue is documented as inert.

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

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions