Skip to content

Decode declared derived fields through their constructor owner - #10

Merged
trissim merged 3 commits into
mainfrom
fix/declared-derived-field-decode-20261004
Oct 4, 2026
Merged

trissim merged 3 commits into
mainfrom
fix/declared-derived-field-decode-20261004

Conversation

@trissim

@trissim trissim commented Oct 4, 2026 •

Copy link
Copy Markdown
Contributor

Fixes the shared decoder cause of OpenHCS issue 578 / PR 579. Field membership derives from dataclasses.fields; supplied fields decode through the original annotations; only init fields go to the constructor; supplied non-init fields must equal the constructed owner. Strict extras and conflicting derived values reject. No OpenHCS-specific branch, key stripping, alternate codec or stored mirror. Inherited/nested/default-derived family covered. Existing refactor-audit AST loader covered all OpenHCS/dependency production roots with zero parse omissions; this is source evidence, not global NRA behavioral proof. Full receipt: docs/source/derived-field-decoding.rst. Validation: focused37 pass; initial entire143 pass/1 stale .12 version golden; golden migrated to canonical packaging.Version instead of a third version literal; final entire144 pass. Original retained OpenHCS native registration-status reply now decodes registered/errors0/published1; contradictory outcome/bool/extras reject. This read-only receiving check imported the exact qualified package and peaked7.14GiB, process exited0; not called lightweight. No native launch, mutation replay, environment or installed dependency change. Actual combined CLI acceptance remains with OpenHCS579 owner; registry publication/installation remain distinct. CI deferred.

@trissim
trissim marked this pull request as ready for review October 4, 2026 03:31
Copilot AI balanced review requested due to automatic review settings October 4, 2026 03:31
@trissim
trissim merged commit 430fbbe into main Oct 4, 2026
9 of 12 checks passed

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@trissim

trissim commented Oct 4, 2026

Copy link
Copy Markdown
Contributor Author

Independent OpenHCS579 peer review accepted decoder source ee0b65f/ac7b238: declaration-derived membership; init-only construction; supplied non-init values recursively decoded and compared with actual validated owner, never assigned. Omission and unknown/contradictory rejection remain strict; project_dataclass still owns init-only projection. No concrete source defect found.

Read-only combined receiving now passed at OpenHCS57999245d276: original normal dev_client.main -> persistent shell -> original McpDevClient.execute, only closed wire peer controlled. Eight exact original successful native receipts yield terminal0; contradictory outcome, boolean outcome, extra key yield terminal1 with visible typed cause+original receipt and canonical batch roundtrip. Four CLI controls PASS,5.73s,254896KiB RSS,zero swaps. No native/client process/socket or mutation replay. The process imported fad3cbb version0.1.15 codec SHA d2be277051b070d73503025a3addcde8016787e18a369c45b60be0c0edb65fea; exact source diff to ac7b2380.1.16 changes only version. Existing failed fixture flag receipt remains archived, no success fabrication.

Full receiving receipt/byte-exact raw outputs in OpenHCS579 docs/validation/mcp-shell-derived-diagnostic-20261004.rst and mcp-shell-combined-cli-20261004.tar.gz. This proves source CLI decoding/exit behavior, not fresh installed0.1.16 native readiness; release/metadata ownership remains separate.

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.

2 participants