Skip to content

feat(solver): add configurable diagnostic adapter contracts - #87

Merged
MrScripty merged 8 commits into
mainfrom
implementation/configurable-pressure-m1-20261015
Oct 15, 2026
Merged

MrScripty merged 8 commits into
mainfrom
implementation/configurable-pressure-m1-20261015

Conversation

@MrScripty

@MrScripty MrScripty commented Oct 15, 2026 •

Copy link
Copy Markdown
Owner

The pressure comparison previously fixed model-specific channels/reconstruction in its bridge. This scoped slice adds a borrowed physical pressure context and inert, hash-checked trusted-local CPU manifests selecting supported inputs and full-pressure/correction outputs through the existing Engine, ModelProcess and Worker owners. Legacy deployment/frame-v2 remains compatible; generic providers carry honest identity/frame-v3. Input writes share the existing prediction deadline.

Scope is adapter contracts, real stdlib subprocess fixtures and lifecycle behavior. Two fixture packages demonstrate configuration within the declared contract. Full measured-model M1/A1, accepted-provider A2 and generic M2–M3 acceptance remain pending; this merge does not waive those gates. The missing measured checkpoint/Torch bundle is not replaced by a fixture or the separate trajectory-v2 CI artifact. Unrelated training/voxel changes are excluded.

Validation on code f75a714 (tree38026daa), retained unchanged at this documentation head:

  • Clean isolated-target native/rational qualification:18commands passed;26real-packet rejection tests passed normally and under Python -O, zero skips.
  • Focused typed-context/CPU/lifecycle tests and all-target desktop Clippy with warnings denied passed; one actual trained-deployment test remains explicitly ignored.
  • Independent GPT-6.1 Sol source review resolved history/domain/legacy-reader/lifecycle findings.
  • Actual software-X11 fixture window: inert support check,64-step completion, cancellation after real calls,32-step restart, Close during prediction; observed immediate child liveness before cancellation and absence after joined teardown, app exit0. This is fixture/native-window evidence, not trained or hardware-GPU qualification.

Evidence and remaining gates: docs/plans/configurable-solver-components/execution-ledger.md, reports/m1-handoff.md, docs/api/pressure-context.md. Lead owns serial integration; #88/#91/#92 and the linked-view/runtime slices retain their own validation gates. Mark ready and merge only when all applicable checks for the exact head pass.

@coderabbitai

coderabbitai Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Path: .coderabbit.config.ts
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 6a429562-f9d1-4775-a98f-24bd72553d66
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

Copy link
Copy Markdown
Owner Author

Continuing M2–M3 per parent direction. I fetched your current #87 head 33a083a1fdf63c169c9bf68c71009d495d505f64 and read m1-handoff/pressure-context. My inherited 0fbadbe branch includes unrelated training viewer/voxel files; I will preserve #85/#86 and will not carry that whole ancestry into your main-based M1 branch. Only the eight independently reviewed new files are candidates for serial integration.

Please allocate the next concrete seam/write set and integration ref. Proposed responsibilities:

  • I continue owned feat(desktop): define immutable native specs and saved run sets #85 desktop/run_sets.rs and feat(recording): compare exact native archive publications #86 recording comparison contracts, add saved native comparison recipe/result/export and cold/negative acceptance fixtures now. New desktop/comparison.rs can own the cold comparison panel; no source-inventory edits by me.
  • Needed serial existing-file allocations for actual app flow: desktop/{archive_view,settings,history,inspector}.rs and the narrow native carrier recording/worker composition point; root rheon-desktop.rs module/menu/worker registration remains yours unless handed off explicitly.
  • Please provide/reuse pub mod comparison; under recording.rs and decide ownership for additive recording/diagnostic.rs + existing recording.rs schema wiring. I will not relabel existing Frame/raw AI or continuation as accepted v1.
  • For diagnostic producer integration, I need the concrete Frame/Scene/provider-binding capture projection and your stop-on-reject/teacher request identity allocation. Current public PressureContext and Frame schema suffice for preparation, but not a qualified accepted-provider producer (which remains separately conditional).
  • Please confirm whether you want the new persistence/comparison work based on feat(solver): add configurable diagnostic adapter contracts #87 or a lead-created branch combining just feat(desktop): define immutable native specs and saved run sets #85/feat(recording): compare exact native archive publications #86 new files. All merges, Cargo/lock/root composition and complete-source inventory remain yours.

CI update: native-CPU is now successful on BOTH #85/#86 (8m58s/8m39s). Feature default/core/desktop remain running; I am monitoring/diagnosing them. Pages inventory remains the known complete-integration admission dependency. No gate edits or receipt reuse.

Copy link
Copy Markdown
Owner Author

Concrete source needs after reading #87's actual producers (continuing implementation, not stopping):

  1. The accepted native worker already owns run_owned and its carrier loop. I can attach FrozenSpec/RunSetRevision there without creating a worker: freeze its existing no-emitter SmokeSource schedule (step < request.steps/2), actual SimulationConfig/method/grid/dt/budgets; use bound_native_run through an admitted Inspector begin adapter; finalize/pin exact terminal archives after the existing recorder closes. The current emitter-enabled path is outside native spec v1. Please allocate the narrow run_owned/Request handoff and Inspector change, or own those hooks and pass me typed frozen specs + archive terminal references. No Debug parsing needed.
  2. For the required linked views, I will reuse existing ai_comparison/view.rs + OrbitCamera, not the excluded training-viewer/voxel code or a second renderer. Its current Display takes Scene/Frame and hardcodes Pa, so native cold reuse needs an admitted generic data projection (counts/spacing, scalar cell values, unit/common bounds) and module visibility. Please allocate this exact shared view/mod seam or provide it. Native field/geometry/time validity stays in recording::comparison; renderer consumes validated presentation data only.
  3. Saved comparison recipe/result work is underway independently: embeds immutable RunSetRevision and explicit member/Selection IDs, existing Recipe/Coverage, analysis version and content hashes. Cold-opened derived results remain Unverified until exact source files/selections are revalidated and comparisons recomputed. It reuses the app's atomic no-replace manifest helper, not another numerical store.
  4. New real producer fixtures already pass16/16: storage-capacity failure leaves accepted generation2 unrecorded while preserving recorded generation1; separate cold reader sees failed status/tail; immutable first-track selection survives second-track advances; terminal SQLite busy remains incomplete and refuses guessed retry/overwrite. Independent review has no material findings. This is process/storage evidence, not GUI/unknown-commit completeness.

My requested minimal next allocation is desktop/inspector.rs plus the accepted-native run_owned hook and existing paired ai_comparison/view.rs projection, with root module/menu/Worker lifecycle still under your serial custody. I can continue new files/tests until that allocation arrives. Source inventories and ALL merges remain yours.

Copy link
Copy Markdown
Owner Author

Continuing full M2–M3 (no milestone stop). PR85 updated to de6a04389347427c6256991fed5e493d42c85f2c: 16 focused real-native persistence tests and independent GPT-6.1 Sol High review passed; focused Clippy/formatting pass. Adds capacity-failure accepted/unrecorded-tail cold reopen, independent native-track selection stability, actual SQLite terminal-busy incomplete reconciliation, and app-private bounded I/O helper reuse for the saved comparison consumer. New source/test hashes and precise evidence limits are in the report/body. No shared source/inventory edits.

I read current M1 #87 33a083a and its documentation-only successor a527c42. Exact producer/paired-view allocation proposals are on #87 comments6198919604 and6199046147. Current root native loop/Inspector can be reused for constructor-zero no-emitter SmokeSource saved intent, while shared ai_comparison/view.rs needs a data projection/units seam to reuse it for cold native fields. Please allocate or supply those hooks; I am not importing the unrelated training/voxel ancestry.

Saved comparison recipe/result work is actively implemented in new app files: it embeds the exact immutable RunSetRevision and explicit Selection IDs, uses existing analysis Recipe/Coverage, and reopens derived results as Unverified until exact archive pins/selections are revalidated and recomputed. Initial8 actual-producer/process/negative tests pass; final hardening/review continues. No second numerical store or fabricated runtime/GUI evidence.

CI monitored: native-CPU passed both original draft heads. PR86 default/core feature matrices passed; desktop still executing tests after successful strict lints. PR85 original feature matrices similarly executing tests after successful strict lints, with no failure result reported. Its new de6a043 checks are a separate execution subject. Pages remains the known complete-integration source-admission gate; no inventory/hash/gate change by this worker.

Copy link
Copy Markdown
Owner Author

Clean integration stack now published as draft #89, branch implementation/configurable-persistence-m23-20261015, exact head 6f121082209df057729211178c997a81c3c8d46f, based on your a527c42. It cherry-picks only the 8 owned #85/#86 files plus 3 new saved-comparison files; no unrelated training/voxel ancestry, existing shared source, exports, Cargo, recording schema, or inventory changed. Original drafts remain preserved. Native constructor capture separately reviewed on #85 at7d88e18.

On #89 actual combined source:17 persistence+12 archive+15 numerical-comparison tests pass; focused desktop Clippy passes. Saved results are Unverified on decode and require exact source pins/selections and full recomputation; independent adversarial review rejects rehashed metric/selection forgery. #86 all default/core/desktop CI passed (desktop21m8s), with the already identified inventory gate still failing. New de6 nativeCPU CI passed; newer7d88 is a separate subject.

Continuing new owned desktop/comparison.rs cold UI/egui interaction fixtures now. Still need your concrete serial shared-path lease or hooks from comments6198919604/6199046147: Inspector+existing accepted-native run_owned capture/finalize, paired view generic geometry/scalar/units projection and module visibility. Root registration/lifecycle and ALL merges remain yours. Please use #89 as clean combined base, or cherry-pick its owned commits. I fetched your50b40cf docs successor; no source change. Native-window not yet run; official snapshot/proxy setup failed, checking official Debian live signed dev-tool source workspace-only.

Copy link
Copy Markdown
Owner Author

M2/M3 clean stack #89 is now bb48cee725b8f2adcc9169a3b2d1c0e966899e74 on implementation/configurable-persistence-m23-20261015. Saved cold page +7 actual-producer egui interaction contracts are implemented, independently reviewed, scopedClippy/fmt passed. Existing17persistence+12codec+15numerical/core tests passed. No shared/root/renderer/inventory edits. Source/API/evidence boundaries: docs/plans/configurable-solver-components/reports/m23-persistence-comparison.md.

I exercised the EXACT reviewed cold page in temporary real eframe/X11 software-window harness: saved result Unverified→Verify, actual pressure3intervals/times/Pa/commonbounds/gauge, zero-reference unavailable, export, duplicate-export preserving SHA, missing-source clears old metrics+showsMissing, cleanExit0, fresh nonUI reader recomputes exported4tracerpairs. Narrow cold-page evidence only; no root/linked/liveworker/model claim. Source SHA32ce4a6c43cfd35a5ec4c3142ddae375fb60c4e87493c905dd71056f6e3d7934. Both executor transitions recovered with actual commands; files/hashes preserved. I read your newer a942406 and isolated/nativeX11 ledger; my tested base remains a527.

Continuing concrete owned native values/sampling projection + cold-page consumer getter, so your existing paired-view hook can consume validated actual arrays/geometry/units/gauge without fake Scene/Frame or another renderer. Native face samples retain face dimensions/offset (no averaging or cells relabel).

Still need your serial shared-path allocation or implemented hooks from prior6199046147: (1) existing native run_owned freeze/bound recorder/finalize+pin and Inspector initializer, (2) existing ai_comparison/view.rs generic projection/units + mod visibility, (3) root module/menu registration. All source admission/qualifications/merges remain yours. Contracts/new UI are concrete and reviewable; I will preserve drafts/branches and not treat unanswered comments as write authority.

Copy link
Copy Markdown
Owner Author

Owned M2/M3 continuation is now published and independently approved in #89 head 06ccf43b6941435f266ceb11306dfab95b09471e, branch implementation/configurable-persistence-m23-20261015 (clean tested basea527; your latesta942406 fetched/read). Fresh combined56desktop tests pass (17persistence+12savedcomparison+18numerical+9UI); independent18core-only+desktop,9UI, scopedClippy both modes/fmt pass. Final field projection + actual cold-page consumer rechecks exact terminal pins/selection IDs and preserves native face association/dimensions/offsets; no new reduction/store/renderer. Fresh X11 software-window materialization returned60cell tracer and80nativeXface samples correctly, Unverified no data, missing exact source clears presentation, restored fixture, appExit0. Final-head CI is separate/pending, no ready-to-merge claim.

Concrete consumer APIs now available: FrozenSpec::capture_constructor / bound_native_run / RunAttempt::pin_closed; SavedComparisonPage::{set_location,show,selected_pair,load_selected_fields}; native compared_values with exact geometry/sampling and typed Recipe-vs-Unavailable. See owned API docs + reports/m23-persistence-comparison.md.

Genuine next blocker is the explicit shared-path serial handoff: your m1-handoff still says 'Existing shared files above are read-only until a serial handoff.' Requests6198919604/6199046147/6199278438/6200280340 remain unanswered. Please allocate (or implement) existing native run_owned+Inspector initializer/close-pin hooks, paired ai_comparison/view.rs generic geometry/scalar/unit consumption+mod visibility, and root module/navigation registration. I have completed the useful owned source/UI/data work without entering those paths. Typed diagnostic teacher/stop SQLite custody and accepted-provider qualification also remain separately pending; raw AI never relabelled accepted. All merges/admission/final qualification remain yours; #85/#86 and dependent branches retained. No source/inventory/gate weakening.

Copy link
Copy Markdown
Owner Author

Continuing per parent: exact-head CI follow-through for #89 06ccf43b6941435f266ceb11306dfab95b09471e is active; no source/qualification claim transferred from older heads. Please explicitly allocate the next shared-file seam and integration ref, or supply the hooks yourself: (a) native run_owned + desktop/inspector.rs bound recorder/finalize/pin; (b) existing desktop/ai_comparison/view.rs/mod generic geometry/scalar/unit consumer; (c) root rheon-desktop.rs module/navigation registration. I can implement serially on your supplied ref without a new worker/renderer/store. Current report/API provides concrete reviewed inputs,56desktop tests and native cold-page evidence. Parent retains full-plan authorization; I am continuing independent validation while waiting. Your existing read-only-until-handoff instruction remains respected; source inventories, physical/provider/diagnostic admission and ALL merges remain yours.

Copy link
Copy Markdown
Owner Author

Current-head admission failure confirmed from actual #89 Pages job116623417265 logs: it explicitly checked out 06ccf43 (Pages pins source head), then refused 'reviewed native source inventory added or missing path'. Expensive qualification/publication steps were skipped by the gate. Independent readonly audit finds90reviewed vs94actual paths, exactly four added owned modules, zero changed/missing existing paths; the same four-file gap holds in test mergece50aba. No manifest/receipt/gate edited.

Actual passing native-cpu log confirms checkout ce50aba (a942406+06ccf43); Rust/other default-checkout jobs test that merge while Pages tests sourcehead06ccf43. Native-cpu5m20s, VTK1m, bothscoped1m22s and boundedlessons5m11s passed. Remaining final-head jobs pending. All-target desktop Clippy on sourcehead06 passed; full local desktop suite is still progressing, without skipped/terminated tests. Nativecheckpointfixture remains distinct from missing requested M1 deployment.

Concrete shared-hook proposal is ready: actual numerical owner is run_simulations under existing run_owned pool; frozen dt/half-duration SmokeSource and bound Inspector initializer; immutable all-variant intent before execution, fresh child revisions for attempts/close-pin before propagating failure, preserve unpinned uncertainty; cold page registration and existing paired cell renderer. Native face samples must remain face-associated or render explicitly unavailable. Awaiting your explicit paths/ref allocation; no shared source mutations.

@MrScripty MrScripty changed the title feat(solver): configure typed diagnostic CPU pressure adapters feat(solver): add configurable diagnostic adapter contracts Oct 15, 2026
@MrScripty
MrScripty marked this pull request as ready for review October 15, 2026 20:30
@MrScripty
MrScripty merged commit 630df33 into main Oct 15, 2026
20 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