Skip to content

docs(spec): write ADR documenting the fork-and-sync OpenAPI spec ownership model #55

@dougborg

Description

@dougborg

Context

PR #47 implemented the fork-and-sync model for `docs/statuspro-openapi.yaml`: the local file is the source of truth, `scripts/sync_openapi_spec.py` (and the weekly CI workflow in #48) pulls upstream and writes a normalized snapshot to `docs/statuspro-openapi.upstream.yaml` for diff-based reconciliation.

The original acceptance criterion on #29 included writing an ADR documenting the choice. That deliverable wasn't completed when the issue was closed.

Proposed change

Add `docs/adr/NNNN-spec-fork-and-sync-ownership.md` (use the next available ADR number) following the project's existing ADR template. Should cover:

  • Context: spec was originally synced from upstream, no clean way to evolve locally without drift.
  • Decision: fork-and-sync. Local spec is source of truth; weekly CI pulls upstream into a separate snapshot.
  • Consequences:
  • Alternatives considered: overlay (separate `upstream` + `overlay` files merged at regen), subordinate (file changes upstream first). Both rejected.

Acceptance

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/infraRepo config, CI, labels, project setuparea/specTouches docs/statuspro-openapi.yaml

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions