Skip to content

WS1 — The pack interface: one manifest per domain, score as a field of a pack #369

Description

@aarontrowbridge

WS1 — The pack interface: one manifest per domain, score as a field of a pack

Important

Problem — Domain knowledge today loads through the score machinery alone: a score's stages compile into the runtime instructions, and there is no declared unit bundling skills + templates + corrector + catalog + eval corpus. The autoresearch reframe (parent #368) needs a single harness-agnostic seam that every domain pack implements.

Approach — Introduce the pack manifest as the unit of generality, owned by the schema package with one validator consumed by the extension, the CLI, and CI. The loader/compiler treats the onboarding score as one field of a pack. No physics content moves in this slice — the pulse repertoire is re-expressed as a pack manifest, byte-identical in output.

Scope — in: manifest schema, validator, loader refactor, golden compiled-output parity · out: the instruction rewrite (WS2), new packs (WS3), runtime pack switching (follow-up).

Acceptance Criteria

  • A pack manifest schema exists (skills, template registry, corrector with integrity manifest, catalog schema, onboarding score, eval corpus pointer) with one shared validator
  • The extension loads the existing pulse-designer repertoire through a pack manifest with byte-identical compiled output against today's golden
  • A second pack can be registered by manifest alone — no loader code change
  • Boot-time selection behaves exactly as today for the default pack

Testing Decisions

Extend the existing score-loader unit tests with manifest fixtures; add a schema round-trip in the schema package's suite; add a golden compiled-output parity test (new loader vs current output). This is the TDD spec — the parity test goes red first.

Key Decisions

  • A score is one field of a pack, not a peer of it.
  • The manifest names the corrector and its integrity manifest explicitly — the threshold condition is a load-time property, not a convention.
  • Boot-time selection stays in v1; router-time recompilation is explicitly deferred.

Constraints & Invariants

  • No file outside the loader/compiler seam changes behavior; the corrector paths a manifest names must live outside agent-editable trees.

Prior Art

  • The score loader/compiler and entitlement filter (extension session-prep); the schema package's single-validator pattern.

Source

Part of #368 · design-of-record: vault spec note spec-20260813-162300-autoresearch-studio

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

    afkImplementable without human interaction

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions