Skip to content

Resolve saved values from canonical parameter declarations - #22

Merged
trissim merged 1 commit into
mainfrom
refactor/parameter-declaration-presentation-20261004
Oct 5, 2026
Merged

trissim merged 1 commit into
mainfrom
refactor/parameter-declaration-presentation-20261004

Conversation

@trissim

@trissim trissim commented Oct 5, 2026 •

Copy link
Copy Markdown
Contributor

Saved resolution copied analyzer declarations into a second metadata representation and built editor reset/help dictionaries during headless admission. ParameterStructure now retains the canonical ParameterInfo declarations, deriving default/help views only for real editor consumers. ObjectState resolves saved values through that same owner without the SimpleNamespace mirror or redundant whole-map materialization in per-field loops.

Requires python-introspect>=0.2.0,<0.3 and declares ObjectState1.3.0. Public value/factory/type-resolution/cache epochs and live ancestor resolution are preserved; help presentation is demanded by editor consumers. Existing saved/editor/reset/history/factory controls and authentic typed values, callable identities and provenance associations pass. Installed PyQtReactive consumers retain supported declaration and mapping-view APIs. The upstream CI jobs currently fail at dependency installation because PythonIntrospect0.2.0 is not yet published; they have not established an ObjectState runtime failure. PythonIntrospect's unrelated existing Python3.10 decoder defect is documented on PI12; ObjectState requires Python>=3.11.

Current production qualification (2026-10-05): OpenHCS integration92c22 used the exact private PythonIntrospect0.2.0/ObjectState1.3.0 wheels, normal public RegistryService READY before clocks, and default internal runtime profiling OFF. One Illum3 observation measured compile206.535ms, execution264.932ms, total565.896ms. Both older retained native output sets passed the full nonempty-image/inventory/source-association comparison under the existing1e-6 policy (maximum pixel difference2.98e-8). Source/input/helper/eight-dependency/four-native-ABI guards passed; owned processes terminated.

This is an absolute candidate observation, not a controlled ON→OFF or individual-patch gain. Older unpaired native full-invocation mean695.522ms gives1.229×total; the2×total target remains218.135ms away. Native module mean626.957ms is a different clock. Evidence: /home/ts/.local/state/openhcs-maintenance/20261005/parameter-owner-illum3-default-ordinary-v1/receiving-summary.json; durable OpenHCS receipt: benchmark/results/perf_parameter_declaration_first_job_20261005/ordinary-observer-off.json.

Earlier evidence is retained with its limits: authentic first-job PipelineConfig+10-step saved admission129.320→82.766ms (46.555ms reduction, mainly PipelineConfig); already-warm second-case3D231.263→235.966ms showed no gain. The earlier standalone261ms3D replay is not a whole-compiler gain. Failed helper attempts and the prior negative warmed ordinary observation remain archived; no repeat timing was used to rescue them.

Release state: PI12 merged43cdbf3 and this PR merged7db1519; both trees are identical to the qualified private-wheel source. Root pushed annotatedv0.2.0/v1.3.0 and tracks their supported publishers. PythonIntrospect publication availability must precede ObjectState consumer installation/CI. Shared installation and OH727 merge remain pending. The separate preexisting decoder follow-up is PI13.

Closes #21

Retain original ParameterInfo declarations in ParameterStructure; derive editor snapshots on demand and read reset/default facts directly. Remove SimpleNamespace copies and unused forwarding properties without changing saved resolution or reconstruction.

Fixes #21
@trissim
trissim marked this pull request as ready for review October 5, 2026 16:47
Copilot AI balanced review requested due to automatic review settings October 5, 2026 16:47
@trissim
trissim merged commit 7db1519 into main Oct 5, 2026
0 of 11 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.

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.

Retain canonical parameter declarations during saved configuration admission

2 participants