@cat-factory/agents 0.43.1 → 0.44.0
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/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -0
- package/dist/index.js.map +1 -1
- package/dist/presets/docs-refresh/preset.d.ts +25 -0
- package/dist/presets/docs-refresh/preset.d.ts.map +1 -0
- package/dist/presets/docs-refresh/preset.js +391 -0
- package/dist/presets/docs-refresh/preset.js.map +1 -0
- package/package.json +4 -4
package/dist/index.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ export { type CompanionDefinition, COMPANIONS, isCompanionKind, companionFor, co
|
|
|
22
22
|
export { companionSystemPrompt } from './agents/prompts/companion.js';
|
|
23
23
|
export { DOC_RESEARCHER_KIND, DOC_OUTLINER_KIND, DOC_WRITER_KIND, DOC_FINALIZER_KIND, DOC_REVIEWER_KIND, DOC_FIXER_KIND, DOCUMENT_AGENT_KINDS, registerDocumentAgents, resolveDocumentTarget, type DocumentTarget, } from './agents/kinds/document.js';
|
|
24
24
|
export { CODE_COMMENTER_KIND, CODE_COMMENTER_AGENT_KINDS, registerCodeCommenterAgent, } from './agents/kinds/code-commenter.js';
|
|
25
|
+
export { DOCS_REFRESH_PRESET_ID, DOCS_REFRESH_PRESET, registerDocsRefreshPreset, docsReviewGates, } from './presets/docs-refresh/preset.js';
|
|
25
26
|
export { type DocTemplate, type DocTemplateSection, DOC_TEMPLATES, registerDocTemplate, registerDocTemplates, clearRegisteredDocTemplates, docTemplateFor, resolveDocTemplate, requiredSectionTitles, renderTemplateSkeleton, } from './agents/kinds/doc-templates.js';
|
|
26
27
|
export { INITIATIVE_BREAKDOWN_KIND, INITIATIVE_AGENT_KINDS, registerInitiativeAgents, } from './agents/kinds/initiative.js';
|
|
27
28
|
export { READ_ONLY_AGENT_KINDS, READ_ONLY_GUARDRAIL, isReadOnlyAgentKind, } from './agents/kinds/read-only.js';
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -48,6 +48,12 @@ export { DOC_RESEARCHER_KIND, DOC_OUTLINER_KIND, DOC_WRITER_KIND, DOC_FINALIZER_
|
|
|
48
48
|
// leg of the docs-refresh preset (diagrams / READMEs reuse `doc-writer`, business rules reuse
|
|
49
49
|
// `business-documenter`, so it is the one genuinely-new authoring capability the preset needs).
|
|
50
50
|
export { CODE_COMMENTER_KIND, CODE_COMMENTER_AGENT_KINDS, registerCodeCommenterAgent, } from './agents/kinds/code-commenter.js';
|
|
51
|
+
// The Documentation-refresh initiative preset (initiative-presets slice 8), registered as a SIDE
|
|
52
|
+
// EFFECT of importing this module (the `@cat-factory/gates` pattern) so the pilot preset is
|
|
53
|
+
// available in every deployment with no per-facade wiring — the two runtimes cannot drift on it.
|
|
54
|
+
// `detect` reuses slice 6's `detectDocsLayout`, `seedPlan` stamps per-item spawn decoration ONLY,
|
|
55
|
+
// and `phaseTemplate` enforces the plan shape via the generic ingest normalizer (never `seedPlan`).
|
|
56
|
+
export { DOCS_REFRESH_PRESET_ID, DOCS_REFRESH_PRESET, registerDocsRefreshPreset, docsReviewGates, } from './presets/docs-refresh/preset.js';
|
|
51
57
|
// Per-`DocKind` document templates: the single source of truth for a kind's expected shape,
|
|
52
58
|
// woven into the outliner/writer prompts and (later) read by the doc-quality gate. The
|
|
53
59
|
// built-in `DOC_TEMPLATES` are the fallback; a deployment overrides via `registerDocTemplate`.
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { InitiativePresetRegistration } from '@cat-factory/kernel';
|
|
2
|
+
/** The docs-refresh preset id (the SPA picker option + the create-flow lookup key). */
|
|
3
|
+
export declare const DOCS_REFRESH_PRESET_ID = "preset_docs_refresh";
|
|
4
|
+
/**
|
|
5
|
+
* The per-run gate-override array for a spawned documentation pipeline when human review is opted
|
|
6
|
+
* in — a FULL boolean array parallel to the pipeline's own `agentKinds` (the slice-2 gate-override
|
|
7
|
+
* contract: `ExecutionService.start` rejects a length mismatch). Human review is placed at the
|
|
8
|
+
* pipeline's natural review point: the converged `doc-reviewer` for `pl_document_quick`, and the
|
|
9
|
+
* `merger` (review the green PR before it ships) for the lean author→conflicts→ci→merger pipelines
|
|
10
|
+
* that have no reviewer step. `undefined` (human review OFF, the default) leaves the pipeline's own
|
|
11
|
+
* gates — which are none for all three — so a decoration-less run stays unattended.
|
|
12
|
+
*
|
|
13
|
+
* The array lengths here are pinned to the seed pipelines' shapes by `preset.test.ts`, so a change
|
|
14
|
+
* to one of those pipelines that this override no longer matches fails a test rather than a spawn.
|
|
15
|
+
*/
|
|
16
|
+
export declare function docsReviewGates(pipelineId: string, humanReview: boolean): boolean[] | undefined;
|
|
17
|
+
/** The docs-refresh preset registration bundle (descriptor + code hooks). */
|
|
18
|
+
export declare const DOCS_REFRESH_PRESET: InitiativePresetRegistration;
|
|
19
|
+
/**
|
|
20
|
+
* Register the docs-refresh preset. Idempotent (the registry replaces by id), so importing this
|
|
21
|
+
* module (which self-registers below, the `@cat-factory/gates` pattern) and calling this explicitly
|
|
22
|
+
* are safe to combine. Tests that `clearRegisteredInitiativePresets()` call this to restore it.
|
|
23
|
+
*/
|
|
24
|
+
export declare function registerDocsRefreshPreset(): void;
|
|
25
|
+
//# sourceMappingURL=preset.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preset.d.ts","sourceRoot":"","sources":["../../../src/presets/docs-refresh/preset.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAA;AAiCvE,uFAAuF;AACvF,eAAO,MAAM,sBAAsB,wBAAwB,CAAA;AAsM3D;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,SAAS,CAa/F;AA+JD,6EAA6E;AAC7E,eAAO,MAAM,mBAAmB,EAAE,4BAQjC,CAAA;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD"}
|
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
import { BUSINESS_DOCS_PIPELINE_ID, CODE_COMMENTS_PIPELINE_ID, DOCUMENT_QUICK_PIPELINE_ID, INITIATIVE_DOCS_PIPELINE_ID, joinRepoPath, registerInitiativePreset, } from '@cat-factory/kernel';
|
|
2
|
+
import { DEFAULT_DOCUMENT_STYLE_FRAGMENT_IDS, styleFragments } from '@cat-factory/prompt-fragments';
|
|
3
|
+
import { detectDocsLayout } from './docs-detect.logic.js';
|
|
4
|
+
// ---------------------------------------------------------------------------
|
|
5
|
+
// The Documentation-refresh initiative preset (initiative-presets slice 8) — the pilot that
|
|
6
|
+
// proves the preset primitives end to end: a create-time FORM, a repo-detection PREFILL probe
|
|
7
|
+
// (slice 6's `detectDocsLayout`), a declarative `phaseTemplate` (the generic shape-enforcement
|
|
8
|
+
// from T1/T2 — NOT hand-rolled in `seedPlan`), a `seedPlan` that stamps per-item spawn
|
|
9
|
+
// DECORATION only, and `promptAdditions` that turn the analyst into a documentation
|
|
10
|
+
// gap-auditor and shape the planner's phases + item granularity.
|
|
11
|
+
//
|
|
12
|
+
// Given a service (or a frontend), it audits the documentation against the implementation and
|
|
13
|
+
// drives it to a full, current set. The user checkboxes which documentation types they want;
|
|
14
|
+
// placement defaults to `/docs` with autodetection of the current layout; human review is OFF
|
|
15
|
+
// by default (opt-in, mapped to the gate-override seam on the SPAWNED task runs — the plan
|
|
16
|
+
// itself runs unattended); and the writing-style fragments are on by default.
|
|
17
|
+
//
|
|
18
|
+
// GOVERNING SPLIT (the T1/T2 gotcha carried into this slice): plan SHAPE lives in
|
|
19
|
+
// `phaseTemplate` + the generic ingest normalizer; per-item DECORATION lives in `seedPlan`.
|
|
20
|
+
// They never overlap — `seedPlan` here NEVER touches phases, and the template NEVER stamps items.
|
|
21
|
+
//
|
|
22
|
+
// See `docs/initiatives/initiative-presets-and-docs-refresh.md` (slice 8).
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
/** The docs-refresh preset id (the SPA picker option + the create-flow lookup key). */
|
|
25
|
+
export const DOCS_REFRESH_PRESET_ID = 'preset_docs_refresh';
|
|
26
|
+
// The documentation types the user checkboxes. Each maps 1:1 to a plan PHASE of the same id
|
|
27
|
+
// (except `foundations`, which has no doc-type) — so the planner's phase ids, the phase template,
|
|
28
|
+
// and `seedPlan`'s per-phase decoration all key off the SAME strings.
|
|
29
|
+
const DOC_TYPE_README = 'readme';
|
|
30
|
+
const DOC_TYPE_DIAGRAMS = 'diagrams';
|
|
31
|
+
const DOC_TYPE_COMMENTS = 'comments';
|
|
32
|
+
const DOC_TYPE_BUSINESS_RULES = 'business-rules';
|
|
33
|
+
/** The Foundations phase id (create/normalize the placement dirs before the per-type phases). */
|
|
34
|
+
const PHASE_FOUNDATIONS = 'foundations';
|
|
35
|
+
/** Field keys frozen on the entity's `presetInputs` (referenced by `seedPlan` + the probe). */
|
|
36
|
+
const FIELD_DOC_TYPES = 'docTypes';
|
|
37
|
+
const FIELD_DOCS_ROOT = 'docsRoot';
|
|
38
|
+
const FIELD_DIAGRAMS_DIR = 'diagramsDir';
|
|
39
|
+
const FIELD_BUSINESS_RULES_DIR = 'businessRulesDir';
|
|
40
|
+
const FIELD_STYLE_FRAGMENTS = 'styleFragments';
|
|
41
|
+
const FIELD_HUMAN_REVIEW = 'humanReview';
|
|
42
|
+
const DEFAULT_DOCS_ROOT = 'docs';
|
|
43
|
+
const DEFAULT_DIAGRAMS_DIR = 'docs/diagrams';
|
|
44
|
+
const DEFAULT_BUSINESS_RULES_DIR = 'docs/business-logic';
|
|
45
|
+
// ---------------------------------------------------------------------------
|
|
46
|
+
// Descriptor (the SPA-facing form + planning binding + defaults).
|
|
47
|
+
// ---------------------------------------------------------------------------
|
|
48
|
+
/** The writing-style fragment choices, derived from the Writing-style category (single source). */
|
|
49
|
+
const STYLE_FRAGMENT_OPTIONS = styleFragments.map((f) => ({ value: f.id, label: f.title }));
|
|
50
|
+
const DESCRIPTOR = {
|
|
51
|
+
id: DOCS_REFRESH_PRESET_ID,
|
|
52
|
+
presentation: {
|
|
53
|
+
label: 'Documentation refresh',
|
|
54
|
+
icon: 'i-lucide-book-open-text',
|
|
55
|
+
color: '#0ea5e9',
|
|
56
|
+
description: 'Audit a service’s documentation against its code and drive it to a full, current set — READMEs, diagrams, in-source comments and business rules — mostly unattended.',
|
|
57
|
+
},
|
|
58
|
+
fields: [
|
|
59
|
+
{
|
|
60
|
+
key: FIELD_DOC_TYPES,
|
|
61
|
+
label: 'Documentation to refresh',
|
|
62
|
+
help: 'Which kinds of documentation to audit and bring current.',
|
|
63
|
+
type: 'checkbox-group',
|
|
64
|
+
options: [
|
|
65
|
+
{ value: DOC_TYPE_README, label: 'README files' },
|
|
66
|
+
{ value: DOC_TYPE_DIAGRAMS, label: 'Architecture & flow diagrams (Mermaid)' },
|
|
67
|
+
{ value: DOC_TYPE_COMMENTS, label: 'In-source code comments' },
|
|
68
|
+
{ value: DOC_TYPE_BUSINESS_RULES, label: 'Business rules & domain constraints' },
|
|
69
|
+
],
|
|
70
|
+
defaultValues: [
|
|
71
|
+
DOC_TYPE_README,
|
|
72
|
+
DOC_TYPE_DIAGRAMS,
|
|
73
|
+
DOC_TYPE_COMMENTS,
|
|
74
|
+
DOC_TYPE_BUSINESS_RULES,
|
|
75
|
+
],
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
key: 'placementMode',
|
|
79
|
+
label: 'Documentation placement',
|
|
80
|
+
help: 'Where docs live: one root tree, or per-service (monorepo). Autodetected from the repo.',
|
|
81
|
+
type: 'select',
|
|
82
|
+
options: [
|
|
83
|
+
{ value: 'root', label: 'Single root docs tree' },
|
|
84
|
+
{ value: 'per-service', label: 'Per-service docs (monorepo)' },
|
|
85
|
+
],
|
|
86
|
+
default: 'root',
|
|
87
|
+
},
|
|
88
|
+
{
|
|
89
|
+
key: FIELD_DOCS_ROOT,
|
|
90
|
+
label: 'Docs root',
|
|
91
|
+
help: 'The repo-relative directory documentation is written under.',
|
|
92
|
+
type: 'path',
|
|
93
|
+
default: DEFAULT_DOCS_ROOT,
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
key: FIELD_DIAGRAMS_DIR,
|
|
97
|
+
label: 'Diagrams directory',
|
|
98
|
+
type: 'path',
|
|
99
|
+
default: DEFAULT_DIAGRAMS_DIR,
|
|
100
|
+
showWhen: { key: FIELD_DOC_TYPES, includes: DOC_TYPE_DIAGRAMS },
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
key: FIELD_BUSINESS_RULES_DIR,
|
|
104
|
+
label: 'Business-rules directory',
|
|
105
|
+
type: 'path',
|
|
106
|
+
default: DEFAULT_BUSINESS_RULES_DIR,
|
|
107
|
+
showWhen: { key: FIELD_DOC_TYPES, includes: DOC_TYPE_BUSINESS_RULES },
|
|
108
|
+
},
|
|
109
|
+
{
|
|
110
|
+
key: 'scopeHint',
|
|
111
|
+
label: 'Scope (optional)',
|
|
112
|
+
help: 'Which services or areas to focus on. Leave blank to cover everything in the frame.',
|
|
113
|
+
type: 'textarea',
|
|
114
|
+
placeholder: 'e.g. the billing and notifications services only',
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
key: FIELD_HUMAN_REVIEW,
|
|
118
|
+
label: 'Review each documentation change before it merges',
|
|
119
|
+
help: 'Off by default — documentation PRs merge automatically once CI is green. Turn on to pause each spawned task for approval.',
|
|
120
|
+
type: 'checkbox',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
key: FIELD_STYLE_FRAGMENTS,
|
|
124
|
+
label: 'Writing-style guidance',
|
|
125
|
+
help: 'Best-practice writing fragments folded into every documentation task.',
|
|
126
|
+
type: 'checkbox-group',
|
|
127
|
+
options: STYLE_FRAGMENT_OPTIONS,
|
|
128
|
+
defaultValues: [...DEFAULT_DOCUMENT_STYLE_FRAGMENT_IDS],
|
|
129
|
+
},
|
|
130
|
+
],
|
|
131
|
+
planningPipelineId: INITIATIVE_DOCS_PIPELINE_ID,
|
|
132
|
+
// The form IS the interview — no interviewer step; the create flow seeds the qa digest from it.
|
|
133
|
+
interview: 'skip',
|
|
134
|
+
// Unattended by default; the `humanReview` field opts INTO per-task gates via `seedPlan`.
|
|
135
|
+
humanReviewDefault: false,
|
|
136
|
+
defaultFragmentIds: [...DEFAULT_DOCUMENT_STYLE_FRAGMENT_IDS],
|
|
137
|
+
// Plan SHAPE (T1/T2): Foundations is mandatory (place/normalize the docs dirs); each per-type
|
|
138
|
+
// phase is OPTIONAL — the planner emits only the phases whose doc type the user checked (steered
|
|
139
|
+
// by the promptAdditions). `allowAdditionalPhases: false` keeps the plan to this exhaustive set;
|
|
140
|
+
// the generic ingest normalizer reorders to this order and rejects a missing Foundations / an
|
|
141
|
+
// unknown extra phase. Phase ids match VERBATIM the ids the planner emits and `seedPlan` keys off.
|
|
142
|
+
phaseTemplate: {
|
|
143
|
+
phases: [
|
|
144
|
+
{
|
|
145
|
+
id: PHASE_FOUNDATIONS,
|
|
146
|
+
title: 'Foundations',
|
|
147
|
+
goal: 'Create or normalize the documentation placement directories the plan writes into (often 0–1 items).',
|
|
148
|
+
required: true,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
id: DOC_TYPE_README,
|
|
152
|
+
title: 'README refresh',
|
|
153
|
+
goal: 'Bring each in-scope service’s README to a current, useful state.',
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
id: DOC_TYPE_DIAGRAMS,
|
|
157
|
+
title: 'Architecture & flow diagrams',
|
|
158
|
+
goal: 'Author Mermaid diagrams for the architecture and the key flows of each in-scope service.',
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
id: DOC_TYPE_COMMENTS,
|
|
162
|
+
title: 'In-source comments',
|
|
163
|
+
goal: 'Add and clarify why-not-what comments in the least-documented modules from the audit.',
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
id: DOC_TYPE_BUSINESS_RULES,
|
|
167
|
+
title: 'Business rules',
|
|
168
|
+
goal: 'Capture the domain rules and constraints as in-repo documentation, one document per area.',
|
|
169
|
+
},
|
|
170
|
+
],
|
|
171
|
+
allowAdditionalPhases: false,
|
|
172
|
+
},
|
|
173
|
+
};
|
|
174
|
+
// ---------------------------------------------------------------------------
|
|
175
|
+
// `detect` — the repo-layout PREFILL probe (slice 6's pure detector mapped onto the form).
|
|
176
|
+
// ---------------------------------------------------------------------------
|
|
177
|
+
/**
|
|
178
|
+
* Prefill the placement fields from the target repo's layout. A `RepoFiles` satisfies slice 6's
|
|
179
|
+
* `DocsRepoReader` structurally, and `detectDocsLayout` is bounded + never throws, so this only
|
|
180
|
+
* ever returns non-binding FORM DEFAULTS (the user's edits win). The detected `hasExistingMermaid`
|
|
181
|
+
* / `monorepo` intel is for the analyst at planning time, not a form field, so it is not returned.
|
|
182
|
+
*/
|
|
183
|
+
const detect = async (repo) => {
|
|
184
|
+
const layout = await detectDocsLayout(repo);
|
|
185
|
+
return {
|
|
186
|
+
placementMode: layout.placementMode,
|
|
187
|
+
[FIELD_DOCS_ROOT]: layout.docsRoot,
|
|
188
|
+
[FIELD_DIAGRAMS_DIR]: layout.diagramsDir,
|
|
189
|
+
[FIELD_BUSINESS_RULES_DIR]: layout.businessRulesDir,
|
|
190
|
+
};
|
|
191
|
+
};
|
|
192
|
+
// ---------------------------------------------------------------------------
|
|
193
|
+
// `seedPlan` — per-item spawn DECORATION only (never plan shape — that is the template's job).
|
|
194
|
+
// ---------------------------------------------------------------------------
|
|
195
|
+
/** Read a string input, falling back to `fallback` when absent/blank/non-string. */
|
|
196
|
+
function strInput(inputs, key, fallback) {
|
|
197
|
+
const value = inputs[key];
|
|
198
|
+
return typeof value === 'string' && value.trim() ? value.trim() : fallback;
|
|
199
|
+
}
|
|
200
|
+
/** A filesystem-safe, lower-kebab file slug for a derived `.md` target path. */
|
|
201
|
+
function fileSlug(title) {
|
|
202
|
+
const slug = title
|
|
203
|
+
.toLowerCase()
|
|
204
|
+
.replace(/[^a-z0-9]+/g, '-')
|
|
205
|
+
.replace(/^-+|-+$/g, '')
|
|
206
|
+
.slice(0, 60);
|
|
207
|
+
return slug || 'doc';
|
|
208
|
+
}
|
|
209
|
+
/**
|
|
210
|
+
* The per-run gate-override array for a spawned documentation pipeline when human review is opted
|
|
211
|
+
* in — a FULL boolean array parallel to the pipeline's own `agentKinds` (the slice-2 gate-override
|
|
212
|
+
* contract: `ExecutionService.start` rejects a length mismatch). Human review is placed at the
|
|
213
|
+
* pipeline's natural review point: the converged `doc-reviewer` for `pl_document_quick`, and the
|
|
214
|
+
* `merger` (review the green PR before it ships) for the lean author→conflicts→ci→merger pipelines
|
|
215
|
+
* that have no reviewer step. `undefined` (human review OFF, the default) leaves the pipeline's own
|
|
216
|
+
* gates — which are none for all three — so a decoration-less run stays unattended.
|
|
217
|
+
*
|
|
218
|
+
* The array lengths here are pinned to the seed pipelines' shapes by `preset.test.ts`, so a change
|
|
219
|
+
* to one of those pipelines that this override no longer matches fails a test rather than a spawn.
|
|
220
|
+
*/
|
|
221
|
+
export function docsReviewGates(pipelineId, humanReview) {
|
|
222
|
+
if (!humanReview)
|
|
223
|
+
return undefined;
|
|
224
|
+
switch (pipelineId) {
|
|
225
|
+
case DOCUMENT_QUICK_PIPELINE_ID:
|
|
226
|
+
// [doc-writer, doc-reviewer, doc-quality, conflicts, ci, merger] — gate the converged review.
|
|
227
|
+
return [false, true, false, false, false, false];
|
|
228
|
+
case CODE_COMMENTS_PIPELINE_ID:
|
|
229
|
+
case BUSINESS_DOCS_PIPELINE_ID:
|
|
230
|
+
// [author, conflicts, ci, merger] — no reviewer, so gate the merge (review the green PR).
|
|
231
|
+
return [false, false, false, true];
|
|
232
|
+
default:
|
|
233
|
+
return undefined;
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
const PHASE_DECORATIONS = {
|
|
237
|
+
// Foundations: a lean doc under the docs root (writing it creates/normalizes the placement dir).
|
|
238
|
+
[PHASE_FOUNDATIONS]: {
|
|
239
|
+
pipelineId: DOCUMENT_QUICK_PIPELINE_ID,
|
|
240
|
+
taskType: 'document',
|
|
241
|
+
docKind: 'reference',
|
|
242
|
+
placement: 'docs-root',
|
|
243
|
+
},
|
|
244
|
+
// README: a doc that lives BESIDE the code — the planner authors the per-service target path.
|
|
245
|
+
[DOC_TYPE_README]: {
|
|
246
|
+
pipelineId: DOCUMENT_QUICK_PIPELINE_ID,
|
|
247
|
+
taskType: 'document',
|
|
248
|
+
docKind: 'reference',
|
|
249
|
+
placement: 'authored-readme',
|
|
250
|
+
},
|
|
251
|
+
// Diagrams: a Mermaid `.md` a doc-writer produces, placed under the diagrams dir. `docKind: other`
|
|
252
|
+
// (there is no `diagrams` DocKind) — its template's required sections (Overview + Details) suit a
|
|
253
|
+
// diagram doc, so `doc-quality` accepts it once the writer includes an overview + the diagrams.
|
|
254
|
+
[DOC_TYPE_DIAGRAMS]: {
|
|
255
|
+
pipelineId: DOCUMENT_QUICK_PIPELINE_ID,
|
|
256
|
+
taskType: 'document',
|
|
257
|
+
docKind: 'other',
|
|
258
|
+
placement: 'diagrams-dir',
|
|
259
|
+
},
|
|
260
|
+
// In-source comments: `code-commenter` edits code in place — NOT a document task, and its scope is
|
|
261
|
+
// a module DIR (which cannot ride `taskTypeFields.targetPath`, that field is `.md`-only). The
|
|
262
|
+
// planner names the module in the item description; the pipeline's CI tail proves behaviour-neutral.
|
|
263
|
+
[DOC_TYPE_COMMENTS]: { pipelineId: CODE_COMMENTS_PIPELINE_ID, placement: 'none' },
|
|
264
|
+
// Business rules: `business-documenter` writes MANY docs under a directory, so there is no single
|
|
265
|
+
// target path — the planner names the business-rules dir in the description (the business-documenter
|
|
266
|
+
// already respects an established docs home). Typed `document` for the SPA's doc affordances.
|
|
267
|
+
[DOC_TYPE_BUSINESS_RULES]: {
|
|
268
|
+
pipelineId: BUSINESS_DOCS_PIPELINE_ID,
|
|
269
|
+
taskType: 'document',
|
|
270
|
+
placement: 'none',
|
|
271
|
+
},
|
|
272
|
+
};
|
|
273
|
+
/** The derived `.md` target path for an item, or undefined when placement is planner-authored/none. */
|
|
274
|
+
function targetPathFor(deco, item, inputs) {
|
|
275
|
+
switch (deco.placement) {
|
|
276
|
+
case 'docs-root':
|
|
277
|
+
return `${joinRepoPath(strInput(inputs, FIELD_DOCS_ROOT, DEFAULT_DOCS_ROOT), fileSlug(item.title))}.md`;
|
|
278
|
+
case 'diagrams-dir':
|
|
279
|
+
return `${joinRepoPath(strInput(inputs, FIELD_DIAGRAMS_DIR, DEFAULT_DIAGRAMS_DIR), fileSlug(item.title))}.md`;
|
|
280
|
+
case 'authored-readme':
|
|
281
|
+
// The planner decides a README's path (beside its service); preserve it if authored + safe
|
|
282
|
+
// (the ingest re-parse re-validates it), else leave unset for the writer to place.
|
|
283
|
+
return item.spawn?.taskTypeFields?.targetPath?.trim() || undefined;
|
|
284
|
+
case 'none':
|
|
285
|
+
return undefined;
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Stamp each planner-drafted item with its spawn DECORATION, keyed off the item's phase id: the
|
|
290
|
+
* documentation pipeline to run (`item.pipelineId`), the typed-task fields (`taskType`/`docKind`/a
|
|
291
|
+
* derived `targetPath`), the chosen writing-style `fragmentIds`, and the human-review `gates`
|
|
292
|
+
* override. Pure + total; an item in an unrecognized phase is left byte-identical (defensive — the
|
|
293
|
+
* phase template already constrains the phases). NEVER touches phases or item content — plan shape
|
|
294
|
+
* is the template's job (the generic ingest normalizer runs before AND after this hook).
|
|
295
|
+
*/
|
|
296
|
+
function seedPlan(draft, inputs) {
|
|
297
|
+
const humanReview = inputs[FIELD_HUMAN_REVIEW] === true;
|
|
298
|
+
const styleFragmentIds = Array.isArray(inputs[FIELD_STYLE_FRAGMENTS])
|
|
299
|
+
? inputs[FIELD_STYLE_FRAGMENTS]
|
|
300
|
+
: [];
|
|
301
|
+
const items = draft.items.map((item) => {
|
|
302
|
+
const deco = PHASE_DECORATIONS[item.phaseId];
|
|
303
|
+
if (!deco)
|
|
304
|
+
return item;
|
|
305
|
+
const targetPath = targetPathFor(deco, item, inputs);
|
|
306
|
+
const taskTypeFields = deco.docKind || targetPath
|
|
307
|
+
? {
|
|
308
|
+
...(deco.docKind ? { docKind: deco.docKind } : {}),
|
|
309
|
+
...(targetPath ? { targetPath } : {}),
|
|
310
|
+
}
|
|
311
|
+
: undefined;
|
|
312
|
+
const gates = docsReviewGates(deco.pipelineId, humanReview);
|
|
313
|
+
const spawn = {
|
|
314
|
+
...(deco.taskType ? { taskType: deco.taskType } : {}),
|
|
315
|
+
...(taskTypeFields ? { taskTypeFields } : {}),
|
|
316
|
+
...(styleFragmentIds.length ? { fragmentIds: styleFragmentIds } : {}),
|
|
317
|
+
...(gates ? { gates } : {}),
|
|
318
|
+
};
|
|
319
|
+
return {
|
|
320
|
+
...item,
|
|
321
|
+
pipelineId: deco.pipelineId,
|
|
322
|
+
...(Object.keys(spawn).length ? { spawn } : {}),
|
|
323
|
+
};
|
|
324
|
+
});
|
|
325
|
+
return { ...draft, items };
|
|
326
|
+
}
|
|
327
|
+
// ---------------------------------------------------------------------------
|
|
328
|
+
// `promptAdditions` — per-kind planning-prompt steering (DATA, off the wire descriptor). Provides
|
|
329
|
+
// the METHODOLOGY; the frozen form (which types, placement dirs, scope) reaches the prompt via the
|
|
330
|
+
// seeded qa digest, so these never restate the form values.
|
|
331
|
+
// ---------------------------------------------------------------------------
|
|
332
|
+
const ANALYST_STEERING = [
|
|
333
|
+
'You are a DOCUMENTATION GAP-AUDITOR for this initiative. For each documentation type the user',
|
|
334
|
+
'requested (see the planning interview above — READMEs, diagrams, in-source comments, business',
|
|
335
|
+
'rules), inventory what documentation already exists across every in-scope service and module,',
|
|
336
|
+
'then compare it against the actual implementation and classify each as MISSING, STALE (present',
|
|
337
|
+
'but out of date with the code) or ADEQUATE.',
|
|
338
|
+
'',
|
|
339
|
+
'- Ground every finding in a concrete path (the file/module/service it concerns) — no vague',
|
|
340
|
+
' "docs could be improved". Note where docs already live so the plan reuses that home.',
|
|
341
|
+
'- For in-source comments, identify the modules whose logic is hardest to follow and least',
|
|
342
|
+
' commented; for business rules, the distinct domain areas.',
|
|
343
|
+
'- Respect the requested scope and placement directories from the interview. Your analysis is the',
|
|
344
|
+
' audit the planner turns into concrete, per-service items — make it specific and complete.',
|
|
345
|
+
].join('\n');
|
|
346
|
+
const PLANNER_STEERING = [
|
|
347
|
+
'Build the plan around the required plan shape above, following the documentation audit. Include a',
|
|
348
|
+
'phase ONLY for a documentation type the user requested; omit the others (they are optional).',
|
|
349
|
+
'',
|
|
350
|
+
'Phase `foundations`: create or normalize any MISSING placement directories the later phases write',
|
|
351
|
+
'into — usually 0–1 items, and NONE when the directories already exist.',
|
|
352
|
+
'',
|
|
353
|
+
'Bounded item granularity per phase:',
|
|
354
|
+
'- `readme` — one item per in-scope service (its README lives beside the code; set the item’s',
|
|
355
|
+
' target path accordingly).',
|
|
356
|
+
'- `diagrams` — one item per in-scope service (architecture + the key flows), written under the',
|
|
357
|
+
' diagrams directory from the interview.',
|
|
358
|
+
'- `comments` — one item per worst under-documented module from the audit, capped at 5; name the',
|
|
359
|
+
' module to comment in the item description.',
|
|
360
|
+
'- `business-rules` — one item per distinct domain area, committed under the business-rules',
|
|
361
|
+
' directory from the interview.',
|
|
362
|
+
'',
|
|
363
|
+
'Write each item’s description to be self-sufficient (a spawned task runs it in isolation): what to',
|
|
364
|
+
'document, for which service/module, where it goes, and what the audit found missing or stale.',
|
|
365
|
+
].join('\n');
|
|
366
|
+
// ---------------------------------------------------------------------------
|
|
367
|
+
// Registration (the module-global preset seam — mirrors the `@cat-factory/gates` side-effect).
|
|
368
|
+
// ---------------------------------------------------------------------------
|
|
369
|
+
/** The docs-refresh preset registration bundle (descriptor + code hooks). */
|
|
370
|
+
export const DOCS_REFRESH_PRESET = {
|
|
371
|
+
descriptor: DESCRIPTOR,
|
|
372
|
+
detect,
|
|
373
|
+
seedPlan,
|
|
374
|
+
promptAdditions: {
|
|
375
|
+
'initiative-analyst': ANALYST_STEERING,
|
|
376
|
+
'initiative-planner': PLANNER_STEERING,
|
|
377
|
+
},
|
|
378
|
+
};
|
|
379
|
+
/**
|
|
380
|
+
* Register the docs-refresh preset. Idempotent (the registry replaces by id), so importing this
|
|
381
|
+
* module (which self-registers below, the `@cat-factory/gates` pattern) and calling this explicitly
|
|
382
|
+
* are safe to combine. Tests that `clearRegisteredInitiativePresets()` call this to restore it.
|
|
383
|
+
*/
|
|
384
|
+
export function registerDocsRefreshPreset() {
|
|
385
|
+
registerInitiativePreset(DOCS_REFRESH_PRESET);
|
|
386
|
+
}
|
|
387
|
+
// Side-effect registration: importing `@cat-factory/agents` (which re-exports from this module) is
|
|
388
|
+
// enough to make the pilot preset available in every deployment — no per-facade wiring, so the two
|
|
389
|
+
// runtimes cannot drift on it.
|
|
390
|
+
registerDocsRefreshPreset();
|
|
391
|
+
//# sourceMappingURL=preset.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preset.js","sourceRoot":"","sources":["../../../src/presets/docs-refresh/preset.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cat-factory/agents",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.44.0",
|
|
4
4
|
"description": "Agent catalog, routing, prompts and fragment library for the Agent Architecture Board.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -32,13 +32,13 @@
|
|
|
32
32
|
"handlebars": "^4.7.9",
|
|
33
33
|
"valibot": "^1.4.2",
|
|
34
34
|
"@cat-factory/contracts": "0.118.0",
|
|
35
|
-
"@cat-factory/kernel": "0.
|
|
36
|
-
"@cat-factory/prompt-fragments": "0.
|
|
35
|
+
"@cat-factory/kernel": "0.108.0",
|
|
36
|
+
"@cat-factory/prompt-fragments": "0.12.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
39
|
"typescript": "7.0.1-rc",
|
|
40
40
|
"vitest": "^4.1.9",
|
|
41
|
-
"@cat-factory/caching": "0.6.
|
|
41
|
+
"@cat-factory/caching": "0.6.8"
|
|
42
42
|
},
|
|
43
43
|
"scripts": {
|
|
44
44
|
"build": "tsc -b tsconfig.build.json",
|