Narrow Phase 6R-A to puzzle catalog contract

This commit is contained in:
axiomlogicnexus 2026-05-20 21:29:48 +02:00
parent a0b829e065
commit 9a75f0103e
2 changed files with 108 additions and 20 deletions

View file

@ -72,27 +72,94 @@ with the later adjacent retained rows still ordered behind it:
## Required result
The first actual `6R-A` widening packet should:
The source-backed control pass for this packet is now complete.
- use source-backed repo authority, not README-level queue posture
The first actual `6R-A` implementation packet should:
- use the retained `0R-A` and `2R-A` authority surfaces plus the inspected `Hyperspeedcube`
source basis
- define one bounded retained slice from `Hyperspeedcube`
- keep the slice inside the ownership granted by `2R-A`
- name the exact first-party contracts to widen first
- widen only the first retained runtime-anchor contract that can stand on its own without dragging
in later neighbor families
- explicitly state which neighboring retained rows stay closed in that packet
## Strongest first widening targets
## Source-backed retained basis
The first `6R-A` packet should prefer contract-first runtime-anchor surfaces over shell-level UI or
tooling:
The queue-head decision is now source-backed rather than README-only.
Inspected retained donor basis:
- `Cargo.toml`
- `crates/hyperpuzzle_core/src/lib.rs`
- `crates/hyperpuzzle_core/src/catalog/mod.rs`
- `crates/hyperpuzzle_core/src/catalog/builder.rs`
- `crates/hyperpuzzle_core/src/catalog/metadata.rs`
- `crates/hyperpuzzle_core/src/catalog/params.rs`
- `crates/hyperpuzzle_core/src/catalog/generator.rs`
- `crates/hyperpuzzlescript/src/lib.rs`
- `crates/hypuz_notation/src/lib.rs`
- `crates/hyperpuzzle_view/src/replay_event.rs`
- `crates/hyperpuzzle_log/src/verify.rs`
- `crates/hyperstats/src/lib.rs`
Inspected first-party receiving basis:
- `UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistCore/HyperTwistCoreTypes.h`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingTypes.h`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Public/HyperTwistTraining/HyperTwistTrainingCatalogImportTypes.h`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistBootstrap/HyperTwistContractLibrary.cpp`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingCatalogLibrary.cpp`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingLibrary.cpp`
- `UnrealHyperTwist/Source/UnrealHyperTwist/Private/HyperTwistTraining/HyperTwistTrainingSubsystem.cpp`
## Narrowed 6R-A slice decision
The first widening slice is now fixed as:
1. puzzle catalog contract
2. puzzle-definition DSL boundary
3. notation grammar and serialization contract
4. replay-event taxonomy and verification contract
5. stats-shape / solve-record contract
The packet may include the minimum first-party runtime abstraction needed to bind those contracts
together for higher-dimensional puzzle ownership.
not as the broader multi-family runtime bundle.
That narrowed slice should cover:
- first-party hyper puzzle catalog ids
- first-party hyper puzzle catalog metadata:
- name
- aliases
- tags
- version
- registration boundaries for hyper puzzle definitions and families
- generator / variant parameter shape needed to refer to retained hyper puzzle definitions
- the minimum bridge from catalog entries into first-party puzzle-definition references
The first packet should treat the current sample and heuristic hyper-definition handling as the
first-party gap to replace:
- `UHyperTwistContractLibrary::MakeSampleHyperPuzzleDefinition(...)`
- `UHyperTwistTrainingLibrary::MakeDefinitionForCase(...)`
- `UHyperTwistTrainingSubsystem` puzzle-id / notation-profile heuristics
## Deferred neighboring families
The first `6R-A` implementation packet must keep these capability families closed:
- puzzle-definition DSL parsing and authoring
- notation parsing and serialization
- replay-event taxonomy widening and replay verification
- stats-shape / solve-record widening
- broad view / simulation UX
- non-Euclidean topology ownership that stays with `MagicTile`
- `qbr` calibration / perception ownership
- `rubix-cube-solver` correction / explanation ownership
Why this slice is first:
- `hyperpuzzle_core::catalog` is the smallest upstream retained donor seam that already exposes
the needed identity, metadata, and registration shape
- the DSL, notation, replay, and stats crates all broaden scope or depend on the catalog boundary
- current first-party code already has thin hyper-definition refs and training-catalog import
patterns, but it does not yet own a real hyper puzzle catalog contract
## Out of scope for the first 6R-A packet
@ -118,20 +185,33 @@ Before widening starts, that packet should:
The next explicit implementation-facing packet after this preparation slice should be:
- a bounded source-backed `Phase 6R-A` `HactarCE/Hyperspeedcube` runtime-anchor widening packet
- a bounded permissive `Phase 6R-A` `HactarCE/Hyperspeedcube` puzzle-catalog contract widening
packet
The packet should be framed as:
- first-party runtime contract widening for hyper puzzle catalog, DSL, notation, replay
verification, and stats shape
- first-party runtime contract widening for hyper puzzle catalog only
## Queue-adjacent legal sequencing guards
Do not omit the already-recorded legal caveats when the neighboring retained rows later come up:
- `Phase 6R-B` `kkoomen/qbr`
- confirm or replace the bundled `src/assets/arial-unicode-ms.ttf` before direct
redistribution if any packet copies or ships that asset
- `Phase 6R-C` `vivaansinghvi07/rubix-cube-solver`
- preserve or replace the bundled `frontend/lib/twistysim.min.js` with its upstream
provenance/license intact before redistribution if any packet copies or ships that dependency
## Acceptance criteria
- the packet records why the first-party `Phase 4` / `Phase 5` hold is now consumed
- the packet promotes `Hyperspeedcube` as the live queue head without widening the neighboring
retained rows prematurely
- the packet states the strongest first owned contracts for `6R-A`
- the packet records that the first `6R-A` widening slice is puzzle catalog only
- the packet states exact out-of-scope families for the first `6R-A` pass
- the packet keeps the `qbr` font and `rubix-cube-solver` bundled dependency caveats visible in
later queue sequencing
## Validation checklist

View file

@ -14,8 +14,9 @@ Status update on `2026-05-20`:
- `d4f4ad3` `Add primary coach orchestration entry lane`
- `1860f14` `Add provider-backed recognition sidecar client`
- `2473665` `Overlay imported training catalog packs and finite bundles`
- the current next bounded move is the source-backed `Phase 6R-A` `HactarCE/Hyperspeedcube`
runtime-anchor widening packet
- the generic source-backed `Phase 6R-A` `HactarCE/Hyperspeedcube` control pass is now consumed
- the current next bounded move is the bounded permissive `Phase 6R-A`
`HactarCE/Hyperspeedcube` puzzle-catalog contract widening packet
- the repo-row implementation queue is now live from that `Phase 6R-A` entry point rather than
waiting on another first-party packet
@ -77,8 +78,8 @@ Current routing truth:
- active non-live implementation-board rows: `39`
- retained benchmark, oracle, or clean-room-later rows outside the active implementation board: `9`
The next bounded move is the bounded `Phase 6R-A` `HactarCE/Hyperspeedcube` runtime-anchor
widening packet.
The next bounded move is the bounded `Phase 6R-A` `HactarCE/Hyperspeedcube` puzzle-catalog
contract widening packet.
Queue interpretation after that packet:
@ -87,6 +88,13 @@ Queue interpretation after that packet:
- `kkoomen/qbr`
- `vivaansinghvi07/rubix-cube-solver`
- the bounded speech-input / voice sidecar set
- keep the adjacent legal sequencing guards visible when those rows come up:
- `kkoomen/qbr`
- do not copy or redistribute `src/assets/arial-unicode-ms.ttf` without separate confirmation
or replacement
- `vivaansinghvi07/rubix-cube-solver`
- do not copy or redistribute `frontend/lib/twistysim.min.js` without preserving or replacing
its upstream provenance/license
- keep the optional `Phase 3R-G` browser comparison lane deferred unless the landed primary browser
spatial stack exposes a real gap