Files
photoanalyzer/delivery_backlog/README.md

53 lines
2.5 KiB
Markdown

# Integrated Photo Pipeline Delivery Backlog
This backlog decomposes the phases in
[`INTEGRATED_PIPELINE_CONCEPT.md`](../INTEGRATED_PIPELINE_CONCEPT.md) into seven
epics and small, independently verifiable user stories, plus one delivery-format
epic (E08) that packages the released application as a deployable container.
## Numbering and file naming
- Epics: `E01` through `E07`, matching concept Phases A through G; `E08` has no
concept phase and must not change product scope.
- Stories: `US<epic>-<sequence>`, for example `US03-02`.
- Epic files: `E01-<slug>.md`.
- Story files: `stories/US01-01-<slug>.md`.
- IDs are permanent. Renaming or reordering a story must not reuse its ID.
## Delivery rules
- Implement epics in numeric order unless an epic explicitly permits overlap.
- A story should produce one coherent, reviewable outcome and be small enough for one
focused implementation change.
- Donor-first migration is mandatory: characterize and extract useful CLI behavior
before replacing it. Record provenance in the donor ledger.
- Every implementation story includes automated unit, property, golden, contract, or
integration tests appropriate to its risk.
- Every epic ends with a dedicated automated end-to-end story that exercises the real
browser, API/SSE, worker, isolated database, and temporary fixture library.
- A story is complete only when all acceptance criteria and automated tests pass with
no unexplained skips. An epic is complete only when its cumulative regression suite
and end-to-end gate pass.
## Epics
1. [E01 — Shared identity and inventory](E01-shared-identity-inventory.md)
2. [E02 — Unified workflow shell](E02-unified-workflow-shell.md)
3. [E03 — Album proposals](E03-album-proposals.md)
4. [E04 — Guarded renaming](E04-guarded-renaming.md)
5. [E05 — Immich upload](E05-immich-upload.md)
6. [E06 — Archive lifecycle](E06-archive-lifecycle.md)
7. [E07 — Hardening and release](E07-hardening-release.md)
8. [E08 — Container deployment](E08-container-deployment.md)
## Shared definition of done
- Acceptance criteria are demonstrably satisfied.
- Public API/schema changes are documented and contract-tested.
- Database and filesystem mutations are restart-safe and idempotent where required.
- Paths are constrained by the shared library policy.
- No credentials or private image data appear in logs or browser responses.
- Relevant donor-ledger rows and story-to-test traceability entries are current.
- Automated tests pass locally and in CI; changed user behavior has an automated
acceptance test.