Skip to content

refactor(types): close frame-kind vocabulary behind FrameKind - #157

Merged
christopherkarani merged 1 commit into
mainfrom
arch/f1fd967c/T4
Aug 25, 2026
Merged

christopherkarani merged 1 commit into
mainfrom
arch/f1fd967c/T4

Conversation

@christopherkarani

Copy link
Copy Markdown
Owner

Spec: spec/spec-architecture-type-system-hardening.md (ticket T4)

What

Closes the FrameMeta.kind String vocabulary behind package enum FrameKind (Wax module): cases surrogate/handoff, nested photo(VideoFrameKind)/video rawValues, and .other(String) forward-compat passthrough. Storage stays String? on disk - bytes identical.

Compiler gain

All kind comparison sites (PhotoRAG x5, VideoRAG x2, UnifiedSearch x2, MemoryOrchestrator/maintenance) parse once through FrameKind; typo'd literals stop compiling and the exhaustiveness-critical switch is default-free (adding a case breaks compilation, verified live). Unknown stored kinds survive re-save via .other.

Writer survey

Every value ever written: surrogate, handoff, enrichment, wax.internal.access_stats (left as centralized constant crossing the WaxCore API), note (CLI demo), photo.* x7 rawValues, video.root/video.segment. All round-trip byte-identically per characterization test.

Verification

FrameKindTests 4/4; PhotoRAG|VideoRAG|UnifiedSearch 94/95 with the single failure (videoRAGRecallBreaksEqualScoreTiesByRootID float tie) proven pre-existing at base. Scope: exactly 7 ticket files; WaxCore untouched; no public API changes.

Review skills used: swift-adversarial-pr-review x2 (fresh-context fix-allowed review + independent final pass, both APPROVE, zero fixes required).

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@christopherkarani christopherkarani added the ready-for-review Ready to squash-merge after pipeline review label Aug 25, 2026
@christopherkarani
christopherkarani merged commit c4412b3 into main Aug 25, 2026
5 of 6 checks passed
@christopherkarani
christopherkarani deleted the arch/f1fd967c/T4 branch August 31, 2026 19:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-review Ready to squash-merge after pipeline review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant