Skip to content

Studio · task 0.9a — provenance records (ADR-006) #80

Description

@aliakherati

Phase 0, task 0.9a — the first piece of the vertical slice.

0.9 is not one PR. The exit criteria need FastAPI + SQLAlchemy/Alembic on SQLite, a CLI, React/Vite with SSE, and one figure from RunSummary. Split:

  • 0.9a — provenance records (this issue). Nothing currently implements ADR-006, and the exit criteria say "produces a stored result with full provenance".
  • 0.9b — persistence (SQLAlchemy models + the first Alembic migration on SQLite).
  • 0.9c — the CLI (plume-studio run / sweep --plan).
  • 0.9d — the API (FastAPI, the Phase-0 endpoint subset, SSE progress).
  • 0.9e — the minimal web UI (React + Vite) and one deterministic figure from RunSummary.

Scope of 0.9a

Per ADR-006, every run records at submit time, immutably:

  • config_hash — already exists (schema 0.2.0).
  • App versionstudio.__version__ plus the SANDBOX commit SHA.
  • Model version — the SANDBOX SHA plus the three submodule SHAs (tuvx-jax, stratchem-jax, tomas-jax), which together pin the model exactly. Dirty working trees are recorded as such and flag the run.
  • Dataset identifiers and checksums for every input dataset consulted (none in Phase 0 — the field exists and stays empty rather than being omitted).
  • The resolved, post-derivation parameter set — what the model actually received, not the user's inputs.

Constraints

  • This is the one place Studio shells out to git. "Not a git checkout" must raise, never record an empty SHA (ADR-005).
  • Written before execution begins, so a run that dies still has its provenance.
  • The record is never mutated.
  • The archived 810-run ensemble has no provenance record and cannot be retrofitted one; RunSummary already flags that with NO_PROVENANCE_RECORD.

Base branch: studio/dev.

Activity

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

    studioPlume Studio (studio/, docs/studio/)

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions