@c4a/context 0.7.9 → 0.7.10-alpha.1

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.
Files changed (78) hide show
  1. package/articleStructure.d.ts +254 -0
  2. package/docs/guides/agent-dialogue.md +1 -1
  3. package/docs/guides/code-indexer-skill-authoring.md +76 -178
  4. package/docs/guides/indexer-provider-and-customization.md +93 -453
  5. package/docs/guides/indexer-skill-creation.md +107 -97
  6. package/docs/guides/knowledge-updates.md +35 -14
  7. package/docs/guides/markdown-indexer-skill-authoring.md +57 -134
  8. package/docs/reference/indexer-provider-protocol.md +52 -102
  9. package/docs/reference/package-templates.md +39 -65
  10. package/docs/reference/template-variables.md +2 -3
  11. package/index.d.ts +6 -10
  12. package/index.js +6441 -8771
  13. package/indexerAgentStepProtocol.d.ts +0 -910
  14. package/indexerApprovedKnowledge.d.ts +98 -359
  15. package/indexerArticlePlan.d.ts +3 -26
  16. package/indexerArtifact.d.ts +201 -70
  17. package/indexerArtifactPolicy.d.ts +0 -18
  18. package/indexerArtifactResult.d.ts +240 -888
  19. package/indexerAuthoringFixture.d.ts +0 -13
  20. package/indexerBenchmark.d.ts +2 -2
  21. package/indexerCandidateCompile.d.ts +123 -167
  22. package/indexerCatalogFallback.d.ts +32 -374
  23. package/indexerCollectionMapping.d.ts +2 -2
  24. package/indexerContentLayers.d.ts +187 -41
  25. package/indexerContractOverlay.d.ts +30 -44
  26. package/indexerControlledInvocation.d.ts +6 -6
  27. package/indexerControlledProgram.d.ts +959 -3020
  28. package/indexerDependencyView.d.ts +96 -96
  29. package/indexerEffectiveArtifact.d.ts +381 -242
  30. package/indexerExampleDecision.d.ts +134 -134
  31. package/indexerExampleIdentity.d.ts +6 -6
  32. package/indexerExampleIdentityAudit.d.ts +6 -6
  33. package/indexerInventoryDisposition.d.ts +0 -39
  34. package/indexerLayerComposition.d.ts +1378 -852
  35. package/indexerLayoutChange.d.ts +24 -33
  36. package/indexerLayoutProposalSet.d.ts +143 -137
  37. package/indexerLayoutResolver.d.ts +116 -101
  38. package/indexerLayoutTransition.d.ts +6 -6
  39. package/indexerMainLifecycle.d.ts +1 -11
  40. package/indexerMainRunLedger.d.ts +0 -14
  41. package/indexerMainRunProtocol.d.ts +806 -2530
  42. package/indexerMainWorkset.d.ts +0 -1212
  43. package/indexerNavigationArtifactPlan.d.ts +2 -2
  44. package/indexerOverlayQuestionApplyProposal.d.ts +0 -4
  45. package/indexerParserCoordinate.d.ts +2 -2
  46. package/indexerParserExecutionPlan.d.ts +42 -42
  47. package/indexerPartitionPlan.d.ts +24 -354
  48. package/indexerPhysicalArtifactManifest.d.ts +12 -27
  49. package/indexerPostAuthorComposition.d.ts +2 -253
  50. package/indexerPostAuthorRunLedger.d.ts +860 -562
  51. package/indexerPrimaryProjection.d.ts +2 -2
  52. package/indexerPrimaryResultView.d.ts +0 -318
  53. package/indexerProfileContract.d.ts +200 -549
  54. package/indexerProgramExecutionAuthorization.d.ts +4 -4
  55. package/indexerProgramRunProtocol.d.ts +806 -2527
  56. package/indexerProjectProposal.d.ts +8 -8
  57. package/indexerProjectedArtifactFanOutAudit.d.ts +8 -8
  58. package/indexerProjectedArtifactPlan.d.ts +0 -9
  59. package/indexerProvider.d.ts +46 -288
  60. package/indexerProviderComposition.d.ts +16 -42
  61. package/indexerQuestionAuthority.d.ts +2 -82
  62. package/indexerReaderTargetInventory.d.ts +6 -6
  63. package/indexerRequirementLifecycle.d.ts +6 -6
  64. package/indexerResultReconciliation.d.ts +35 -149
  65. package/indexerSemanticInput.d.ts +10642 -4685
  66. package/indexerStructuredDeclaration.d.ts +24 -24
  67. package/indexerTemplateRendering.d.ts +239 -113
  68. package/knowledgeMap.d.ts +5 -5
  69. package/package.json +1 -1
  70. package/templates/package-templates/kb/skills/knowledge-query/SKILL.md +13 -16
  71. package/templates/package-templates.zh-CN/kb/skills/knowledge-query/SKILL.md +9 -9
  72. package/indexerArtifactDependencies.d.ts +0 -693
  73. package/indexerCompositionFactDependencies.d.ts +0 -16
  74. package/indexerExampleFactDependencies.d.ts +0 -17
  75. package/indexerIncrementalImpact.d.ts +0 -221
  76. package/indexerKnowledgeDependency.d.ts +0 -46
  77. package/indexerSubjectCatalog.d.ts +0 -230
  78. package/indexerSubjectKeyAuthority.d.ts +0 -786
@@ -1,99 +1,109 @@
1
1
  # Creating a reusable Indexer Skill
2
2
 
3
- A Provider is a portable Skill bundle. Workspace-local customization changes a
4
- selected Provider for one workspace; it is not the packaging format for a new
5
- Provider. Start from the source interpretation and reader task, then choose
6
- primary replacement or an advertised extension.
7
-
8
- ## Package and protocol
9
-
10
- A typical instruction-only bundle contains:
11
-
12
- ```text
13
- context-example-indexer/
14
- SKILL.md
15
- context-indexer.yaml
16
- references/indexer.md
17
- references/writing.md
18
- templates/reader-guide.md
19
- ```
20
-
21
- The name is illustrative. Use a discoverable context-…-indexer… name and an
22
- explicit Provider identity/version. SKILL.md describes when the lifecycle may
23
- select it; context-indexer.yaml declares context.indexer.provider/v1, domains,
24
- activation, profiles, operations and resources. Instructions and templates must
25
- be declared for the profiles using them. Do not copy unused profiles, composers
26
- or resource paths. Do not add a provider manifest to the creation assistant itself.
27
-
28
- Start from the [minimal manifest](indexer-manifest-example.md), which gives the
29
- field tree in three groups: required, required once a capability is declared, and
30
- optional. Read the [protocol](../reference/indexer-provider-protocol.md) for the
31
- subsystem rules behind those fields — selection validation, partition authority,
32
- overlays, controlled invocation — and the [selection
33
- guide](indexer-provider-and-customization.md) for composition.
34
- The four built-in examples are context-code-indexer, context-markdown-indexer,
35
- context-note-indexer and context-sessions-indexer. The latter two are independent
36
- source interpreters using markdown-domain contracts. Use their source-specific
37
- references instead of making a Markdown Provider accept everything.
38
-
39
- ## Find a real example
40
-
41
- If Context CLI is available, inspect `context indexer catalog --format json`.
42
- Use the selected entry's guidance.skill_path and guidance.manifest_path to locate
43
- its bundle; read only that example and its declared resources. Alternatively use
44
- an exact Host-exposed installed Skill. Do not guess cache paths. This read-only
45
- catalog use is for Provider development, not a new production discovery gate.
46
-
47
- Choose one profile and follow its manifest references through instructions and
48
- template to its declared results. A code example demonstrates parser facts and
49
- public APIs; a document example demonstrates evidence-based consolidation;
50
- a note example demonstrates excerpts versus summaries; a sessions example
51
- separates decisions, rejected proposals and optional change associations.
52
- Adapt behavior, not only names. The example's breadth is not a minimum feature
53
- requirement for a specialized Provider.
54
-
55
- ## Validate against the installed SDK
56
-
57
- Use the matching SDK's public exports. For community installations the package
58
- is @c4a/context; for an internal distribution use its supplied SDK coordinates.
59
- With the SDK available, this Node ESM check validates the manifest and declared resource paths:
60
-
61
- ```js
62
- import { loadIndexerProviderManifest } from '@c4a/context';
63
- const manifest = await loadIndexerProviderManifest(process.argv[2]);
64
- console.log(manifest.id, manifest.version);
65
- ```
66
-
67
- The argument is the Skill bundle directory. This check does not establish that
68
- all resources are usable or that the Provider can produce useful pages. Check
69
- all declared resource paths stay within the bundle and exist; validate templates
70
- with the SDK template loader and their declared profile contracts. Consult the
71
- installed exported signatures before writing the runner: do not invent a CLI
72
- validate command or fabricate a production Route to run a development check.
73
-
74
- Template protocol is context.indexer.template/v1. Semantic prose and deterministic
75
- Facts have separate variables; registered renderers own program blocks. A
76
- Provider cannot invent a renderer or an arbitrary document kind. Use supported
77
- profile/artifact contracts or the existing declared overlay mechanism.
78
-
79
- Use anonymous fixtures that demonstrate the advertised source interpretation:
80
- one useful result, material that cannot support a claim, and an existing-page
81
- update. Test primary/extension ownership only if that composition is advertised.
82
- Test the complete selected bundle in a disposable workspace through the normal
83
- lifecycle when the necessary CLI and materials are available. Preserve the
84
- user's live workspace. Record exact commands and failures; clearly distinguish
85
- schema/resource checks from semantic review and lifecycle verification.
86
-
87
- ## Distribution and use
88
-
89
- Keep references and templates inside the bundle, with portable relative paths.
90
- The complete runtime file ledger determines integrity; do not hand-write a hash
91
- or copy another bundle's integrity. Use the target distribution's existing
92
- packaging/resolution tools. Development fixtures need not be shipped as runtime
93
- resources. Installation may use any supported organizational channel.
94
-
95
- A business Provider may be enabled through the host and selected instead of the
96
- default. Prefixes aid discovery; the manifest and verified resources determine
97
- compatibility. Select through the current Context Provider-selection Route when
98
- the user requests actual use. No new CLI install registry or creation-specific
99
- production state is needed.
3
+ An Indexer is source-specific investigation and writing guidance. It helps the
4
+ Agent understand authorized material and produce useful articles; it does not
5
+ own workflow routing, source authorization, review or permanent article identity.
6
+ Several skills may contribute to one module or article.
7
+
8
+ ## Minimal package
9
+
10
+ Start with SKILL.md. Add references for substantial source-specific guidance,
11
+ templates when they help readers, and scripts only when a concrete repeated
12
+ operation needs deterministic assistance. A simple note interpreter needs no
13
+ script, manifest, profile registry or template catalog.
14
+
15
+ Use a discoverable name and a precise description. State when the skill helps,
16
+ which sources it understands, and real limits. Refer to bundled resources by
17
+ portable relative paths. Use an existing host-visible Indexer as a behavioral
18
+ example, not as a collection of fields to copy.
19
+
20
+ Do not generate context-indexer.yaml, an exact-version selection ritual,
21
+ integrity receipts, primary/extension ownership, article producer records or
22
+ a per-member disposition protocol. A release may have ordinary package
23
+ metadata; that is not a requirement for the Agent to verify before working.
24
+
25
+ ## Investigation produces a skeleton
26
+
27
+ Explain the recognizable source signals and how to examine them cheaply.
28
+ For code, identify useful feature families from declarations or registrations,
29
+ with names and locations. A dependency or filename is a hint, not proof of
30
+ runtime behavior. For documents, use titles, opening excerpts and heading
31
+ hierarchy, with optional full reading to settle grouping. For saved notes and
32
+ sessions, directly interpret the provided record rather than scanning history.
33
+
34
+ A technology-specific helper, if needed, must have an explicit input boundary,
35
+ bounded time/output and a useful stopping behavior. Return names, counts and
36
+ entry locations, not source bodies or a full symbol/relationship graph during
37
+ planning. Distinguish checked counts from totals and identify unfinished scope.
38
+ Do not fabricate feature counts from file counts or silently treat timeouts as
39
+ empty results. Store large results in temporary files rather than long stdout.
40
+
41
+ Document any prerequisites and error recovery. Do not install dependencies,
42
+ parse the whole repository or read unrelated modules by default. A helper that
43
+ needs expensive semantic analysis belongs to selected writing tasks, not the
44
+ initial investigation path. Direct Agent investigation is a valid default
45
+ when a helper adds no useful capability.
46
+
47
+ ## Guide topics without owning the plan
48
+
49
+ Describe which reader questions visible signals can suggest, and what further
50
+ evidence the writer needs. A route family, component or storage boundary may
51
+ justify a recurring outline, but not an automatic fixed number of pages.
52
+ A component manual may require individual analysis during writing.
53
+
54
+ Use existing article titles, descriptions and references as navigation, then
55
+ read relevant bodies or sources when necessary. Code can establish structure;
56
+ documents may supply better business topics. Multiple authorized sources may
57
+ form an article. Avoid duplicating a page merely because another skill or
58
+ source family supplied its material.
59
+
60
+ The current stage provides available-skill declarations and temporary planned
61
+ usage. The Agent selects useful skills and article batches. Keep uncertain
62
+ investigation and real evidence gaps visible. Required scope cannot be dropped
63
+ to reduce processing cost, and long-term exclusions require the applicable
64
+ user decision.
65
+
66
+ ## Writing and file handoff
67
+
68
+ Explain source authority, meaningful reader output, real references and
69
+ revision behavior. Keep examples, assumptions and confirmed facts distinct.
70
+ A session summary is not a transcript; a change URL is not proof of deployment;
71
+ a declaration or test double is not independently verified runtime behavior.
72
+
73
+ Consume the current task directory, not a copied schema from a past release.
74
+ New articles use the supplied Markdown/reference contract; revisions can use
75
+ the task's base article and fragment edits. Write drafts and manifests to the
76
+ designated Agent temporary directory. The coordinator submits a finished
77
+ subset through the current CLI action and follows its receipt or recovery.
78
+
79
+ Do not write formal knowledge or mutate sources directly. Do not add a
80
+ parallel Author/Composer result envelope, semantic graph, field-by-field fact
81
+ ledger or skill identity to formal content. Source permissions, input
82
+ baselines, real citations and safe writes remain CLI responsibilities.
83
+
84
+ ## Validate the claimed capability
85
+
86
+ Check skill frontmatter and every referenced local resource. Run new scripts
87
+ against small anonymous fixtures, including an empty input, a bounded partial
88
+ scan and any failure/recovery behavior they claim. Confirm the helper does not
89
+ escape its selected scope or emit secret/source-body dumps.
90
+
91
+ Exercise useful output, insufficient evidence and a revision of an existing
92
+ article. For source families advertised by the skill, include representative
93
+ differences: an unadopted proposal, a document requiring optional deeper reading,
94
+ or two technologies in one module. Do not claim support for families not tested.
95
+
96
+ A static resource check does not prove semantic quality, and a reviewed example
97
+ does not prove the CLI submission works. If an actual Context run is available
98
+ and requested, validate through the existing workflow in an isolated workspace,
99
+ including report confirmation and file submission. Report unavailable checks
100
+ honestly; do not fabricate a route or silently install tools to make it pass.
101
+
102
+ ## Distribution
103
+
104
+ Keep the package portable and use the user's chosen installation channel.
105
+ The host lists available skills; planning records only useful temporary usage.
106
+ Formal articles, sources and necessary long-term scope decisions survive a
107
+ new machine. Unfinished drafts, candidates, skill choices and execution receipts
108
+ remain temporary; a new user can start a fresh production run without restoring
109
+ the former skill bundle or process.
@@ -30,6 +30,20 @@ optional: preserve the original URL without falling back to body retrieval or
30
30
  changing credentials. Resolve intent from the conversation; refine provisional
31
31
  chapters and module boundaries from evidence after formal capture.
32
32
 
33
+ ## Agent-planned writing order
34
+
35
+ Within the tasks available in the current Route, the Agent may choose a writing
36
+ order from the reader's needs and relationships between topics. There is no
37
+ fixed code-first or document-first rule. Prefer foundational concepts and shared
38
+ terminology before walkthroughs or summaries that benefit from them, when this
39
+ reduces rework. Independent topics can proceed without waiting; adjust the order
40
+ as writing progresses instead of maintaining a separate scheduling artifact.
41
+
42
+ This is an Agent working preference, not a new dependency or completion gate.
43
+ Do not add dependency fields, fetch extra material, or delay useful work merely
44
+ to establish an order. Keep current task boundaries, source permissions and
45
+ submission rules; do not pull future batches forward or change the CLI Route.
46
+
33
47
  ## Workspace versions and changelog
34
48
 
35
49
  `package.json.version` is the workspace SemVer. At completed-scope delivery the
@@ -133,6 +147,13 @@ ordered `content` list of `{ "markdown": "new text" }` and/or
133
147
  selected section's source references remain intact. Use full Markdown when
134
148
  changing structure, adding a page or when a section has no unambiguous ID.
135
149
 
150
+ To change a fragment's citations, include `references` alongside its `section_id`:
151
+ each entry supplies `source_ref` and `locator` (`path`, `start_line`, `end_line`).
152
+ Context computes the region fingerprint. This uses the same revision submission,
153
+ with at most three source positions per fragment. Full Markdown may include a
154
+ `sections` list of reference edits; local section edits may change content,
155
+ references, or both. Omission preserves citations; an empty list removes them.
156
+
136
157
  For an optional check, append `--preview` to the current `action complete-current`
137
158
  command with the same revision and input file. It validates and returns the
138
159
  assembled page and previous text without accepting the edit. Submit the same
@@ -406,17 +427,17 @@ Indexer's read scope. Its `task adjust` scope also supplies the explicit
406
427
  `requirement_ref`. This extends the current page's available sources and keeps
407
428
  queued pages; it does not silently start another task or another Indexer.
408
429
 
409
- ### Replacing supporting article identities
410
-
411
- When an upstream article is split, merged or removed, start `context revise` for
412
- its consumer and use `context task adjust --input - --format json` with
413
- `instruction` and `knowledge_dependencies: { dependencies }`. Each dependency
414
- uses an approved `artifact_ref`, optional `section_refs`, and `required` flag.
415
- The current Author input returns authorized replacement facts and their evidence.
416
- Repeat the adjustment with `knowledge_dependencies.sections`, selecting each
417
- retained `section_key` and its full `fact_refs` and `evidence_refs` support. Then
418
- revise the explanation and complete normal Review, close and build. An explicit
419
- empty dependency list removes the relationship only when remaining sections have
420
- valid direct support. Missing dependencies, changed approvals and invalid source
421
- references cannot silently become current evidence. Writing quality remains an
422
- Agent/Review decision; no chapter-count or wording gate is introduced.
430
+ ### Revising material reused from another article
431
+
432
+ When a supporting article changes, revise the affected explanation using
433
+ `context revise`. Read the relevant approved text and, where needed, its original
434
+ sources. Keep direct source regions on the affected output fragments; do not
435
+ recreate an article dependency graph or copy facts and evidence IDs.
436
+
437
+ Revision section edits may supply `references` as `source_ref` plus a
438
+ `locator` containing `path`, `start_line`, and `end_line`. Context computes the
439
+ regional digest. Omitted references preserve the current fragment's citations;
440
+ an explicit empty list removes them, and deleting a fragment removes its
441
+ citations. Each fragment may cite at most three source positions. Register and
442
+ authorize new material before citing it, then follow normal Review, close and
443
+ build. Article links alone do not authorize reading new sources or prove a claim.
@@ -1,136 +1,59 @@
1
1
  # Markdown Indexer Skill authoring
2
2
 
3
- Markdown Providers use the same `context.indexer.provider/v1` manifest,
4
- versioning, Bundle, requirement, trust, Result and customization contracts as
5
- Code Providers. Read the shared
6
- [Code Indexer author checklist](./code-indexer-skill-authoring.md) and
7
- [Provider selection/customization guide](./indexer-provider-and-customization.md)
8
- first. This page defines the boundary for captured file/Lark documents.
9
- Saved notes and conversation summaries use their dedicated Note/Sessions
10
- Providers, or an explicitly selected business replacement, on the same protocol.
11
- They reuse Markdown reading without a second capture phase. A Markdown page may
12
- still consume either as authorized supporting material; specialized extension
13
- guidance does not transfer primary ownership.
14
-
15
- ## Capture before semantics
16
-
17
- Capture owns source authorization, retrieval, revision identity, complete bytes,
18
- Markdown/MDX parsing and evidence spans. A Markdown Indexer starts only from a
19
- current captured source report and authorized evidence view. URLs, titles,
20
- filenames, headings and capture success are activation candidates, not semantic
21
- classification or proof that the whole document was read.
22
-
23
- The Provider cannot fetch the document again, follow new links, rewrite source
24
- revisions or widen capture scope. Missing/unsupported capture capability is an
25
- explicit unsupported result, never a prose fallback.
26
-
27
- ## Activation and source roles
28
-
29
- Declare document activation signals and map evidence-backed sources to declared
30
- roles such as authoritative, explanatory, operational, decision or example
31
- material. Keep role selection separate from collection placement. One document
32
- may support multiple reader questions, but every consumed span retains its
33
- source/revision identity and cannot be promoted to a stronger authority by an
34
- instruction.
35
-
36
- ## Section projection and collection mapping
37
-
38
- Author Results propose logical Sections and their intent; they do not write
39
- `knowledge/` paths. Each Section binds:
40
-
41
- - the canonical SubjectKey/Node target or an explicit independent target;
42
- - its reader-question refs and exact evidence spans;
43
- - an Artifact kind and Section key stable across content-only changes;
44
- - a projection intent describing purpose, not a physical filename;
45
- - structured content layers and their digests.
46
-
47
- Context owns the closed mapping from profile/Section intent to collection and
48
- path. The layout resolver reuses an existing Artifact by stable identity,
49
- detects add/remove/rename/split/merge/move changes. Ordinary production reviews
50
- the proposed new structure before Author, including new topics in an update.
51
- Protected changes to an approved layout have their own human-only Gate; this
52
- is distinct from ordinary structure review and its managed delegation. A Provider cannot
53
- avoid that Gate by emitting a path or relabeling the change.
54
-
55
- ## Reusing Code Nodes
56
-
57
- Use the supplied subject catalog and TargetResolutionView. Equal SubjectKeys use
58
- the same NodeRef across Code and Markdown. `resolved` enriches the existing
59
- Node; `absent` may create an explicitly independent subject or a material gap;
60
- `ambiguous` fails before authoring. Titles, heading similarity and filenames
61
- are never identity fallback. Unrelated catalog changes must not make a workset
62
- stale.
63
-
64
- ## Artifact and Section planning
65
-
66
- One logical unit may produce an Artifact Bundle with multiple meaningful
67
- Sections or semantic split Artifacts. Do not use fixed-count, ordinal or
68
- alphabetic batches. Do not create one page per heading/member or inflate page
69
- count to satisfy a metric. The CLI owns Artifact-policy eligibility, physical
70
- fan-out audit, layout actualization and the final Candidate compile.
71
-
72
- The first actual Section of each reader Artifact begins with one concise,
73
- source-backed level-one heading. Context uses that heading as the outline and
74
- Candidate Review display title. It never participates in SubjectKey derivation
75
- or ownership, and later Sections in the same Artifact do not repeat it.
76
-
77
- Each Section carries exact positive and negative dependency refs. Incremental
78
- impact is Section/Artifact-local: a source membership, question denominator,
79
- candidate pool, evidence span or run-envelope change invalidates only the
80
- dependent scope. A Provider must not replace this with source-wide or
81
- collection-wide recomputation.
82
-
83
- ## Editorial policy
84
-
85
- Editorial instructions may guide clarity, consolidation, ordering and
86
- reader-facing terminology. They cannot alter facts, evidence, source role,
87
- requirement scope, protected values, revision identity or collection authority.
88
- Deterministic blocks render only registered facts; semantic prose cites consumed
89
- evidence. The Agent or user assesses missing explanations, speculation and
90
- unfilled placeholders in the existing content Review. Context does not scan
91
- words, braces, comments or headings to reject content, and an editorial hint
92
- does not create another gate or require a signal-clearing receipt.
93
-
94
- ## Missing material
95
-
96
- When current material cannot answer a required canonical question, return the
97
- exact material-question disposition for the supplied owner cell, question
98
- contract and Subject target. Do not invent a new question contract or landing.
99
- Context reports the unresolved set in current reconciliation state; it does not
100
- create a second checkpoint ledger or published gap artifact.
101
-
102
- Capture the missing Markdown or other source normally, then rerun `main-index`.
103
- The new Result updates the same knowledge Candidate and enters the same final
104
- content Review. There is no answer-only operation or evidence-specific Review.
105
- A blocking gap closes only through current source or an explicit non-delegable
106
- requirement change.
107
-
108
- ## Bounded execution
109
-
110
- Each captured document remains an independently recoverable Partition input,
111
- but Context may transport several documents in one bounded Agent step. Return
112
- one result for every supplied task key and let global convergence merge
113
- documents that establish the same Subject. Batch order, filename order and
114
- heading order never create Subject identity. Author and Review use the same
115
- bounded transport rule without adding intermediate user approvals.
116
-
117
- ## Markdown author fixture checklist
118
-
119
- Release fixtures should cover:
120
-
121
- - complete Markdown and MDX capture plus unsupported parser/capture paths;
122
- - authoritative reference, guide, runbook, FAQ, decision, incident, policy,
123
- test and release/migration document shapes using anonymous content;
124
- - per-Section projection into every supported collection intent;
125
- - existing Code Node reuse, independent subject, ambiguity and material gap;
126
- - content-only reuse plus add/remove/rename/split/merge/collection/path/Section
127
- move in both directions;
128
- - protected values, links, images/assets and source-span fidelity;
129
- - editorial positives and placeholder/speculation/unsupported negatives;
130
- - material-gap runtime recovery, main-index retry and no-output-leak;
131
- - Section-local incremental invalidation, new membership/denominator/candidate
132
- pool changes and unaffected Section reuse.
133
-
134
- Source authorization, capture revision safety, canonical question/collection
135
- contracts, layout confirmation, review and build remain Context authority and
136
- cannot be replaced by the Skill.
3
+ Use the shared [planning and writing guidance](./indexer-provider-and-customization.md).
4
+ Document Skills help interpret captured articles; notes and sessions have their
5
+ own guidance but can support the same reader topic. No unique primary owner,
6
+ version lock or per-document disposition ledger is required.
7
+
8
+ ## Captured sources
9
+
10
+ Start from authorized captured Markdown and its source identity. Capture proves
11
+ which bytes are available, not what they mean. Titles, headings and filenames are
12
+ navigation aids, not proof that the Agent has read the body.
13
+
14
+ Do not fetch new documents, follow external links or widen source authorization
15
+ implicitly. Request missing material through the current workflow. Keep the
16
+ distinction between a source being unavailable and its contents being irrelevant.
17
+
18
+ ## Planning
19
+
20
+ Read the supplied titles, bounded introductions and complete H2/H3 outlines.
21
+ The Agent may read additional sections or the full document when needed, then
22
+ chooses article targets and writing batches. Do not require full-body reading of
23
+ every document or a separate planning submission for an already explicit target.
24
+
25
+ Consult code topics and existing article descriptions and references. Reuse a
26
+ topic when its reader question fits, or propose a clearer business topic instead
27
+ of forcing a document under a code directory. One document may support several
28
+ articles and several authorized documents may support one article.
29
+
30
+ The final work-start report follows the relevant source overview and plan, and
31
+ must wait for the user before bulk writing, including in managed mode.
32
+
33
+ ## Writing and repairs
34
+
35
+ Read the actual passages needed for the article. Distinguish authoritative rules,
36
+ examples, decisions and proposals; a session suggestion is not an implemented
37
+ behavior. Write Markdown and references in the supplied temporary directory and
38
+ submit the short stage-relative manifest. Title and description belong to the
39
+ article, not an internal layout-mapping tuple.
40
+
41
+ Keep stable article and fragment identities when revising. Each fragment cites
42
+ at most three actual source regions. The CLI handles source digests and safety;
43
+ the Agent judges whether the evidence supports the explanation. For a local
44
+ failure, use the returned fragment identifier or position to repair the affected
45
+ part. Completed independent tasks can be submitted without the rest of the batch.
46
+
47
+ Do not inflate page counts, produce a page for every heading, or turn missing
48
+ evidence into speculative prose. A genuine material gap remains unfinished work;
49
+ an explicit exclusion uses the existing exclusion mechanism. Neither requires
50
+ a new reconciliation ledger or additional content-review stage.
51
+
52
+ ## Useful fixtures
53
+
54
+ Cover an ordinary one-to-one article, multi-document synthesis, reuse of an
55
+ existing topic, fragment repair, source line changes, links and images, and
56
+ missing material for the document forms the Skill supports. Verify both source
57
+ fidelity and the final page. Keep examples anonymous and check packaged links.
58
+ Drafts and scheduling details remain temporary; deleting `.tmp` starts fresh
59
+ production from formal knowledge and available sources, not a workflow migration.