6.3 KiB
whetstone_RSA — Handoff 2026-03-31
Status
Foundational architecture, ontology, and C++ runtime scaffold are in place.
This project is now beyond brainstorming. It has:
- a clear bounded-decision contract
- a diagnosis and suitability model
- an AST-first integration direction
- an initial C++ implementation scaffold that builds and runs
What Was Completed
1. Library framing and architecture
Core documents written:
README.mdROADMAP.mddocs/architecture.mddocs/entropy_model_sizing.mddocs/evaluation_policy.mddocs/gate_failure_taxonomy.mddocs/diagnosis_api.mddocs/probe_execution_flow.mddocs/runtime_contract.mddocs/probe_registry.md
2. WhetstoneDSL case study
The library was grounded using whetstone_DSL/specialists as a case study, but
without making whetstone_DSL the conceptual home of RSA.
Key case-study docs:
docs/case_studies/whetstone_dsl.mddocs/gate_rubric.md
Important architectural conclusion:
whetstone_DSLis a consumer of RSA and also a future producer of RSA-native architectures in generated softwarewhetstone_RSAremains the reusable bounded-decision substrate
3. Contract ontology refactor
The ontology was tightened into applied-data-science-style orthogonal fields rather than vague single-label categories.
Canonical doc:
docs/decision_contract_ontology.md
Current preferred fields:
input_structureinput_modalityoutput_topologyoutput_constraintpolicy_stability
Important conclusion:
- RSA should be defined by bounded output contract and policy behavior
- it should not be defined by one model family or one input adjective
4. Adoption and AST-first direction
Documents written:
docs/adoption_model.mddocs/whetstone_ast_first_integration.md
Important conclusion:
whetstone_RSAshould be Whetstone-AST-first, not merely AST-first- the semantic source of truth should eventually live in
whetstone_DSL - the C++ layer in this repo is a runtime projection/bootstrap, not the ideal permanent semantic source of truth
5. Backend-selection placeholder
Document written:
docs/backend_selection.md
Important conclusion:
Three different decisions must stay separate:
Layer suitability- deterministic / rsa / slm / llm / human
Gate shape- binary / multiclass / factorized / hierarchical
Backend selection- transformer / gradient boosting / forest / Bayes / RL / hybrid / etc.
This was written down so the idea is not lost.
6. C++ runtime scaffold
A modern C++ scaffold now exists and builds successfully.
Key files:
CMakeLists.txtinclude/whetstone_rsa/types.hinclude/whetstone_rsa/probe.hinclude/whetstone_rsa/probe_registry.hinclude/whetstone_rsa/diagnosis_engine.hinclude/whetstone_rsa/suitability_assessor.hinclude/whetstone_rsa/probes/confidence_threshold_probe.hsrc/probe_registry.cppsrc/diagnosis_engine.cppsrc/suitability_assessor.cppsrc/probes/confidence_threshold_probe.cppexamples/diagnose_demo.cpp
Current implemented concepts:
- ontology enums for contract fields
GateDefinitionGateEvidenceGateDiagnosisGateSuitabilityProbeRegistryDiagnosisEngineSuitabilityAssessor- one concrete probe:
confidence_threshold_probe
7. Schemas
Schemas currently present:
schemas/gate_definition_v0.jsonschemas/gate_evidence_v0.jsonschemas/gate_diagnosis_v0.json
Note:
gate_definition_v0.jsonstill needs to be updated to include the new ontology fields now present in the C++ types
Verified Runtime State
The C++ project was configured and built successfully with CMake.
The demo executable:
build/whetstone_rsa_demo
was run successfully and currently demonstrates:
- suitability assessment for a bounded gate
- diagnosis using the registered confidence-threshold probe
- guarded deployment recommendation output
Current Conceptual Position
The cleanest current definition is:
- RSA is a model-agnostic bounded decision contract
- it sits directly above deterministic tooling
- it is not inherently transformer-based
- it is not inherently RL
- it can be filled by many backend families as long as the contract is preserved
This distinction matters and should be preserved.
Important Things Not To Lose
1. RSA is not the whole decision stack
RSA is one container family, not the entire automation ontology.
It is best thought of as:
- bounded output contract
- confidence / abstain / retry / escalation
- deterministic or strongly structured downstream execution
2. The broad selector is separate
There is a broader meta-question:
- should a decision be deterministic, RSA, SLM, LLM, or human?
That is a different layer from RSA itself.
3. Backend selection is also separate
Even after something is judged to be an RSA gate, there is a separate decision:
- what backend family should implement it?
Do not collapse this into RSA’s core identity.
4. Whetstone AST should eventually own the semantic model
Do not let the hand-authored C++ structs become the permanent semantic source of truth if the Whetstone semantic representation becomes available.
Immediate Next Steps
1. Bring schemas up to the new ontology
Update:
schemas/gate_definition_v0.json
to include the new contract fields reflected in C++:
input_structureinput_modalityoutput_topologyoutput_constraintpolicy_stability
2. Add more probes
Best next probes:
factorization_probeschema_stability_probe
These are the probes most directly motivated by the WhetstoneDSL case study.
3. Add backend-selection types to the C++ core
Likely next types:
BackendFamilyBackendSuitabilityBackendBenchmarkResult
This was intentionally documented but not yet implemented.
4. Define Whetstone-side semantic entities
Longer-term but important:
Define the RSA domain model in Whetstone semantic terms rather than continuing to grow the C++ model as if it were the source of truth.
Likely entities:
GateDefinitionGateEvidenceGateDiagnosisGateSuitabilityProbeDefinition- policy and diagnosis contracts
Suggested Commit Boundary
This handoff assumes the current state is one foundational initial commit:
- docs
- schemas
- C++ scaffold
- demo
That is the right scope for an initial baseline.