Implement deferred combat modeling from authored descriptions #8

Open
opened 2026-08-26 21:48:27 -04:00 by jb · 7 comments
Owner

Implements the approved specification in #1.

Scope

Deliver the six coordinated implementation phases defined in the final specification: authored-description and lifecycle contracts, immutable model revision persistence, runtime and Public Database cutover, proof-based migration, the Modeling Session skill, corrective revision support, snapshot version 6, documentation, and rollout verification.

Issue #5's selected Variant A is the public presentation reference. The prototype branch is precedent only and must not be merged directly.

First slice

Phase 1 establishes the pure contracts and focused tests:

  • authored owner variants, slots, and exact materialization;
  • canonical serialization and SHA-256 source fingerprints;
  • lifecycle classification for absent, stale, and current models;
  • stable Mechanic Program hashes;
  • deterministic public behavior rendering with explicit rejection of unrenderable programs.

Delivery constraints

  • Develop in an isolated feature worktree.
  • Preserve the atomic cutover and no-dual-write/no-compatibility-reader decisions from #1.
  • Do not deploy any partial phase to production.
  • Preserve embedded databases and run the required backup/preflight process before destructive maintenance.
  • Add focused tests for changed behavior and complete independent review.
  • Run npm run check, npm run build, and npm test in the specified order before release.

Acceptance

The implementation and rollout satisfy the success criteria and verification matrix in #1 comment 153.

Implements the approved specification in #1. ## Scope Deliver the six coordinated implementation phases defined in the final specification: authored-description and lifecycle contracts, immutable model revision persistence, runtime and Public Database cutover, proof-based migration, the Modeling Session skill, corrective revision support, snapshot version 6, documentation, and rollout verification. Issue #5's selected Variant A is the public presentation reference. The prototype branch is precedent only and must not be merged directly. ## First slice Phase 1 establishes the pure contracts and focused tests: - authored owner variants, slots, and exact materialization; - canonical serialization and SHA-256 source fingerprints; - lifecycle classification for absent, stale, and current models; - stable Mechanic Program hashes; - deterministic public behavior rendering with explicit rejection of unrenderable programs. ## Delivery constraints - Develop in an isolated feature worktree. - Preserve the atomic cutover and no-dual-write/no-compatibility-reader decisions from #1. - Do not deploy any partial phase to production. - Preserve embedded databases and run the required backup/preflight process before destructive maintenance. - Add focused tests for changed behavior and complete independent review. - Run `npm run check`, `npm run build`, and `npm test` in the specified order before release. ## Acceptance The implementation and rollout satisfy the success criteria and verification matrix in #1 comment 153.
Author
Owner

Implementation started on branch in an isolated worktree. The active slice is Phase 1 only: pure authored-description, lifecycle/hash, and deterministic public-renderer contracts with focused tests. Production readers, persistence, schema, and the issue #5 prototype remain unchanged until the coordinated cutover phases.

Implementation started on branch in an isolated worktree. The active slice is Phase 1 only: pure authored-description, lifecycle/hash, and deterministic public-renderer contracts with focused tests. Production readers, persistence, schema, and the issue #5 prototype remain unchanged until the coordinated cutover phases.
Author
Owner

Correction to the preceding status comment: implementation started on branch feature/issue-8-phase-1-contracts in an isolated .worktrees/ worktree. The scope statement in that comment remains accurate.

Correction to the preceding status comment: implementation started on branch `feature/issue-8-phase-1-contracts` in an isolated `.worktrees/` worktree. The scope statement in that comment remains accurate.
Author
Owner

Phase 1 is implemented and pushed on feature/issue-8-phase-1-contracts at commit 98f7f51. The slice adds strict authored-description contracts for all four owner families, versioned SHA-256 source and Mechanic Program hashing, fail-closed absent/stale/current lifecycle classification, and deterministic public behavior rendering. It also corrects zero/fractional clause-weight handling for reload and maximum-mode outcomes. Independent review completed with all blocker, high, and medium findings resolved. Final verification passed in order: npm run check, npm run build, then npm test (63 files, 580 tests). Production persistence, readers, schema, and UI remain unchanged for the coordinated later cutover.

Phase 1 is implemented and pushed on `feature/issue-8-phase-1-contracts` at commit `98f7f51`. The slice adds strict authored-description contracts for all four owner families, versioned SHA-256 source and Mechanic Program hashing, fail-closed absent/stale/current lifecycle classification, and deterministic public behavior rendering. It also corrects zero/fractional clause-weight handling for reload and maximum-mode outcomes. Independent review completed with all blocker, high, and medium findings resolved. Final verification passed in order: `npm run check`, `npm run build`, then `npm test` (63 files, 580 tests). Production persistence, readers, schema, and UI remain unchanged for the coordinated later cutover.
Author
Owner

Correction: the final complete test result was 63 files and 579 tests passed.

Correction: the final complete test result was 63 files and 579 tests passed.
Author
Owner

Local development-server restart is the only remaining Phase 1 handoff check. The tracked npm run dev task exited because the Infisical CLI has no valid login session and its browser/credential login flow cannot run noninteractively. No credentials were requested or handled. After an interactive infisical login, restart and HTTP verification can be completed.

Local development-server restart is the only remaining Phase 1 handoff check. The tracked `npm run dev` task exited because the Infisical CLI has no valid login session and its browser/credential login flow cannot run noninteractively. No credentials were requested or handled. After an interactive `infisical login`, restart and HTTP verification can be completed.
Author
Owner

Phase 2 is implemented and pushed in commit 7e392a1 on feature/issue-8-phase-1-contracts.

Completed:

  • Persisted exact authored descriptions, immutable model revisions, explicit selections, and fail-closed public projections for Talents, OS Protocol Talents, Skill Chip Talents, and Specialization rank effects.
  • Routed direct saves and Data Oversight approvals through atomic owner transactions with audit and rollback-safe media handling.
  • Added numeric-only authored token values and the shared token-matrix editor.
  • Added aggregate optimistic concurrency across owner fields, relationships, attachment structure, and revision selections.
  • Preserved contributor rationale through every proposal-table rebuild and rejected invalid/cyclic pending dependencies atomically.
  • Hardened Data Oversight previews, correction boundaries, malformed payload handling, and proposal replay.

Validation:

  • npm run check
  • npm run build
  • npm test (75 files, 765 tests)
  • Headless Browser Harness validation of populated owner tokens and controlled stale-edit rejection
  • Independent release gate: PASS

The tracked development server is running at http://localhost:5173 for review. Existing-data authored-source backfill remains coordinated with Phase 4, and export/import manifest work remains Phase 6.

Phase 2 is implemented and pushed in commit `7e392a1` on `feature/issue-8-phase-1-contracts`. Completed: - Persisted exact authored descriptions, immutable model revisions, explicit selections, and fail-closed public projections for Talents, OS Protocol Talents, Skill Chip Talents, and Specialization rank effects. - Routed direct saves and Data Oversight approvals through atomic owner transactions with audit and rollback-safe media handling. - Added numeric-only authored token values and the shared token-matrix editor. - Added aggregate optimistic concurrency across owner fields, relationships, attachment structure, and revision selections. - Preserved contributor rationale through every proposal-table rebuild and rejected invalid/cyclic pending dependencies atomically. - Hardened Data Oversight previews, correction boundaries, malformed payload handling, and proposal replay. Validation: - `npm run check` - `npm run build` - `npm test` (75 files, 765 tests) - Headless Browser Harness validation of populated owner tokens and controlled stale-edit rejection - Independent release gate: PASS The tracked development server is running at `http://localhost:5173` for review. Existing-data authored-source backfill remains coordinated with Phase 4, and export/import manifest work remains Phase 6.
Author
Owner

Phase 3 is complete and pushed in 8991682 (feat: consume selected mechanic revisions).

Implemented:

  • Builder and shared Builds consume only explicitly selected, current, validated mechanic revisions for Talent, OS Protocol Talent, Skill Chip Talent, and Specialization rank-effect attachments.
  • Runtime selection fails closed for stale, corrupt, unsupported, captured_only, unresolved-assumption, structurally incompatible, or cross-Specialization data.
  • Skill Chip programs interpolate complete matching numeric structures, including expression values and pool expiry, with exact endpoints and fail-closed mismatches.
  • Public Database cards, quick views, category loaders, counts, pagination, filters, and global search use validated public projections. This includes Exotic Talent Tier-I behavior, active linked-Talent filtering, independent Specialization attachment groups, and corrupt-cache exclusion.
  • Builder/shared and public projection readers use bounded bulk snapshots to avoid per-owner query fan-out.
  • Public shared-Build payloads exclude executable Mechanic Programs and revision internals.
  • Approved issue #5 Variant A status and behavior hierarchy is integrated for desktop and mobile, including focus-trap, keyed-card-state, and explicit modeled/not-modeled behavior.

Validation:

  • npm run check
  • npm run build
  • npm test: 83 files, 813 tests
  • Browser Harness: Phase 3-scoped PASS at desktop and mobile
  • Independent complete-diff release gate: PASS
  • Development server restarted and /api/health returns HTTP 200

Known local findings confirmed outside Phase 3 scope:

  • One local Talent name is already malformed in its proposal payload, persisted row, audit snapshot, and ISAC output.
  • Its icon metadata points to a missing local media file.
  • /agents/null is a pre-existing null-slug redirect defect in unchanged Agent-route code.

Issue remains open for Phases 4–6.

Phase 3 is complete and pushed in `8991682` (`feat: consume selected mechanic revisions`). Implemented: - Builder and shared Builds consume only explicitly selected, current, validated mechanic revisions for Talent, OS Protocol Talent, Skill Chip Talent, and Specialization rank-effect attachments. - Runtime selection fails closed for stale, corrupt, unsupported, `captured_only`, unresolved-assumption, structurally incompatible, or cross-Specialization data. - Skill Chip programs interpolate complete matching numeric structures, including expression values and pool expiry, with exact endpoints and fail-closed mismatches. - Public Database cards, quick views, category loaders, counts, pagination, filters, and global search use validated public projections. This includes Exotic Talent Tier-I behavior, active linked-Talent filtering, independent Specialization attachment groups, and corrupt-cache exclusion. - Builder/shared and public projection readers use bounded bulk snapshots to avoid per-owner query fan-out. - Public shared-Build payloads exclude executable Mechanic Programs and revision internals. - Approved issue #5 Variant A status and behavior hierarchy is integrated for desktop and mobile, including focus-trap, keyed-card-state, and explicit modeled/not-modeled behavior. Validation: - `npm run check` - `npm run build` - `npm test`: 83 files, 813 tests - Browser Harness: Phase 3-scoped PASS at desktop and mobile - Independent complete-diff release gate: PASS - Development server restarted and `/api/health` returns HTTP 200 Known local findings confirmed outside Phase 3 scope: - One local Talent name is already malformed in its proposal payload, persisted row, audit snapshot, and ISAC output. - Its icon metadata points to a missing local media file. - `/agents/null` is a pre-existing null-slug redirect defect in unchanged Agent-route code. Issue remains open for Phases 4–6.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: jb/shd.build#8