Skip to content

Sprint 3071 Task A — RFC 0001 baseline + @domscribe/core schema (v3) + @domscribe/verify scaffold #51

@Narrator

Description

@Narrator

Sprint 3071 — Task A (Theory of Constraints sequencing — owns the gating measurement + the foundation)

Goal

Land the foundation for verify_after_edit: gate the sprint thesis on the RFC 0001 baseline metric, ship the additive @domscribe/core schema, and scaffold the new @domscribe/verify package so Task B (runtime + relay) can integrate against a real contract.

Refs: RFC 0002, RFC 0001, PRs #49 / #50.

Scope

A1. Publish RFC 0001 baseline (gating measurement)

Run the existing visual-snapshot harness in @domscribe/test-fixtures against the merged Tailwind + styled-components fixture apps. Record the one-shot styling completion rate over ≥10 annotations. Publish under docs/sprints/3071-rfc-0001-baseline.md with raw numbers, methodology, and one of two positioning verdicts:

  • ≥85% — verify is positioned as a trust layer; the long-tail lift is small and the build is hard to justify against deferred work. Post *[st-staff-swe]* to $SLACK_ALERT_CHANNEL with the number — Task B continues either way (the package has CI value), but flag that relay registration may want to be deferred.
  • <85% — verify is a self-correction layer; full build proceeds as planned.

A2. @domscribe/core schema additions (additive, schema bump 2 → 3)

  • Add VerifyResultSchema per RFC 0002 §Decision: verdict ∈ "match" | "partial" | "no_change" | "regression", componentStylesDelta, computedStyleDelta, boundingRectDelta, screenshotRef.
  • Add AnnotationContextSchema.verifyHistory: VerifyResult[] as optional (older clients silently ignore — additive only).
  • Bump ANNOTATION_SCHEMA_VERSION 2 → 3.
  • Export from packages/domscribe-core/index.ts.

A3. Scaffold @domscribe/verify

  • New package under packages/domscribe-verify/, depends only on @domscribe/core.
  • Lift the visual-snapshot comparator verbatim from packages/domscribe-test-fixtures/ harness.
  • Update @domscribe/test-fixtures to import the comparator from @domscribe/verify (no behavior change — first re-consumer).
  • Pure-TS, no DOM dependencies; consumable from both Node (CI) and the relay runtime.

Acceptance

  • docs/sprints/3071-rfc-0001-baseline.md committed with the measured number, methodology, and positioning verdict
  • tsc and npm test green across the monorepo
  • @domscribe/test-fixtures styling tests still pass via the lifted comparator
  • ANNOTATION_SCHEMA_VERSION === 3; the new schemas exported, typed, and tree-shakeable
  • PR description links RFC 0002 and the baseline doc
  • Slack alert posted iff baseline ≥85%

Out of scope

  • Runtime ScreenshotCapturer (Task B)
  • MCP tool registration on relay (Task B)
  • Overlay sidebar rendering of VerifyResult (P1 follow-up, deferred to next sprint)

Effort estimate

~30 hours (≤90% of one staff-swe sprint capacity).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestpriority:P1High — significant user impact or adoption blockertech-debtInternal refactor / architecture work driven by a strategic bet, not user-reported

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions