Skip to content

Artifact Contracts

Produced artifacts are part of the package contract whenever another package, operator, or replay workflow depends on them.

That means artifacts are not just outputs. They are promises about names, layout, or semantics that downstream readers may already rely on. This page should make those promises visible.

Treat the interfaces pages for bijux-canon-ingest as the bridge between implementation detail and caller expectation. They should show what the package is prepared to defend before a dependency forms.

Visual Summary

graph TD
    A[Artifact Contracts] --> B[Ingest run output]
    B --> C[Artifact shape and metadata]
    C --> D[Hash and provenance fields]
    D --> E[Consumer expectations]
    E --> F[Auditable artifact contract]

Current Artifacts

  • normalized document trees
  • chunk collections and retrieval-ready records
  • diagnostic output produced during ingest workflows

Concrete Anchors

  • CLI entrypoint in src/bijux_canon_ingest/interfaces/cli/entrypoint.py
  • HTTP boundaries under src/bijux_canon_ingest/interfaces
  • configuration modules under src/bijux_canon_ingest/config
  • apis/bijux-canon-ingest/v1/schema.yaml

Use This Page When

  • you need the public command, API, import, schema, or artifact surface
  • you are checking whether a caller can safely rely on a given entrypoint or shape
  • you want the contract-facing side of the package before building on it

Decision Rule

Use Artifact Contracts to decide whether a caller-facing surface is explicit enough to depend on. If the surface cannot be tied back to concrete code, schemas, artifacts, examples, and tests, treat it as unstable until that evidence is visible.

What This Page Answers

  • which public or operator-facing surfaces bijux-canon-ingest is really asking readers to trust
  • which schemas, artifacts, imports, or commands behave like contracts
  • what compatibility pressure a change to this surface would create

Reviewer Lens

  • compare commands, schemas, imports, and artifacts against the documented surface one by one
  • check whether a seemingly local change actually needs compatibility review
  • confirm that examples still point to real entrypoints and not to stale habits

Honesty Boundary

This page can identify the intended public surfaces of bijux-canon-ingest, but real compatibility depends on code, schemas, artifacts, examples, and tests staying aligned. If those disagree, the prose is wrong or incomplete.

Next Checks

  • move to operations when the caller-facing question becomes procedural or environmental
  • move to quality when compatibility or evidence of protection becomes the real issue
  • move back to architecture when a public-surface question reveals a deeper structural drift

Purpose

This page marks which outputs need stable review when behavior changes.

Stability

Keep it aligned with the package outputs that are actually produced and consumed.