@c4a/context-cli 0.7.1 → 0.7.5
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/README.md +18 -39
- package/README.zh-CN.md +13 -27
- package/cli.js +64945 -81995
- package/indexers/bundles/context-code-indexer/SKILL.md +30 -3
- package/indexers/bundles/context-code-indexer/context-indexer.yaml +3 -8
- package/indexers/bundles/context-code-indexer/references/indexer.md +110 -7
- package/indexers/bundles/context-code-indexer/references/metrics.md +143 -37
- package/indexers/bundles/context-code-indexer/templates/adapter-integration.md +2 -2
- package/indexers/bundles/context-code-indexer/templates/component-library.md +8 -0
- package/indexers/bundles/context-code-indexer/templates/gateway-facade.md +16 -0
- package/indexers/bundles/context-markdown-indexer/SKILL.md +13 -3
- package/indexers/bundles/context-markdown-indexer/context-indexer.yaml +20 -7
- package/indexers/bundles/context-markdown-indexer/references/indexer.md +33 -4
- package/indexers/bundles/context-markdown-indexer/references/semantic-planning.md +30 -14
- package/indexers/bundles/context-markdown-indexer/references/structure-and-artifacts.md +6 -0
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/anonymous.json +1 -1
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/profiles.json +13 -13
- package/indexers/bundles/context-markdown-indexer/tests/fixtures/routing.json +122 -0
- package/indexers/contracts/operator-contract.json +2 -2
- package/indexers/contracts/profile-contract.json +3819 -454
- package/indexers/release-manifest.json +22 -22
- package/package.json +12 -2
- package/plugins/VERSION +1 -1
- package/plugins/claude/.claude-plugin/plugin.json +1 -1
- package/plugins/claude/commands/context.md +56 -107
- package/plugins/codex/.codex-plugin/plugin.json +2 -2
- package/plugins/codex/skills/context/SKILL.md +56 -107
- package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
- package/plugins/cursor/commands/c4a-context.md +56 -107
- package/plugins/skills/context/SKILL.md +56 -107
- package/plugins/skills/context-code-indexer/SKILL.md +30 -3
- package/plugins/skills/context-code-indexer/context-indexer.yaml +3 -8
- package/plugins/skills/context-code-indexer/references/indexer.md +110 -7
- package/plugins/skills/context-code-indexer/references/metrics.md +143 -37
- package/plugins/skills/context-code-indexer/templates/adapter-integration.md +2 -2
- package/plugins/skills/context-code-indexer/templates/component-library.md +8 -0
- package/plugins/skills/context-code-indexer/templates/gateway-facade.md +16 -0
- package/plugins/skills/context-markdown-indexer/SKILL.md +13 -3
- package/plugins/skills/context-markdown-indexer/context-indexer.yaml +20 -7
- package/plugins/skills/context-markdown-indexer/references/indexer.md +33 -4
- package/plugins/skills/context-markdown-indexer/references/semantic-planning.md +30 -14
- package/plugins/skills/context-markdown-indexer/references/structure-and-artifacts.md +6 -0
- package/plugins/skills/context-markdown-indexer/tests/fixtures/anonymous.json +1 -1
- package/plugins/skills/context-markdown-indexer/tests/fixtures/profiles.json +13 -13
- package/plugins/skills/context-markdown-indexer/tests/fixtures/routing.json +122 -0
- package/providers/context/actions/advance-current-indexer-lifecycle.yaml +6 -0
- package/providers/context/actions/authorize-current-indexer-provider-program.yaml +6 -0
- package/providers/context/actions/configure-indexer-providers.yaml +1 -1
- package/providers/context/actions/finalize-current-indexer-provider-selection.yaml +5 -0
- package/providers/context/actions/materialize-indexer-workset-view.yaml +7 -0
- package/providers/context/actions/resolve-current-indexer-gate.yaml +6 -0
- package/providers/context/actions/resolve-current-indexer-provider.yaml +6 -0
- package/providers/context/actions/run-indexer-lifecycle.yaml +0 -1
- package/providers/context/actions/run-indexer-post-author-composer.yaml +2 -2
- package/providers/context/codes.yaml +8 -22
- package/providers/context/graphs/indexer.yaml +95 -564
- package/providers/context/graphs/workspace.yaml +5 -43
- package/providers/context/manifest.json +119 -678
- package/providers/context/provider.yaml +1 -1
- package/providers/context/resources/dialogue/human-gates.md +3 -3
- package/providers/context/resources/dialogue/knowledge-review.md +6 -3
- package/providers/context/resources/manuals/reference/package-templates.md +2 -3
- package/providers/context/resources/manuals/reference/project-api.md +52 -986
- package/providers/context/resources/procedures/close-and-build.md +8 -23
- package/providers/context/resources/procedures/knowledge-review.md +17 -5
- package/providers/context/resources/procedures/source-capture-detailed.md +6 -8
- package/providers/context/resources/views/authorized-indexer-workset-view.yaml +15 -0
- package/providers/context/resources/views/resolved-indexer-instructions.yaml +2 -4
- package/providers/context/schemas/indexer-agent-step-input.schema.json +71 -21
- package/providers/context/schemas/indexer-agent-step-result.schema.json +385 -32
- package/providers/context/schemas/indexer-authorized-workset-view.schema.json +65 -0
- package/providers/context/schemas/indexer-main-lifecycle-input.schema.json +13 -20
- package/providers/context/schemas/indexer-main-lifecycle-output.schema.json +17 -2
- package/providers/context/schemas/indexer-materialize-request.schema.json +4 -8
- package/providers/context/schemas/indexer-materialized-resource.schema.json +8 -1
- package/providers/context/schemas/indexer-overlay-question-proposal-input.schema.json +51 -2
- package/providers/context/schemas/indexer-workset-view-materialization-request.schema.json +35 -0
- package/providers/context/skills/authorize-current-indexer-provider-program/SKILL.md +20 -0
- package/providers/context/skills/configure-indexer-providers/SKILL.md +47 -33
- package/providers/context/skills/resolve-current-indexer-gate/SKILL.md +27 -0
- package/providers/context/skills/resolve-current-indexer-provider/SKILL.md +20 -0
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +49 -10
- package/providers/context/skills/run-indexer-lifecycle/SKILL.md +19 -13
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +52 -11
- package/docs/document-optimization.md +0 -82
- package/docs/document-optimization.zh-CN.md +0 -70
- package/indexers/capability-manifest.json +0 -35
- package/indexers/contracts/hard-rule-conformance.json +0 -2644
- package/providers/context/actions/accept-main-index-run.yaml +0 -7
- package/providers/context/actions/accept-material-answer-run.yaml +0 -7
- package/providers/context/actions/accept-post-author-composer-run.yaml +0 -7
- package/providers/context/actions/actualize-material-answer-bindings.yaml +0 -8
- package/providers/context/actions/audit-material-gap-state.yaml +0 -8
- package/providers/context/actions/audit-projected-artifact-fan-out.yaml +0 -8
- package/providers/context/actions/build-main-index-author-worksets.yaml +0 -7
- package/providers/context/actions/build-main-index-catalog-fallback.yaml +0 -7
- package/providers/context/actions/build-main-index-partition-worksets.yaml +0 -7
- package/providers/context/actions/build-material-question-workset.yaml +0 -7
- package/providers/context/actions/build-post-author-composer-worksets.yaml +0 -7
- package/providers/context/actions/build-question-target-inventory.yaml +0 -7
- package/providers/context/actions/build-subject-catalog.yaml +0 -7
- package/providers/context/actions/build-target-resolution-views.yaml +0 -7
- package/providers/context/actions/checkpoint-material-answer-review.yaml +0 -8
- package/providers/context/actions/checkpoint-material-gaps.yaml +0 -8
- package/providers/context/actions/close-indexer-approved-knowledge.yaml +0 -8
- package/providers/context/actions/compose-indexer-post-author-fragments.yaml +0 -7
- package/providers/context/actions/converge-main-index-partition-run.yaml +0 -7
- package/providers/context/actions/evaluate-material-gaps.yaml +0 -8
- package/providers/context/actions/fail-main-index-run.yaml +0 -7
- package/providers/context/actions/fail-material-answer-run.yaml +0 -7
- package/providers/context/actions/fail-post-author-composer-run.yaml +0 -7
- package/providers/context/actions/inspect-index-candidate-review-readiness.yaml +0 -8
- package/providers/context/actions/inspect-index-profile-failure.yaml +0 -7
- package/providers/context/actions/inspect-material-answer-review.yaml +0 -8
- package/providers/context/actions/observe-main-index-run-ledger.yaml +0 -7
- package/providers/context/actions/observe-material-answer-runs.yaml +0 -7
- package/providers/context/actions/observe-post-author-composer-worksets.yaml +0 -7
- package/providers/context/actions/override-index-profile-audit.yaml +0 -7
- package/providers/context/actions/prepare-main-index-run-ledger.yaml +0 -7
- package/providers/context/actions/prepare-material-answer-runs.yaml +0 -7
- package/providers/context/actions/reconcile-indexer-results.yaml +0 -7
- package/providers/context/actions/reconcile-review-identities.yaml +0 -5
- package/providers/context/actions/record-index-profile-revision.yaml +0 -7
- package/providers/context/actions/report-index-profile-failure.yaml +0 -7
- package/providers/context/actions/resolve-effective-composers.yaml +0 -7
- package/providers/context/actions/review-material-answer-candidate.yaml +0 -8
- package/providers/context/actions/revise-document.yaml +0 -5
- package/providers/context/actions/revise-index-output.yaml +0 -7
- package/providers/context/actions/run-material-answer-indexers.yaml +0 -7
- package/providers/context/actions/start-main-index-run.yaml +0 -7
- package/providers/context/actions/start-material-answer-run.yaml +0 -7
- package/providers/context/actions/start-post-author-composer-run.yaml +0 -7
- package/providers/context/resources/procedures/document-revision.md +0 -36
- package/providers/context/resources/views/document-optimization-current.yaml +0 -6
- package/providers/context/schemas/indexer-candidate-review-readiness-input.schema.json +0 -46
- package/providers/context/schemas/indexer-candidate-review-readiness-output.schema.json +0 -104
- package/providers/context/schemas/indexer-lifecycle-continuation.schema.json +0 -15
- package/providers/context/schemas/indexer-material-answer-lifecycle-input.schema.json +0 -90
- package/providers/context/schemas/indexer-material-answer-lifecycle-output.schema.json +0 -80
- package/providers/context/schemas/indexer-material-answer-review-inspection-input.schema.json +0 -32
- package/providers/context/schemas/indexer-material-answer-review-inspection-output.schema.json +0 -32
- package/providers/context/schemas/indexer-material-answer-review-resolution-input.schema.json +0 -19
- package/providers/context/schemas/indexer-material-answer-review-resolution-output.schema.json +0 -87
- package/providers/context/schemas/indexer-material-gap-lifecycle-input.schema.json +0 -86
- package/providers/context/schemas/indexer-material-gap-lifecycle-output.schema.json +0 -19
- package/providers/context/schemas/indexer-post-author-fragment-request.schema.json +0 -26
- package/providers/context/schemas/indexer-post-author-fragment-result.schema.json +0 -18
- package/providers/context/schemas/indexer-post-author-lifecycle-input.schema.json +0 -94
- package/providers/context/schemas/indexer-post-author-lifecycle-output.schema.json +0 -72
- package/providers/context/schemas/indexer-profile-failure-inspection-input.schema.json +0 -13
- package/providers/context/schemas/indexer-profile-failure-inspection-result.schema.json +0 -19
- package/providers/context/schemas/indexer-profile-failure-report-input.schema.json +0 -22
- package/providers/context/schemas/indexer-profile-failure-report-result.schema.json +0 -49
- package/providers/context/schemas/indexer-profile-override-decision.schema.json +0 -20
- package/providers/context/schemas/indexer-profile-override-result.schema.json +0 -49
- package/providers/context/schemas/indexer-profile-revision-agent-input.schema.json +0 -18
- package/providers/context/schemas/indexer-profile-revision-record-input.schema.json +0 -31
- package/providers/context/schemas/indexer-profile-revision-record-result.schema.json +0 -45
- package/providers/context/schemas/indexer-result-reconciliation-input.schema.json +0 -59
- package/providers/context/schemas/indexer-result-reconciliation-output.schema.json +0 -43
- package/providers/context/skills/revise-index-output/SKILL.md +0 -12
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Markdown Indexer authoring contract
|
|
2
2
|
|
|
3
|
-
Classify and author at the source-backed Section level. A document profile describes reader intent; it is not an output directory. Mixed documents may contain Sections with different reader goals, but every Section must retain one stable subject, owner, source authority, and projection intent.
|
|
3
|
+
Classify and author at the source-backed Section level using only the current Authorized Workset View. A document profile describes reader intent; it is not an output directory. Mixed documents may contain Sections with different reader goals, but every Section must retain one stable subject, owner, source authority, and projection intent.
|
|
4
4
|
|
|
5
5
|
Use `classification.md` as the semantic source for `document_kind`, `reader_goal`, and current `artifact_kind` selection. Use `structure-and-artifacts.md` for mixed-document routing, Section-versus-Artifact promotion, density, duplicate/conflict handling, and target candidate resolution. The CLI-supplied profile contract remains the only authority for collection and path projection.
|
|
6
6
|
|
|
@@ -14,10 +14,39 @@ Use `editorial-policy.md` for scenario editorial signals, recommended outcomes,
|
|
|
14
14
|
|
|
15
15
|
Preserve exact commands, identifiers, links, attachments, tables, and code blocks when they are evidence-bearing. Separate deterministic catalogs from explanation. Do not publish unsupported claims, conversion annotations, placeholders, or unresolved requests as knowledge.
|
|
16
16
|
|
|
17
|
-
When
|
|
17
|
+
When a captured document already contains coherent reader-facing guidance, preserve and organize that supported content instead of replacing it with a heading inventory, directory summary, or a sentence that points the reader back to the source. Summarize only repetition or navigation scaffolding. A shorter Artifact is acceptable only when it still answers the selected reader questions and retains the source's useful contracts, examples, conditions, compatibility notes, and uncertainty.
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
For each reader Artifact, start the first actual Section with exactly one
|
|
20
|
+
level-one heading that names the reader subject. Keep the heading concise and
|
|
21
|
+
source-backed. It is a display title for outline and final Candidate Review,
|
|
22
|
+
not a SubjectKey, ownership signal, or identity fallback. Later Sections in the
|
|
23
|
+
same Artifact must not add another level-one heading.
|
|
20
24
|
|
|
21
|
-
|
|
25
|
+
When current source material cannot answer a required canonical question, return the exact material-question disposition for the supplied target. A later run may consume newly captured Markdown as ordinary source and update the same knowledge candidate. Context owns layout, collection mapping, runtime material-gap state, quality thresholds, the single final content Review, and close.
|
|
26
|
+
|
|
27
|
+
Return only the current `main-index` `IndexerResult`/`ArtifactResult` contract. Context derives the source dependencies needed for stale detection and recovery from that result. Do not emit a separate answer body, answer-only result, future Artifact/Section landing, or post-layout actualization.
|
|
28
|
+
|
|
29
|
+
Return all knowledge through the current Indexer result; do not create an independent authoring pipeline.
|
|
30
|
+
|
|
31
|
+
## Quality guidance and production checks
|
|
32
|
+
|
|
33
|
+
Context blocks only conditions it can derive from current inputs: the complete
|
|
34
|
+
source inventory needs dispositions, the selected reader-question set needs a
|
|
35
|
+
complete plan, answered questions must satisfy their evidence contracts, and
|
|
36
|
+
references, layout and currentness must remain valid.
|
|
37
|
+
|
|
38
|
+
Profile metrics are writing guidance rather than a separate pass decision.
|
|
39
|
+
They point out duplicated facts, enumeration where explanation was expected,
|
|
40
|
+
repeated template scaffolding, oversized quoted bodies, traversal-ordered
|
|
41
|
+
Partitions, reference-only targets and unsupported optional Artifacts. Treat a
|
|
42
|
+
finding as a prompt to reread the Section. Do not adjust wording, headings,
|
|
43
|
+
sentence counts or Partitions merely to move a counter.
|
|
44
|
+
|
|
45
|
+
Natural-language statements are not mechanically checked sentence by sentence.
|
|
46
|
+
Use only behavior stated by the supplied material, record a material gap when
|
|
47
|
+
the source does not establish a needed conclusion, and rely on final Review to
|
|
48
|
+
reject unsupported interpretation. When shape guidance conflicts with source
|
|
49
|
+
coverage, preserve the source-backed content and improve its presentation
|
|
50
|
+
rather than deleting it.
|
|
22
51
|
|
|
23
52
|
Do not return output paths, collection names, arbitrary question text, new authority, or pass/fail claims.
|
|
@@ -1,15 +1,31 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
Use these rules while producing the
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
1
|
+
# Source, subject, and claim planning
|
|
2
|
+
|
|
3
|
+
Use these rules while producing the current `main-index` `ArtifactResult`.
|
|
4
|
+
Captured Markdown is ordinary source material: it may create or enrich the same
|
|
5
|
+
knowledge candidates as code-derived input. If required material is still
|
|
6
|
+
missing, return a material-gap disposition and let a later main-index run consume
|
|
7
|
+
the newly captured source. Do not create an answer-only result, landing, or
|
|
8
|
+
second review workflow. Context remains the authority for schemas, SubjectKey
|
|
9
|
+
normalization, identities, paths, collisions, stale state, layout changes,
|
|
10
|
+
Review, and publication.
|
|
11
|
+
|
|
12
|
+
## `reader-subject` partition strategy
|
|
13
|
+
|
|
14
|
+
For a partition workset, group captured document members by durable reader
|
|
15
|
+
subject rather than by file, heading, route, or temporary capture batch. Use
|
|
16
|
+
the complete authorized document text together with maintained title,
|
|
17
|
+
`source_path`, route, audience, and reader-task evidence. These fields are
|
|
18
|
+
evidence for the decision; none is sufficient by itself.
|
|
19
|
+
|
|
20
|
+
One group may contain multiple documents when they jointly explain the same
|
|
21
|
+
reader subject. Split platform or runtime variants only when their supported
|
|
22
|
+
contract, behavior, lifecycle, or reader task is materially different. Keep
|
|
23
|
+
navigation-only indexes, generated duplicates, empty placeholders, and
|
|
24
|
+
superseded pages out of authored groups with an explicit inventory
|
|
25
|
+
disposition. Every current inventory member must still receive exactly one
|
|
26
|
+
partition disposition. If durable subject boundaries cannot be established,
|
|
27
|
+
fail this semantic strategy so Context can use its existing catalog fallback;
|
|
28
|
+
do not silently return one group per file under `reader-subject`.
|
|
13
29
|
|
|
14
30
|
## Evidence and authority
|
|
15
31
|
|
|
@@ -18,8 +34,8 @@ making a source-wide decision. A file name, URL, title, heading, navigation
|
|
|
18
34
|
label, polished wording, profile id, or example is a navigation signal, not
|
|
19
35
|
proof of subject identity, authority, or reader intent.
|
|
20
36
|
|
|
21
|
-
Use only current source roles,
|
|
22
|
-
question targets supplied with the workset. Supporting or context-only material
|
|
37
|
+
Use only current source roles, authorized source views, target-resolution views,
|
|
38
|
+
and question targets supplied with the workset. Supporting or context-only material
|
|
23
39
|
may guide investigation but cannot become a cited Section or structured claim
|
|
24
40
|
unless the current authority makes it eligible. Preserve exact identifiers,
|
|
25
41
|
commands, links, numbers, conditions, code, and source-authored uncertainty.
|
|
@@ -32,6 +32,12 @@ or a long table. Do not create thin Artifacts to improve counts. If material has
|
|
|
32
32
|
an independent subject rather than merely a separate reader page, use the
|
|
33
33
|
workset's target-resolution choices; never invent a Node identity from a title.
|
|
34
34
|
|
|
35
|
+
Do not collapse a substantial captured document into a page that only lists its
|
|
36
|
+
headings or says the source should be consulted. Preserve supported procedures,
|
|
37
|
+
API tables, examples, constraints, compatibility notes, and decisions inside
|
|
38
|
+
the selected reader Artifact; remove only navigation chrome, conversion noise,
|
|
39
|
+
duplicates, and content with an explicit omission disposition.
|
|
40
|
+
|
|
35
41
|
Within one Artifact, every Section must use that Artifact's `artifact_kind`.
|
|
36
42
|
Start by grouping only Sections with the same exact
|
|
37
43
|
`document_kind + reader_goal + artifact_kind` intent. Different intents may be
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
"logical_unit_ref": "node:anonymous-domain-reference",
|
|
10
10
|
"canonical_facts": { "target": { "eligible": true } },
|
|
11
11
|
"artifact_policy_variant": "standard",
|
|
12
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
12
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-purpose"], "evidence_refs": ["evidence:anonymous-domain-reference-source"] }],
|
|
13
13
|
"evidence_refs": ["evidence:anonymous-domain-reference-source"]
|
|
14
14
|
},
|
|
15
15
|
{
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
"logical_unit_ref": "node:anonymous-product-requirements",
|
|
23
23
|
"canonical_facts": { "target": { "eligible": true } },
|
|
24
24
|
"artifact_policy_variant": "standard",
|
|
25
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
25
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-purpose"], "evidence_refs": ["evidence:anonymous-product-requirements-source"] }],
|
|
26
26
|
"evidence_refs": ["evidence:anonymous-product-requirements-source"]
|
|
27
27
|
},
|
|
28
28
|
{
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"logical_unit_ref": "node:anonymous-technical-guide",
|
|
36
36
|
"canonical_facts": { "target": { "eligible": true } },
|
|
37
37
|
"artifact_policy_variant": "standard",
|
|
38
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
38
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-structure"], "evidence_refs": ["evidence:anonymous-technical-guide-source"] }],
|
|
39
39
|
"evidence_refs": ["evidence:anonymous-technical-guide-source"]
|
|
40
40
|
},
|
|
41
41
|
{
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"logical_unit_ref": "node:anonymous-user-and-developer-guide",
|
|
49
49
|
"canonical_facts": { "target": { "eligible": true } },
|
|
50
50
|
"artifact_policy_variant": "standard",
|
|
51
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
51
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-operation"], "evidence_refs": ["evidence:anonymous-user-and-developer-guide-source"] }],
|
|
52
52
|
"evidence_refs": ["evidence:anonymous-user-and-developer-guide-source"]
|
|
53
53
|
},
|
|
54
54
|
{
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"logical_unit_ref": "node:anonymous-public-api-reference",
|
|
62
62
|
"canonical_facts": { "target": { "eligible": true } },
|
|
63
63
|
"artifact_policy_variant": "standard",
|
|
64
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
64
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-contract"], "evidence_refs": ["evidence:anonymous-public-api-reference-source"] }],
|
|
65
65
|
"evidence_refs": ["evidence:anonymous-public-api-reference-source"]
|
|
66
66
|
},
|
|
67
67
|
{
|
|
@@ -74,7 +74,7 @@
|
|
|
74
74
|
"logical_unit_ref": "node:anonymous-runbook",
|
|
75
75
|
"canonical_facts": { "target": { "eligible": true } },
|
|
76
76
|
"artifact_policy_variant": "standard",
|
|
77
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
77
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-operation"], "evidence_refs": ["evidence:anonymous-runbook-source"] }],
|
|
78
78
|
"evidence_refs": ["evidence:anonymous-runbook-source"]
|
|
79
79
|
},
|
|
80
80
|
{
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"logical_unit_ref": "node:anonymous-faq-support",
|
|
88
88
|
"canonical_facts": { "target": { "eligible": true } },
|
|
89
89
|
"artifact_policy_variant": "standard",
|
|
90
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
90
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-purpose"], "evidence_refs": ["evidence:anonymous-faq-support-source"] }],
|
|
91
91
|
"evidence_refs": ["evidence:anonymous-faq-support-source"]
|
|
92
92
|
},
|
|
93
93
|
{
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
"logical_unit_ref": "node:anonymous-standard-policy",
|
|
101
101
|
"canonical_facts": { "target": { "eligible": true } },
|
|
102
102
|
"artifact_policy_variant": "standard",
|
|
103
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
103
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-contract"], "evidence_refs": ["evidence:anonymous-standard-policy-source"] }],
|
|
104
104
|
"evidence_refs": ["evidence:anonymous-standard-policy-source"]
|
|
105
105
|
},
|
|
106
106
|
{
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
"logical_unit_ref": "node:anonymous-decision-record",
|
|
114
114
|
"canonical_facts": { "target": { "eligible": true } },
|
|
115
115
|
"artifact_policy_variant": "standard",
|
|
116
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
116
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-purpose"], "evidence_refs": ["evidence:anonymous-decision-record-source"] }],
|
|
117
117
|
"evidence_refs": ["evidence:anonymous-decision-record-source"]
|
|
118
118
|
},
|
|
119
119
|
{
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
"logical_unit_ref": "node:anonymous-incident-review",
|
|
127
127
|
"canonical_facts": { "target": { "eligible": true } },
|
|
128
128
|
"artifact_policy_variant": "standard",
|
|
129
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
129
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-operation"], "evidence_refs": ["evidence:anonymous-incident-review-source"] }],
|
|
130
130
|
"evidence_refs": ["evidence:anonymous-incident-review-source"]
|
|
131
131
|
},
|
|
132
132
|
{
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
"logical_unit_ref": "node:anonymous-test-validation",
|
|
140
140
|
"canonical_facts": { "target": { "eligible": true } },
|
|
141
141
|
"artifact_policy_variant": "standard",
|
|
142
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
142
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-operation"], "evidence_refs": ["evidence:anonymous-test-validation-source"] }],
|
|
143
143
|
"evidence_refs": ["evidence:anonymous-test-validation-source"]
|
|
144
144
|
},
|
|
145
145
|
{
|
|
@@ -152,7 +152,7 @@
|
|
|
152
152
|
"logical_unit_ref": "node:anonymous-release-migration-guide",
|
|
153
153
|
"canonical_facts": { "target": { "eligible": true } },
|
|
154
154
|
"artifact_policy_variant": "standard",
|
|
155
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
155
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-operation"], "evidence_refs": ["evidence:anonymous-release-migration-guide-source"] }],
|
|
156
156
|
"evidence_refs": ["evidence:anonymous-release-migration-guide-source"]
|
|
157
157
|
},
|
|
158
158
|
{
|
|
@@ -165,7 +165,7 @@
|
|
|
165
165
|
"logical_unit_ref": "node:anonymous-documentation-site",
|
|
166
166
|
"canonical_facts": { "target": { "eligible": true } },
|
|
167
167
|
"artifact_policy_variant": "standard",
|
|
168
|
-
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:
|
|
168
|
+
"artifacts": [{ "artifact_id": "content", "artifact_kind": "content", "purpose": "required", "reader_question_refs": ["question:reader-purpose"], "evidence_refs": ["evidence:anonymous-documentation-site-source"] }],
|
|
169
169
|
"evidence_refs": ["evidence:anonymous-documentation-site-source"]
|
|
170
170
|
}
|
|
171
171
|
]
|
|
@@ -146,6 +146,128 @@
|
|
|
146
146
|
]
|
|
147
147
|
}
|
|
148
148
|
]
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"id": "anonymous-product-intent",
|
|
152
|
+
"profile": "product-requirements",
|
|
153
|
+
"source_role": "authoritative-document",
|
|
154
|
+
"density_mode": "meso",
|
|
155
|
+
"candidate_signal": "coherent-product-outcome",
|
|
156
|
+
"candidate_resolution": "dismiss-with-rationale",
|
|
157
|
+
"artifacts": [{
|
|
158
|
+
"artifact_id": "product-intent",
|
|
159
|
+
"artifact_kind": "content",
|
|
160
|
+
"boundary_decision": "retain-section-group",
|
|
161
|
+
"sections": [{ "section_key": "outcome", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "product-requirements", "reader_goal": "understand-product-intent", "artifact_kind": "content" }]
|
|
162
|
+
}]
|
|
163
|
+
},
|
|
164
|
+
{
|
|
165
|
+
"id": "anonymous-public-api-contract",
|
|
166
|
+
"profile": "public-api-reference",
|
|
167
|
+
"source_role": "authoritative-document",
|
|
168
|
+
"density_mode": "meso",
|
|
169
|
+
"candidate_signal": "contract-and-policy-boundaries",
|
|
170
|
+
"candidate_resolution": "accept-correction",
|
|
171
|
+
"artifacts": [
|
|
172
|
+
{ "artifact_id": "api-reference", "artifact_kind": "content", "boundary_decision": "promote-reader-artifact", "sections": [{ "section_key": "operations", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "public-api-reference", "reader_goal": "look-up-public-contract", "artifact_kind": "content" }] },
|
|
173
|
+
{ "artifact_id": "contract-policy", "artifact_kind": "content", "boundary_decision": "promote-reader-artifact", "sections": [{ "section_key": "compatibility", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "public-contract-policy", "reader_goal": "follow-public-contract-policy", "artifact_kind": "content" }] }
|
|
174
|
+
]
|
|
175
|
+
},
|
|
176
|
+
{
|
|
177
|
+
"id": "anonymous-operational-runbook",
|
|
178
|
+
"profile": "runbook",
|
|
179
|
+
"source_role": "operational-document",
|
|
180
|
+
"density_mode": "micro",
|
|
181
|
+
"candidate_signal": "ordered-recovery-task",
|
|
182
|
+
"candidate_resolution": "keep-unresolved",
|
|
183
|
+
"artifacts": [{
|
|
184
|
+
"artifact_id": "recovery-procedure",
|
|
185
|
+
"artifact_kind": "content",
|
|
186
|
+
"boundary_decision": "retain-section-group",
|
|
187
|
+
"sections": [{ "section_key": "recover", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "runbook", "reader_goal": "operate-or-recover-system", "artifact_kind": "content" }]
|
|
188
|
+
}]
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"id": "anonymous-support-answers",
|
|
192
|
+
"profile": "faq-support",
|
|
193
|
+
"source_role": "supporting-document",
|
|
194
|
+
"density_mode": "micro",
|
|
195
|
+
"candidate_signal": "independent-reader-question",
|
|
196
|
+
"candidate_resolution": "accept-correction",
|
|
197
|
+
"artifacts": [{
|
|
198
|
+
"artifact_id": "support-answer",
|
|
199
|
+
"artifact_kind": "content",
|
|
200
|
+
"boundary_decision": "promote-reader-artifact",
|
|
201
|
+
"sections": [{ "section_key": "answer", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "faq-support", "reader_goal": "resolve-reader-question", "artifact_kind": "content" }]
|
|
202
|
+
}]
|
|
203
|
+
},
|
|
204
|
+
{
|
|
205
|
+
"id": "anonymous-standard-policy",
|
|
206
|
+
"profile": "standard-policy",
|
|
207
|
+
"source_role": "authoritative-document",
|
|
208
|
+
"density_mode": "single-pass",
|
|
209
|
+
"candidate_signal": "single-normative-scope",
|
|
210
|
+
"candidate_resolution": "dismiss-with-rationale",
|
|
211
|
+
"artifacts": [{
|
|
212
|
+
"artifact_id": "policy",
|
|
213
|
+
"artifact_kind": "content",
|
|
214
|
+
"boundary_decision": "retain-section-group",
|
|
215
|
+
"sections": [{ "section_key": "requirements", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "standard-policy", "reader_goal": "follow-standard-or-policy", "artifact_kind": "content" }]
|
|
216
|
+
}]
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"id": "anonymous-architecture-decision",
|
|
220
|
+
"profile": "decision-record",
|
|
221
|
+
"source_role": "decision-record",
|
|
222
|
+
"density_mode": "single-pass",
|
|
223
|
+
"candidate_signal": "decision-with-tradeoffs",
|
|
224
|
+
"candidate_resolution": "dismiss-with-rationale",
|
|
225
|
+
"artifacts": [{
|
|
226
|
+
"artifact_id": "decision",
|
|
227
|
+
"artifact_kind": "content",
|
|
228
|
+
"boundary_decision": "retain-section-group",
|
|
229
|
+
"sections": [{ "section_key": "tradeoffs", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "decision-record", "reader_goal": "understand-decision-and-tradeoffs", "artifact_kind": "content" }]
|
|
230
|
+
}]
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"id": "anonymous-incident-learning",
|
|
234
|
+
"profile": "incident-review",
|
|
235
|
+
"source_role": "operational-document",
|
|
236
|
+
"density_mode": "macro",
|
|
237
|
+
"candidate_signal": "timeline-and-remediation",
|
|
238
|
+
"candidate_resolution": "accept-correction",
|
|
239
|
+
"artifacts": [{
|
|
240
|
+
"artifact_id": "incident-review",
|
|
241
|
+
"artifact_kind": "content",
|
|
242
|
+
"boundary_decision": "retain-section-group",
|
|
243
|
+
"sections": [{ "section_key": "learning", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "incident-review", "reader_goal": "learn-from-incident", "artifact_kind": "content" }]
|
|
244
|
+
}]
|
|
245
|
+
},
|
|
246
|
+
{
|
|
247
|
+
"id": "anonymous-validation-record",
|
|
248
|
+
"profile": "test-validation",
|
|
249
|
+
"source_role": "supporting-document",
|
|
250
|
+
"density_mode": "meso",
|
|
251
|
+
"candidate_signal": "acceptance-result",
|
|
252
|
+
"candidate_resolution": "keep-unresolved",
|
|
253
|
+
"artifacts": [{
|
|
254
|
+
"artifact_id": "validation",
|
|
255
|
+
"artifact_kind": "content",
|
|
256
|
+
"boundary_decision": "retain-section-group",
|
|
257
|
+
"sections": [{ "section_key": "result", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "test-validation", "reader_goal": "verify-behavior-or-acceptance", "artifact_kind": "content" }]
|
|
258
|
+
}]
|
|
259
|
+
},
|
|
260
|
+
{
|
|
261
|
+
"id": "anonymous-release-migration",
|
|
262
|
+
"profile": "release-migration-guide",
|
|
263
|
+
"source_role": "authoritative-document",
|
|
264
|
+
"density_mode": "macro",
|
|
265
|
+
"candidate_signal": "release-and-migration-tasks",
|
|
266
|
+
"candidate_resolution": "accept-correction",
|
|
267
|
+
"artifacts": [
|
|
268
|
+
{ "artifact_id": "release-change", "artifact_kind": "content", "boundary_decision": "promote-reader-artifact", "sections": [{ "section_key": "change", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "release-guide", "reader_goal": "understand-release-change", "artifact_kind": "content" }] },
|
|
269
|
+
{ "artifact_id": "migration-task", "artifact_kind": "content", "boundary_decision": "promote-reader-artifact", "sections": [{ "section_key": "steps", "owner_indexer_id": "anonymous-markdown-indexer", "document_kind": "migration-guide", "reader_goal": "complete-migration", "artifact_kind": "content" }] }
|
|
270
|
+
]
|
|
149
271
|
}
|
|
150
272
|
]
|
|
151
273
|
}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
schema: agent-graph.action.v1
|
|
2
|
+
id: materialize-indexer-workset-view
|
|
3
|
+
runner: host
|
|
4
|
+
effect: read
|
|
5
|
+
handler: context.materialize-indexer-workset-view/v1
|
|
6
|
+
inputSchema: schemas/indexer-workset-view-materialization-request.schema.json
|
|
7
|
+
outputSchema: schemas/indexer-authorized-workset-view.schema.json
|
|
@@ -3,5 +3,5 @@ id: run-indexer-post-author-composer
|
|
|
3
3
|
runner: agent
|
|
4
4
|
effect: write
|
|
5
5
|
skill: skills/run-indexer-post-author-composer/SKILL.md
|
|
6
|
-
inputSchema: schemas/indexer-
|
|
7
|
-
outputSchema: schemas/indexer-
|
|
6
|
+
inputSchema: schemas/indexer-agent-step-input.schema.json
|
|
7
|
+
outputSchema: schemas/indexer-agent-step-result.schema.json
|
|
@@ -18,19 +18,23 @@ codes:
|
|
|
18
18
|
- { code: route.capture.configuration-required, kind: route-reason, summary: Registered document sources are missing capture declarations., document: resources/procedures/project-configuration.md }
|
|
19
19
|
- { code: route.capture.permission-required, kind: route-reason, summary: External document capture requires source-read permission., document: resources/procedures/document-capture.md }
|
|
20
20
|
- { code: route.capture.pending-target, kind: route-reason, summary: Capture the next declared document target., document: resources/procedures/document-capture.md }
|
|
21
|
-
- { code: route.review.identity-conflict, kind: route-reason, summary: Preserve approved ViewRef and path identity before Review., document: resources/procedures/knowledge-review.md }
|
|
22
21
|
- { code: route.review.decision-required, kind: route-reason, summary: The complete current candidate batch needs one review decision set., document: resources/procedures/knowledge-review.md }
|
|
23
22
|
- { code: route.review.apply-managed, kind: route-reason, summary: Apply the current candidate batch under explicit session-managed authority., document: resources/procedures/knowledge-review.md }
|
|
24
23
|
- { code: route.close.projection-stale, kind: route-reason, summary: Rebuild the deterministic approved structure projection., document: resources/procedures/close-and-build.md }
|
|
25
24
|
- { code: route.package.output-required, kind: route-reason, summary: Approved knowledge has no confirmed package output., document: resources/procedures/package-output.md }
|
|
26
25
|
- { code: route.package.configuration-required, kind: route-reason, summary: Declare the confirmed package output in the Context project., document: resources/procedures/package-output.md }
|
|
27
26
|
- { code: route.package.template-review-required, kind: route-reason, summary: "Replace or edit package templates, or explicitly accept the generic defaults.", document: resources/procedures/package-output.md }
|
|
28
|
-
- { code: route.document-revision.requested, kind: route-reason, summary: Apply and validate the user's requested correction on one approved knowledge page., document: resources/procedures/document-revision.md }
|
|
29
27
|
- { code: route.build.package-stale, kind: route-reason, summary: Build the declared package outputs from current approved knowledge., document: resources/procedures/close-and-build.md }
|
|
30
28
|
- { code: route.logs.delivery-pending, kind: route-reason, summary: Send locally queued runtime logs through the configured generic sink., document: resources/procedures/close-and-build.md }
|
|
31
29
|
- { code: route.indexer.lifecycle-required, kind: route-reason, summary: Continue the sole registry-and-Provider indexing lifecycle until current Candidates exist. }
|
|
30
|
+
- { code: route.indexer.lifecycle-advance, kind: route-reason, summary: Advance deterministic Indexer lifecycle state to the next Agent step or user Gate. }
|
|
31
|
+
- { code: route.indexer.semantic-structure-review, kind: route-reason, summary: Review the complete semantic structure and create-or-enrich targets before Author work starts. }
|
|
32
|
+
- { code: route.indexer.recovery-required, kind: route-reason, summary: "Resolve a persisted source, material, or execution failure before retrying the Indexer lifecycle." }
|
|
33
|
+
- { code: route.indexer.layout-confirmation-required, kind: route-reason, summary: Confirm the proposed knowledge layout change or reject it with revision feedback. }
|
|
32
34
|
- { code: route.indexer.agent-step, kind: route-reason, summary: Run one digest-bound Indexer workset with the static Context Agent Action. }
|
|
33
35
|
- { code: route.indexer.provider-configuration, kind: route-reason, summary: Configure an exact path-free Provider selection from currently visible Indexer Skills. }
|
|
36
|
+
- { code: route.indexer.provider-host-resolution-required, kind: route-reason, summary: Resolve the exact current Indexer Provider through its declared Host Action. }
|
|
37
|
+
- { code: route.indexer.provider-finalization-required, kind: route-reason, summary: Deterministically validate and apply the fully resolved current Indexer Provider selection. }
|
|
34
38
|
- { code: route.indexer.markdown-capture-validation, kind: route-reason, summary: Require exact current document capture before discovering a semantic Markdown Provider. }
|
|
35
39
|
- { code: route.indexer.markdown-provider-discovery, kind: route-reason, summary: Report visible Markdown Indexer Skills and build one capture-bound Provider route input. }
|
|
36
40
|
- { code: route.indexer.markdown-provider-validation, kind: route-reason, summary: Revalidate the capture-bound selection and resolve it through the exact CLI or Host boundary. }
|
|
@@ -75,25 +79,7 @@ codes:
|
|
|
75
79
|
- { code: route.indexer.post-author-observation, kind: route-reason, summary: Join current composer worksets with their ledger and publish independent completion Facts. }
|
|
76
80
|
- { code: route.indexer.post-author-composition, kind: route-reason, summary: Compose the current result envelope after every selected composer is accepted. }
|
|
77
81
|
- { code: route.indexer.result-reconciliation, kind: route-reason, summary: Recompute per-domain completion and emit exact capability or material gaps before reporting success. }
|
|
78
|
-
- { code: route.indexer.material-question-workset, kind: route-reason, summary: Build immutable question-target pairs and derive exact answer eligibility from current registry authority. }
|
|
79
|
-
- { code: route.indexer.material-answer-run-preparation, kind: route-reason, summary: Recover content-addressed material-answer runs and accepted empty or non-empty Results. }
|
|
80
|
-
- { code: route.indexer.material-answer-observation, kind: route-reason, summary: "Publish material-answer counts, next refs, candidates, and unresolved question keys." }
|
|
81
|
-
- { code: route.indexer.material-answer-run-start, kind: route-reason, summary: Persist one exact pending or stale material-answer run before dispatch. }
|
|
82
|
-
- { code: route.indexer.material-answer-agent-step, kind: route-reason, summary: Run one semantic-operation-gated material-answer request without rerunning main extraction. }
|
|
83
|
-
- { code: route.indexer.material-answer-run-acceptance, kind: route-reason, summary: Validate current source-span read receipts and atomically accept one material-answer Result. }
|
|
84
|
-
- { code: route.indexer.material-answer-run-failure, kind: route-reason, summary: Persist one exact material-answer failure without accepting partial evidence. }
|
|
85
|
-
- { code: route.indexer.material-answer-review, kind: route-reason, summary: Approve or reject only one exact material-answer evidence binding; final reader content remains unapproved. }
|
|
86
|
-
- { code: route.indexer.material-gap-audit, kind: route-reason, summary: Read-only recompute the expected retained material-gap ledger and route pre-Review drift to checkpoint or post-Review closure to close. }
|
|
87
|
-
- { code: route.indexer.material-gap-checkpoint, kind: route-reason, summary: Recompute and durably checkpoint the retained material-gap ledger before any blocking outcome. }
|
|
88
|
-
- { code: route.indexer.material-answer-review-checkpoint, kind: route-reason, summary: Persist one exact answer-approved successor under retained ledger CAS. }
|
|
89
|
-
- { code: route.indexer.candidate-review-readiness, kind: route-reason, summary: Prove exact precompile and postcompile mechanical audits are current for the effective candidate revision. }
|
|
90
82
|
- { code: route.indexer.candidate-compile, kind: route-reason, summary: Compile Candidate Artifacts from the exact accepted author IndexerResult set and authorized layout. }
|
|
91
83
|
- { code: route.indexer.incremental-impact, kind: route-reason, summary: "Report exact logical-unit, Artifact, and Section impact from complete current Merkle dependency views." }
|
|
92
|
-
- { code: route.indexer.
|
|
93
|
-
- { code: route.indexer.
|
|
94
|
-
- { code: route.indexer.profile-failure-report, kind: route-reason, summary: "Persist the complete module, artifact, metric, attempt, missing-input, and capability-loss report after three failures." }
|
|
95
|
-
- { code: route.indexer.profile-override, kind: route-reason, summary: Require the user to force approve one exact current runtime profile risk through a non-delegable Gate. }
|
|
96
|
-
- { code: route.indexer.candidate-review, kind: route-reason, summary: Review the exact current candidate set only after the mechanical audit readiness proof passes. }
|
|
97
|
-
- { code: route.indexer.material-gap-evaluation, kind: route-reason, summary: Derive layout and main Review admission from the current retained ledger. }
|
|
98
|
-
- { code: route.indexer.material-answer-actualization, kind: route-reason, summary: Map answer-approved landings to current Artifact or Section identities and checkpoint the result. }
|
|
99
|
-
- { code: route.indexer.approved-knowledge-close, kind: route-reason, summary: Atomically close approved Indexer structure with exact resolved material-answer provenance. }
|
|
84
|
+
- { code: route.indexer.candidate-review, kind: route-reason, summary: Review the exact current candidate set only after current mechanical validation passes. }
|
|
85
|
+
- { code: route.indexer.approved-knowledge-close, kind: route-reason, summary: Atomically close approved Indexer structure after required material gaps are resolved. }
|