Skip to content

core: derive a typed CAM16-UCS occurrence view - #455

Closed
lemone112 wants to merge 1 commit into
agent/mixed-evaluator-package-bridgefrom
agent/lcs-cam16-ucs-view
Closed

core: derive a typed CAM16-UCS occurrence view#455
lemone112 wants to merge 1 commit into
agent/mixed-evaluator-package-bridgefrom
agent/lcs-cam16-ucs-view

Conversation

@lemone112

@lemone112 lemone112 commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add a typed, lazy rectangular CAM16-UCS view (J′, a′, b′) derived only from an already admitted CAM16 appearance state of the same exact LCS occurrence.
  • Keep LCS identity as exact stimulus plus immutable appearance context. CAM16 and CAM16-UCS remain one-way coordinate views; this adds no editable hybrid color space, inverse route, pairwise distance promise, or second context owner.
  • Make the CAM16-UCS release identity explicit and register its admitted frame/domain, coordinate units, achromatic law, reference identity, and direct dependency on the canonical CAM16 forward release.
  • Preserve optional cost: evaluators which request only Oklab or CAM16 pay no CAM16-UCS logarithm or polar-to-rectangular trigonometry.
  • Rebind the fail-closed point-support proof to the exact LCS source bytes; all algebra, certified claims, Q55 dependency, and negative-control count remain unchanged.

Scope

  • Exactly 6 files stacked on core: close the evaluator union and package session bridge #454 (3e8f240…), +329/-23.
  • No PairFill, PairLabel, Glow, Material, Ladder, AlphaAnalog, client vocabulary, recipe compatibility layer, inverse transform, ΔE/distance calibration, gamut promise, WASM export, controller, or arbitrary resource cap.
  • CAM16-UCS is deliberately classified as an appearance view, not a difference calibration.

Contracts

  • M′ == 0 produces canonical positive-zero a′ and b′ without consulting an undefined hue.
  • Positive M′ with an undefined hue is a typed inconsistent-derived-state failure.
  • Every emitted coordinate is finite; J′ and the intermediate M′ are non-negative.
  • Registry serialization is canonical and versioned, with the CAM16 dependency encoded explicitly.

Verification

  • Rust 1.96 labcolors-core tests: 715 passed, 6 ignored
  • Integration suites, doctests, and external package bridge RED contract
  • clippy -D warnings
  • rustfmt check
  • point-support verifier
  • proof claims/algebra semantic diff
  • exact-head GitHub CI
  • exact-head Native conformance
  • CodeRabbit

This is a stacked draft. Review only against agent/mixed-evaluator-package-bridge; do not merge independently.

@coderabbitai

coderabbitai Bot commented Jul 23, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 25d9d317-a587-455d-9c47-c502abaca19d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch agent/lcs-cam16-ucs-view

Comment @coderabbitai help to get the list of available commands.

@lemone112

Copy link
Copy Markdown
Collaborator Author

Superseded by the reviewed cumulative squash merge #465 (24fd1f4). The lower stacked branch was intentionally not merged on its own because its intermediate head was not the safe terminal public boundary.

@lemone112 lemone112 closed this Jul 26, 2026
@lemone112
lemone112 deleted the agent/lcs-cam16-ucs-view branch July 27, 2026 00:13
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