onto-mcp 0.3.0 → 0.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.onto/authority/core-lexicon.yaml +12 -0
- package/.onto/domains/software-engineering/competency_qs.md +192 -63
- package/.onto/domains/software-engineering/concepts.md +67 -5
- package/.onto/domains/software-engineering/conciseness_rules.md +22 -2
- package/.onto/domains/software-engineering/dependency_rules.md +78 -8
- package/.onto/domains/software-engineering/domain_scope.md +181 -150
- package/.onto/domains/software-engineering/extension_cases.md +318 -542
- package/.onto/domains/software-engineering/logic_rules.md +75 -3
- package/.onto/domains/software-engineering/problem_framing_profile.md +29 -2
- package/.onto/domains/software-engineering/prompt_interface.md +122 -0
- package/.onto/domains/software-engineering/structure_spec.md +53 -4
- package/.onto/principles/llm-native-development-guideline.md +20 -0
- package/.onto/principles/productization-charter.md +6 -0
- package/.onto/processes/evolve/material-kind-adapter-contract.md +6 -0
- package/.onto/processes/reconstruct/reconstruct-boundary-contract.md +468 -81
- package/.onto/processes/reconstruct/reconstruct-execution-ux-contract.md +177 -0
- package/.onto/processes/reconstruct/source-profile-contract.md +39 -6
- package/.onto/processes/reconstruct/top-level-concept-discovery-contract.md +387 -0
- package/.onto/processes/review/binding-contract.md +8 -0
- package/.onto/processes/review/lens-registry.md +16 -0
- package/.onto/processes/review/pre-dispatch-contracts.md +34 -13
- package/.onto/processes/review/productized-live-path.md +3 -1
- package/.onto/processes/shared/pipeline-execution-ledger-contract.md +185 -0
- package/.onto/processes/shared/target-material-kind-contract.md +24 -2
- package/.onto/roles/axiology.md +7 -2
- package/AGENTS.md +4 -2
- package/README.md +52 -29
- package/dist/core-api/reconstruct-api.js +92 -5
- package/dist/core-api/review-api.js +1744 -371
- package/dist/core-runtime/cli/mock-review-unit-executor.js +17 -0
- package/dist/core-runtime/cli/render-review-final-output.js +9 -0
- package/dist/core-runtime/cli/review-invoke.js +387 -55
- package/dist/core-runtime/cli/run-review-prompt-execution.js +361 -90
- package/dist/core-runtime/path-boundary.js +58 -0
- package/dist/core-runtime/pipeline-execution-ledger.js +100 -0
- package/dist/core-runtime/reconstruct/artifact-types.js +33 -1
- package/dist/core-runtime/reconstruct/materialize-preparation.js +54 -4
- package/dist/core-runtime/reconstruct/pipeline-execution-ledger.js +342 -0
- package/dist/core-runtime/reconstruct/post-seed-validation.js +630 -0
- package/dist/core-runtime/reconstruct/record.js +105 -1
- package/dist/core-runtime/reconstruct/run.js +1594 -38
- package/dist/core-runtime/reconstruct/seed-candidate-validation.js +29 -0
- package/dist/core-runtime/review/continuation-plan.js +160 -0
- package/dist/core-runtime/review/execution-plan-boundary.js +123 -0
- package/dist/core-runtime/review/materializers.js +8 -3
- package/dist/core-runtime/review/pipeline-execution-ledger.js +250 -0
- package/dist/core-runtime/review/review-artifact-utils.js +15 -2
- package/dist/core-runtime/review/review-invocation-runner.js +604 -0
- package/dist/core-runtime/target-material-kind.js +43 -5
- package/dist/mcp/server.js +289 -59
- package/dist/mcp/tool-schemas.js +28 -2
- package/package.json +4 -2
- package/.onto/domains/llm-native-development/competency_qs.md +0 -430
- package/.onto/domains/llm-native-development/concepts.md +0 -242
- package/.onto/domains/llm-native-development/conciseness_rules.md +0 -163
- package/.onto/domains/llm-native-development/dependency_rules.md +0 -216
- package/.onto/domains/llm-native-development/domain_scope.md +0 -197
- package/.onto/domains/llm-native-development/extension_cases.md +0 -474
- package/.onto/domains/llm-native-development/logic_rules.md +0 -123
- package/.onto/domains/llm-native-development/prompt_interface.md +0 -49
- package/.onto/domains/llm-native-development/structure_spec.md +0 -245
|
@@ -1,14 +1,20 @@
|
|
|
1
1
|
# Reconstruct Boundary Contract
|
|
2
2
|
|
|
3
|
-
> Status: design contract with bounded
|
|
4
|
-
> Purpose: define how `reconstruct` should
|
|
5
|
-
> retired runtime ontology generator
|
|
3
|
+
> Status: design contract with bounded observer runtime and integral exploration target.
|
|
4
|
+
> Purpose: define how `reconstruct` should operate as an integral exploration
|
|
5
|
+
> loop without reviving the retired runtime ontology generator or legacy
|
|
6
|
+
> Explorer/fact_type path.
|
|
6
7
|
|
|
7
8
|
## 1. Position
|
|
8
9
|
|
|
9
10
|
`reconstruct` is a host-LLM-led ontology reconstruction process with
|
|
10
11
|
deterministic runtime gates. It is not a runtime ontology generator.
|
|
11
12
|
|
|
13
|
+
`reconstruct` uses integral exploration. Runtime observes bounded source
|
|
14
|
+
structure, host LLM lenses judge semantic meaning and gaps, an LLM-authored
|
|
15
|
+
source frontier selects unjudged source refs for the next observation round, and
|
|
16
|
+
runtime validates that frontier before observing the next source slice.
|
|
17
|
+
|
|
12
18
|
`reconstruct` is material-aware from the start. A reconstruction target may be
|
|
13
19
|
code, a spreadsheet, a document, a database, a mixed bundle, or an unsupported
|
|
14
20
|
material. The process must classify the target's `target_material_kind` before
|
|
@@ -19,25 +25,29 @@ The shared goal contract for this axis is
|
|
|
19
25
|
|
|
20
26
|
The active full product runtime remains `review`. `reconstruct` now has a
|
|
21
27
|
bounded MCP surface for source profile listing, source observation, directive
|
|
22
|
-
validation,
|
|
23
|
-
not a general ontology generator: it requires pluggable LLM-owned directive
|
|
24
|
-
authors and confirmation providers for Seed content,
|
|
25
|
-
|
|
28
|
+
validation, direct-call semantic execution, status, and result reads. The runtime path
|
|
29
|
+
is not a general ontology generator: it requires pluggable LLM-owned directive
|
|
30
|
+
authors and confirmation providers for Seed content, claim realization,
|
|
31
|
+
competency questions, assessments, failure classifications, revision proposals,
|
|
32
|
+
stop decisions, and final output.
|
|
26
33
|
|
|
27
34
|
Retired material stays retired:
|
|
28
35
|
|
|
29
36
|
| Retired surface | Current status |
|
|
30
37
|
|---|---|
|
|
31
|
-
| `development-records/archive/retired-processes-20260526/processes/reconstruct.md` | historical integral-
|
|
32
|
-
| `development-records/archive/retired-runtime-legacy-20260526/explorers/` | historical
|
|
38
|
+
| `development-records/archive/retired-processes-20260526/processes/reconstruct.md` | historical Explorer/fact_type implementation; integral-loop principle may be reintroduced only under the current ownership boundary |
|
|
39
|
+
| `development-records/archive/retired-runtime-legacy-20260526/explorers/` | historical semantic Explorer profiles; do not revive as runtime observers |
|
|
33
40
|
| `src/core-runtime/evolve/commands/reconstruct.ts` | retired placeholder path that wrote `ontology-draft.md` |
|
|
34
41
|
|
|
35
42
|
The current design seat is:
|
|
36
43
|
|
|
37
44
|
```text
|
|
38
45
|
.onto/processes/reconstruct/reconstruct-boundary-contract.md
|
|
46
|
+
.onto/processes/reconstruct/reconstruct-execution-ux-contract.md
|
|
47
|
+
.onto/processes/reconstruct/top-level-concept-discovery-contract.md
|
|
39
48
|
.onto/processes/reconstruct/source-profile-contract.md
|
|
40
49
|
.onto/processes/reconstruct/source-profiles/
|
|
50
|
+
.onto/processes/shared/pipeline-execution-ledger-contract.md
|
|
41
51
|
```
|
|
42
52
|
|
|
43
53
|
The planned implementation seat is:
|
|
@@ -52,15 +62,17 @@ src/mcp/server.ts
|
|
|
52
62
|
Current runtime helpers under `src/core-runtime/reconstruct/` load source
|
|
53
63
|
profiles, write preparation artifacts, validate source-observation boundaries,
|
|
54
64
|
validate `SourceObservationDirective` evidence refs, validate
|
|
55
|
-
`SeedCandidateDirective` shape plus evidence refs,
|
|
56
|
-
metrics, and assemble `reconstruct-record.yaml`. The
|
|
57
|
-
|
|
58
|
-
|
|
65
|
+
`SeedCandidateDirective` shape plus evidence refs, validate post-Seed artifacts,
|
|
66
|
+
compute deterministic metrics, and assemble `reconstruct-record.yaml`. The
|
|
67
|
+
implemented direct-call slice now includes initial source frontier, lens
|
|
68
|
+
judgment, exploration synthesis, source-frontier validation, Seed, confirmation,
|
|
69
|
+
CQ, assessment, failure, revision, stop, and final-output artifacts.
|
|
70
|
+
Domain-context selection remains explicitly deferred.
|
|
59
71
|
|
|
60
72
|
`src/core-api/reconstruct-api.ts` exposes these helpers as a bounded library
|
|
61
73
|
facade for MCP tooling. It can prepare reconstruct artifacts, list source
|
|
62
|
-
profiles, validate LLM-authored directive files, run the
|
|
63
|
-
records, and read status/result artifacts. It does not author semantic
|
|
74
|
+
profiles, validate LLM-authored directive files, run the direct-call reconstruct loop,
|
|
75
|
+
assemble records, and read status/result artifacts. It does not author semantic
|
|
64
76
|
directives.
|
|
65
77
|
|
|
66
78
|
Runtime implementation must not start from tool schemas alone. The ready order is:
|
|
@@ -114,40 +126,77 @@ design-local in this contract.
|
|
|
114
126
|
Do not introduce a TypeScript type, public artifact field, or MCP field with a
|
|
115
127
|
new reconstruct concept name before this gate is closed.
|
|
116
128
|
|
|
129
|
+
Seat categories:
|
|
130
|
+
|
|
131
|
+
- `shared`: registered in `.onto/authority/core-lexicon.yaml` and reusable
|
|
132
|
+
across processes.
|
|
133
|
+
- `reconstruct-local runtime`: may appear in reconstruct artifacts or TS
|
|
134
|
+
implementation only under this contract.
|
|
135
|
+
- `reconstruct-local semantic artifact`: LLM-authored artifact shape; runtime
|
|
136
|
+
may validate it but must not author its meaning.
|
|
137
|
+
- `directive shape`: structured LLM output name, not an ontology entity.
|
|
138
|
+
- `design shorthand`: prose-only helper term. It must not become a TS type,
|
|
139
|
+
MCP field, public artifact field, or runtime status value.
|
|
140
|
+
|
|
117
141
|
Current concept decisions:
|
|
118
142
|
|
|
119
143
|
| Name | Decision | Reason |
|
|
120
144
|
|---|---|---|
|
|
121
145
|
| `target_material_kind` | promoted shared term | Review, reconstruct, and evolve all need a target-material axis that is separate from domain, medium, target input kind, and artifact role. |
|
|
146
|
+
| `PipelineExecutionLedger` | promoted shared term | Review, reconstruct, evolve, and later pipelines need the same runtime-owned artifact trust/provenance projection. |
|
|
122
147
|
| `source_kind` | not used for material classification | Review already uses `source_kind` for context-source artifacts. Reconstruct must not overload it to mean code/spreadsheet/document/database. |
|
|
123
|
-
| `SourceProfile` | reconstruct
|
|
124
|
-
| `SourceObservation` | reconstruct
|
|
148
|
+
| `SourceProfile` | reconstruct-local runtime contract | A profile guides observation for one `target_material_kind`; it is not a semantic explorer. Public meaning is limited to the profile files under `.onto/processes/reconstruct/source-profiles/`. |
|
|
149
|
+
| `SourceObservation` | reconstruct-local runtime artifact | Runtime-produced structural observation with stable ids; not an ontology fact and not legacy `fact_type`. |
|
|
125
150
|
| `SourceAdapter` | implementation boundary | Adapter identity may appear in artifacts later, but it is not an entity. |
|
|
126
|
-
| `
|
|
127
|
-
| `
|
|
128
|
-
| `
|
|
151
|
+
| `ExplorationRound` | reconstruct-local runtime grouping | One bounded observe → lens judgment → synthesis → frontier cycle. It groups artifacts but does not own semantic truth. |
|
|
152
|
+
| `ReconstructLensJudgment` | reconstruct-local semantic artifact | LLM lens output that labels observations, names gaps, refines evidence certainty, and proposes next-source needs without directly traversing source. |
|
|
153
|
+
| `ExplorationSynthesis` | reconstruct-local semantic artifact | Host LLM synthesis that integrates lens judgments into a round result and source frontier without adding a new independent perspective. |
|
|
154
|
+
| `SourceFrontier` | reconstruct-local semantic artifact plus runtime validation | LLM-authored list of unjudged source refs requested for the next observation round, validated by runtime for boundary, support, duplication, and judgment coverage identity. |
|
|
155
|
+
| `ReconstructDirective` | directive shape | LLM-authored directive envelope, not an entity. |
|
|
156
|
+
| `OntologySeed` | reconstruct-local semantic artifact until promoted | Evidence-backed execution meaning contract confirmed by the user. Runtime may validate shape and refs but must not generate Seed meaning. |
|
|
157
|
+
| `SeedConfirmation` | reconstruct-local semantic artifact | User/host-mediated confirmation artifact for a Seed candidate; not a semantic concept by itself. |
|
|
158
|
+
| `CompetencyQuestion` | shared ontology-design term, reconstruct-local artifact instances | The term exists in core lexicon; reconstruct owns run-specific `competency-questions.yaml` artifact instances. |
|
|
159
|
+
| `ClaimRealization` | reconstruct-local semantic artifact | Claim-level stance about whether a Seed claim is observed behavior, declared intent, contract presence, fixture-only evidence, deferred/non-goal, or unknown. |
|
|
160
|
+
| `CompetencyQuestionAssessment` | reconstruct-local semantic artifact | LLM-authored assessment of every authoritative competency question against the confirmed Seed and evidence. |
|
|
161
|
+
| `FailureClassification` | reconstruct-local semantic artifact | LLM-authored explanation of why a competency question or claim cannot be trusted for the declared purpose. |
|
|
162
|
+
| `RevisionProposal` | reconstruct-local semantic artifact | LLM-authored bounded proposal to reuse, extend, rename, split, reject, or defer ontology content. |
|
|
129
163
|
| `ReconstructMetrics` | reconstruct design-local | Runtime projection from existing artifacts; counts and pass rates, not a quality judgment. |
|
|
130
164
|
| `StopDecision` | reconstruct design-local | LLM-authored directive that interprets metrics for the declared purpose. |
|
|
131
|
-
| `ReconstructRunManifest` | reconstruct design-local | Runtime execution manifest for
|
|
165
|
+
| `ReconstructRunManifest` | reconstruct design-local | Runtime execution manifest for reconstruct runs. |
|
|
132
166
|
| `FinalOutput` | shared artifact role, reconstruct-local seat | Human-readable result text grounded in reconstruct artifacts; not an ontology draft authority. |
|
|
133
|
-
| `
|
|
134
|
-
| `
|
|
167
|
+
| `ReconstructStageId` | reconstruct design-local | Stable append-only stage identifier for progress, manifests, status reads, and implementation planning. |
|
|
168
|
+
| `RuntimeGate` | design shorthand only | Runtime implementation must use named validation stages, boundary policy, and failure artifacts instead of a generic public concept. |
|
|
169
|
+
| `DomainContextPack` | design shorthand only | Use `domain-context-selection.yaml`, selected domain-document refs, and invocation binding rather than creating a new domain context entity. |
|
|
135
170
|
|
|
136
|
-
## 4.
|
|
171
|
+
## 4. Registered And Reconstruct-Local Terms
|
|
137
172
|
|
|
138
173
|
| Concept | Meaning | Owner |
|
|
139
174
|
|---|---|---|
|
|
140
175
|
| `TargetMaterialKind` | Shared runtime axis for how the target must be read or validated: `code`, `spreadsheet`, `document`, `database`, `mixed`, or `unknown` | `.onto/authority/core-lexicon.yaml` |
|
|
141
|
-
| `OntologySeed` | Smallest evidence-backed execution meaning contract confirmed by the user | LLM authored, user confirmed |
|
|
176
|
+
| `OntologySeed` | Smallest evidence-backed execution meaning contract confirmed by the user; reconstruct-local until promoted to shared lexicon | LLM authored, user confirmed |
|
|
142
177
|
| `SourceProfile` | Reconstruct-local observation profile for one `target_material_kind` | `.onto/processes/reconstruct/source-profiles/` |
|
|
143
178
|
| `SourceAdapter` | Runtime observer that returns material structure without ontology meaning | TS runtime |
|
|
144
179
|
| `SourceObservation` | Runtime-produced structural fact about paths, cells, formulas, schemas, headings, symbols, or code patterns | TS runtime |
|
|
180
|
+
| `ExplorationRound` | Bounded cycle that observes a source slice, runs reconstruct lens judgments, synthesizes gaps, and validates the next source frontier | runtime manifest plus host LLM artifacts |
|
|
181
|
+
| `ReconstructLensJudgment` | Lens-authored semantic judgment over observed source evidence, including candidate labels, gaps, certainty refinements, and next-source needs | host LLM |
|
|
182
|
+
| `ExplorationSynthesis` | Integrated round result that preserves lens disagreements and converts accepted gaps into a source frontier | host LLM |
|
|
183
|
+
| `SourceFrontier` | Synthesized request for the next unjudged source refs to observe, including rationale, priority, and expected evidence value | host LLM authored, runtime validated |
|
|
145
184
|
| `ReconstructDirective` | LLM-authored structured output submitted to a runtime gate | host LLM |
|
|
146
185
|
| `SeedConfirmation` | User/host-mediated decision over the Seed candidate before downstream questions and metrics | user/host mediated |
|
|
186
|
+
| `ClaimRealization` | Claim-level evidence stance used to separate observed runtime behavior from declared design intent, schema presence, fixture-only evidence, deferred scope, and unknowns | host LLM |
|
|
187
|
+
| `CompetencyQuestion` | Authoritative question set used to test the confirmed Seed for its declared purpose | host LLM |
|
|
188
|
+
| `CompetencyQuestionAssessment` | Answer status and evidence basis for every authoritative competency question | host LLM |
|
|
189
|
+
| `FailureClassification` | Cause classification for unanswered, contradicted, unsupported, or deferred questions and claims | host LLM |
|
|
190
|
+
| `RevisionProposal` | Bounded change proposal derived from failures and claim realization gaps | host LLM |
|
|
147
191
|
| `ReconstructMetrics` | Deterministic projection from validation, confirmation, and question artifacts | TS runtime |
|
|
148
|
-
| `ReconstructRunManifest` | Step and artifact-ref manifest for
|
|
149
|
-
| `
|
|
150
|
-
|
|
192
|
+
| `ReconstructRunManifest` | Step and artifact-ref manifest for reconstruct runs | TS runtime |
|
|
193
|
+
| `PipelineExecutionLedger` | Shared trust/provenance projection over reconstruct stages, validations, outputs, and upstream/downstream boundaries | TS runtime |
|
|
194
|
+
|
|
195
|
+
Design shorthand names such as `RuntimeGate` and `DomainContextPack` may appear
|
|
196
|
+
in explanatory prose only. Runtime and MCP schemas must expose the specific
|
|
197
|
+
stage or artifact names instead, such as
|
|
198
|
+
`seed-candidate-validation.yaml`, `domain-context-selection.yaml`, or
|
|
199
|
+
`source-frontier-validation.yaml`.
|
|
151
200
|
|
|
152
201
|
The domain axis and material axis must not be collapsed:
|
|
153
202
|
|
|
@@ -165,9 +214,9 @@ Initial bounded tools are exposed through `src/core-api/reconstruct-api.ts`.
|
|
|
165
214
|
| Tool | Status | Runtime responsibility | Explicit non-responsibility |
|
|
166
215
|
|---|---|---|---|
|
|
167
216
|
| `onto.list_source_profiles` | active | list source profiles, target material kinds, scan targets, and support status | choose ontology meaning |
|
|
168
|
-
| `onto.observe_source` | active | materialize target profile, inventory, source observations, and initial reconstruct record | infer entities, relations, actions, properties, or rules |
|
|
217
|
+
| `onto.observe_source` | active | materialize target profile, inventory, source observations, and initial reconstruct record for the bound target or a validated frontier | infer entities, relations, actions, properties, or rules |
|
|
169
218
|
| `onto.validate_reconstruct_directive` | active | validate LLM-authored source-observation or Seed-candidate directive shape and evidence refs | repair or rewrite the directive |
|
|
170
|
-
| `onto.reconstruct` | active | orchestrate the bounded
|
|
219
|
+
| `onto.reconstruct` | active | orchestrate the bounded artifact-backed path from target refs and intent through direct-call semantic authoring, runtime validation gates, final output, run manifest, and reconstruct record | author ontology meaning |
|
|
171
220
|
| `onto.reconstruct_status` | active | read `reconstruct-record.yaml` stage and artifact refs | infer missing semantic content |
|
|
172
221
|
| `onto.reconstruct_result` | active | read record, run manifest, and final output text | rewrite or improve the result |
|
|
173
222
|
|
|
@@ -175,11 +224,28 @@ MCP remains a thin tool surface. It must expose bounded runtime facts and prompt
|
|
|
175
224
|
inputs for host presentation; it must not become a second reconstruct semantics
|
|
176
225
|
implementation.
|
|
177
226
|
|
|
178
|
-
Current `onto.reconstruct` calls
|
|
179
|
-
`semanticAuthorRealization=
|
|
180
|
-
The run manifest records both
|
|
181
|
-
|
|
182
|
-
|
|
227
|
+
Current `onto.reconstruct` calls default to
|
|
228
|
+
`semanticAuthorRealization=direct_call` and
|
|
229
|
+
`confirmationProviderRealization=direct_call`. The run manifest records both
|
|
230
|
+
realization values. Missing provider/model/credential configuration, invalid
|
|
231
|
+
LLM-authored artifact shape, and failed runtime validation gates fail loud.
|
|
232
|
+
Test-only mock helpers may exist inside tests, but they are not product
|
|
233
|
+
completion evidence.
|
|
234
|
+
|
|
235
|
+
### 5.1 Execution Profile Truth
|
|
236
|
+
|
|
237
|
+
The run manifest must record an execution profile. These profile labels are
|
|
238
|
+
manifest/status values, not ontology concepts.
|
|
239
|
+
|
|
240
|
+
| Profile | Completion claim allowed | Required disclosure |
|
|
241
|
+
|---|---|---|
|
|
242
|
+
| `observer_gate_slice` | Runtime classified material, inventoried sources, observed structure, and validated available directive refs. | No Seed, lens judgment, domain context, frontier, CQ, revision, or final ontology direction may be implied. |
|
|
243
|
+
| `mock_semantic_slice` | Test/fixture-only harness exercised post-Seed artifact flow with mock semantic author and mock confirmation provider. | Mock authorship, skipped live exploration, skipped domain-context selection, skipped user confirmation, and narrowed downstream authority must be visible in manifest, status, result, and final output. This profile is not product completion evidence. |
|
|
244
|
+
| `full_integral_exploration` | Trusted observation, lens judgment, source frontier, domain-context, Seed, confirmation, CQ, assessment, failure, revision, metrics, stop, and final-output artifacts were produced or explicitly skipped with trusted reasons. | Every skipped or deferred stage must have stage status, reason, and downstream authority impact. |
|
|
245
|
+
|
|
246
|
+
A status of `completed` always means "completed for this execution profile".
|
|
247
|
+
It must not be rendered as completed full reconstruct unless the execution
|
|
248
|
+
profile is `full_integral_exploration` and all required stage trust gates pass.
|
|
183
249
|
|
|
184
250
|
## 6. Invocation And Boundary Prelude
|
|
185
251
|
|
|
@@ -204,24 +270,246 @@ from expanding their own boundary.
|
|
|
204
270
|
0. InvocationInterpretation and InvocationBinding
|
|
205
271
|
1. Target material profiling
|
|
206
272
|
2. Source inventory
|
|
207
|
-
3.
|
|
208
|
-
4.
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
273
|
+
3. Runtime writes the initial source frontier from bound target refs
|
|
274
|
+
4. Exploration round loop:
|
|
275
|
+
4.1 Runtime observes the current frontier through material-specific SourceAdapters
|
|
276
|
+
4.2 Runtime records cumulative SourceObservations with round ids
|
|
277
|
+
4.3 LLM writes SourceObservationDirective for evidence-candidate selection
|
|
278
|
+
4.4 Runtime validates observation directive
|
|
279
|
+
4.5 Reconstruct lenses write independent ReconstructLensJudgment artifacts
|
|
280
|
+
4.6 Host LLM synthesizes judgments into SourceFrontierDirective
|
|
281
|
+
4.7 Runtime validates source frontier for boundary, support, duplication, and ref existence
|
|
282
|
+
4.8 If accepted frontier refs remain, repeat the loop with the next source slice
|
|
283
|
+
5. LLM selects domain-document context refs from the accumulated evidence needs
|
|
284
|
+
6. Runtime validates domain-context selection and source snapshot refs
|
|
285
|
+
7. LLM writes SeedCandidateDirective from trusted observation and judgment artifacts
|
|
212
286
|
8. Runtime validates Seed evidence and shape
|
|
213
|
-
9.
|
|
214
|
-
10.
|
|
215
|
-
11.
|
|
216
|
-
12.
|
|
217
|
-
13.
|
|
218
|
-
14.
|
|
219
|
-
15.
|
|
287
|
+
9. LLM writes ClaimRealizationDirective
|
|
288
|
+
10. Runtime validates claim realization refs and stance enums
|
|
289
|
+
11. User or host confirms Seed claims at claim level
|
|
290
|
+
12. Runtime validates confirmation transitions and derived claim sets
|
|
291
|
+
13. LLM writes authoritative competency questions
|
|
292
|
+
14. Runtime validates competency question ids, claim links, and evidence refs
|
|
293
|
+
15. LLM assesses every authoritative competency question
|
|
294
|
+
16. Runtime validates question assessment completeness and refs
|
|
295
|
+
17. LLM classifies material failures and unresolved gaps
|
|
296
|
+
18. Runtime validates failure classifications and linkage
|
|
297
|
+
19. LLM proposes bounded revisions or deferrals
|
|
298
|
+
20. Runtime validates revision proposal ids, targets, and actions
|
|
299
|
+
21. Runtime computes deterministic metrics from artifacts
|
|
300
|
+
22. LLM writes StopDecisionDirective
|
|
301
|
+
23. LLM writes final decision-ready output grounded in artifact refs
|
|
302
|
+
24. User confirms final ontology direction if needed
|
|
220
303
|
```
|
|
221
304
|
|
|
222
305
|
This flow intentionally uses the review product pattern: LLM-authored meaning,
|
|
223
306
|
runtime-owned gates, explicit artifacts, and user-facing decision points.
|
|
224
307
|
|
|
308
|
+
### 7.1 Stage Registry And Evolution Rules
|
|
309
|
+
|
|
310
|
+
`ReconstructStageId` values are stable and append-only. Status, progress
|
|
311
|
+
presentation, run manifest steps, and future continuation logic must use these
|
|
312
|
+
ids rather than prose labels.
|
|
313
|
+
|
|
314
|
+
| Stage id | Required artifact boundary | Owner |
|
|
315
|
+
|---|---|---|
|
|
316
|
+
| `invocation_binding` | interpretation and binding refs | host LLM plus runtime |
|
|
317
|
+
| `target_material_profile` | `target-material-profile.yaml` | runtime |
|
|
318
|
+
| `source_inventory` | `source-inventory.yaml` | runtime |
|
|
319
|
+
| `initial_source_frontier` | `initial-source-frontier.yaml` | runtime |
|
|
320
|
+
| `source_observation` | `source-observations.yaml` | runtime |
|
|
321
|
+
| `observation_directive` | `rounds/{round_id}/source-observation-directive.yaml` | host LLM |
|
|
322
|
+
| `observation_directive_validation` | `rounds/{round_id}/source-observation-directive-validation.yaml` | runtime |
|
|
323
|
+
| `lens_judgment` | `rounds/{round_id}/lens-judgments/{lens_id}.yaml` | host LLM |
|
|
324
|
+
| `exploration_synthesis` | `rounds/{round_id}/exploration-synthesis.yaml` | host LLM |
|
|
325
|
+
| `source_frontier` | `rounds/{round_id}/source-frontier.yaml` | host LLM |
|
|
326
|
+
| `source_frontier_validation` | `rounds/{round_id}/source-frontier-validation.yaml` | runtime |
|
|
327
|
+
| `domain_context_selection` | `domain-context-selection.yaml` | host LLM |
|
|
328
|
+
| `domain_context_selection_validation` | `domain-context-selection-validation.yaml` | runtime |
|
|
329
|
+
| `seed_candidate` | `seed-candidate.yaml` | host LLM |
|
|
330
|
+
| `seed_candidate_validation` | `seed-candidate-validation.yaml` | runtime |
|
|
331
|
+
| `claim_realization` | `claim-realization-map.yaml` | host LLM |
|
|
332
|
+
| `claim_realization_validation` | `claim-realization-map-validation.yaml` | runtime |
|
|
333
|
+
| `seed_confirmation` | `seed-confirmation.yaml` | user/host mediated |
|
|
334
|
+
| `seed_confirmation_validation` | `seed-confirmation-validation.yaml` | runtime |
|
|
335
|
+
| `competency_questions` | `competency-questions.yaml` | host LLM |
|
|
336
|
+
| `competency_questions_validation` | `competency-questions-validation.yaml` | runtime |
|
|
337
|
+
| `competency_question_assessment` | `competency-question-assessment.yaml` | host LLM |
|
|
338
|
+
| `competency_question_assessment_validation` | `competency-question-assessment-validation.yaml` | runtime |
|
|
339
|
+
| `failure_classification` | `failure-classification.yaml` | host LLM |
|
|
340
|
+
| `failure_classification_validation` | `failure-classification-validation.yaml` | runtime |
|
|
341
|
+
| `revision_proposal` | `revision-proposal.yaml` | host LLM |
|
|
342
|
+
| `revision_proposal_validation` | `revision-proposal-validation.yaml` | runtime |
|
|
343
|
+
| `metrics` | `reconstruct-metrics.yaml` | runtime |
|
|
344
|
+
| `stop_decision` | `stop-decision.yaml` | host LLM |
|
|
345
|
+
| `final_output` | `final-output.md` | host LLM |
|
|
346
|
+
| `record_assembly` | `reconstruct-record.yaml` and `reconstruct-run-manifest.yaml` | runtime |
|
|
347
|
+
|
|
348
|
+
Rules:
|
|
349
|
+
|
|
350
|
+
- Existing stage ids must not be renamed after runtime exposure.
|
|
351
|
+
- Optional stages must be recorded as `skipped` with a reason, not omitted from
|
|
352
|
+
the manifest.
|
|
353
|
+
- Skipped stages must record `authority_impact`, especially when skipping live
|
|
354
|
+
lens judgment, source-frontier exploration, domain-context selection, user
|
|
355
|
+
confirmation, or CQ assessment narrows the final result's trust claim.
|
|
356
|
+
- Terminal halted stages must keep already-produced artifacts immutable unless a
|
|
357
|
+
future explicit continuation contract says otherwise.
|
|
358
|
+
- New stages may be appended between semantic phases only when their input and
|
|
359
|
+
output artifact authority is explicit.
|
|
360
|
+
|
|
361
|
+
### 7.2 Pipeline Execution Unit Ledger
|
|
362
|
+
|
|
363
|
+
Reconstruct must map every `ReconstructStageId` into the shared
|
|
364
|
+
`PipelineExecutionLedger` contract. The ledger verifies artifact trust and
|
|
365
|
+
provenance for both runtime-owned and LLM-authored stages.
|
|
366
|
+
|
|
367
|
+
Rules:
|
|
368
|
+
|
|
369
|
+
- Runtime validation stages are trust gates for LLM-authored artifacts.
|
|
370
|
+
- An LLM-authored artifact may exist while its `trustStatus` remains
|
|
371
|
+
`untrusted` until the corresponding validation stage completes.
|
|
372
|
+
- A downstream stage is `blocked_by_upstream` if any required source artifact is
|
|
373
|
+
missing, failed validation, or belongs to an untrusted producing stage.
|
|
374
|
+
- `reconstruct_status` should expose the ledger, or a bounded projection of it,
|
|
375
|
+
so callers can see which artifacts are trustworthy and where the pipeline
|
|
376
|
+
halted.
|
|
377
|
+
- Future reconstruct continuation must derive its frontier from this ledger, not
|
|
378
|
+
from ad hoc file existence.
|
|
379
|
+
|
|
380
|
+
The shared contract is
|
|
381
|
+
`.onto/processes/shared/pipeline-execution-ledger-contract.md`.
|
|
382
|
+
|
|
383
|
+
### 7.3 Identifier Authority
|
|
384
|
+
|
|
385
|
+
Every cross-artifact reference must point back to one authority artifact. Derived
|
|
386
|
+
views may expose ids, but must not become a second source of truth.
|
|
387
|
+
|
|
388
|
+
| Id family | Authority artifact |
|
|
389
|
+
|---|---|
|
|
390
|
+
| initial source frontier ids | `initial-source-frontier.yaml` |
|
|
391
|
+
| source observation ids | `source-observations.yaml` |
|
|
392
|
+
| selected observation ids | `rounds/{round_id}/source-observation-directive.yaml` |
|
|
393
|
+
| exploration round ids | `reconstruct-run-manifest.yaml` |
|
|
394
|
+
| lens judgment ids | `rounds/{round_id}/lens-judgments/{lens_id}.yaml` |
|
|
395
|
+
| source frontier ids | `rounds/{round_id}/source-frontier.yaml` |
|
|
396
|
+
| domain context ids and `domain_snapshot_id` | `domain-context-selection.yaml` |
|
|
397
|
+
| Seed claim ids | `seed-candidate.yaml` |
|
|
398
|
+
| claim realization ids | `claim-realization-map.yaml` |
|
|
399
|
+
| confirmation-derived claim sets | `seed-confirmation-validation.yaml` |
|
|
400
|
+
| competency question ids | `competency-questions.yaml` |
|
|
401
|
+
| competency question result ids | `competency-question-assessment.yaml` |
|
|
402
|
+
| failure ids | `failure-classification.yaml` |
|
|
403
|
+
| proposal ids | `revision-proposal.yaml` |
|
|
404
|
+
|
|
405
|
+
### 7.4 Integral Exploration Loop
|
|
406
|
+
|
|
407
|
+
An exploration round is the smallest repeatable reconstruct unit. It starts from
|
|
408
|
+
a runtime-validated source frontier and ends with either a validated next
|
|
409
|
+
frontier or a declared no-next-frontier rationale.
|
|
410
|
+
|
|
411
|
+
Round rules:
|
|
412
|
+
|
|
413
|
+
- Lenses may request additional source refs, but they must not fetch those refs
|
|
414
|
+
directly.
|
|
415
|
+
- Source frontier requests must cite the judgment or gap that created the need,
|
|
416
|
+
the expected evidence value, and the material kind if known.
|
|
417
|
+
- Runtime validates frontier refs for declared boundary, existing inventory or
|
|
418
|
+
discoverability, material support, duplicate observation, duplicate judgment,
|
|
419
|
+
and unsafe broadness.
|
|
420
|
+
- Runtime records accepted, rejected, already-observed, unsupported, and
|
|
421
|
+
out-of-bound frontier refs separately.
|
|
422
|
+
- A source ref is considered unjudged only when no trusted lens judgment has
|
|
423
|
+
already covered the relevant observation scope for the declared purpose.
|
|
424
|
+
- Accumulated Seed evidence may use only trusted observations, validated
|
|
425
|
+
observation directives, trusted lens judgments, and validated frontier records.
|
|
426
|
+
|
|
427
|
+
Frontier validation must record enough identity data to explain duplicate,
|
|
428
|
+
stale, repeat, and re-exploration decisions:
|
|
429
|
+
|
|
430
|
+
- canonical source ref key
|
|
431
|
+
- material kind
|
|
432
|
+
- adapter id and adapter version or profile version
|
|
433
|
+
- source snapshot hash or source mtime/hash basis when available
|
|
434
|
+
- observation scope key
|
|
435
|
+
- profile id and profile version
|
|
436
|
+
- lens set id and lens prompt version when a judgment is involved
|
|
437
|
+
- domain snapshot id when domain context has been selected
|
|
438
|
+
- declared purpose scope id or normalized purpose summary
|
|
439
|
+
- prior trusted observation refs and judgment refs used for the decision
|
|
440
|
+
|
|
441
|
+
The loop may pause or halt when the next useful source is outside the declared
|
|
442
|
+
boundary, unsupported by adapters, too broad to validate safely, or requires a
|
|
443
|
+
user decision. A no-next-frontier rationale is an LLM-authored judgment, not a
|
|
444
|
+
runtime quality decision.
|
|
445
|
+
|
|
446
|
+
### 7.5 Claim Realization Stances
|
|
447
|
+
|
|
448
|
+
`claim-realization-map.yaml` must classify every Seed claim with one of these
|
|
449
|
+
stances:
|
|
450
|
+
|
|
451
|
+
| Stance | Meaning |
|
|
452
|
+
|---|---|
|
|
453
|
+
| `observed_runtime_behavior` | The claim is supported by observed behavior in the target material. |
|
|
454
|
+
| `declared_design_intent` | The claim is stated as design or product intent, but runtime behavior is not directly observed. |
|
|
455
|
+
| `schema_or_contract_presence` | The claim is supported by a schema, type, contract, config, or interface boundary. |
|
|
456
|
+
| `test_or_fixture_only` | The claim is supported only by tests, fixtures, mocks, or examples. |
|
|
457
|
+
| `deferred_or_non_goal` | The claim belongs to deferred scope or a declared non-goal. |
|
|
458
|
+
| `unknown` | The available artifacts do not justify a stronger stance. |
|
|
459
|
+
|
|
460
|
+
### 7.6 Claim Confirmation State Rules
|
|
461
|
+
|
|
462
|
+
Seed confirmation is claim-level. A single run may contain accepted, rejected,
|
|
463
|
+
partial, and deferred claims.
|
|
464
|
+
|
|
465
|
+
| State | Downstream rule |
|
|
466
|
+
|---|---|
|
|
467
|
+
| `accepted` | Included in the current confirmed Seed set and eligible for competency-question assessment. |
|
|
468
|
+
| `rejected` | Excluded from the confirmed Seed set and ineligible except for questions about rejection rationale. |
|
|
469
|
+
| `partial` | Excluded from the accepted claim set unless validated accepted sub-claim ids exist; unresolved count increases. |
|
|
470
|
+
| `deferred` | Excluded from current competency-question eligibility unless the question explicitly targets deferred scope; deferred and unresolved counts increase. |
|
|
471
|
+
|
|
472
|
+
`seed-confirmation-validation.yaml` owns the derived sets:
|
|
473
|
+
|
|
474
|
+
- `accepted_claim_ids`
|
|
475
|
+
- `rejected_claim_ids`
|
|
476
|
+
- `partial_claim_ids`
|
|
477
|
+
- `deferred_claim_ids`
|
|
478
|
+
- `cq_eligible_claim_ids`
|
|
479
|
+
|
|
480
|
+
### 7.7 Competency Question Authority
|
|
481
|
+
|
|
482
|
+
`competency-questions.yaml` is the authoritative competency-question set for a
|
|
483
|
+
run. It is authored after Seed confirmation so that questions test the confirmed
|
|
484
|
+
Seed and declared purpose, not a discarded draft.
|
|
485
|
+
|
|
486
|
+
`competency-questions-validation.yaml` must prove every
|
|
487
|
+
`cq_eligible_claim_id` from `seed-confirmation-validation.yaml` appears in at
|
|
488
|
+
least one competency question. Questions may group related claims, but an
|
|
489
|
+
accepted claim cannot silently bypass CQ assessment.
|
|
490
|
+
|
|
491
|
+
`competency-question-assessment.yaml` must assess every authoritative question
|
|
492
|
+
exactly once. Domain-provided question templates are not in-scope unless
|
|
493
|
+
`domain-context-selection.yaml` explicitly admits them into the run.
|
|
494
|
+
|
|
495
|
+
### 7.8 Full Ontology Coverage Obligations
|
|
496
|
+
|
|
497
|
+
A run may present itself as full ontology reconstruction only when the
|
|
498
|
+
LLM-authored artifacts and runtime validation gates cover these ontology-domain
|
|
499
|
+
dimensions, or explicitly mark them unresolved, deferred, unsupported, or
|
|
500
|
+
out-of-scope:
|
|
501
|
+
|
|
502
|
+
- classification or hierarchy placement
|
|
503
|
+
- labels, aliases, synonyms, and homonym risks
|
|
504
|
+
- relation and property intent with evidence refs
|
|
505
|
+
- version, deprecation, and migration implications
|
|
506
|
+
- module or authority seat for newly proposed concepts
|
|
507
|
+
- reuse, extension, rename, split, reject, or defer decisions
|
|
508
|
+
- mapping or alignment to selected domain documents and existing lexicon terms
|
|
509
|
+
|
|
510
|
+
Runtime validates artifact shape, ids, and evidence refs for these dimensions.
|
|
511
|
+
Runtime must not infer the ontology meaning itself.
|
|
512
|
+
|
|
225
513
|
## 8. Prompt-Backed Reference Path
|
|
226
514
|
|
|
227
515
|
Before runtime replacement, reconstruct needs at least one prompt-backed
|
|
@@ -235,28 +523,41 @@ The reference run may be host-LLM-authored, but it must preserve:
|
|
|
235
523
|
- the same artifact seats
|
|
236
524
|
- the same evidence-ref discipline
|
|
237
525
|
- the same runtime/non-runtime ownership boundary
|
|
526
|
+
- at least one observe → lens judgment → source frontier loop
|
|
238
527
|
- an acceptance observation describing usefulness, missing evidence, and drift
|
|
239
528
|
|
|
240
529
|
Runtime implementation may replace only one deterministic boundary at a time:
|
|
241
530
|
source profile loading, source observation, directive validation, metric
|
|
242
531
|
calculation, then MCP exposure.
|
|
243
532
|
|
|
244
|
-
## 9.
|
|
533
|
+
## 9. Meaning Directives And Runtime Gates
|
|
245
534
|
|
|
246
535
|
| Directive | Purpose | Runtime gate |
|
|
247
536
|
|---|---|---|
|
|
248
|
-
| `SourceObservationDirective` | choose which runtime observations are evidence candidates | observation id, material kind, source ref, and location validation |
|
|
249
|
-
| `
|
|
250
|
-
| `
|
|
251
|
-
| `
|
|
252
|
-
| `
|
|
253
|
-
| `
|
|
254
|
-
| `
|
|
537
|
+
| `SourceObservationDirective` | choose which runtime observations are evidence candidates for one round | observation id, material kind, source ref, round id, and location validation |
|
|
538
|
+
| `ReconstructLensJudgmentDirective` | label observations, identify semantic gaps, refine certainty, and request next-source needs from one lens perspective | lens id, observation refs, claim/gap ids, evidence refs, and no-direct-source-read validation |
|
|
539
|
+
| `ExplorationSynthesisDirective` | compose lens judgments into an integrated round result without adding a new independent perspective | source judgment refs, conflict handling refs, and preservation of minority/open gaps |
|
|
540
|
+
| `SourceFrontierDirective` | request unjudged source refs for the next observation round or declare no-next-frontier rationale | boundary, inventory, material support, duplicate, broadness, and expected-evidence validation |
|
|
541
|
+
| `DomainContextSelectionDirective` | choose domain documents and explain why | context existence, scope, and `domain_snapshot_id` validation |
|
|
542
|
+
| `SeedCandidateDirective` | propose purpose, non-goals, entities, relations, actions, properties, and rules with separate stable `claim_id` and user-facing `name` | schema shape, required non-generic claim name, prior observation-directive status, selected observation, and evidence ref validation |
|
|
543
|
+
| `ClaimRealizationDirective` | classify each Seed claim's evidence stance | claim id, stance enum, source/evidence ref, and rationale presence validation |
|
|
544
|
+
| `SeedConfirmationDirective` | record claim-level accepted, rejected, partial, or deferred confirmation | state transition, duplicate claim, missing claim, and derived-set validation |
|
|
545
|
+
| `CompetencyQuestionDirective` | define the authoritative execution question set and scope boundaries | duplicate id, closed question set, claim linkage, and evidence-ref validation |
|
|
546
|
+
| `CompetencyQuestionAssessmentDirective` | answer or mark every authoritative question | exactly-once question coverage, answer-state enum, claim linkage, and evidence-ref validation |
|
|
547
|
+
| `FailureClassificationDirective` | classify why a question or claim cannot be trusted for the declared purpose | enum, question/result linkage, claim linkage, and materiality rationale checks |
|
|
548
|
+
| `RevisionProposalDirective` | propose reuse, extend, rename, split, reject, or defer decisions | proposal id, target id, action enum, schema, and regression checks |
|
|
255
549
|
| `StopDecisionDirective` | decide continue, stop, or ask user based on metrics and purpose | metrics presence and enum validation |
|
|
550
|
+
| `FinalOutputDirective` | present decision-ready user-facing output | artifact provenance, section presence, and unresolved/deferred disclosure checks |
|
|
256
551
|
|
|
257
552
|
Every semantic claim in a Seed or revision proposal needs evidence refs. A claim
|
|
258
553
|
without evidence remains a hypothesis or open question.
|
|
259
554
|
|
|
555
|
+
Evidence mapping is not a separate authority unless this contract later adds an
|
|
556
|
+
explicit artifact seat for it. Evidence refs are owned by the artifact that makes
|
|
557
|
+
the claim, assessment, failure, proposal, or final-output statement. Any future
|
|
558
|
+
evidence-map view must be a projection over those owning artifacts and must not
|
|
559
|
+
duplicate evidence authority.
|
|
560
|
+
|
|
260
561
|
## 10. Artifact Truth
|
|
261
562
|
|
|
262
563
|
The reconstruct session should write artifacts under a dedicated session root,
|
|
@@ -269,57 +570,112 @@ Current and provisional artifact contract:
|
|
|
269
570
|
|---|---|---|---|
|
|
270
571
|
| `target-material-profile.yaml` | runtime | helper implemented | selected target material kind, candidates, confidence, selected source profiles, and unsupported-material status |
|
|
271
572
|
| `source-inventory.yaml` | runtime | helper implemented | selected source roots, material-specific inventory units, and scan boundaries |
|
|
573
|
+
| `initial-source-frontier.yaml` | runtime | implemented | initial frontier derived from invocation binding and source inventory; authority for the first observation frontier |
|
|
272
574
|
| `source-observations.yaml` | runtime | helper implemented | adapter id, material kind, location, structural data, and stable observation ids |
|
|
273
|
-
| `source-observation-directive.yaml` | LLM |
|
|
274
|
-
| `source-observation-directive-validation.yaml` | runtime | helper implemented | validation status and violations
|
|
575
|
+
| `source-observation-directive.yaml` | LLM | helper implemented for current single-slice path; projection only after round artifacts exist | compatibility projection of selected observations and evidence-candidate rationale; must record projection metadata and no downstream authority when round-scoped artifacts exist |
|
|
576
|
+
| `source-observation-directive-validation.yaml` | runtime | helper implemented for current single-slice path; projection only after round artifacts exist | compatibility projection of validation status and violations; must record projection metadata and no downstream authority when round-scoped artifacts exist |
|
|
577
|
+
| `rounds/{round_id}/source-observation-directive.yaml` | LLM | implemented for round 1 | round-scoped selected observations and evidence-candidate rationale |
|
|
578
|
+
| `rounds/{round_id}/source-observation-directive-validation.yaml` | runtime | implemented for round 1 | round-scoped validation status and violations for LLM-selected observation refs |
|
|
579
|
+
| `rounds/{round_id}/lens-judgments/{lens_id}.yaml` | LLM | implemented for round 1 direct-call path | independent reconstruct lens judgment over trusted observations, including labels, gaps, certainty refinements, and source needs |
|
|
580
|
+
| `rounds/{round_id}/exploration-synthesis.yaml` | LLM | implemented for round 1 direct-call path | integrated round result that preserves conflicts and prepares frontier selection |
|
|
581
|
+
| `rounds/{round_id}/source-frontier.yaml` | LLM | implemented for round 1 direct-call path | requested next source refs, priorities, rationale, and no-next-frontier judgment |
|
|
582
|
+
| `rounds/{round_id}/source-frontier-validation.yaml` | runtime | implemented for round 1 direct-call path | accepted/rejected frontier refs with boundary, support, duplicate, and broadness validation |
|
|
275
583
|
| `domain-context-selection.yaml` | LLM | future | chosen domain context refs and rationale |
|
|
276
|
-
| `
|
|
277
|
-
| `seed-candidate
|
|
278
|
-
| `seed-
|
|
279
|
-
| `
|
|
280
|
-
| `
|
|
281
|
-
| `
|
|
282
|
-
| `
|
|
283
|
-
| `
|
|
284
|
-
| `
|
|
285
|
-
| `
|
|
286
|
-
| `
|
|
584
|
+
| `domain-context-selection-validation.yaml` | runtime | future | context existence, scope, and snapshot validation |
|
|
585
|
+
| `seed-candidate.yaml` | LLM | implemented through pluggable author | proposed Ontology Seed before user confirmation; every claim carries `claim_id`, `name`, `statement`, and evidence refs |
|
|
586
|
+
| `seed-candidate-validation.yaml` | runtime | helper implemented | validation status and violations for LLM-authored Seed claim shape, non-generic claim names, and observation evidence refs |
|
|
587
|
+
| `claim-realization-map.yaml` | LLM | implemented through pluggable direct-call author | evidence stance for every Seed claim |
|
|
588
|
+
| `claim-realization-map-validation.yaml` | runtime | implemented | claim id, stance enum, and evidence linkage validation |
|
|
589
|
+
| `seed-confirmation.yaml` | user/host mediated | implemented through pluggable direct-call provider | claim-level accepted, rejected, partial, or deferred Seed decisions |
|
|
590
|
+
| `seed-confirmation-validation.yaml` | runtime | implemented | confirmation transition validation and derived claim sets |
|
|
591
|
+
| `competency-questions.yaml` | LLM | implemented through pluggable author | authoritative execution questions and boundaries |
|
|
592
|
+
| `competency-questions-validation.yaml` | runtime | implemented | closed CQ set, duplicate id, eligible-claim coverage, claim-link, and evidence validation |
|
|
593
|
+
| `competency-question-assessment.yaml` | LLM | implemented through pluggable direct-call author | answer status and evidence basis for every authoritative question |
|
|
594
|
+
| `competency-question-assessment-validation.yaml` | runtime | implemented | exactly-once coverage, status enum, and evidence validation |
|
|
595
|
+
| `failure-classification.yaml` | LLM | implemented through pluggable direct-call author | failed or unsafe-to-trust question and claim causes |
|
|
596
|
+
| `failure-classification-validation.yaml` | runtime | implemented | failure enum, linkage, and materiality rationale validation |
|
|
597
|
+
| `revision-proposal.yaml` | LLM | implemented through pluggable direct-call author | bounded ontology changes, deferrals, or rejection proposals |
|
|
598
|
+
| `revision-proposal-validation.yaml` | runtime | implemented | proposal id, target id, action enum, and regression guard validation |
|
|
599
|
+
| `reconstruct-metrics.yaml` | runtime | implemented | deterministic counts and pass rates |
|
|
600
|
+
| `stop-decision.yaml` | LLM | implemented through pluggable author | continue, stop, or ask-user judgment |
|
|
601
|
+
| `final-output.md` | LLM | implemented through pluggable author and provenance-checked by runtime | user-facing result text grounded in artifacts |
|
|
602
|
+
| `reconstruct-run-manifest.yaml` | runtime assembly | implemented | step list, owner boundary, performed-by provenance, happy-path scope, artifact refs, and execution profile |
|
|
603
|
+
| `reconstruct-record.yaml` | runtime assembly | implemented, primary artifact | primary structured reconstruct artifact with material, validation, and artifact refs |
|
|
287
604
|
|
|
288
605
|
These artifact names are provisional but contract-owned. Runtime implementation
|
|
289
606
|
must either implement this contract or update this contract before code lands.
|
|
290
607
|
Runtime code must not silently fix a different schema.
|
|
291
608
|
|
|
292
|
-
The current
|
|
609
|
+
The current direct-call runtime path explicitly implements:
|
|
293
610
|
|
|
294
|
-
- target material profile, inventory, and source observations
|
|
611
|
+
- target material profile, inventory, initial source frontier, and source observations
|
|
295
612
|
- source-observation directive plus validation
|
|
613
|
+
- round 1 reconstruct lens judgments
|
|
614
|
+
- exploration synthesis
|
|
615
|
+
- source-frontier selection plus validation
|
|
296
616
|
- Seed candidate plus validation
|
|
297
|
-
-
|
|
298
|
-
-
|
|
617
|
+
- claim realization plus validation
|
|
618
|
+
- Seed confirmation through an explicit host-mediated direct-call provider
|
|
619
|
+
- Seed confirmation validation and derived claim sets
|
|
620
|
+
- competency questions through an explicit direct-call directive author
|
|
621
|
+
- competency-question validation and assessment
|
|
622
|
+
- failure classification plus validation
|
|
623
|
+
- revision proposal plus validation
|
|
299
624
|
- deterministic reconstruct metrics
|
|
300
|
-
- stop decision and final output through an explicit
|
|
625
|
+
- stop decision and provenance-checked final output through an explicit direct-call directive author
|
|
301
626
|
- reconstruct run manifest and primary reconstruct record
|
|
302
627
|
|
|
303
|
-
The current
|
|
628
|
+
The current direct-call runtime path explicitly defers:
|
|
304
629
|
|
|
305
630
|
- `domain-context-selection.yaml`
|
|
306
|
-
- `
|
|
307
|
-
- `revision-proposal.yaml`
|
|
631
|
+
- `domain-context-selection-validation.yaml`
|
|
308
632
|
|
|
309
633
|
These deferred artifacts require additional host/user semantic decisions and
|
|
310
|
-
must not be implied by a completed
|
|
634
|
+
must not be implied by a completed run. `reconstruct-run-manifest.yaml`,
|
|
635
|
+
`reconstruct-record.yaml`, status payloads, result payloads, and
|
|
636
|
+
`final-output.md` must expose these stages as skipped or deferred for the
|
|
637
|
+
current execution profile.
|
|
311
638
|
|
|
312
|
-
`reconstruct-record.yaml` is the primary artifact for
|
|
639
|
+
`reconstruct-record.yaml` is the primary artifact for reconstruct in the same
|
|
313
640
|
way `review-record.yaml` is primary for review.
|
|
314
641
|
|
|
642
|
+
### 10.1 Seed Validation Prerequisites
|
|
643
|
+
|
|
644
|
+
`SeedCandidateDirective` validation is profile-sensitive:
|
|
645
|
+
|
|
646
|
+
- In `full_integral_exploration`, Seed candidate validation requires trusted
|
|
647
|
+
source observations, validated observation directives, trusted lens judgments,
|
|
648
|
+
validated source-frontier records or a trusted no-next-frontier rationale,
|
|
649
|
+
validated domain-context selection or a trusted skipped-stage authority
|
|
650
|
+
impact, and accepted source snapshot refs.
|
|
651
|
+
- In `mock_semantic_slice`, Seed candidate validation may prove only the
|
|
652
|
+
test/fixture artifact flow. It must record skipped live exploration and
|
|
653
|
+
skipped domain-context selection as authority limits, and it must not be used
|
|
654
|
+
as product completion evidence.
|
|
655
|
+
- In `observer_gate_slice`, Seed candidate validation must be skipped unless a
|
|
656
|
+
host-supplied Seed candidate artifact is explicitly provided and validated
|
|
657
|
+
against existing trusted observations.
|
|
658
|
+
|
|
659
|
+
No profile may present a Seed as confirmed unless `seed-confirmation.yaml` and
|
|
660
|
+
`seed-confirmation-validation.yaml` exist and are trusted for that profile.
|
|
661
|
+
|
|
315
662
|
## 11. Completion Rule
|
|
316
663
|
|
|
317
664
|
Runtime computes, but does not decide:
|
|
318
665
|
|
|
666
|
+
- exploration round count
|
|
667
|
+
- observed source ref count by round
|
|
668
|
+
- new observation count by round
|
|
669
|
+
- accepted and rejected source frontier ref counts
|
|
670
|
+
- already-observed, unsupported, and out-of-bound frontier ref counts
|
|
319
671
|
- evidence ref count
|
|
320
672
|
- Seed concept count
|
|
673
|
+
- claim realization stance counts
|
|
674
|
+
- confirmation state counts and derived claim-set counts
|
|
321
675
|
- competency question count
|
|
676
|
+
- competency question assessment status counts
|
|
322
677
|
- failed question count
|
|
678
|
+
- failure classification counts
|
|
323
679
|
- proposed revision count
|
|
324
680
|
- unresolved count
|
|
325
681
|
- pass rate
|
|
@@ -333,9 +689,19 @@ writes a `StopDecisionDirective` with `continue`, `stop`, or `ask_user`.
|
|
|
333
689
|
The user-facing result should separate:
|
|
334
690
|
|
|
335
691
|
- confirmed Seed content
|
|
692
|
+
- claim realization summary
|
|
693
|
+
- competency question assessment summary
|
|
694
|
+
- failure classifications
|
|
695
|
+
- revision proposals or deferrals
|
|
336
696
|
- unresolved material questions
|
|
337
697
|
- unsupported or out-of-scope requests
|
|
338
698
|
- proposed next actions
|
|
699
|
+
- artifact provenance for the claims, questions, failures, proposals, and stop
|
|
700
|
+
rationale it mentions
|
|
701
|
+
|
|
702
|
+
`final-output.md` is decision-ready prose, not a new truth source. Any claim it
|
|
703
|
+
presents as confirmed, unresolved, failed, deferred, or proposed must point back
|
|
704
|
+
to the artifact id family that owns that state.
|
|
339
705
|
|
|
340
706
|
## 12. Runtime Implementation Readiness
|
|
341
707
|
|
|
@@ -347,9 +713,15 @@ Runtime attachment is ready only when all of these are true:
|
|
|
347
713
|
`.onto/processes/reconstruct/source-profiles/`.
|
|
348
714
|
4. `target_material_kind` is recorded before source adapter selection.
|
|
349
715
|
5. Source adapter output has stable observation ids and boundary failure rules.
|
|
350
|
-
6.
|
|
351
|
-
|
|
352
|
-
|
|
716
|
+
6. Source frontier validation rejects out-of-bound, unsupported, duplicate, and
|
|
717
|
+
unsafe-broad next-source requests.
|
|
718
|
+
7. Lens judgment artifacts are context-isolated and cannot directly fetch source.
|
|
719
|
+
8. Directive validation has schemas for every meaning directive it accepts.
|
|
720
|
+
9. Metrics are defined as deterministic projections from existing artifacts.
|
|
721
|
+
10. MCP schemas expose only bounded facts and artifact refs.
|
|
722
|
+
11. Stage ids are stable and recorded in status, run manifest, and records.
|
|
723
|
+
12. Cross-artifact id authority is explicit and validators reject dangling refs.
|
|
724
|
+
13. Final output provenance is validated against artifact ids rather than prose.
|
|
353
725
|
|
|
354
726
|
## 13. Verification Target
|
|
355
727
|
|
|
@@ -358,9 +730,24 @@ When the implementation starts, use at least:
|
|
|
358
730
|
```bash
|
|
359
731
|
npm run check:ts-core
|
|
360
732
|
npx vitest run src/core-runtime/reconstruct
|
|
733
|
+
npx vitest run src/core-api/reconstruct-api.test.ts
|
|
361
734
|
npm run test:mcp:review
|
|
362
735
|
git diff --check
|
|
363
736
|
```
|
|
364
737
|
|
|
365
738
|
`test:mcp:review` remains review-focused, but it protects the shared MCP server
|
|
366
739
|
from regressions when reconstruct tools are introduced.
|
|
740
|
+
|
|
741
|
+
The first end-to-end fixture may use the `day1co/day1co-ai-usage-dashboard`
|
|
742
|
+
repository or an equivalent temporary fixture. An equivalent fixture must cover:
|
|
743
|
+
|
|
744
|
+
- multiple selected source observations
|
|
745
|
+
- at least two exploration rounds or one validated no-next-frontier rationale
|
|
746
|
+
- at least one accepted source frontier ref and one rejected or already-observed
|
|
747
|
+
frontier ref
|
|
748
|
+
- at least five Seed claims
|
|
749
|
+
- at least one accepted claim and one rejected, partial, or deferred claim
|
|
750
|
+
- at least one competency question that is not fully answered
|
|
751
|
+
- at least one failure classification
|
|
752
|
+
- at least one revision proposal
|
|
753
|
+
- final output references back to the owning artifact ids
|