Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
299 commits
Select commit Hold shift + click to select a range
af5b93d
Add Academy step actions and optional response/rationale envelope
jmsexton03 Feb 24, 2026
f4c571e
Adjust Academy smoke query to grid refinement and mechanism guidance
jmsexton03 Feb 24, 2026
e104acb
Add workflow architecture paper figure generator utility
jmsexton03 Feb 25, 2026
72a8597
Update gitignore for local venv and Word document artifacts
jmsexton03 Feb 25, 2026
ac50e90
Add AISAC markdown responses and contract unit tests
jmsexton03 Feb 25, 2026
710a45c
Unify interactive invoke path with critical gating and skill runtime
jmsexton03 Feb 26, 2026
0758f45
Fix MCP caller_action trust and Academy error wrapping
jmsexton03 Feb 26, 2026
c82dcd0
Refactor level0 routing to config-driven metadata with deterministic …
jmsexton03 Mar 3, 2026
df33bd0
Add REMORA priority-case baseline boost and handoff
jmsexton03 Mar 3, 2026
dd3f703
Rename Level-2 note and link from integration guide
jmsexton03 Mar 3, 2026
9c88737
Fix FAISS embedding wrapper to implement Embeddings interface
jmsexton03 Mar 3, 2026
5330639
Use ERF composed schema pattern for input-writer model resolution
jmsexton03 Mar 3, 2026
b7f3b86
Forgot to force database files
jmsexton03 Mar 9, 2026
08a5773
Merge remote-tracking branch 'remotes/amrex-codes/add_benchmark_metri…
jmsexton03 Mar 9, 2026
03fc473
Merge remote-tracking branch 'remotes/amrex-codes/extend_metrics_gati…
jmsexton03 Mar 9, 2026
2b10c44
Merge remote-tracking branch 'remotes/amrex-codes/maintainability_int…
jmsexton03 Mar 9, 2026
d3dea27
Fix post-merge regressions on consolidate_all
jmsexton03 Mar 9, 2026
c4280ae
Add Level-2 confidence override of Level-0 solver selection
jmsexton03 Mar 9, 2026
684387d
Add benchmark JSONL validation metrics
jmsexton03 Mar 9, 2026
193392e
Improve oracle routing coverage
jmsexton03 Mar 9, 2026
07c8db9
Add plotfile var priority flow
jmsexton03 Mar 9, 2026
0b70336
Add canonical state fields and init tests
jmsexton03 Mar 9, 2026
b3bd273
Merge branch 'b3_1_benchmark_runner_fields' into consolidate_all
jmsexton03 Mar 9, 2026
97ac0f7
Merge branch 'fix/remora-erf-level0-discrimination' into consolidate_all
jmsexton03 Mar 9, 2026
510d00e
Merge branch 'fix/input-writer-plotfile-vars' into consolidate_all
jmsexton03 Mar 9, 2026
89f4d5a
Add sweep schema models and validation tests
jmsexton03 Mar 10, 2026
70de973
Add intent extraction node with config flag and tests
jmsexton03 Mar 10, 2026
3794368
Wire gate approval records into state
jmsexton03 Mar 10, 2026
30cd49e
Merge branch 'wave2/gate-approval-wiring' into consolidate_all
jmsexton03 Mar 10, 2026
5e19758
Merge branch 'wave2/intent-extraction-node' into consolidate_all
jmsexton03 Mar 10, 2026
f0d9feb
Add gate approval fields to benchmark JSONL output
jmsexton03 Mar 10, 2026
4f273e6
Add deterministic clarification node and state fields
jmsexton03 Mar 10, 2026
ea1999d
Merge branch 'wave2/b3b-gate-jsonl' into consolidate_all
jmsexton03 Mar 10, 2026
21aa704
Wire intent clarification flow into graph
jmsexton03 Mar 10, 2026
04ad0b0
Add deterministic sweep detection and schema-backed spec creation
jmsexton03 Mar 10, 2026
dd49363
Merge branch 'wave2/sweep-orchestrator' into consolidate_all
jmsexton03 Mar 10, 2026
c3ae3f4
Wire sweep detection branch into graph routing
jmsexton03 Mar 10, 2026
f01450b
Fix integration test input writer mock signature
jmsexton03 Mar 10, 2026
be040d6
Harden clarification batching and AI answer persistence
jmsexton03 Mar 10, 2026
5d67dd3
Harden sweep orchestration status handling
jmsexton03 Mar 10, 2026
1456363
Merge branch 'wave2/session-13-orchestrator' into consolidate_all
jmsexton03 Mar 10, 2026
7b5235b
Merge keep all config flags
jmsexton03 Mar 10, 2026
93ac76b
Rebuild schemas for ERF REMORA PeleC PeleLMeX target commits
jmsexton03 Mar 10, 2026
f08f12f
Merge branch 'hardening/tag-updates' into consolidate_all
jmsexton03 Mar 10, 2026
9497553
Strengthen routing metadata and benchmark-aligned oracle tests
jmsexton03 Mar 10, 2026
e502d4b
Merge branch 'hardening/case-selection-tests' into consolidate_all
jmsexton03 Mar 10, 2026
97ba0a6
Add sweep result aggregation and meta-visualization
jmsexton03 Mar 10, 2026
82c524d
Merge branch 'wave2/session-14-aggregation' into consolidate_all
jmsexton03 Mar 10, 2026
02663d7
Add schema staleness mismatch policy and reliable auto-rebuild cwd
jmsexton03 Mar 10, 2026
333c820
Add clarification recovery integration tests
jmsexton03 Mar 10, 2026
523e999
Add schema-aware clarification handler and tests
jmsexton03 Mar 10, 2026
b73cc67
Merge branch 'wave2/session-9b-handler-rewrite' into consolidate_all
jmsexton03 Mar 10, 2026
ebae03c
Merge branch 'hardening/clarification-recovery-tests' into consolidat…
jmsexton03 Mar 10, 2026
8c1a41e
Add sweep MCP status/results tools and persistence tests
jmsexton03 Mar 10, 2026
e2603fa
Add semantic audit manifest — 376 criteria in 16 batches
jmsexton03 Mar 10, 2026
5293b7f
audit: complete semantic batch_00
jmsexton03 Mar 10, 2026
322bbb4
audit: complete semantic batch_01
jmsexton03 Mar 10, 2026
488e719
Audit semantic batch_02 and mark completed
jmsexton03 Mar 10, 2026
7e59030
audit: complete semantic batch_03
jmsexton03 Mar 10, 2026
d6fbb57
audit: complete semantic batch_04
jmsexton03 Mar 10, 2026
3250d5c
Audit semantic batch_07 and mark completed
jmsexton03 Mar 10, 2026
8668e88
audit: complete semantic batch_06
jmsexton03 Mar 10, 2026
9054208
audit: complete semantic batch_09
jmsexton03 Mar 10, 2026
006bc1f
audit: complete semantic batch_05
jmsexton03 Mar 10, 2026
0e88de1
Audit batch_08 semantic criteria
jmsexton03 Mar 10, 2026
7c99828
semantic audit: complete batch_12
jmsexton03 Mar 10, 2026
55a7251
audit: complete semantic batch_14
jmsexton03 Mar 10, 2026
5df36fa
Audit batch_13 semantic criteria
jmsexton03 Mar 10, 2026
edfa825
Audit semantic batch_11
jmsexton03 Mar 10, 2026
867eb5b
audit: complete semantic batch_10
jmsexton03 Mar 10, 2026
cb801df
Mark semantic batch_11 done in manifest
jmsexton03 Mar 10, 2026
bbb016a
Audit semantic batch_15
jmsexton03 Mar 10, 2026
9ac0a42
Merge audit output from wt-2: audit/semantic-batch-01
jmsexton03 Mar 10, 2026
7f63d7e
Merge audit output from wt-3: audit/semantic-batch-02
jmsexton03 Mar 10, 2026
843b898
Merge audit output from wt-4: audit/semantic-batch-03
jmsexton03 Mar 10, 2026
8def8bd
Merge audit output from wt-5: audit/semantic-batch-04
jmsexton03 Mar 10, 2026
129f485
Add session plan — 146 sessions from semantic audit
jmsexton03 Mar 10, 2026
9c0c9e9
Add semantic audit artifacts
jmsexton03 Mar 10, 2026
b86bea7
Support plan-root fallback for worktree wave runner
jmsexton03 Mar 10, 2026
46ccfcc
Use codex exec for non-interactive wave worktree runs
jmsexton03 Mar 10, 2026
5f03fd9
Add versioned FAISS manifest metadata and compatibility checks
jmsexton03 Mar 10, 2026
fc9aa6d
Harden workflow state contracts across graph and session flows
jmsexton03 Mar 10, 2026
48240d3
Improve benchmark and metrics audit reporting paths
jmsexton03 Mar 10, 2026
9375307
Tighten physics validator behavior and regression coverage
jmsexton03 Mar 10, 2026
de7d2ab
Expand MCP and retrieval regression test coverage
jmsexton03 Mar 10, 2026
cdfa165
Consolidate canonical test coverage and rename metrics helper
jmsexton03 Mar 10, 2026
c18845b
Merge wave 1 changes from wt-3
jmsexton03 Mar 10, 2026
e30542d
Fix sweep routing compatibility in graph
jmsexton03 Mar 10, 2026
614ad44
Paper validator core flow and routing
jmsexton03 Mar 11, 2026
95f5861
Fail fast on unknown LLM provider names
jmsexton03 Mar 11, 2026
4f93d16
Expand paper policy routing regression tests
jmsexton03 Mar 11, 2026
c568266
Session dependency gate and policy audit coverage
jmsexton03 Mar 11, 2026
485ef32
Rename dependency gate test to goal-based naming
jmsexton03 Mar 11, 2026
0c32cca
Benchmark record and metrics reporting updates
jmsexton03 Mar 11, 2026
374fc9d
Indexing and prompt strategy refinements
jmsexton03 Mar 11, 2026
2d2270f
Reviewer and architect orchestration hardening
jmsexton03 Mar 11, 2026
10a35f7
Tool registry and MCP test alignment
jmsexton03 Mar 11, 2026
24f1dac
Paper manifest schema and graph gate wiring
jmsexton03 Mar 11, 2026
41f7fe1
Graph publication gates and risk-link traceability coverage
jmsexton03 Mar 11, 2026
2b04c33
Plan normalization and complexity-threshold contracts
jmsexton03 Mar 11, 2026
7270d93
Paper validator routing and CLI argument coverage
jmsexton03 Mar 11, 2026
295098e
Complexity evidence collection and plan normalization coverage
jmsexton03 Mar 11, 2026
85402b6
Feature traceability and required-behavior gate coverage
jmsexton03 Mar 11, 2026
84d89bd
Migration evidence and index-growth proof gate coverage
jmsexton03 Mar 11, 2026
23af690
Claims artifacts and cross-reference gate coverage
jmsexton03 Mar 11, 2026
2d16aef
Transient API recovery target coverage
jmsexton03 Mar 11, 2026
3f4d250
Post-incident feedback and cache hit-rate observability coverage
jmsexton03 Mar 11, 2026
b04973f
Fix RuleViolation order
jmsexton03 Mar 11, 2026
f2aaf44
Respect precomputed feature-block validation gate
jmsexton03 Mar 11, 2026
9fbca4d
Benchmark normalization and reproducibility oracle metadata
jmsexton03 Mar 11, 2026
8520579
Graph/session gates and paper-validator mode wiring
jmsexton03 Mar 11, 2026
b2f4cf1
Benchmark environment lockfile and metrics accounting updates
jmsexton03 Mar 11, 2026
39a4fd1
Index growth drift controls and oracle benchmark alignment
jmsexton03 Mar 11, 2026
ffab602
Benchmark reporting scripts and table synchronization coverage
jmsexton03 Mar 11, 2026
52e48a6
Superfacility polling outcome and latency observability
jmsexton03 Mar 11, 2026
1c29fac
Architect router reason codes and workflow history growth
jmsexton03 Mar 11, 2026
f0f9f2c
Rule severity/category normalization and quality expectations
jmsexton03 Mar 11, 2026
7deb331
Merge wave 1 changes from wt-5
jmsexton03 Mar 11, 2026
c225b2b
Aggregate metrics reporting and publication table generation
jmsexton03 Mar 11, 2026
5c123e1
MCP session context persistence and server concurrency guardrails
jmsexton03 Mar 11, 2026
4afb0b7
Merge wave 1 changes from wt-2 through b04973f
jmsexton03 Mar 11, 2026
3f74640
Clean session/PRD-coded naming in new work
jmsexton03 Mar 11, 2026
5fba19a
Rename numbered session/PRD test and helper names after merge-base cl…
jmsexton03 Mar 11, 2026
68888a3
Finalize wt-2 cleanup conflict resolution follow-ups
jmsexton03 Mar 11, 2026
34dc827
Schema builder non-blocking tier logging and config safeguards
jmsexton03 Mar 11, 2026
0207748
Architect retrieval/orchestration updates and sweep normalization
jmsexton03 Mar 11, 2026
4523e5e
Fix benchmark seed=0 handling and replay manifest privacy
jmsexton03 Mar 11, 2026
9e1694b
Step 1 compatibility: restore graph gate API and metrics/plan helpers
jmsexton03 Mar 11, 2026
920125d
Fix dependency routing default path and taxonomy reason-code allowlist
jmsexton03 Mar 11, 2026
511a86f
Fix unit-test collection imports for knowledge and architect services
jmsexton03 Mar 11, 2026
f316e66
Harden solver selection compatibility for legacy architect call sites
jmsexton03 Mar 11, 2026
3c5ee42
Stabilize unit contracts and restore legacy compatibility paths
jmsexton03 Mar 11, 2026
f4206ae
Merge branch 'wave1-wt-1' into consolidate_all
jmsexton03 Mar 11, 2026
ccd6b41
Add new unnumbered regression tests for metrics, routing, and monitoring
jmsexton03 Mar 11, 2026
523aba3
Merge wave1-wt-4 and stabilize step-1 unit suite
jmsexton03 Mar 11, 2026
0f2fcc2
Refactor graph routing/validator glue into focused helpers
jmsexton03 Mar 11, 2026
61104b0
Refactor step-2 routing and plan migration helpers
jmsexton03 Mar 11, 2026
d95fd3c
Add FAISS provenance manifests for index builders
jmsexton03 Mar 11, 2026
9769cad
Fix schema singleton rename to skip current symlinks
jmsexton03 Mar 12, 2026
dd063c4
Rebuild solver schemas and level2 FAISS indices for updated pins
jmsexton03 Mar 12, 2026
6918f39
Add traceability evidence row normalizer and import compatibility alias
jmsexton03 Mar 12, 2026
ea5cec3
Fix error-recovery integration stubs to accept requested_plot_vars
jmsexton03 Mar 12, 2026
d82a313
Fix error-recovery integration stubs to accept requested_plot_vars
jmsexton03 Mar 12, 2026
0758a3c
Skip PRD-content tests when PRD_v2605 document is missing
jmsexton03 Mar 12, 2026
6391474
Add traceability evidence row normalizer and import compatibility alias
jmsexton03 Mar 12, 2026
d3137cd
Add dependencies update policy and link it from related docs
jmsexton03 Mar 12, 2026
edd127a
Add criterion-to-benchmark linkage and session dependency routing gates
jmsexton03 Mar 12, 2026
281aa21
Harden reviewer terminal taxonomy and sweep retry guidance propagation
jmsexton03 Mar 12, 2026
bf82aba
Add camera-ready benchmark pipeline and stable metrics persistence
jmsexton03 Mar 12, 2026
9c24360
Add Tier-2 schema warning channel with UQ recommendation payload
jmsexton03 Mar 12, 2026
280e4d9
Add v26.05 required-capability standards contract checks
jmsexton03 Mar 12, 2026
5619495
Fix error-recovery integration stubs to accept requested_plot_vars
jmsexton03 Mar 12, 2026
32344e5
Fix error-recovery integration stubs to accept requested_plot_vars
jmsexton03 Mar 12, 2026
86e2041
Add ERF case registry and weighted natural-language case matching
jmsexton03 Mar 12, 2026
7498d69
Fix ERF executable fallback resolution for local and superfacility ru…
jmsexton03 Mar 12, 2026
a4ccc03
Add manifest provenance check mode with provider-model filtering
jmsexton03 Mar 12, 2026
882f64f
Implement provider-scoped FAISS layout and manifest provider-model ke…
jmsexton03 Mar 12, 2026
fcde3d0
Add ERF case registry and weighted natural-language case matching
jmsexton03 Mar 12, 2026
42cd655
Merge task/wt5-dependencies-policy into consolidate_all
jmsexton03 Mar 12, 2026
54e41b0
Merge task/wt1-talk into consolidate_all
jmsexton03 Mar 12, 2026
c3d3fcd
Merge task/wt3-erf-exec-fallback into consolidate_all
jmsexton03 Mar 12, 2026
f64844d
Merge wave2-serial-wt6 into consolidate_all
jmsexton03 Mar 12, 2026
bff8274
Merge task/wt2-faiss-option-a into consolidate_all
jmsexton03 Mar 12, 2026
b588437
Merge task/wt4-manifest-check into consolidate_all
jmsexton03 Mar 12, 2026
8eaa581
test: skip v2605 capability contract standards checks
jmsexton03 Mar 12, 2026
cab8cf1
Merge task/wt-erf-case-mapping into consolidate_all
jmsexton03 Mar 12, 2026
2bcae6e
Add strategy-specific baseline weight wiring for hierarchical search
jmsexton03 Mar 12, 2026
0cc74bf
Add ERF-specific prompt template overrides for llm_compare
jmsexton03 Mar 12, 2026
3070c0a
Add ERF llm_compare benchmark scripts and regression tests
jmsexton03 Mar 12, 2026
88521f6
Add ERF benchmark docs index and CLI runbook pointers
jmsexton03 Mar 12, 2026
125b657
Fix ERF benchmark path parsing and llm_unavailable abort coverage
jmsexton03 Mar 12, 2026
f0e77a6
Add ERF tuning workflow and candidate tie-break scoring
jmsexton03 Mar 12, 2026
ff8d6b0
Add verbose benchmark console and catastrophic event capture
jmsexton03 Mar 12, 2026
7907598
Fix ERF case selection robustness and add thresholded simple case-hin…
jmsexton03 Mar 12, 2026
c76f5d9
Fix runtime FAISS query argument order and normalize plan reasoning
jmsexton03 Mar 12, 2026
c6bf31a
Update ERF config metadata and refresh FAISS database artifacts
jmsexton03 Mar 12, 2026
7b83fee
Add benchmark explainability pipeline and sanity-set tooling
jmsexton03 Mar 12, 2026
3ca7db8
Improve ERF executable fallback and central-build compile targeting
jmsexton03 Mar 12, 2026
16edeec
Pass user prompt into llm_compare inputs selection
jmsexton03 Mar 12, 2026
99c4a3c
Track erf_benchmark lib modules and unignore path
jmsexton03 Mar 12, 2026
2f6b29d
Tune simple baseline scoring for weak KB signal and case-hint promotion
jmsexton03 Mar 12, 2026
601a177
Unify requested viz vars across inputs and slices with solver-driven …
jmsexton03 Mar 13, 2026
e95b3d8
Add Level0 flat-score disambiguation for solver routing
jmsexton03 Mar 13, 2026
2c2d600
Add paper reproduction and repo-validation snapshot scripts with configs
jmsexton03 Mar 13, 2026
435762e
Improve benchmark runner resilience with row retries and 429 backoff
jmsexton03 Mar 13, 2026
09f3a0a
Isolate benchmark strategy output roots and nest input writer runs
jmsexton03 Mar 13, 2026
4483db7
Document non-ERF sanity placeholder behavior in runner
jmsexton03 Mar 13, 2026
4711fb3
Add wave orchestration script with explicit human tuning checkpoint
jmsexton03 Mar 13, 2026
691765b
fix: add --strategy flag to benchmark runner and update wave script f…
jmsexton03 Mar 13, 2026
6644b00
fix: align hierarchical baseline candidate pool and FAISS semantic sc…
jmsexton03 Mar 13, 2026
076b207
Revert "fix: align hierarchical baseline candidate pool and FAISS sem…
jmsexton03 Mar 13, 2026
0c14204
test: align hierarchical baseline and FAISS scoring expectations with…
jmsexton03 Mar 13, 2026
1dad54f
fix: derive wave per-solver summary labels from target case path
jmsexton03 Mar 13, 2026
e82fb9a
enforcing non debug and updating visualization preferences
jmsexton03 Mar 13, 2026
05637cc
Initial vis slicing
jmsexton03 Mar 13, 2026
1e29ed6
Add visualization intent model and cadence conversion
jmsexton03 Mar 13, 2026
615fe05
Add runtime intent routing with execution intent model
jmsexton03 Mar 14, 2026
66e52d6
Draft planned fixes for catch-up slice 3 (catchup_3_merge_schemas_ext…
jmsexton03 Mar 16, 2026
7e50edc
fix(slice-3): restore transient retries and walltime-aware monitoring
jmsexton03 Mar 16, 2026
6eb042c
fix(slice-3): restore visible amsc-i2 provider as litellm alias
jmsexton03 Mar 16, 2026
cc44226
fix(slice-13): make route tokens hashable and restore poll exception …
jmsexton03 Mar 16, 2026
7156ffd
fix(stack): complete slice-1/11/12 fixes and normalize job statuses
jmsexton03 Mar 16, 2026
05f6368
fix(slices-15-16): harden schema pointer retargeting and build-all ch…
jmsexton03 Mar 17, 2026
ac44a24
fix(slice-17): guard zero-sum simple baseline weights
jmsexton03 Mar 17, 2026
2cb23eb
fix(slice-17): gate ERF tests on local repo availability
jmsexton03 Mar 17, 2026
4216063
fix(slice-8): wire clarification handler into runtime graph
jmsexton03 Mar 17, 2026
99b8e01
fix(slices-8-17): enforce schema staleness policy and restore clarifi…
jmsexton03 Mar 17, 2026
c6a328b
chore(matrix): reconcile slices 8 and 17 status with committed fixes
jmsexton03 Mar 17, 2026
e1b787b
fix(slice-6): persist preconfirm approvals in reviewer node updates
jmsexton03 Mar 17, 2026
d89a306
fix(slice-7): avoid false unresolved prompt in non-interactive AI-fil…
jmsexton03 Mar 17, 2026
8f09c12
fix(slice-18): prefer case-derived ERF central build fallback over de…
jmsexton03 Mar 17, 2026
5cd7765
fix(slice-19): prevent duplicate rate-limit reruns and correct wave f…
jmsexton03 Mar 17, 2026
13681a8
fix(slice-6): treat missing benchmark validation data as unavailable
jmsexton03 Mar 17, 2026
98386d2
fix(slice-7): align clarification_questions GraphState contract with …
jmsexton03 Mar 17, 2026
daa6984
fix(slice-7): fail fast on unknown sweep poll statuses
jmsexton03 Mar 17, 2026
5e6ff22
fix(slice-2): harden priority-case boost and regime alias parsing
jmsexton03 Mar 17, 2026
83e1fb9
fix(slice-4): sanitize mcp caller_action and finalize p2 findings
jmsexton03 Mar 17, 2026
86948ef
fix(slices-6-14-18): close remaining findings and finalize matrix
jmsexton03 Mar 17, 2026
7bbebbc
fix: resolve full-run failure cluster in input writer, sweep polling,…
jmsexton03 Mar 17, 2026
a904cc5
integration: normalize slice 5 matrix status to fixed_on_stacked_branch
jmsexton03 Mar 17, 2026
73f37cf
docs: record fix_stack_main coverage snapshot and junit evidence
jmsexton03 Mar 18, 2026
fce94d1
Layer erf_test_visuals onto fix_stack_main
jmsexton03 Mar 18, 2026
d0a6c68
sync ERF dependency pin and startup readiness docs
jmsexton03 Mar 18, 2026
e0f45df
add first-run readiness red tests and integration clone coverage
jmsexton03 Mar 18, 2026
74c5601
Implement Phase 5 startup readiness preflight logic
jmsexton03 Mar 18, 2026
a5ecfd6
Rebuild ERF FAISS artifacts and refresh schema rename outputs
jmsexton03 Mar 18, 2026
6b43c6b
Set default FAISS embedding model to lbl/nomic-embed-text
jmsexton03 Mar 18, 2026
dc8b2ba
Add startup preflight hook in main with TTY/non-TTY coverage
jmsexton03 Mar 18, 2026
0053f42
Improve preflight mismatch remediation guidance and non-TTY hint
jmsexton03 Mar 18, 2026
417e194
Improve interactive preflight UX for ERF mismatch and repo selection
jmsexton03 Mar 18, 2026
65d4337
Refactor executable discovery policy and runner fallbacks
jmsexton03 Mar 18, 2026
c158109
Prefer case-derived solver over default in runners
jmsexton03 Mar 19, 2026
f2298df
Refactor solver compile flow to use config policy
jmsexton03 Mar 19, 2026
8e05375
Stream and log preflight clone progress with SSH fallback
jmsexton03 Mar 19, 2026
69f2faa
Resolve local submit executable via solver build policy
jmsexton03 Mar 19, 2026
45f1793
Use solver policy for superfacility executable selection
jmsexton03 Mar 19, 2026
8a45cf0
Add interactive development+rebuild path for ERF commit mismatch
jmsexton03 Mar 19, 2026
a701e67
Propagate interactive repo selection and rerun preflight checks
jmsexton03 Mar 19, 2026
86b5092
Add tracked ERF first-run auto-setup matrix script
jmsexton03 Mar 19, 2026
9e6ab1d
Add continue+rebuild option and progress logs for ERF mismatch
jmsexton03 Mar 19, 2026
5517f94
Make rebuild check optional and avoid repeated interactive rebuild loops
jmsexton03 Mar 19, 2026
24dcbdc
Waive same-run ERF mismatch after successful rebuild
jmsexton03 Mar 19, 2026
a7aac16
Prefer runner run directory in visualization node
jmsexton03 Mar 19, 2026
0582f24
Merge remote-tracking branch 'amrex-codes/development' into preflight…
jmsexton03 Mar 26, 2026
e91b1e6
restore post-merge test contracts and clean ERF schema artifact
jmsexton03 Mar 26, 2026
5c3d3f1
Remove scripts and local outputs
jmsexton03 Mar 26, 2026
9b0d7e0
Added additional skips for spurious tests
jmsexton03 Mar 26, 2026
f40a532
Added preflight stubs to CLI integration tests
jmsexton03 Mar 26, 2026
6e70c7d
Implement code-gated viz mapping with clarification disambiguation
jmsexton03 Mar 26, 2026
c33f5b2
Gate solver-dependent viz tests and assert catalog hard-fail
jmsexton03 Mar 26, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .dependencies.json
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
"erf": {
"url": "https://github.com/erf-model/ERF.git",
"branch": "development",
"commit": "1df48173da427f57a8201e157518afa7fd2e73ee"
"commit": "5613ec3943a33d5f0b4f954e34c4e3ff5559a945"
},
"remora": {
"url": "https://github.com/AMReX-Codes/REMORA.git",
Expand Down
8 changes: 8 additions & 0 deletions database/configs/amrex_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,3 +52,11 @@ class AMReXConfig(BaseAMReXConfig):
priority_cases = [
"Tests/Amr/Advection_AmrCore",
]

@classmethod
def get_plotfile_period_param(cls) -> str | None:
return "amr.plot_per"

@classmethod
def get_plotfile_step_interval_param(cls) -> str | None:
return "amr.plot_int"
194 changes: 194 additions & 0 deletions database/configs/base_amrex_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -172,6 +172,32 @@ class BaseAMReXConfig:

default_exec_pattern: ClassVar[str | None] = None
"""Glob pattern for default executable within default_exec_repo_path."""
build_system_preference: ClassVar[str] = "gnumake"
"""Preferred build system for executable discovery (e.g., gnumake, cmake)."""
executable_search_path_templates: ClassVar[list[str]] = ["{central_build_dir}"]
"""Ordered executable search templates used by runtime runner fallbacks."""
cmake_executable_names: ClassVar[list[str]] = []
"""Executable filenames emitted by CMake workflows (e.g., erf_exec)."""
cmake_executable_ignores_accel_suffix: ClassVar[bool] = False
"""If True, CMake executables are treated as feature-agnostic names."""
gnumake_executable_globs: ClassVar[list[str]] = ["*.ex"]
"""Executable glob patterns emitted by GNUmake workflows."""
cmake_source_dir_template: ClassVar[str] = "{repo_root}"
"""CMake source directory template for compile orchestration."""
cmake_build_dir_template: ClassVar[str] = "{repo_root}/build"
"""CMake build directory template for compile orchestration."""
cmake_install_prefix_template: ClassVar[str | None] = None
"""Optional CMake install prefix template."""
cmake_configure_args: ClassVar[list[str]] = []
"""Additional args for `cmake -S ... -B ...`."""
cmake_build_args: ClassVar[list[str]] = []
"""Additional args for `cmake --build ...`."""
cmake_install_args: ClassVar[list[str]] = []
"""Additional args for `cmake --install ...`."""
gnumake_clean_targets: ClassVar[list[str]] = ["realclean"]
"""GNUmake clean targets executed before build."""
gnumake_build_args: ClassVar[list[str]] = ["USE_MPI=TRUE", "DEBUG=FALSE"]
"""GNUmake build flag defaults."""

# === Solver Heuristics (Config-Driven) ===
selection_keywords: ClassVar[list[str]] = []
Expand Down Expand Up @@ -2076,6 +2102,68 @@ def resolve_default_inputs_path(cls, repo_root: Path | None) -> Path | None:
return base / "inputs"
return None

@classmethod
def get_build_system_preference(cls) -> str:
return str(getattr(cls, "build_system_preference", "gnumake")).strip().lower()

@classmethod
def get_executable_search_path_templates(cls) -> list[str]:
templates = getattr(cls, "executable_search_path_templates", [])
return [str(item) for item in templates]

@classmethod
def get_cmake_executable_names(cls) -> list[str]:
names = getattr(cls, "cmake_executable_names", [])
return [str(item) for item in names]

@classmethod
def cmake_ignores_accel_suffix(cls) -> bool:
return bool(getattr(cls, "cmake_executable_ignores_accel_suffix", False))

@classmethod
def get_gnumake_executable_globs(cls) -> list[str]:
globs = getattr(cls, "gnumake_executable_globs", [])
return [str(item) for item in globs] if globs else ["*.ex"]

@classmethod
def get_cmake_source_dir_template(cls) -> str:
return str(getattr(cls, "cmake_source_dir_template", "{repo_root}"))

@classmethod
def get_cmake_build_dir_template(cls) -> str:
return str(getattr(cls, "cmake_build_dir_template", "{repo_root}/build"))

@classmethod
def get_cmake_install_prefix_template(cls) -> str | None:
value = getattr(cls, "cmake_install_prefix_template", None)
return None if value is None else str(value)

@classmethod
def get_cmake_configure_args(cls) -> list[str]:
return [str(item) for item in getattr(cls, "cmake_configure_args", [])]

@classmethod
def get_cmake_build_args(cls) -> list[str]:
return [str(item) for item in getattr(cls, "cmake_build_args", [])]

@classmethod
def get_cmake_install_args(cls) -> list[str]:
return [str(item) for item in getattr(cls, "cmake_install_args", [])]

@classmethod
def get_gnumake_clean_targets(cls) -> list[str]:
targets = getattr(cls, "gnumake_clean_targets", None)
if targets is None:
return ["realclean"]
return [str(item) for item in targets] or ["realclean"]

@classmethod
def get_gnumake_build_args(cls) -> list[str]:
args = getattr(cls, "gnumake_build_args", None)
if args is None:
args = getattr(cls, "gnumake_flags", ["USE_MPI=TRUE", "DEBUG=FALSE"])
return [str(item) for item in args]

@classmethod
def get_slurm_metadata(cls) -> dict[str, str]:
"""
Expand Down Expand Up @@ -2296,6 +2384,68 @@ def get_viz_variable_catalog(cls, repo_root: Path | None = None) -> list[dict[st
return []

@classmethod
def get_viz_tier1_intents(cls) -> dict[str, dict[str, Any]]:
"""
Return canonical semantic visualization intents (Tier 1).
"""
return {
"temperature": {"aliases": ["temperature", "temp", "thermal"]},
"velocity": {"aliases": ["velocity", "speed"]},
"vertical_velocity": {
"aliases": [
"vertical velocity",
"vertical_velocity",
"w-velocity",
"w velocity",
"updraft",
"downdraft",
]
},
"pressure": {"aliases": ["pressure", "pres"]},
"density": {"aliases": ["density", "rho"]},
"vorticity": {"aliases": ["vorticity", "vort"]},
"cloud_water": {
"aliases": [
"cloud water",
"cloud_water",
"liquid water",
"cloud liquid",
"qc",
]
},
}

@classmethod
def build_viz_tier2_candidates(cls, repo_root: Path | None = None) -> dict[str, list[dict[str, Any]]]:
"""
Build solver candidates (Tier 2) from live source catalog.
"""
catalog = cls.get_viz_variable_catalog(repo_root=repo_root)
if not catalog:
return {}

intents = cls.get_viz_tier1_intents()
candidates: dict[str, list[dict[str, Any]]] = {}
for token, spec in intents.items():
aliases = {token.lower()}
for alias in spec.get("aliases", []) or []:
aliases.add(str(alias).strip().lower())
token_candidates: list[dict[str, Any]] = []
for entry in catalog:
if not isinstance(entry, dict):
continue
name = str(entry.get("name", "")).strip()
if not name:
continue
entry_aliases = {name.lower()}
for alias in entry.get("aliases", []) or []:
entry_aliases.add(str(alias).strip().lower())
if aliases.intersection(entry_aliases):
token_candidates.append(dict(entry))
if token_candidates:
candidates[token] = token_candidates
return candidates

def get_default_slice_axis(cls) -> str | None:
"""
Return preferred default slice-normal axis for visualization.
Expand All @@ -2304,6 +2454,50 @@ def get_default_slice_axis(cls) -> str | None:
"""
return None

@classmethod
def get_plotfile_var_param(cls) -> str:
"""
Return solver-specific parameter key for plot variable selection.
"""
return "amr.plot_vars"

@classmethod
def get_plot_var_param_candidates(cls) -> list[str]:
"""
Return ordered plot-var ParmParse candidate keys (primary first).
"""
return [cls.get_plotfile_var_param()]

@classmethod
def get_plotfile_period_param(cls) -> str | None:
"""
Return solver-specific time-based plot cadence parameter, if supported.
"""
return None

@classmethod
def get_plotfile_step_interval_param(cls) -> str | None:
"""
Return solver-specific step-based plot interval parameter, if supported.
"""
return None

@classmethod
def supports_physical_time_cadence(cls) -> bool:
"""
Return whether solver time-based cadence can be interpreted from seconds.
"""
return True

@classmethod
def convert_plot_cadence_prompt_seconds_to_solver_time(cls, seconds: float) -> float | None:
"""
Convert prompt seconds into solver-time cadence units.

Default behavior assumes solver time is seconds (identity transform).
"""
return float(seconds)

@classmethod
def _resource_bytes_per_cell(cls, config: dict[str, Any]) -> int:
return 200
Expand Down
39 changes: 39 additions & 0 deletions database/configs/erf_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,22 @@ def get_default_slice_axis(cls) -> str | None:
"""
return "y"

@classmethod
def get_plotfile_var_param(cls) -> str:
return "erf.plot_vars_1"

@classmethod
def get_plotfile_period_param(cls) -> str | None:
return "erf.plot_per_1"

@classmethod
def get_plotfile_step_interval_param(cls) -> str | None:
return "erf.plot_int_1"

@classmethod
def get_plot_var_param_candidates(cls) -> list[str]:
return ["erf.plot_vars_1", "amr.plot_vars", "plot_vars"]

# === Registry Metadata ===
github_org = "erf-model"
github_repo = "ERF"
Expand All @@ -38,6 +54,29 @@ def get_default_slice_axis(cls) -> str | None:
default_inputs_path = "Exec/RegTests/Bubble/inputs"
default_exec_repo_path = "Exec/RegTests/Bubble"
default_exec_pattern = "ERF*ex"
build_system_preference = "cmake"
preferred_build_system = "cmake"
executable_search_path_templates = [
"{repo_root}/build/Exec",
"{repo_root}/Build/Exec",
"{repo_root}/install/bin",
"{central_build_dir}",
]
cmake_executable_names = ["erf_exec"]
cmake_executable_ignores_accel_suffix = True
gnumake_executable_globs = ["ERF*ex"]
cmake_source_dir_template = "{repo_root}"
cmake_build_dir_template = "{repo_root}/build"
cmake_install_prefix_template = None
cmake_configure_args = [
"-DCMAKE_BUILD_TYPE=Release",
"-DERF_ENABLE_MPI=ON",
]
cmake_build_args = []
cmake_install_args = []
gnumake_clean_targets = ["realclean"]
gnumake_build_args = ["USE_MPI=TRUE", "DEBUG=FALSE"]
gnumake_flags = ["USE_MPI=TRUE", "DEBUG=FALSE"]

selection_keywords = [
"abl",
Expand Down
16 changes: 16 additions & 0 deletions database/configs/pelelmex_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -167,6 +167,22 @@ class PeleLMeXConfig(BaseAMReXConfig):
"prompt": "What {section}.atol and {section}.rtol should I use for PeleLMeX with a QSSA mechanism?",
}

@classmethod
def get_plotfile_var_param(cls) -> str:
return "peleLM.derive_plot_vars"

@classmethod
def get_plot_var_param_candidates(cls) -> list[str]:
return ["peleLM.derive_plot_vars", "amr.plot_vars", "plot_vars"]

@classmethod
def get_plotfile_period_param(cls) -> str | None:
return "amr.plot_per"

@classmethod
def get_plotfile_step_interval_param(cls) -> str | None:
return "amr.plot_int"

prompt_templates: ClassVar[dict[str, Any]] = {
"misc": {
"schema_scan": """Identify requested concepts from the case description that do not map to known baseline or schema parameters.
Expand Down
8 changes: 8 additions & 0 deletions database/configs/remora_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,14 @@ def get_default_slice_axis(cls) -> str | None:
"""
return "y"

@classmethod
def get_plotfile_period_param(cls) -> str | None:
return "remora.plot_int_time"

@classmethod
def get_plotfile_step_interval_param(cls) -> str | None:
return "remora.plot_int"

# === Registry Metadata ===
github_org = "AMReX-Codes"
github_repo = "REMORA"
Expand Down
41 changes: 41 additions & 0 deletions database/faiss/cborg/build_session_manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,32 @@
{
"build_script": "build_all_indices.py",
"entries": [
{
"build_script": "build_all_indices.py",
"dependencies_commit": null,
"embedding_dimension": null,
"embedding_model": "lbl/nomic-embed-text",
"embedding_provider": "cborg",
"generated_at": "2026-03-18T14:44:08.389712+00:00",
"level": "0",
"manifest_path": "level0/faiss_provenance.json",
"repo_commit": null,
"solver": null,
"version": "1"
},
{
"build_script": "build_all_indices.py",
"dependencies_commit": "5613ec3943a33d5f0b4f954e34c4e3ff5559a945",
"embedding_dimension": null,
"embedding_model": "lbl/nomic-embed-text",
"embedding_provider": "cborg",
"generated_at": "2026-03-18T14:45:12.017072+00:00",
"level": "1",
"manifest_path": "level1/erf_faiss_provenance.json",
"repo_commit": "5613ec3943a33d5f0b4f954e34c4e3ff5559a945",
"solver": "erf",
"version": "1"
},
{
"build_script": "build_all_indices.py",
"dependencies_commit": "99914444329f6be784c6a153581c53bc60ae8937",
Expand All @@ -26,6 +53,19 @@
"solver": "erf",
"version": "1"
},
{
"build_script": "build_all_indices.py",
"dependencies_commit": "5613ec3943a33d5f0b4f954e34c4e3ff5559a945",
"embedding_dimension": null,
"embedding_model": "lbl/nomic-embed-text",
"embedding_provider": "cborg",
"generated_at": "2026-03-18T14:58:05.501994+00:00",
"level": "2",
"manifest_path": "level2/erf_faiss_provenance.json",
"repo_commit": "5613ec3943a33d5f0b4f954e34c4e3ff5559a945",
"solver": "erf",
"version": "1"
},
{
"build_script": "build_all_indices.py",
"dependencies_commit": "a6b4dff152c2cad2cf0edee58099eefffd2ba328",
Expand Down Expand Up @@ -66,5 +106,6 @@
"version": "1"
}
],
"generated_at": "2026-03-18T14:58:05.507710+00:00",
"version": "1"
}
Binary file modified database/faiss/cborg/erf_case_details/index.faiss
Binary file not shown.
Binary file modified database/faiss/cborg/erf_case_details/index.pkl
Binary file not shown.
Binary file modified database/faiss/cborg/erf_case_names/index.faiss
Binary file not shown.
Binary file modified database/faiss/cborg/erf_case_names/index.pkl
Binary file not shown.
Binary file modified database/faiss/cborg/erf_case_structure/index.faiss
Binary file not shown.
Binary file modified database/faiss/cborg/erf_case_structure/index.pkl
Binary file not shown.
Binary file modified database/faiss/cborg/erf_input_templates/index.faiss
Binary file not shown.
Binary file modified database/faiss/cborg/erf_input_templates/index.pkl
Binary file not shown.
Loading
Loading