@c4a/context-cli 0.7.1 → 0.7.4
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 +59797 -81281
- 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 +44 -85
- package/plugins/codex/.codex-plugin/plugin.json +2 -2
- package/plugins/codex/skills/context/SKILL.md +44 -85
- package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
- package/plugins/cursor/commands/c4a-context.md +44 -85
- package/plugins/skills/context/SKILL.md +44 -85
- 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/configure-indexer-providers.yaml +1 -1
- package/providers/context/actions/materialize-indexer-workset-view.yaml +7 -0
- package/providers/context/actions/run-indexer-post-author-composer.yaml +1 -1
- package/providers/context/codes.yaml +6 -22
- package/providers/context/graphs/indexer.yaml +73 -564
- package/providers/context/graphs/workspace.yaml +5 -44
- package/providers/context/manifest.json +77 -666
- package/providers/context/provider.yaml +1 -1
- package/providers/context/resources/dialogue/human-gates.md +3 -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 +13 -4
- 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/schemas/indexer-agent-step-input.schema.json +2 -2
- package/providers/context/schemas/indexer-agent-step-result.schema.json +298 -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-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 +32 -0
- package/providers/context/skills/configure-indexer-providers/SKILL.md +40 -27
- package/providers/context/skills/run-indexer-agent-step/SKILL.md +34 -8
- package/providers/context/skills/run-indexer-lifecycle/SKILL.md +5 -4
- package/providers/context/skills/run-indexer-post-author-composer/SKILL.md +38 -9
- 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-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-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
|
@@ -43,11 +43,8 @@ managed work, or no further review already resolves this choice.
|
|
|
43
43
|
Use the user's explicit language choice when present; otherwise pass `zh-CN`
|
|
44
44
|
for a Chinese conversation and `en` for an English conversation. Pass
|
|
45
45
|
`project-dir`, `--name`, `--dev`, or `--debug` only when the user explicitly
|
|
46
|
-
requested that initialization choice.
|
|
47
|
-
|
|
48
|
-
when the user explicitly asks to disable it during initialization. Pass
|
|
49
|
-
`--managed` only after the user explicitly authorizes fully managed operation
|
|
50
|
-
in this conversation.
|
|
46
|
+
requested that initialization choice. Pass `--managed` only after the user
|
|
47
|
+
explicitly authorizes fully managed operation in this conversation.
|
|
51
48
|
|
|
52
49
|
If the `context` process itself cannot start because the command is missing
|
|
53
50
|
(`ENOENT`, or shell exit 127 explicitly identifying `context` as the missing
|
|
@@ -76,23 +73,18 @@ Execute only `next_action.command` returned by `context entry`:
|
|
|
76
73
|
init`, enter the project root, read the generated `AGENTS.md`, and run this
|
|
77
74
|
entry again.
|
|
78
75
|
|
|
79
|
-
If the user
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
evidence-maintenance action, or already-pending Review batch first; these may
|
|
83
|
-
change the approved baseline. Before continuing unrelated capture, extraction,
|
|
84
|
-
package configuration, or build work, start the correction with:
|
|
76
|
+
If the user asks to correct a current Candidate before approval, first let
|
|
77
|
+
`context entry` relocate into the workspace and evaluate its current Route.
|
|
78
|
+
Start the correction with:
|
|
85
79
|
|
|
86
80
|
```bash
|
|
87
|
-
context revise "<
|
|
81
|
+
context revise "<candidate title, path, or id>" --instruction "<requested correction>" --format json
|
|
88
82
|
```
|
|
89
83
|
|
|
90
|
-
When the target is unique,
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
After the Route validates the revision, continue normally: Context will offer
|
|
95
|
-
the package build when the correction makes its output stale.
|
|
84
|
+
When the target is unique, Context invalidates only its derived outputs and
|
|
85
|
+
reopens the owning Author workset. Run the returned status command and follow
|
|
86
|
+
the current Route. If the target is ambiguous, ask which Candidate the user
|
|
87
|
+
means. Never edit `knowledge/`, `dist/`, or create a side-channel revision page.
|
|
96
88
|
|
|
97
89
|
### Conversation modes
|
|
98
90
|
|
|
@@ -104,24 +96,6 @@ before workflow evaluation. Debugging records traces below
|
|
|
104
96
|
`.tmp/context-runtime/debug/` but does not grant workflow authority or provide
|
|
105
97
|
source evidence.
|
|
106
98
|
|
|
107
|
-
Document optimization is enabled by default for newly initialized workspaces.
|
|
108
|
-
It performs source-constrained editorial revision: the CLI identifies
|
|
109
|
-
readability and knowledge-value signals, and the Agent may keep, repair,
|
|
110
|
-
reshape, or safely omit content only inside its existing source Section. It
|
|
111
|
-
must preserve facts, link targets, images, code, numbers, identifiers, and
|
|
112
|
-
source evidence. Approved pages remain source-faithful; only changed full-page
|
|
113
|
-
revisions are stored beside them as `knowledge/**/*__revision.md`. Default
|
|
114
|
-
knowledge discovery excludes those reserved sidecars, and internal editorial
|
|
115
|
-
audit state is not included in package output.
|
|
116
|
-
|
|
117
|
-
For an existing workspace, respect its current `package.json` setting. Run
|
|
118
|
-
`context optimize-docs enable` or `context optimize-docs disable` only when the
|
|
119
|
-
user explicitly changes that preference. If initialization is required and the
|
|
120
|
-
user opts out, pass `--no-optimize-docs` through `context entry`; otherwise let
|
|
121
|
-
the default initialization command enable it.
|
|
122
|
-
Follow the resulting Route instead of editing approved knowledge or package
|
|
123
|
-
output by hand.
|
|
124
|
-
|
|
125
99
|
For explicitly authorized fully managed operation, use:
|
|
126
100
|
|
|
127
101
|
```bash
|
|
@@ -141,11 +115,11 @@ that returned Route; never reconstruct a command from an earlier step.
|
|
|
141
115
|
|
|
142
116
|
Code knowledge is published under `codeindex`. Context mechanically audits each
|
|
143
117
|
module's input analysis, stable boundaries, facts, explanation, evidence scope,
|
|
144
|
-
and page shape without producing a total score.
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
118
|
+
and page shape without producing a total score. Blocking mechanical failures
|
|
119
|
+
reopen the owning Author or Composer workset; advisory metrics remain warnings
|
|
120
|
+
and do not create a retry ledger or override Gate. If a legacy workspace returns
|
|
121
|
+
`route.extract.codeindex-migration-required`, execute only its migration
|
|
122
|
+
command; do not rename `codegraph` paths manually.
|
|
149
123
|
|
|
150
124
|
### Discover Indexer Providers before selection
|
|
151
125
|
|
|
@@ -158,15 +132,11 @@ default, six-level customization ladder, upgrade conflict handling, debugging
|
|
|
158
132
|
commands, and the exit condition for each level. Do not replace it with a
|
|
159
133
|
remembered or host-specific workflow.
|
|
160
134
|
|
|
161
|
-
When the current Route starts a new Code or Markdown indexing task,
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
```
|
|
167
|
-
|
|
168
|
-
Report the returned CLI-bundled entry Skills together with every other Indexer
|
|
169
|
-
Skill already visible through the current host. The conversational report must
|
|
135
|
+
When the current Route starts a new Code or Markdown indexing task, its
|
|
136
|
+
`configure-indexer-providers` Action input already contains the exact applied
|
|
137
|
+
requirements and CLI-bundled Provider catalog. Report those bundled entries
|
|
138
|
+
together with every other Indexer Skill already visible through the current
|
|
139
|
+
host. The conversational report must
|
|
170
140
|
include each Skill name, readable exact version when available, and source type
|
|
171
141
|
(CLI-bundled community, workspace, installed plugin, or authorized marketplace
|
|
172
142
|
result). When the host already exposes an exact Skill root or `SKILL.md` path,
|
|
@@ -180,9 +150,7 @@ unavailable rather than guessing it.
|
|
|
180
150
|
Group observations with the same Skill name and exact version into one
|
|
181
151
|
conversational item and list all observed source types on that item. An
|
|
182
152
|
installed projection of an identical CLI-bundled identity is not a second
|
|
183
|
-
Provider. Keep different versions separate
|
|
184
|
-
each distinct source observation as its own `visible_skills` entry because
|
|
185
|
-
`source_type` is singular; never use source count or discovery order as
|
|
153
|
+
Provider. Keep different versions separate; never use source count or discovery order as
|
|
186
154
|
selection precedence. Do not search arbitrary directories, infer host cache
|
|
187
155
|
paths, install a plugin, or query a marketplace unless the user separately
|
|
188
156
|
authorizes it. Keep this discovery report only in the conversation: do not
|
|
@@ -191,36 +159,23 @@ write it to `src/`, `package.json`, lifecycle state, receipts, audit output, or
|
|
|
191
159
|
new indexing task, a changed host-visible Skill set, or an explicit diagnostic
|
|
192
160
|
request.
|
|
193
161
|
|
|
194
|
-
|
|
195
|
-
`
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
write source, add dependencies, or claim the draft is applied.
|
|
212
|
-
|
|
213
|
-
Only `selection-validation-required` returns a
|
|
214
|
-
`selection_proposal_input`. Pass that exact object to:
|
|
215
|
-
|
|
216
|
-
```bash
|
|
217
|
-
context indexer validate-indexer-selection-proposal --input <payload.yaml-or-json> --format json
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
Use only the returned `next_provider_requests` for resolution. A successful
|
|
221
|
-
static report does not authorize materialization, installation, execution, or
|
|
222
|
-
writing the proposal into `src/indexers.yaml`; continue through the Route's
|
|
223
|
-
resolver, staging, final validation, confirmation, and apply Actions.
|
|
162
|
+
Return only `stage: provider-selection`, the non-CLI
|
|
163
|
+
`host_visible_skills`, and the selected semantic `indexers` through the exact
|
|
164
|
+
`context action complete-current` command returned by the Route. The CLI owns
|
|
165
|
+
construction of the full registry payload, fallback/conflict checks, static
|
|
166
|
+
validation, Provider resolution and staging, final validation, and atomic
|
|
167
|
+
application of `src/indexers.yaml`. Do not call their low-level commands as a
|
|
168
|
+
second production workflow.
|
|
169
|
+
|
|
170
|
+
If a selected external Provider needs Host resolution, the next current Route
|
|
171
|
+
contains one `context.resolve-indexer-provider/v1` Host Action and its exact
|
|
172
|
+
request. Invoke that Host Action once, then submit
|
|
173
|
+
`stage: provider-resolution` with the returned Host result through the Route's
|
|
174
|
+
`complete-current` command. If the Bundle carries a non-allowlisted program,
|
|
175
|
+
the following current Route presents the existing program-execution Gate; wait
|
|
176
|
+
for its user/session-authority decision and submit that decision through
|
|
177
|
+
`complete-current`. A recovered `provider-finalization` Route consumes
|
|
178
|
+
only its fixed Action input; it must not resolve or install the Provider again.
|
|
224
179
|
|
|
225
180
|
### Follow the current Route
|
|
226
181
|
|
|
@@ -228,8 +183,12 @@ Treat `workflow.current` as the current-step authority:
|
|
|
228
183
|
|
|
229
184
|
1. Read every `resources.required` item whose `read_state` is `read-required`.
|
|
230
185
|
Read a returned `path` completely, or execute a returned resource `command`
|
|
231
|
-
and read its complete output file.
|
|
232
|
-
|
|
186
|
+
and read its complete output file. For a current Indexer Partition, Author,
|
|
187
|
+
Composer or structure-review Route, read the materialized files and then use
|
|
188
|
+
the Route's immediate completion command; do not create or submit a read
|
|
189
|
+
receipt. Other workflow resources may still require the returned receipt
|
|
190
|
+
command. Materializing a resource is not reading it. Keep those receipts only
|
|
191
|
+
in this conversation and submit them with
|
|
233
192
|
the exact returned `context status --resource-receipts @<file>` command. Use
|
|
234
193
|
`after_read_receipts` only after the full resource has been read. The exact
|
|
235
194
|
`resources.after_read.command` already returns the re-evaluated
|
|
@@ -42,11 +42,8 @@ managed work, or no further review already resolves this choice.
|
|
|
42
42
|
Use the user's explicit language choice when present; otherwise pass `zh-CN`
|
|
43
43
|
for a Chinese conversation and `en` for an English conversation. Pass
|
|
44
44
|
`project-dir`, `--name`, `--dev`, or `--debug` only when the user explicitly
|
|
45
|
-
requested that initialization choice.
|
|
46
|
-
|
|
47
|
-
when the user explicitly asks to disable it during initialization. Pass
|
|
48
|
-
`--managed` only after the user explicitly authorizes fully managed operation
|
|
49
|
-
in this conversation.
|
|
45
|
+
requested that initialization choice. Pass `--managed` only after the user
|
|
46
|
+
explicitly authorizes fully managed operation in this conversation.
|
|
50
47
|
|
|
51
48
|
If the `context` process itself cannot start because the command is missing
|
|
52
49
|
(`ENOENT`, or shell exit 127 explicitly identifying `context` as the missing
|
|
@@ -75,23 +72,18 @@ Execute only `next_action.command` returned by `context entry`:
|
|
|
75
72
|
init`, enter the project root, read the generated `AGENTS.md`, and run this
|
|
76
73
|
entry again.
|
|
77
74
|
|
|
78
|
-
If the user
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
evidence-maintenance action, or already-pending Review batch first; these may
|
|
82
|
-
change the approved baseline. Before continuing unrelated capture, extraction,
|
|
83
|
-
package configuration, or build work, start the correction with:
|
|
75
|
+
If the user asks to correct a current Candidate before approval, first let
|
|
76
|
+
`context entry` relocate into the workspace and evaluate its current Route.
|
|
77
|
+
Start the correction with:
|
|
84
78
|
|
|
85
79
|
```bash
|
|
86
|
-
context revise "<
|
|
80
|
+
context revise "<candidate title, path, or id>" --instruction "<requested correction>" --format json
|
|
87
81
|
```
|
|
88
82
|
|
|
89
|
-
When the target is unique,
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
After the Route validates the revision, continue normally: Context will offer
|
|
94
|
-
the package build when the correction makes its output stale.
|
|
83
|
+
When the target is unique, Context invalidates only its derived outputs and
|
|
84
|
+
reopens the owning Author workset. Run the returned status command and follow
|
|
85
|
+
the current Route. If the target is ambiguous, ask which Candidate the user
|
|
86
|
+
means. Never edit `knowledge/`, `dist/`, or create a side-channel revision page.
|
|
95
87
|
|
|
96
88
|
### Conversation modes
|
|
97
89
|
|
|
@@ -103,24 +95,6 @@ before workflow evaluation. Debugging records traces below
|
|
|
103
95
|
`.tmp/context-runtime/debug/` but does not grant workflow authority or provide
|
|
104
96
|
source evidence.
|
|
105
97
|
|
|
106
|
-
Document optimization is enabled by default for newly initialized workspaces.
|
|
107
|
-
It performs source-constrained editorial revision: the CLI identifies
|
|
108
|
-
readability and knowledge-value signals, and the Agent may keep, repair,
|
|
109
|
-
reshape, or safely omit content only inside its existing source Section. It
|
|
110
|
-
must preserve facts, link targets, images, code, numbers, identifiers, and
|
|
111
|
-
source evidence. Approved pages remain source-faithful; only changed full-page
|
|
112
|
-
revisions are stored beside them as `knowledge/**/*__revision.md`. Default
|
|
113
|
-
knowledge discovery excludes those reserved sidecars, and internal editorial
|
|
114
|
-
audit state is not included in package output.
|
|
115
|
-
|
|
116
|
-
For an existing workspace, respect its current `package.json` setting. Run
|
|
117
|
-
`context optimize-docs enable` or `context optimize-docs disable` only when the
|
|
118
|
-
user explicitly changes that preference. If initialization is required and the
|
|
119
|
-
user opts out, pass `--no-optimize-docs` through `context entry`; otherwise let
|
|
120
|
-
the default initialization command enable it.
|
|
121
|
-
Follow the resulting Route instead of editing approved knowledge or package
|
|
122
|
-
output by hand.
|
|
123
|
-
|
|
124
98
|
For explicitly authorized fully managed operation, use:
|
|
125
99
|
|
|
126
100
|
```bash
|
|
@@ -140,11 +114,11 @@ that returned Route; never reconstruct a command from an earlier step.
|
|
|
140
114
|
|
|
141
115
|
Code knowledge is published under `codeindex`. Context mechanically audits each
|
|
142
116
|
module's input analysis, stable boundaries, facts, explanation, evidence scope,
|
|
143
|
-
and page shape without producing a total score.
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
117
|
+
and page shape without producing a total score. Blocking mechanical failures
|
|
118
|
+
reopen the owning Author or Composer workset; advisory metrics remain warnings
|
|
119
|
+
and do not create a retry ledger or override Gate. If a legacy workspace returns
|
|
120
|
+
`route.extract.codeindex-migration-required`, execute only its migration
|
|
121
|
+
command; do not rename `codegraph` paths manually.
|
|
148
122
|
|
|
149
123
|
### Discover Indexer Providers before selection
|
|
150
124
|
|
|
@@ -157,15 +131,11 @@ default, six-level customization ladder, upgrade conflict handling, debugging
|
|
|
157
131
|
commands, and the exit condition for each level. Do not replace it with a
|
|
158
132
|
remembered or host-specific workflow.
|
|
159
133
|
|
|
160
|
-
When the current Route starts a new Code or Markdown indexing task,
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
Report the returned CLI-bundled entry Skills together with every other Indexer
|
|
168
|
-
Skill already visible through the current host. The conversational report must
|
|
134
|
+
When the current Route starts a new Code or Markdown indexing task, its
|
|
135
|
+
`configure-indexer-providers` Action input already contains the exact applied
|
|
136
|
+
requirements and CLI-bundled Provider catalog. Report those bundled entries
|
|
137
|
+
together with every other Indexer Skill already visible through the current
|
|
138
|
+
host. The conversational report must
|
|
169
139
|
include each Skill name, readable exact version when available, and source type
|
|
170
140
|
(CLI-bundled community, workspace, installed plugin, or authorized marketplace
|
|
171
141
|
result). When the host already exposes an exact Skill root or `SKILL.md` path,
|
|
@@ -179,9 +149,7 @@ unavailable rather than guessing it.
|
|
|
179
149
|
Group observations with the same Skill name and exact version into one
|
|
180
150
|
conversational item and list all observed source types on that item. An
|
|
181
151
|
installed projection of an identical CLI-bundled identity is not a second
|
|
182
|
-
Provider. Keep different versions separate
|
|
183
|
-
each distinct source observation as its own `visible_skills` entry because
|
|
184
|
-
`source_type` is singular; never use source count or discovery order as
|
|
152
|
+
Provider. Keep different versions separate; never use source count or discovery order as
|
|
185
153
|
selection precedence. Do not search arbitrary directories, infer host cache
|
|
186
154
|
paths, install a plugin, or query a marketplace unless the user separately
|
|
187
155
|
authorizes it. Keep this discovery report only in the conversation: do not
|
|
@@ -190,36 +158,23 @@ write it to `src/`, `package.json`, lifecycle state, receipts, audit output, or
|
|
|
190
158
|
new indexing task, a changed host-visible Skill set, or an explicit diagnostic
|
|
191
159
|
request.
|
|
192
160
|
|
|
193
|
-
|
|
194
|
-
`
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
write source, add dependencies, or claim the draft is applied.
|
|
211
|
-
|
|
212
|
-
Only `selection-validation-required` returns a
|
|
213
|
-
`selection_proposal_input`. Pass that exact object to:
|
|
214
|
-
|
|
215
|
-
```bash
|
|
216
|
-
context indexer validate-indexer-selection-proposal --input <payload.yaml-or-json> --format json
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
Use only the returned `next_provider_requests` for resolution. A successful
|
|
220
|
-
static report does not authorize materialization, installation, execution, or
|
|
221
|
-
writing the proposal into `src/indexers.yaml`; continue through the Route's
|
|
222
|
-
resolver, staging, final validation, confirmation, and apply Actions.
|
|
161
|
+
Return only `stage: provider-selection`, the non-CLI
|
|
162
|
+
`host_visible_skills`, and the selected semantic `indexers` through the exact
|
|
163
|
+
`context action complete-current` command returned by the Route. The CLI owns
|
|
164
|
+
construction of the full registry payload, fallback/conflict checks, static
|
|
165
|
+
validation, Provider resolution and staging, final validation, and atomic
|
|
166
|
+
application of `src/indexers.yaml`. Do not call their low-level commands as a
|
|
167
|
+
second production workflow.
|
|
168
|
+
|
|
169
|
+
If a selected external Provider needs Host resolution, the next current Route
|
|
170
|
+
contains one `context.resolve-indexer-provider/v1` Host Action and its exact
|
|
171
|
+
request. Invoke that Host Action once, then submit
|
|
172
|
+
`stage: provider-resolution` with the returned Host result through the Route's
|
|
173
|
+
`complete-current` command. If the Bundle carries a non-allowlisted program,
|
|
174
|
+
the following current Route presents the existing program-execution Gate; wait
|
|
175
|
+
for its user/session-authority decision and submit that decision through
|
|
176
|
+
`complete-current`. A recovered `provider-finalization` Route consumes
|
|
177
|
+
only its fixed Action input; it must not resolve or install the Provider again.
|
|
223
178
|
|
|
224
179
|
### Follow the current Route
|
|
225
180
|
|
|
@@ -227,8 +182,12 @@ Treat `workflow.current` as the current-step authority:
|
|
|
227
182
|
|
|
228
183
|
1. Read every `resources.required` item whose `read_state` is `read-required`.
|
|
229
184
|
Read a returned `path` completely, or execute a returned resource `command`
|
|
230
|
-
and read its complete output file.
|
|
231
|
-
|
|
185
|
+
and read its complete output file. For a current Indexer Partition, Author,
|
|
186
|
+
Composer or structure-review Route, read the materialized files and then use
|
|
187
|
+
the Route's immediate completion command; do not create or submit a read
|
|
188
|
+
receipt. Other workflow resources may still require the returned receipt
|
|
189
|
+
command. Materializing a resource is not reading it. Keep those receipts only
|
|
190
|
+
in this conversation and submit them with
|
|
232
191
|
the exact returned `context status --resource-receipts @<file>` command. Use
|
|
233
192
|
`after_read_receipts` only after the full resource has been read. The exact
|
|
234
193
|
`resources.after_read.command` already returns the re-evaluated
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: context-code-indexer
|
|
3
|
-
description: Context-managed Provider for
|
|
3
|
+
description: Context-managed Provider for source-grounded code knowledge. Use only when the Context Indexer lifecycle selects this Provider, not as a standalone workflow.
|
|
4
4
|
metadata:
|
|
5
5
|
context-role: "indexer-provider"
|
|
6
6
|
context-public-entry: "false"
|
|
7
|
-
context-provider-version: "1.
|
|
7
|
+
context-provider-version: "1.1.1"
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
# Context Code Indexer
|
|
@@ -15,6 +15,33 @@ shared Provider/customization guide before publishing or extending this Skill.
|
|
|
15
15
|
Those documents are authoring contracts; the current workset and Route remain
|
|
16
16
|
execution authority.
|
|
17
17
|
|
|
18
|
-
Use this Provider only through the Context Indexer lifecycle. The workspace registry selects an exact profile, version, integrity, scope, and operation.
|
|
18
|
+
Use this Provider only through the Context Indexer lifecycle. The workspace registry selects an exact profile, version, integrity, scope, and operation. Consume evidence only from the single Context-supplied Authorized Workset View; do not scan outside the supplied workset, construct pagination/receipt requests, or write project files directly.
|
|
19
|
+
|
|
20
|
+
Keep machine identity and reader content deliberately small. A durable Fact
|
|
21
|
+
locator may identify a relation or declaration, but must never embed a source
|
|
22
|
+
expression, implementation body, complete tool response, credential-like value,
|
|
23
|
+
or other source text; keep such material in the process-local protected payload.
|
|
24
|
+
Write for a consumer outside the indexed module: show what the module is
|
|
25
|
+
responsible for, when and how to enter it through stable interfaces, where it
|
|
26
|
+
hands off, and which core state, failure, operation, or source-of-truth facts are
|
|
27
|
+
needed for correct use and attribution. Effective coverage means answering these
|
|
28
|
+
supported reader questions across stable capabilities, not maximizing the number
|
|
29
|
+
of symbols or paths mentioned.
|
|
30
|
+
Every reader Artifact must answer the selected profile's concrete questions from
|
|
31
|
+
current facts. A symbol/path list, generic module summary, workflow explanation,
|
|
32
|
+
or internal Fact/View/digest count is not useful knowledge and must not be emitted.
|
|
33
|
+
Before emitting an Artifact, identify the concrete selected-profile question
|
|
34
|
+
that its logical unit answers. Formal question refs may close required coverage,
|
|
35
|
+
but a group label, Partition Subject, or large Fact volume alone is not a reader
|
|
36
|
+
purpose; a unit with no applicable profile question is catalog-only.
|
|
37
|
+
Bind each reader claim only to the smallest relevant evidence set; never attach
|
|
38
|
+
an entire workset inventory to a generic summary.
|
|
39
|
+
Close inventory members with their actual boundary evidence or a legal
|
|
40
|
+
catalog/exclusion disposition. Never reuse one unrelated fallback evidence
|
|
41
|
+
binding merely to make the disposition denominator appear complete.
|
|
42
|
+
When a large module exposes stable route, capability, protocol, runtime, or
|
|
43
|
+
storage boundaries, partition on those boundaries before authoring. Do not put
|
|
44
|
+
the whole module in one catch-all logical unit, and do not replace semantic
|
|
45
|
+
partitioning with numbered batches.
|
|
19
46
|
|
|
20
47
|
The machine-readable authority is `context-indexer.yaml`. Detailed authoring guidance is materialized by Context from the registered Bundle after its file ledger and integrity have been verified.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
protocol: context.indexer.provider/v1
|
|
2
2
|
id: context-code-indexer
|
|
3
|
-
version: 1.
|
|
3
|
+
version: 1.1.1
|
|
4
4
|
domains: [code]
|
|
5
5
|
|
|
6
6
|
activation:
|
|
@@ -62,14 +62,9 @@ provides:
|
|
|
62
62
|
priority: 200
|
|
63
63
|
operations:
|
|
64
64
|
- id: main-index
|
|
65
|
-
consumes: context.indexer.main-workset/
|
|
65
|
+
consumes: context.indexer.main-workset/v2
|
|
66
66
|
produces: context.indexer.main-result/v1
|
|
67
67
|
accepts_layer_fragments: [fact-enrichment, template-variables]
|
|
68
|
-
- id: material-answer
|
|
69
|
-
consumes: context.indexer.material-question-workset/v1
|
|
70
|
-
produces: context.indexer.material-answer-result/v1
|
|
71
|
-
supported_evidence_kinds: [code, contract, configuration, documentation, runbook, test-result, runtime-observation]
|
|
72
|
-
accepts_layer_fragments: [fact-enrichment]
|
|
73
68
|
layer_fragments:
|
|
74
69
|
- kind: derived-artifact-proposal
|
|
75
70
|
phase: post-author
|
|
@@ -209,7 +204,7 @@ provider:
|
|
|
209
204
|
- { id: contract-source, profile: contract-source, path: templates/contract-source.md }
|
|
210
205
|
- { id: derived-generated-source, profile: derived-generated-source, path: templates/derived-generated-source.md }
|
|
211
206
|
forbidden_fallbacks: [one-page-per-symbol, ordinal-batch-pages, inferred-runtime-chain]
|
|
212
|
-
completion_checks: [inventory-disposition-closure, subject-owner-closure,
|
|
207
|
+
completion_checks: [inventory-disposition-closure, subject-owner-closure, source-coverage]
|
|
213
208
|
|
|
214
209
|
customization:
|
|
215
210
|
supports: [config, instructions-append, template-override, program-extend]
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
# Code Indexer authoring contract
|
|
2
2
|
|
|
3
|
-
Consume only the current workset
|
|
3
|
+
Consume only the current workset authority and the single Authorized Workset View supplied by Context. Normalized parser facts, verified layer fragments, document evidence, and tool observations all arrive through that View; do not open source-specific evidence channels or manage their pagination and receipts.
|
|
4
|
+
|
|
5
|
+
The reader is outside the indexed module. Give that reader a reliable route to
|
|
6
|
+
the module's responsibility, supported entrypoints and interfaces, downstream
|
|
7
|
+
handoffs, and the core state, failure, operation, ownership, and source-of-truth
|
|
8
|
+
facts needed to use or attribute the capability correctly. Judge coverage by
|
|
9
|
+
whether supported profile questions and stable capability boundaries are
|
|
10
|
+
actually explained, never by symbol, file, relation, or evidence counts.
|
|
4
11
|
|
|
5
12
|
## Classify before selecting templates
|
|
6
13
|
|
|
@@ -16,14 +23,77 @@ Use only the ordered partition strategy materialized by Context for the current
|
|
|
16
23
|
|
|
17
24
|
Group related identities by a capability, entrypoint, protocol boundary, lifecycle stage, state owner, or handoff. A granular catalog is appropriate only when the selected profile and reader goal require a public API, protocol, command, or registry reference. A cross-module chain requires an explicit trigger, source-backed joins on both sides of every boundary, transformations or state handoffs, and a terminal outcome; imports or similar names do not prove execution order.
|
|
18
25
|
|
|
26
|
+
A module-level overview may be one logical unit, but it must not own every
|
|
27
|
+
member of a large application or service when current facts expose stable route
|
|
28
|
+
families, public capability families, protocol surfaces, runtime workers, or
|
|
29
|
+
storage boundaries. Give those boundaries separate semantic groups and keep the
|
|
30
|
+
overview limited to navigation and shared lifecycle. This keeps each Author View
|
|
31
|
+
bounded enough to inspect and prevents a catch-all page from replacing useful
|
|
32
|
+
knowledge. Never split by traversal order, member count, or numbered batches.
|
|
33
|
+
Renaming a fact-kind bucket such as all relations or all symbols is not semantic
|
|
34
|
+
partitioning; assign cross-boundary facts to the smallest capability, protocol,
|
|
35
|
+
runtime, or state boundary that they actually explain.
|
|
36
|
+
|
|
19
37
|
Create a reader target only from a CLI-supplied declaration, public export, contract declaration, runtime registration, approved Subject, or Partition Subject identity. Import/re-export aliases, ordinary references, internal helpers, and lightweight evidence may enrich their canonical owner but cannot independently authorize a target. Normalize aliases into the supplied canonical identity. Never promote a name merely because it appears in prose or has many inbound references.
|
|
20
38
|
|
|
39
|
+
## Durable identity and reader-output boundary
|
|
40
|
+
|
|
41
|
+
Keep durable locator identities compact and semantic. A locator may contain a
|
|
42
|
+
normalized file coordinate, declaration identity, relation kind, line and a
|
|
43
|
+
content digest, but never a raw call expression, implementation body, complete
|
|
44
|
+
configuration value, remote response, secret, token, or credential-like source
|
|
45
|
+
text. Full source material belongs only in the bounded process-local Fact payload;
|
|
46
|
+
reader prose consumes its verified meaning, not the internal carrier.
|
|
47
|
+
|
|
48
|
+
The selected profile templates are mandatory authoring guidance. Use current
|
|
49
|
+
facts to answer their reader questions about responsibility, entrypoints,
|
|
50
|
+
contracts, state, handoffs, failure behavior, configuration and operation. Omit
|
|
51
|
+
unsupported sections. Do not replace those answers with a generic introduction,
|
|
52
|
+
an exhaustive or representative symbol/path list, Parser/Indexer ownership text,
|
|
53
|
+
selected-Fact counts, View/receipt/digest metadata, or claims about what the
|
|
54
|
+
pipeline did. Those details neither help a reader nor recover production state.
|
|
55
|
+
|
|
56
|
+
State caller-visible contracts directly when current facts support them:
|
|
57
|
+
required inputs, defaults, quantity or size limits, and asymmetric rules between
|
|
58
|
+
operations or variants. Naming an internal validator, mapper, hook, or generic
|
|
59
|
+
"validation" step does not explain the contract. Omit details that current facts
|
|
60
|
+
cannot prove rather than inferring them from an implementation name.
|
|
61
|
+
|
|
21
62
|
## Author Result and evidence
|
|
22
63
|
|
|
23
64
|
For author work, produce exactly one Result for the supplied logical unit. Keep deterministic catalogs separate from explanatory prose, bind every declaration and Section to current evidence, and select only an Artifact policy variant listed in the workset. Missing material must become a canonical question disposition; never invent an answer or emit placeholder knowledge.
|
|
24
65
|
|
|
66
|
+
Before authoring, identify the concrete selected-profile question that the
|
|
67
|
+
logical unit answers. Formal question refs are used only when the workset
|
|
68
|
+
authorizes them, but their absence does not permit generic prose: do not turn the
|
|
69
|
+
Partition Subject, group label, or available Fact volume into an implied reader
|
|
70
|
+
purpose. Close the group as catalog-only when no profile question applies, or
|
|
71
|
+
return to requirement/registry planning when required coverage lacks authority.
|
|
72
|
+
|
|
73
|
+
An inventory group with no reader-authorizing public export, contract, runtime registration, approved Subject, or Partition Subject is catalog-only. Close its inventory dispositions and return no reader Artifact; do not publish a page that merely says the unit exists. Conversely, when the workset supplies current contract facts such as public signatures, properties, events, defaults, variants, examples, or source roles, consume each applicable fact in the matching template question or give it an explicit legal disposition. A generic directory summary is not a substitute for supplied contract facts.
|
|
74
|
+
|
|
75
|
+
For every Section, select the exact `document_kind`, `reader_goal`, and `artifact_kind` tuple declared by the current profile's unique layout mapping. Do not invent a tuple or return a collection name; Context resolves the collection mechanically from that mapping.
|
|
76
|
+
|
|
77
|
+
When the same Authorized Workset View contains CLI-authorized captured documents or tool snapshots, treat them as ordinary input evidence for the current logical unit. Use that material to answer a supplied question only when its evidence contract permits; otherwise keep the canonical material-gap disposition. Do not create a second answer flow or inspect registered sources outside the View.
|
|
78
|
+
|
|
25
79
|
Treat the CLI inventory as the complete denominator, not a sample. Parser facts may prove files, declarations, entries, contracts, and relationships; they do not by themselves prove business meaning, runtime defaults, failure behavior, or ownership. Every relationship must cite the concrete evidence for its own handoff. Do not repeat one whole-page evidence set across unrelated facts, and do not reduce a multi-source fact to one arbitrary primary file.
|
|
26
80
|
|
|
81
|
+
Inventory closure is not a license to attach a convenient fallback binding to
|
|
82
|
+
unrelated members. A `boundary-only` member still needs evidence that places
|
|
83
|
+
that member in the current semantic boundary; otherwise use the legal catalog,
|
|
84
|
+
exclusion, unsupported, or material-gap disposition that describes its actual
|
|
85
|
+
state. Denominator completeness with false attribution is invalid.
|
|
86
|
+
|
|
87
|
+
Before declaring a dependency or handoff unverified, inspect the complete authorized
|
|
88
|
+
source identity inventory for `code-relation` members and join their caller/callee
|
|
89
|
+
identity to the supplied source spans. Relationship members can enrich a logical
|
|
90
|
+
unit even when they are not primary partition members and do not need to be copied
|
|
91
|
+
into the Result fact inventory. A large relation inventory is not evidence absence:
|
|
92
|
+
select the few relations that cross a stable module, protocol, runtime, store, or
|
|
93
|
+
generated-client boundary, then explain that boundary from the corresponding code
|
|
94
|
+
span. Request material only when those authorized relations and spans still cannot
|
|
95
|
+
establish the handoff.
|
|
96
|
+
|
|
27
97
|
Close every CLI-supplied example candidate with exactly one decision: link it to its public target, merge it into a canonical example for the same target and scenario, retain it as a documentation example, exclude it with a reason, or request missing material. A retained representative must decide setup, key calls, parameters, and expected behavior as either extracted facts or evidence-backed not-applicable facets. Merge only by the full example identity supplied by Context; filenames and basenames are not identities. Do not omit an unresolved candidate from the decision set, and do not treat a material request as completed linkage.
|
|
28
98
|
|
|
29
99
|
Explain stable responsibility, inputs, outputs, state and failure boundaries, the next handoff, and the evidence that supports each claim. Keep implementation bodies, generated payloads, exhaustive internal helper lists, and normalized template repetition out of reader prose. Empty Results are valid only when every target receives a legal disposition.
|
|
@@ -36,14 +106,47 @@ If a declared primary fact or Artifact requirement is absent, or the view does n
|
|
|
36
106
|
|
|
37
107
|
## Mechanical audit and revision
|
|
38
108
|
|
|
39
|
-
Context independently validates
|
|
109
|
+
Context independently validates production invariants it can derive from current
|
|
110
|
+
inputs, including inventory and owner closure, parser coverage, Artifact
|
|
111
|
+
completeness, source scope, identity, layout, and currentness. These failures
|
|
112
|
+
block the current Result and must be fixed at their source.
|
|
113
|
+
|
|
114
|
+
Profile metrics are authoring guidance, not a second readiness protocol. Use
|
|
115
|
+
`references/metrics.md` when the Result exhibits a real reader problem, but do
|
|
116
|
+
not alter wording, Markdown syntax, sentence counts, or partitions merely to
|
|
117
|
+
influence a counter. Context does not accept an Agent-supplied score as proof
|
|
118
|
+
that a Result is ready.
|
|
119
|
+
|
|
120
|
+
## Two classes of evidence in a template Evidence pass
|
|
121
|
+
|
|
122
|
+
A template Evidence pass lists what to locate. Those entries do not all resolve the same way, and the difference decides whether an assertion can be written at all.
|
|
123
|
+
|
|
124
|
+
The parsers name structural identity and declarative contracts: files and symbols, imports and call relations, configuration values, source spans, page and redirect routes, workspace and release units, protocol services, methods and types, contract endpoints and operations, maintained examples and public target links, stylesheet modifiers, tables, views and indexes, and generated-source boundaries. When an Evidence pass entry falls in this set, a fact carries it and the assertion binds to that fact.
|
|
125
|
+
|
|
126
|
+
Nothing in the parser layer is named for operational behavior. There is no fact for a retry, a timeout, a lifecycle transition, a permission, a schedule, a topic or queue identity, idempotency, concurrency, ordering, a cache, a transaction, observability, a CLI command or flag, an exit code, or a component prop, slot, or variant. Templates still ask you to locate these, because they are what the reader needs — but they resolve only through a configuration value, a source span, or a relation that literally states them.
|
|
40
127
|
|
|
41
|
-
|
|
128
|
+
So for this second class: base the assertion on the configuration value or
|
|
129
|
+
source span that states the behavior, and name the identity it uses. If nothing
|
|
130
|
+
in the authorized view states it, the behavior is a material gap. Write the
|
|
131
|
+
gap. Do not convert a library dependency, a symbol name, or a familiar
|
|
132
|
+
framework convention into a behavioral claim. Context validates structured
|
|
133
|
+
references, but final Review remains responsible for rejecting unsupported
|
|
134
|
+
prose.
|
|
42
135
|
|
|
43
|
-
|
|
136
|
+
Every profile template ends with a `Revise or stop when` condition. Stopping means recording the material gap that blocks the question — the evidence that is missing and what would resolve it — and never silently dropping the question from the Result. A template that tells you to stop when discovery is inferred is telling you not to guess, not to omit. Dropping the question satisfies no entry and fails question closure.
|
|
44
137
|
|
|
45
|
-
|
|
138
|
+
The complete reader-question set and canonical inventory are production
|
|
139
|
+
obligations rather than quality scores. A PartitionPlan must cover the current
|
|
140
|
+
question set, dispositions must cover the inventory, and an answered question
|
|
141
|
+
must satisfy its evidence contract. Natural-language sentences are not checked
|
|
142
|
+
one by one by a metric engine; keep them grounded in the supplied material and
|
|
143
|
+
use final Review to remove unsupported interpretation. Excluding inventory may
|
|
144
|
+
close a disposition, but it does not manufacture an answer to a reader
|
|
145
|
+
question.
|
|
46
146
|
|
|
47
|
-
|
|
147
|
+
A required question with no authorized supporting material remains a material request and cannot be published. Repairable content feedback reopens the owning Author or Composer through the same `context revise` lifecycle. Context does not keep a profile retry ledger and does not provide a profile-risk override Gate.
|
|
48
148
|
|
|
49
|
-
Do not return output paths, collection names, quality thresholds, pass/fail
|
|
149
|
+
Do not return output paths, collection names, quality thresholds, pass/fail
|
|
150
|
+
decisions, extra owners, ad hoc question contracts, or facts outside the
|
|
151
|
+
supplied authority. Context validates deterministic structure, references,
|
|
152
|
+
layout, freshness, reconciliation, and final Review independently.
|