Skip to content

kernel: AnnotationService — schema-validated writes (hard reject: unknown class, disallowed geometry, missing required attribute), provenance, UUID identity #7

Description

@JArmandoAnaya

Context

Severity policy (vision doc, decision F): schema violations are a hard reject at write
time, in the kernel — never delegated to the UI's good faith.

Body updated 2026-07-27 to match what #6/#8/#9 actually shipped — see the reconciliation
comment below for the diff against the original.

Deliverables

Out of scope (moved by #9)

Progress is marked explicitly via JobService.mark_progress, never recomputed by this
service. Open decision for this task's plan: whether mark_progress(annotated) should
start requiring ≥1 stored annotation on the asset — decide and record it, either way.

Acceptance criteria

  • Each violation class has a dedicated error type + test
  • Writing to a job whose batch is not in_annotation is rejected (BatchNotInAnnotation)
  • Update/delete by UUID; unknown UUID is a clean domain error
  • Migration 5 idempotent; fresh-vs-migrated schema equality test still green

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

    kernelvisionset.kernel — domain, ports, adapters, servicesm1M1 — Living kernel (0.0.1-alpha.1)

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions