Skip to content

Promote: P2.3a handling preview - #23

Merged
tom-snyder merged 1 commit into
mainfrom
dev
Jul 18, 2026
Merged

Promote: P2.3a handling preview#23
tom-snyder merged 1 commit into
mainfrom
dev

Conversation

@tom-snyder

@tom-snyder tom-snyder commented Jul 18, 2026

Copy link
Copy Markdown
Owner

Promotion of the dev-integrated P2.3a handling preview (bit-level runtime parity). Feature PR #22 evidence: 709/4-skip sidecar, 588/588 renderer, re-grill SHIP.

… parity (#22)

* feat: P2.3a handling preview (weight/ADS composition + domains)

Renderer: partHandling.ts (binary32 weight_kg/ads_time_add composition,
movement/ADS preview with server-configurable policy, typed refusal
codes), partOrdering.ts (canonical local part-type identity + P2.2a sort
ordering, signed-int32 sort_order domain), rollCard handling section,
RollPanel/Library/PartPanel/OptionalNumberField editing surfaces,
libraryValidation canonical-id duplicate/slot checks + handling scalar
and sortOrder domain issues.

Sidecar: raw-import preflight rejecting lossy sort_order before the
legacy loader, save_part/save_part_type domain refusals, validate_project
handling/sort_order hard issues.

Docs: PLAN/CONTEXT/GUNRNG_CHANGES updated for the P2.3a preview contract.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

* fix: validate both handling scalars before either addition (re-grill NIT-1)

A part with both an overflowing weight aggregate and an invalid
ads_time_add now picks the same refusal code as the runtime's
ResolvedGunHandling.resolveCanonical. Also corrects the prior commit's
loose wording: libraryValidation gained only sortOrder/handling-scalar
issues; duplicate/slot checks are main's shipped alias-aware bareId
path (preserved), and the canonical-id collision check lives in
partHandling.ts (re-grill NIT-2).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@tom-snyder
tom-snyder merged commit f265af4 into main Jul 18, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant