Story: Entity classification and drift baseline: ores.synthetic

Table of Contents

This page documents a story in Sprint 25. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

1. Goal

Bring ores.synthetic to the state the compass-codegen-fix-drift skill defines: every codegen-eligible entity bound to a profile or recorded as a genuine no-match, zero-diff regeneration verified, and any real gap the check surfaces fixed rather than skipped. Once trusted, synthetic joins the known-drift-free registry that the drift gate checks.

2. Status

Field Value
State DONE
Parent sprint Sprint 25
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-09-08

3. Acceptance

  • Every ores.synthetic entity is bound to a matching Variability Profile, or recorded as a genuine no-match with a documented reason.
  • Every rebound entity is regenerated and diffed against its pre-rebind checked-in output; zero diff is the pass condition, and any non-zero diff is fixed, not worked around.
  • Full local build clean, schema drift current per compass db status, full ctest suite green after regeneration.
  • synthetic joins the KNOWN_DRIFT_FREE registry in check_component_drift.py (skill step 8), and the compass-pr-raise skill's local codegen-drift check runs --all over the registry, so future PRs touching ores.synthetic fail on any regeneration drift.
  • Done shape (2026-09-07 program decision): the bind task closes at the drift gate. The story closes only after the post-merge live system test: recreate the database, provision a tenant, and exercise this component's flows. Defects the test surfaces get follow-up tasks on this story. The compute/iam binds set this shape: their live system test caught a service-grant defect ctest cannot see.

4. Tasks

Task State Start End Description
Bind ores.synthetic entities to profiles; verify zero-diff regen DONE 2026-09-07 2026-09-08 Implement profile binding for the synthetic catalogue entry, rebind every matching entity, regenerate, and confirm byte-identical output, following the compass-codegen-fix-drift skill.

5. Decisions

6. Out of scope

7. Result

Status at close: Story closed: the post-merge live system test passed and the tpl/ppv table-display defect it caught is fixed.

Emacs 29.3 (Org mode 9.6.15)