Skip to content

feat(data-analysis): create immutable deterministic Data Briefs #144

Description

@1012839419a-alt

Parent contract: #140
Program: #130
Depends on: #143 acceptance gate

Dependency

Start only after slice B (#143) supplies governed records and evidence refs.

Owned paths

  • backend/schemas/data_artifact.py
  • backend/models/data_artifact.py
  • backend/migrations/versions/m0n1o2p3q4r5_add_data_brief_artifacts.py
  • backend/plugins/data_analysis/manifest.py
  • backend/plugins/data_analysis/service.py
  • tests/unit/test_data_analysis_plugin.py

Required behavior

Implement analysis.brief.create as the reference-enabled but kernel-optional Data Analysis Plugin. Accept only the approved deterministic finite operations: schema/profile; completeness/duplicate/type quality; extraction/extractive summary; grouping/comparison/stable sorting; time trends; simple rule anomalies. Persist immutable Data Brief Artifact, Artifact Manifest and Claim Ledger with full Project/Run/Observation/Record/version/hash lineage. Unsupported claims are not findings.

Acceptance gate

Canonical input plus pinned operation/plugin versions reproduces the same Artifact hash. Missing plugin returns capability_unavailable without fallback. Tests cover idempotent replay, quality operations, bounded outputs, unsupported-claim exclusion, redaction, cross-Project denial and immutable hash integrity before slice D starts.

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions