@c4a/context-cli 0.7.29 → 0.7.34

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.
@@ -11,6 +11,11 @@ language. The invocation authorizes read-only investigation of the selected
11
11
  knowledge packages, available workspace and identified sources within that scope,
12
12
  including isolated source retrieval and bounded non-destructive checks. The Skill
13
13
  can run from a global installation with host-provided packages and no workspace.
14
+ The ordinary query path is contained in this file. Reuse instructions already
15
+ read in this response; do not reopen them for each stage. When actual delivery
16
+ requires separate host link or response Skills, read their still-unread main
17
+ instructions together once, and open conditional references only for the case
18
+ being handled. Do not prepare delivery that the host's progress mode skips.
14
19
  Resolve scope from the request, conversation and configuration before asking.
15
20
  Continue through non-blocking issues; ask only for missing access, genuinely
16
21
  unresolved scope or effects outside existing authorization.
@@ -27,9 +32,9 @@ registrations, snapshots, tasks, approvals or user checkouts.
27
32
  Resolve `CONTEXT_QUERY_SOURCE_MODE` from the host or Bot instance configuration
28
33
  before choosing the first retrieval path. Supported values are:
29
34
 
30
- - `repo-first` (default): inspect the configured knowledge workspace and
31
- authorized repository sources first. Use an available package only when the
32
- repository path is unavailable or leaves a material gap.
35
+ - `repo-first` (default): search approved `knowledge/` in the configured knowledge
36
+ workspace first; trace authorized original sources only for material gaps.
37
+ Use an available package when approved knowledge is unavailable.
33
38
  - `package-first`: inspect the selected package first, then use its recorded
34
39
  workspace or repository sources for missing, stale or disputed evidence.
35
40
  - `dual`: inspect the package and repository paths concurrently, then reconcile
@@ -43,8 +48,10 @@ sources and identify only gaps that affect the answer.
43
48
  ## Search available material according to the configured mode
44
49
 
45
50
  Apply `CONTEXT_QUERY_SOURCE_MODE` before starting retrieval. In `repo-first`,
46
- start with the configured workspace and reusable source checkouts; do not fetch
47
- or install a package merely to begin the query. In `package-first`, start with
51
+ start with approved knowledge, not original-code checkout preparation. With
52
+ readable `knowledge/`, do not probe `dist/`, build inventories or installed
53
+ packages: distribution output is not a query prerequisite. An explicit request
54
+ to investigate delivered content is an exception. In `package-first`, start with
48
55
  the selected readable package. In `dual`, start both paths concurrently. Search
49
56
  each selected path as soon as it is readable; tool checks and authorized
50
57
  upgrades must not block independent reading. If a configured primary path is
@@ -64,9 +71,11 @@ missing, use the host's configured, authorized package retrieval mechanism while
64
71
  other reading continues. Only check or prepare tools needed for the next actual
65
72
  operation; installation failure does not block independent local retrieval.
66
73
 
67
- For gaps or latest-content questions, also search approved knowledge when a workspace is available:
68
- use `knowledge/structure.yaml` and relevant `knowledge/` paths, trying business
69
- terms, symbols and synonyms, then read matching sections in context. Delivered
74
+ Search relevant `knowledge/` paths using business terms, symbols and synonyms,
75
+ then read matching sections in context; use `knowledge/structure.yaml` when
76
+ navigation or associations are needed, not as an exhaustive preflight. In
77
+ package-first or dual mode, approved knowledge can resolve gaps or freshness
78
+ questions in delivered material. Delivered
70
79
  content may lag approved knowledge; they are not independent corroboration.
71
80
  Candidates and temporary reports are not approved pages. A search miss does not
72
81
  prove a capability is absent. Do not build merely to answer a query; a separately
@@ -76,8 +85,11 @@ When package or approved knowledge leaves a gap, directly trace relevant sources
76
85
  without asking whether to deepen the query. Use available document, code-search
77
86
  or extraction tools within the authorized scope, recording source identity and
78
87
  version. Prepare sources while continuing other reading.
79
- One failed source blocks only dependent claims. Answer when evidence is
80
- sufficient, without completing unnecessary preparation.
88
+ One failed source blocks only dependent claims. If the read knowledge supports
89
+ the requested conclusion, its conditions and scope, answer without restoring
90
+ code or checking every associated source. Missing mechanisms, conflicting facts
91
+ or unsupported current-behavior claims still require targeted investigation;
92
+ an article title, search snippet or unread citation is not sufficient evidence.
81
93
 
82
94
  ## Trace and retrieve only relevant sources
83
95
 
@@ -88,18 +100,23 @@ registry is not a mandatory intermediate step. If the source identity or version
88
100
  cannot be established, retain package-grounded findings and qualify attribution;
89
101
  do not invent a repository or equate current source with the package's baseline.
90
102
 
91
- When a workspace and `context-build-inventory.json` are available, map a delivered page's
103
+ Only when tracing a delivered page and a build inventory is already available, map its
92
104
  `dist_path` through `approved_knowledge.files` to its `approved_path`, relative
93
- to the workspace's `knowledge/` root. Follow the approved page's associations in
94
- `knowledge/structure.yaml` and `sources/*/index.yaml`. Without a reliable mapping,
105
+ to the workspace's `knowledge/` root. For directly read approved pages, skip this
106
+ mapping entirely. Follow relevant associations in `knowledge/structure.yaml`
107
+ and `sources/*/index.yaml` only when source tracing is needed. Without a reliable mapping,
95
108
  continue package retrieval and follow explicit source references where available.
96
109
  Do not guess originals from similar filenames or claim attribution without
97
110
  checking the referenced material.
98
111
 
99
112
  Use the repository and recorded commit identified by the package or workspace
100
113
  as the source baseline.
101
- Reuse existing checkouts only after checking remote, commit, module coverage
102
- and local changes; do not reset them or change their sparse configuration.
114
+ Before reusing a checkout for source reads, group checks of remote, commit,
115
+ module coverage and local changes. Reuse those findings within this response
116
+ instead of checking again before each search or file read. Recheck affected
117
+ facts if the checkout/ref changes, sparse scope expands or there is evidence of
118
+ concurrent edits; do not treat a previous response's checks as current. Do not
119
+ reset user checkouts or change their sparse configuration.
103
120
  Missing code goes into a reusable query-owned path such as
104
121
  `.tmp/context-inspect/<host>/<repository-path>/<commit>/`, separate from user
105
122
  checkouts and production-managed sources. Use safe, credential-free path
@@ -128,10 +145,24 @@ capture/recovery actions. Production recovery gates do not block this independen
128
145
  inspection. Preserve unavailable-evidence gaps rather than changing production
129
146
  state to get past them.
130
147
 
131
- Compare relevant baseline files with current code when accessible, including
132
- relevant local changes. Use actual diffs to assess impact; current code is not a
133
- substitute for the baseline. Mention a missing comparison only when it limits
134
- the answer. For documents, notes and sessions, read saved bodies and necessary
148
+ Batch independent searches and related file reads once paths are known, such as
149
+ the entrypoint, state update and controlling render logic for one mechanism.
150
+ Read enough surrounding context and follow unresolved imports or calls; batching
151
+ must not truncate decisive evidence or turn a partial read into a complete audit.
152
+ Reuse already read evidence rather than rereading it to prepare each tool call.
153
+
154
+ Let evidence sufficiency determine whether a version comparison is needed.
155
+ When the available knowledge or identified baseline code resolves the question,
156
+ answer without fetching the default branch, recovering a second checkout or
157
+ reading history merely to confirm freshness. Compare narrowly when uncertainty,
158
+ conflicting evidence, suspected changes or an explicit version-comparison request
159
+ makes it useful. A question about current behavior requires judging whether the
160
+ available evidence supports that claim, not automatically comparing every branch.
161
+ Retain necessary source reads; do not equate a recorded baseline or branch HEAD
162
+ with a verified live deployment. When comparing, use actual relevant diffs,
163
+ including relevant local changes; current code is not a substitute for the baseline.
164
+ Mention a missing comparison only when it limits the answer.
165
+ For documents, notes and sessions, read saved bodies and necessary
135
166
  attachments; fetch missing accessible material within scope. A summary is not a
136
167
  full transcript, an unread link is not evidence, and current remote content does
137
168
  not prove a historical snapshot.
@@ -156,6 +187,10 @@ Distinguish implementation,
156
187
  declared contracts, test assertions, runtime observations and inferences. Perform
157
188
  bounded non-destructive validation only when useful; inspect its effects first
158
189
  and do not run unrelated scripts, builds or tests.
190
+ Do not turn a symbolic constant or version-like name into a numeric value without
191
+ checking its actual imported definition at the inspected revision. A mock value
192
+ is not the production definition. Keep the symbol when its numeric value is not
193
+ needed; verify the value when the user's concrete boundary depends on it.
159
194
 
160
195
  Link material actually read: source files at the inspected commit, knowledge
161
196
  website articles and original documents. If no reliable clickable link exists,
@@ -164,13 +199,34 @@ limitation. Do not dump internal reasoning, runtime identifiers or routine
164
199
  version comparisons. Explain only differences affecting the answer; hashes may
165
200
  appear in source URLs without requiring a separate version audit in the prose.
166
201
 
167
- For website links, use `context-site-map.json` from the selected package or
168
- sibling website output. Match `pages[].package_path` or `approved_path`, and
202
+ Collect citation targets after the relevant evidence is established and resolve
203
+ them in one batch using the host's existing link resolver when available. Reuse
204
+ known workspace, repository and site parameters; do not rediscover them per link.
205
+ Include knowledge pages and original-source locations in that same batch. For
206
+ each source file, retain the actual inspected repository, full commit, path and
207
+ line range from the investigation; a recorded source reference alone may resolve
208
+ to an older baseline. Pass the inspected commit through the resolver's supported
209
+ contract, or supply a verified commit-specific URL when needed. Never first
210
+ resolve baseline links and then replace them with branch-head links merely as a
211
+ formatting step. If the revision cannot be established, state the attribution
212
+ limit rather than silently substituting another commit. Resolution formats
213
+ citations; it does not prove file contents, accessibility or live deployment.
214
+ If later evidence adds targets, resolve only those missing from the results.
215
+ Without a host resolver, use an already available `context-site-map.json` from
216
+ the selected package or website output. Do not search for `dist/` merely to
217
+ obtain links for readable approved knowledge. Match `pages[].package_path` or `approved_path`, and
169
218
  resolve `site_path` against `site_url` without prepending `base` again. Cite only
170
219
  matched pages, deduplicate links and do not invent anchors. If mapping is absent
171
220
  or invalid, retain local citations. Do not build, publish or probe remote sites
172
221
  just to format citations; a local map is not proof of the current online content.
173
222
 
223
+ Once the requested questions are supported or genuinely unavailable evidence is
224
+ clearly bounded, synthesize the final answer directly. Do not add another planning,
225
+ freshness-audit or summary round just to prepare it. Preserve necessary mechanisms,
226
+ exceptions, citations and verification limits; fewer preparation steps must not
227
+ mean weaker evidence or omitted questions. Host delivery and receipt requirements
228
+ still apply, without repeating the completed investigation.
229
+
174
230
  Suggest a knowledge update only with supporting evidence: identify the affected
175
231
  page or gap, proposed change and bounded source scope. Check neighboring content
176
232
  before proposing a new page. Only after user acceptance, hand the evidence and
@@ -12,6 +12,11 @@ language. The invocation authorizes read-only investigation of the selected
12
12
  knowledge packages, available workspace and identified sources within that scope,
13
13
  including isolated source retrieval and bounded non-destructive checks. The Skill
14
14
  can run from a global installation with host-provided packages and no workspace.
15
+ The ordinary query path is contained in this file. Reuse instructions already
16
+ read in this response; do not reopen them for each stage. When actual delivery
17
+ requires separate host link or response Skills, read their still-unread main
18
+ instructions together once, and open conditional references only for the case
19
+ being handled. Do not prepare delivery that the host's progress mode skips.
15
20
  Resolve scope from the request, conversation and configuration before asking.
16
21
  Continue through non-blocking issues; ask only for missing access, genuinely
17
22
  unresolved scope or effects outside existing authorization.
@@ -28,9 +33,9 @@ registrations, snapshots, tasks, approvals or user checkouts.
28
33
  Resolve `CONTEXT_QUERY_SOURCE_MODE` from the host or Bot instance configuration
29
34
  before choosing the first retrieval path. Supported values are:
30
35
 
31
- - `repo-first` (default): inspect the configured knowledge workspace and
32
- authorized repository sources first. Use an available package only when the
33
- repository path is unavailable or leaves a material gap.
36
+ - `repo-first` (default): search approved `knowledge/` in the configured knowledge
37
+ workspace first; trace authorized original sources only for material gaps.
38
+ Use an available package when approved knowledge is unavailable.
34
39
  - `package-first`: inspect the selected package first, then use its recorded
35
40
  workspace or repository sources for missing, stale or disputed evidence.
36
41
  - `dual`: inspect the package and repository paths concurrently, then reconcile
@@ -44,8 +49,10 @@ sources and identify only gaps that affect the answer.
44
49
  ## Search available material according to the configured mode
45
50
 
46
51
  Apply `CONTEXT_QUERY_SOURCE_MODE` before starting retrieval. In `repo-first`,
47
- start with the configured workspace and reusable source checkouts; do not fetch
48
- or install a package merely to begin the query. In `package-first`, start with
52
+ start with approved knowledge, not original-code checkout preparation. With
53
+ readable `knowledge/`, do not probe `dist/`, build inventories or installed
54
+ packages: distribution output is not a query prerequisite. An explicit request
55
+ to investigate delivered content is an exception. In `package-first`, start with
49
56
  the selected readable package. In `dual`, start both paths concurrently. Search
50
57
  each selected path as soon as it is readable; tool checks and authorized
51
58
  upgrades must not block independent reading. If a configured primary path is
@@ -65,9 +72,11 @@ missing, use the host's configured, authorized package retrieval mechanism while
65
72
  other reading continues. Only check or prepare tools needed for the next actual
66
73
  operation; installation failure does not block independent local retrieval.
67
74
 
68
- For gaps or latest-content questions, also search approved knowledge when a workspace is available:
69
- use `knowledge/structure.yaml` and relevant `knowledge/` paths, trying business
70
- terms, symbols and synonyms, then read matching sections in context. Delivered
75
+ Search relevant `knowledge/` paths using business terms, symbols and synonyms,
76
+ then read matching sections in context; use `knowledge/structure.yaml` when
77
+ navigation or associations are needed, not as an exhaustive preflight. In
78
+ package-first or dual mode, approved knowledge can resolve gaps or freshness
79
+ questions in delivered material. Delivered
71
80
  content may lag approved knowledge; they are not independent corroboration.
72
81
  Candidates and temporary reports are not approved pages. A search miss does not
73
82
  prove a capability is absent. Do not build merely to answer a query; a separately
@@ -77,8 +86,11 @@ When package or approved knowledge leaves a gap, directly trace relevant sources
77
86
  without asking whether to deepen the query. Use available document, code-search
78
87
  or extraction tools within the authorized scope, recording source identity and
79
88
  version. Prepare sources while continuing other reading.
80
- One failed source blocks only dependent claims. Answer when evidence is
81
- sufficient, without completing unnecessary preparation.
89
+ One failed source blocks only dependent claims. If the read knowledge supports
90
+ the requested conclusion, its conditions and scope, answer without restoring
91
+ code or checking every associated source. Missing mechanisms, conflicting facts
92
+ or unsupported current-behavior claims still require targeted investigation;
93
+ an article title, search snippet or unread citation is not sufficient evidence.
82
94
 
83
95
  ## Trace and retrieve only relevant sources
84
96
 
@@ -89,18 +101,23 @@ registry is not a mandatory intermediate step. If the source identity or version
89
101
  cannot be established, retain package-grounded findings and qualify attribution;
90
102
  do not invent a repository or equate current source with the package's baseline.
91
103
 
92
- When a workspace and `context-build-inventory.json` are available, map a delivered page's
104
+ Only when tracing a delivered page and a build inventory is already available, map its
93
105
  `dist_path` through `approved_knowledge.files` to its `approved_path`, relative
94
- to the workspace's `knowledge/` root. Follow the approved page's associations in
95
- `knowledge/structure.yaml` and `sources/*/index.yaml`. Without a reliable mapping,
106
+ to the workspace's `knowledge/` root. For directly read approved pages, skip this
107
+ mapping entirely. Follow relevant associations in `knowledge/structure.yaml`
108
+ and `sources/*/index.yaml` only when source tracing is needed. Without a reliable mapping,
96
109
  continue package retrieval and follow explicit source references where available.
97
110
  Do not guess originals from similar filenames or claim attribution without
98
111
  checking the referenced material.
99
112
 
100
113
  Use the repository and recorded commit identified by the package or workspace
101
114
  as the source baseline.
102
- Reuse existing checkouts only after checking remote, commit, module coverage
103
- and local changes; do not reset them or change their sparse configuration.
115
+ Before reusing a checkout for source reads, group checks of remote, commit,
116
+ module coverage and local changes. Reuse those findings within this response
117
+ instead of checking again before each search or file read. Recheck affected
118
+ facts if the checkout/ref changes, sparse scope expands or there is evidence of
119
+ concurrent edits; do not treat a previous response's checks as current. Do not
120
+ reset user checkouts or change their sparse configuration.
104
121
  Missing code goes into a reusable query-owned path such as
105
122
  `.tmp/context-inspect/<host>/<repository-path>/<commit>/`, separate from user
106
123
  checkouts and production-managed sources. Use safe, credential-free path
@@ -129,10 +146,24 @@ capture/recovery actions. Production recovery gates do not block this independen
129
146
  inspection. Preserve unavailable-evidence gaps rather than changing production
130
147
  state to get past them.
131
148
 
132
- Compare relevant baseline files with current code when accessible, including
133
- relevant local changes. Use actual diffs to assess impact; current code is not a
134
- substitute for the baseline. Mention a missing comparison only when it limits
135
- the answer. For documents, notes and sessions, read saved bodies and necessary
149
+ Batch independent searches and related file reads once paths are known, such as
150
+ the entrypoint, state update and controlling render logic for one mechanism.
151
+ Read enough surrounding context and follow unresolved imports or calls; batching
152
+ must not truncate decisive evidence or turn a partial read into a complete audit.
153
+ Reuse already read evidence rather than rereading it to prepare each tool call.
154
+
155
+ Let evidence sufficiency determine whether a version comparison is needed.
156
+ When the available knowledge or identified baseline code resolves the question,
157
+ answer without fetching the default branch, recovering a second checkout or
158
+ reading history merely to confirm freshness. Compare narrowly when uncertainty,
159
+ conflicting evidence, suspected changes or an explicit version-comparison request
160
+ makes it useful. A question about current behavior requires judging whether the
161
+ available evidence supports that claim, not automatically comparing every branch.
162
+ Retain necessary source reads; do not equate a recorded baseline or branch HEAD
163
+ with a verified live deployment. When comparing, use actual relevant diffs,
164
+ including relevant local changes; current code is not a substitute for the baseline.
165
+ Mention a missing comparison only when it limits the answer.
166
+ For documents, notes and sessions, read saved bodies and necessary
136
167
  attachments; fetch missing accessible material within scope. A summary is not a
137
168
  full transcript, an unread link is not evidence, and current remote content does
138
169
  not prove a historical snapshot.
@@ -157,6 +188,10 @@ Distinguish implementation,
157
188
  declared contracts, test assertions, runtime observations and inferences. Perform
158
189
  bounded non-destructive validation only when useful; inspect its effects first
159
190
  and do not run unrelated scripts, builds or tests.
191
+ Do not turn a symbolic constant or version-like name into a numeric value without
192
+ checking its actual imported definition at the inspected revision. A mock value
193
+ is not the production definition. Keep the symbol when its numeric value is not
194
+ needed; verify the value when the user's concrete boundary depends on it.
160
195
 
161
196
  Link material actually read: source files at the inspected commit, knowledge
162
197
  website articles and original documents. If no reliable clickable link exists,
@@ -165,13 +200,34 @@ limitation. Do not dump internal reasoning, runtime identifiers or routine
165
200
  version comparisons. Explain only differences affecting the answer; hashes may
166
201
  appear in source URLs without requiring a separate version audit in the prose.
167
202
 
168
- For website links, use `context-site-map.json` from the selected package or
169
- sibling website output. Match `pages[].package_path` or `approved_path`, and
203
+ Collect citation targets after the relevant evidence is established and resolve
204
+ them in one batch using the host's existing link resolver when available. Reuse
205
+ known workspace, repository and site parameters; do not rediscover them per link.
206
+ Include knowledge pages and original-source locations in that same batch. For
207
+ each source file, retain the actual inspected repository, full commit, path and
208
+ line range from the investigation; a recorded source reference alone may resolve
209
+ to an older baseline. Pass the inspected commit through the resolver's supported
210
+ contract, or supply a verified commit-specific URL when needed. Never first
211
+ resolve baseline links and then replace them with branch-head links merely as a
212
+ formatting step. If the revision cannot be established, state the attribution
213
+ limit rather than silently substituting another commit. Resolution formats
214
+ citations; it does not prove file contents, accessibility or live deployment.
215
+ If later evidence adds targets, resolve only those missing from the results.
216
+ Without a host resolver, use an already available `context-site-map.json` from
217
+ the selected package or website output. Do not search for `dist/` merely to
218
+ obtain links for readable approved knowledge. Match `pages[].package_path` or `approved_path`, and
170
219
  resolve `site_path` against `site_url` without prepending `base` again. Cite only
171
220
  matched pages, deduplicate links and do not invent anchors. If mapping is absent
172
221
  or invalid, retain local citations. Do not build, publish or probe remote sites
173
222
  just to format citations; a local map is not proof of the current online content.
174
223
 
224
+ Once the requested questions are supported or genuinely unavailable evidence is
225
+ clearly bounded, synthesize the final answer directly. Do not add another planning,
226
+ freshness-audit or summary round just to prepare it. Preserve necessary mechanisms,
227
+ exceptions, citations and verification limits; fewer preparation steps must not
228
+ mean weaker evidence or omitted questions. Host delivery and receipt requirements
229
+ still apply, without repeating the completed investigation.
230
+
175
231
  Suggest a knowledge update only with supporting evidence: identify the affected
176
232
  page or gap, proposed change and bounded source scope. Check neighboring content
177
233
  before proposing a new page. Only after user acceptance, hand the evidence and
@@ -12,6 +12,11 @@ language. The invocation authorizes read-only investigation of the selected
12
12
  knowledge packages, available workspace and identified sources within that scope,
13
13
  including isolated source retrieval and bounded non-destructive checks. The Skill
14
14
  can run from a global installation with host-provided packages and no workspace.
15
+ The ordinary query path is contained in this file. Reuse instructions already
16
+ read in this response; do not reopen them for each stage. When actual delivery
17
+ requires separate host link or response Skills, read their still-unread main
18
+ instructions together once, and open conditional references only for the case
19
+ being handled. Do not prepare delivery that the host's progress mode skips.
15
20
  Resolve scope from the request, conversation and configuration before asking.
16
21
  Continue through non-blocking issues; ask only for missing access, genuinely
17
22
  unresolved scope or effects outside existing authorization.
@@ -28,9 +33,9 @@ registrations, snapshots, tasks, approvals or user checkouts.
28
33
  Resolve `CONTEXT_QUERY_SOURCE_MODE` from the host or Bot instance configuration
29
34
  before choosing the first retrieval path. Supported values are:
30
35
 
31
- - `repo-first` (default): inspect the configured knowledge workspace and
32
- authorized repository sources first. Use an available package only when the
33
- repository path is unavailable or leaves a material gap.
36
+ - `repo-first` (default): search approved `knowledge/` in the configured knowledge
37
+ workspace first; trace authorized original sources only for material gaps.
38
+ Use an available package when approved knowledge is unavailable.
34
39
  - `package-first`: inspect the selected package first, then use its recorded
35
40
  workspace or repository sources for missing, stale or disputed evidence.
36
41
  - `dual`: inspect the package and repository paths concurrently, then reconcile
@@ -44,8 +49,10 @@ sources and identify only gaps that affect the answer.
44
49
  ## Search available material according to the configured mode
45
50
 
46
51
  Apply `CONTEXT_QUERY_SOURCE_MODE` before starting retrieval. In `repo-first`,
47
- start with the configured workspace and reusable source checkouts; do not fetch
48
- or install a package merely to begin the query. In `package-first`, start with
52
+ start with approved knowledge, not original-code checkout preparation. With
53
+ readable `knowledge/`, do not probe `dist/`, build inventories or installed
54
+ packages: distribution output is not a query prerequisite. An explicit request
55
+ to investigate delivered content is an exception. In `package-first`, start with
49
56
  the selected readable package. In `dual`, start both paths concurrently. Search
50
57
  each selected path as soon as it is readable; tool checks and authorized
51
58
  upgrades must not block independent reading. If a configured primary path is
@@ -65,9 +72,11 @@ missing, use the host's configured, authorized package retrieval mechanism while
65
72
  other reading continues. Only check or prepare tools needed for the next actual
66
73
  operation; installation failure does not block independent local retrieval.
67
74
 
68
- For gaps or latest-content questions, also search approved knowledge when a workspace is available:
69
- use `knowledge/structure.yaml` and relevant `knowledge/` paths, trying business
70
- terms, symbols and synonyms, then read matching sections in context. Delivered
75
+ Search relevant `knowledge/` paths using business terms, symbols and synonyms,
76
+ then read matching sections in context; use `knowledge/structure.yaml` when
77
+ navigation or associations are needed, not as an exhaustive preflight. In
78
+ package-first or dual mode, approved knowledge can resolve gaps or freshness
79
+ questions in delivered material. Delivered
71
80
  content may lag approved knowledge; they are not independent corroboration.
72
81
  Candidates and temporary reports are not approved pages. A search miss does not
73
82
  prove a capability is absent. Do not build merely to answer a query; a separately
@@ -77,8 +86,11 @@ When package or approved knowledge leaves a gap, directly trace relevant sources
77
86
  without asking whether to deepen the query. Use available document, code-search
78
87
  or extraction tools within the authorized scope, recording source identity and
79
88
  version. Prepare sources while continuing other reading.
80
- One failed source blocks only dependent claims. Answer when evidence is
81
- sufficient, without completing unnecessary preparation.
89
+ One failed source blocks only dependent claims. If the read knowledge supports
90
+ the requested conclusion, its conditions and scope, answer without restoring
91
+ code or checking every associated source. Missing mechanisms, conflicting facts
92
+ or unsupported current-behavior claims still require targeted investigation;
93
+ an article title, search snippet or unread citation is not sufficient evidence.
82
94
 
83
95
  ## Trace and retrieve only relevant sources
84
96
 
@@ -89,18 +101,23 @@ registry is not a mandatory intermediate step. If the source identity or version
89
101
  cannot be established, retain package-grounded findings and qualify attribution;
90
102
  do not invent a repository or equate current source with the package's baseline.
91
103
 
92
- When a workspace and `context-build-inventory.json` are available, map a delivered page's
104
+ Only when tracing a delivered page and a build inventory is already available, map its
93
105
  `dist_path` through `approved_knowledge.files` to its `approved_path`, relative
94
- to the workspace's `knowledge/` root. Follow the approved page's associations in
95
- `knowledge/structure.yaml` and `sources/*/index.yaml`. Without a reliable mapping,
106
+ to the workspace's `knowledge/` root. For directly read approved pages, skip this
107
+ mapping entirely. Follow relevant associations in `knowledge/structure.yaml`
108
+ and `sources/*/index.yaml` only when source tracing is needed. Without a reliable mapping,
96
109
  continue package retrieval and follow explicit source references where available.
97
110
  Do not guess originals from similar filenames or claim attribution without
98
111
  checking the referenced material.
99
112
 
100
113
  Use the repository and recorded commit identified by the package or workspace
101
114
  as the source baseline.
102
- Reuse existing checkouts only after checking remote, commit, module coverage
103
- and local changes; do not reset them or change their sparse configuration.
115
+ Before reusing a checkout for source reads, group checks of remote, commit,
116
+ module coverage and local changes. Reuse those findings within this response
117
+ instead of checking again before each search or file read. Recheck affected
118
+ facts if the checkout/ref changes, sparse scope expands or there is evidence of
119
+ concurrent edits; do not treat a previous response's checks as current. Do not
120
+ reset user checkouts or change their sparse configuration.
104
121
  Missing code goes into a reusable query-owned path such as
105
122
  `.tmp/context-inspect/<host>/<repository-path>/<commit>/`, separate from user
106
123
  checkouts and production-managed sources. Use safe, credential-free path
@@ -129,10 +146,24 @@ capture/recovery actions. Production recovery gates do not block this independen
129
146
  inspection. Preserve unavailable-evidence gaps rather than changing production
130
147
  state to get past them.
131
148
 
132
- Compare relevant baseline files with current code when accessible, including
133
- relevant local changes. Use actual diffs to assess impact; current code is not a
134
- substitute for the baseline. Mention a missing comparison only when it limits
135
- the answer. For documents, notes and sessions, read saved bodies and necessary
149
+ Batch independent searches and related file reads once paths are known, such as
150
+ the entrypoint, state update and controlling render logic for one mechanism.
151
+ Read enough surrounding context and follow unresolved imports or calls; batching
152
+ must not truncate decisive evidence or turn a partial read into a complete audit.
153
+ Reuse already read evidence rather than rereading it to prepare each tool call.
154
+
155
+ Let evidence sufficiency determine whether a version comparison is needed.
156
+ When the available knowledge or identified baseline code resolves the question,
157
+ answer without fetching the default branch, recovering a second checkout or
158
+ reading history merely to confirm freshness. Compare narrowly when uncertainty,
159
+ conflicting evidence, suspected changes or an explicit version-comparison request
160
+ makes it useful. A question about current behavior requires judging whether the
161
+ available evidence supports that claim, not automatically comparing every branch.
162
+ Retain necessary source reads; do not equate a recorded baseline or branch HEAD
163
+ with a verified live deployment. When comparing, use actual relevant diffs,
164
+ including relevant local changes; current code is not a substitute for the baseline.
165
+ Mention a missing comparison only when it limits the answer.
166
+ For documents, notes and sessions, read saved bodies and necessary
136
167
  attachments; fetch missing accessible material within scope. A summary is not a
137
168
  full transcript, an unread link is not evidence, and current remote content does
138
169
  not prove a historical snapshot.
@@ -157,6 +188,10 @@ Distinguish implementation,
157
188
  declared contracts, test assertions, runtime observations and inferences. Perform
158
189
  bounded non-destructive validation only when useful; inspect its effects first
159
190
  and do not run unrelated scripts, builds or tests.
191
+ Do not turn a symbolic constant or version-like name into a numeric value without
192
+ checking its actual imported definition at the inspected revision. A mock value
193
+ is not the production definition. Keep the symbol when its numeric value is not
194
+ needed; verify the value when the user's concrete boundary depends on it.
160
195
 
161
196
  Link material actually read: source files at the inspected commit, knowledge
162
197
  website articles and original documents. If no reliable clickable link exists,
@@ -165,13 +200,34 @@ limitation. Do not dump internal reasoning, runtime identifiers or routine
165
200
  version comparisons. Explain only differences affecting the answer; hashes may
166
201
  appear in source URLs without requiring a separate version audit in the prose.
167
202
 
168
- For website links, use `context-site-map.json` from the selected package or
169
- sibling website output. Match `pages[].package_path` or `approved_path`, and
203
+ Collect citation targets after the relevant evidence is established and resolve
204
+ them in one batch using the host's existing link resolver when available. Reuse
205
+ known workspace, repository and site parameters; do not rediscover them per link.
206
+ Include knowledge pages and original-source locations in that same batch. For
207
+ each source file, retain the actual inspected repository, full commit, path and
208
+ line range from the investigation; a recorded source reference alone may resolve
209
+ to an older baseline. Pass the inspected commit through the resolver's supported
210
+ contract, or supply a verified commit-specific URL when needed. Never first
211
+ resolve baseline links and then replace them with branch-head links merely as a
212
+ formatting step. If the revision cannot be established, state the attribution
213
+ limit rather than silently substituting another commit. Resolution formats
214
+ citations; it does not prove file contents, accessibility or live deployment.
215
+ If later evidence adds targets, resolve only those missing from the results.
216
+ Without a host resolver, use an already available `context-site-map.json` from
217
+ the selected package or website output. Do not search for `dist/` merely to
218
+ obtain links for readable approved knowledge. Match `pages[].package_path` or `approved_path`, and
170
219
  resolve `site_path` against `site_url` without prepending `base` again. Cite only
171
220
  matched pages, deduplicate links and do not invent anchors. If mapping is absent
172
221
  or invalid, retain local citations. Do not build, publish or probe remote sites
173
222
  just to format citations; a local map is not proof of the current online content.
174
223
 
224
+ Once the requested questions are supported or genuinely unavailable evidence is
225
+ clearly bounded, synthesize the final answer directly. Do not add another planning,
226
+ freshness-audit or summary round just to prepare it. Preserve necessary mechanisms,
227
+ exceptions, citations and verification limits; fewer preparation steps must not
228
+ mean weaker evidence or omitted questions. Host delivery and receipt requirements
229
+ still apply, without repeating the completed investigation.
230
+
175
231
  Suggest a knowledge update only with supporting evidence: identify the affected
176
232
  page or gap, proposed change and bounded source scope. Check neighboring content
177
233
  before proposing a new page. Only after user acceptance, hand the evidence and
@@ -2,7 +2,7 @@
2
2
  "schema": "agent-graph.bundle.v1",
3
3
  "provider": {
4
4
  "id": "c4a/context",
5
- "version": "0.7.29"
5
+ "version": "0.7.34"
6
6
  },
7
7
  "providerManifest": "provider.yaml",
8
8
  "graphs": [
@@ -183,7 +183,7 @@
183
183
  {
184
184
  "id": "context.sdk.lark-resources",
185
185
  "path": "resources/manuals/guides/lark-resources.md",
186
- "digest": "sha256:b1ffb74a145962ff89a5db29cffd1318e4ec038b97884dcd43804170cb0f6f64"
186
+ "digest": "sha256:ca488cf7d5c818b82c81ea2d9a058cb5e7b91b7de2656506dbc40f19c79fada8"
187
187
  },
188
188
  {
189
189
  "id": "context.sdk.package-outputs",
@@ -248,7 +248,7 @@
248
248
  {
249
249
  "id": "dialogue.document-capture",
250
250
  "path": "resources/dialogue/document-capture.md",
251
- "digest": "sha256:eab34072dc96d77c0749148463f722d2483d8e7d83899ce489e927176a1178e4"
251
+ "digest": "sha256:20bb708f2c471591c0f633742d75a1353bcd4762917ce9528d3de0c7f4babbe8"
252
252
  },
253
253
  {
254
254
  "id": "dialogue.human-gates",
@@ -288,7 +288,7 @@
288
288
  {
289
289
  "id": "procedure.document-capture",
290
290
  "path": "resources/procedures/document-capture.md",
291
- "digest": "sha256:9d0d1b9187bbe540a4afffb366cd549385dbf61bfaffa96ae51de848b2dd5460"
291
+ "digest": "sha256:fea23e68a535ff1a567439fe8b05e027575762c4a8f04da2fd181c17e58076f4"
292
292
  },
293
293
  {
294
294
  "id": "procedure.document-code-investigation",
@@ -368,7 +368,7 @@
368
368
  {
369
369
  "id": "procedure.source-capture-detailed",
370
370
  "path": "resources/procedures/source-capture-detailed.md",
371
- "digest": "sha256:75694361543f5c44a1077b5e6c4ed9bca844ec9b46c1773198f66e0f20ba3748"
371
+ "digest": "sha256:39644875f09bac66580332357c3d9701c234da036b61205c8a02029165455f76"
372
372
  },
373
373
  {
374
374
  "id": "procedure.source-update",
@@ -575,7 +575,7 @@
575
575
  },
576
576
  {
577
577
  "path": "provider.yaml",
578
- "digest": "sha256:0a21f82483186c4fe1f6f450923d0d336300274fb95e2c7ee3569700ba922372"
578
+ "digest": "sha256:ba2618496299deb80171ab9e7472a26b09d9187083347f22bdf65294564acc5d"
579
579
  },
580
580
  {
581
581
  "path": "resources/contracts/indexer-provider-guide.yaml",
@@ -599,7 +599,7 @@
599
599
  },
600
600
  {
601
601
  "path": "resources/dialogue/document-capture.md",
602
- "digest": "sha256:eab34072dc96d77c0749148463f722d2483d8e7d83899ce489e927176a1178e4"
602
+ "digest": "sha256:20bb708f2c471591c0f633742d75a1353bcd4762917ce9528d3de0c7f4babbe8"
603
603
  },
604
604
  {
605
605
  "path": "resources/dialogue/human-gates.md",
@@ -635,7 +635,7 @@
635
635
  },
636
636
  {
637
637
  "path": "resources/manuals/guides/lark-resources.md",
638
- "digest": "sha256:b1ffb74a145962ff89a5db29cffd1318e4ec038b97884dcd43804170cb0f6f64"
638
+ "digest": "sha256:ca488cf7d5c818b82c81ea2d9a058cb5e7b91b7de2656506dbc40f19c79fada8"
639
639
  },
640
640
  {
641
641
  "path": "resources/manuals/guides/markdown-indexer-skill-authoring.md",
@@ -695,7 +695,7 @@
695
695
  },
696
696
  {
697
697
  "path": "resources/procedures/document-capture.md",
698
- "digest": "sha256:9d0d1b9187bbe540a4afffb366cd549385dbf61bfaffa96ae51de848b2dd5460"
698
+ "digest": "sha256:fea23e68a535ff1a567439fe8b05e027575762c4a8f04da2fd181c17e58076f4"
699
699
  },
700
700
  {
701
701
  "path": "resources/procedures/document-code-investigation.md",
@@ -759,7 +759,7 @@
759
759
  },
760
760
  {
761
761
  "path": "resources/procedures/source-capture-detailed.md",
762
- "digest": "sha256:75694361543f5c44a1077b5e6c4ed9bca844ec9b46c1773198f66e0f20ba3748"
762
+ "digest": "sha256:39644875f09bac66580332357c3d9701c234da036b61205c8a02029165455f76"
763
763
  },
764
764
  {
765
765
  "path": "resources/procedures/source-update.md",
@@ -878,5 +878,5 @@
878
878
  "indexer": [],
879
879
  "workspace": []
880
880
  },
881
- "digest": "sha256:3e0f9fc6f81571381dced3a8d02b20624022183e924c7b99c16430c8924d624d"
881
+ "digest": "sha256:b68d36eaf96c10f0a19ed342e9b15dc21e8ebec3e5864586e66e5f4af8c198f6"
882
882
  }
@@ -1,6 +1,6 @@
1
1
  schema: agent-graph.provider.v1
2
2
  id: c4a/context
3
- version: 0.7.29
3
+ version: 0.7.34
4
4
  name: Context workflow
5
5
  description: Internal work contract for Context knowledge workspaces.
6
6
  graphs: