@agent-teams/docs-protocol 0.3.2 → 0.4.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.
- package/CHANGELOG.md +18 -0
- package/README.md +68 -10
- package/dist/adapters/adoption-input.d.ts +0 -3
- package/dist/adapters/adoption-input.d.ts.map +1 -1
- package/dist/adapters/adoption-input.js +12 -5
- package/dist/adapters/adoption-input.js.map +1 -1
- package/dist/adapters/adoption-package-identity.d.ts.map +1 -1
- package/dist/adapters/adoption-package-identity.js +4 -3
- package/dist/adapters/adoption-package-identity.js.map +1 -1
- package/dist/adapters/docs-command-envelope-schema-validator.js +3 -3
- package/dist/adapters/docs-command-envelope-schema-validator.js.map +1 -1
- package/dist/adapters/docs-profile-schema-validator.d.ts.map +1 -1
- package/dist/adapters/docs-profile-schema-validator.js +4 -1
- package/dist/adapters/docs-profile-schema-validator.js.map +1 -1
- package/dist/adapters/foundation-docs-port.d.ts +8 -1
- package/dist/adapters/foundation-docs-port.d.ts.map +1 -1
- package/dist/adapters/foundation-docs-port.js +9 -1
- package/dist/adapters/foundation-docs-port.js.map +1 -1
- package/dist/adapters/node-adoption-inspector.d.ts +1 -1
- package/dist/adapters/node-adoption-inspector.d.ts.map +1 -1
- package/dist/adapters/node-adoption-inspector.js +63 -25
- package/dist/adapters/node-adoption-inspector.js.map +1 -1
- package/dist/adapters/node-profile-discovery.d.ts +7 -0
- package/dist/adapters/node-profile-discovery.d.ts.map +1 -0
- package/dist/adapters/node-profile-discovery.js +38 -0
- package/dist/adapters/node-profile-discovery.js.map +1 -0
- package/dist/adapters/node-profile-reader.d.ts +1 -1
- package/dist/adapters/node-profile-reader.d.ts.map +1 -1
- package/dist/adapters/node-profile-reader.js +9 -8
- package/dist/adapters/node-profile-reader.js.map +1 -1
- package/dist/application/docs-execution.d.ts +7 -0
- package/dist/application/docs-execution.d.ts.map +1 -0
- package/dist/application/docs-execution.js +49 -0
- package/dist/application/docs-execution.js.map +1 -0
- package/dist/application/docs-protocol.d.ts +10 -2
- package/dist/application/docs-protocol.d.ts.map +1 -1
- package/dist/application/docs-protocol.js +32 -45
- package/dist/application/docs-protocol.js.map +1 -1
- package/dist/community/bootstrap/index.d.ts +3 -0
- package/dist/community/bootstrap/index.d.ts.map +1 -0
- package/dist/community/bootstrap/index.js +2 -0
- package/dist/community/bootstrap/index.js.map +1 -0
- package/dist/community/bootstrap/portable-bootstrap-assets.d.ts +10 -0
- package/dist/community/bootstrap/portable-bootstrap-assets.d.ts.map +1 -0
- package/dist/community/bootstrap/portable-bootstrap-assets.js +183 -0
- package/dist/community/bootstrap/portable-bootstrap-assets.js.map +1 -0
- package/dist/community/bootstrap/portable-bootstrap.d.ts +48 -0
- package/dist/community/bootstrap/portable-bootstrap.d.ts.map +1 -0
- package/dist/community/bootstrap/portable-bootstrap.js +387 -0
- package/dist/community/bootstrap/portable-bootstrap.js.map +1 -0
- package/dist/community/context/community-query.d.ts +52 -0
- package/dist/community/context/community-query.d.ts.map +1 -0
- package/dist/community/context/community-query.js +306 -0
- package/dist/community/context/community-query.js.map +1 -0
- package/dist/community/context/index.d.ts +7 -0
- package/dist/community/context/index.d.ts.map +1 -0
- package/dist/community/context/index.js +5 -0
- package/dist/community/context/index.js.map +1 -0
- package/dist/community/context/llms-text.d.ts +37 -0
- package/dist/community/context/llms-text.d.ts.map +1 -0
- package/dist/community/context/llms-text.js +130 -0
- package/dist/community/context/llms-text.js.map +1 -0
- package/dist/community/context/minisearch-adapter.d.ts +8 -0
- package/dist/community/context/minisearch-adapter.d.ts.map +1 -0
- package/dist/community/context/minisearch-adapter.js +59 -0
- package/dist/community/context/minisearch-adapter.js.map +1 -0
- package/dist/community/context/ranked-search.d.ts +38 -0
- package/dist/community/context/ranked-search.d.ts.map +1 -0
- package/dist/community/context/ranked-search.js +118 -0
- package/dist/community/context/ranked-search.js.map +1 -0
- package/dist/composition/cli.d.ts +2 -4
- package/dist/composition/cli.d.ts.map +1 -1
- package/dist/composition/cli.js +236 -115
- package/dist/composition/cli.js.map +1 -1
- package/dist/composition/docs-cli-machine.d.ts +9 -0
- package/dist/composition/docs-cli-machine.d.ts.map +1 -0
- package/dist/composition/docs-cli-machine.js +130 -0
- package/dist/composition/docs-cli-machine.js.map +1 -0
- package/dist/composition/docs-human-renderer.d.ts +2 -0
- package/dist/composition/docs-human-renderer.d.ts.map +1 -1
- package/dist/composition/docs-human-renderer.js +18 -1
- package/dist/composition/docs-human-renderer.js.map +1 -1
- package/dist/composition/node-docs-api.d.ts +12 -0
- package/dist/composition/node-docs-api.d.ts.map +1 -1
- package/dist/composition/node-docs-api.js +14 -0
- package/dist/composition/node-docs-api.js.map +1 -1
- package/dist/composition/node-docs-bootstrap-api.d.ts +75 -0
- package/dist/composition/node-docs-bootstrap-api.d.ts.map +1 -0
- package/dist/composition/node-docs-bootstrap-api.js +97 -0
- package/dist/composition/node-docs-bootstrap-api.js.map +1 -0
- package/dist/domain/model-v2.d.ts +25 -1
- package/dist/domain/model-v2.d.ts.map +1 -1
- package/dist/domain/model-v3.d.ts +72 -0
- package/dist/domain/model-v3.d.ts.map +1 -0
- package/dist/domain/model-v3.js +2 -0
- package/dist/domain/model-v3.js.map +1 -0
- package/dist/domain/model.d.ts +5 -0
- package/dist/domain/model.d.ts.map +1 -1
- package/dist/domain/model.js +3 -0
- package/dist/domain/model.js.map +1 -1
- package/dist/domain/profile-policy.d.ts +4 -3
- package/dist/domain/profile-policy.d.ts.map +1 -1
- package/dist/domain/profile-policy.js +43 -13
- package/dist/domain/profile-policy.js.map +1 -1
- package/dist/index.d.ts +9 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/package.json +8 -4
- package/schemas/docs-protocol-command-envelope/v3.schema.json +529 -0
- package/schemas/docs-protocol-profile/v3.schema.json +49 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,23 @@
|
|
|
1
1
|
# @agent-teams/docs-protocol
|
|
2
2
|
|
|
3
|
+
## 0.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Updated dependencies [[`24c7b35`](https://github.com/agent-teams-ai/engineering-foundation/commit/24c7b355123cab25a8d143f29e48adb33874fbdf), [`24c7b35`](https://github.com/agent-teams-ai/engineering-foundation/commit/24c7b355123cab25a8d143f29e48adb33874fbdf)]:
|
|
8
|
+
- @agent-teams/engineering-foundation@0.21.0
|
|
9
|
+
|
|
10
|
+
## 0.4.0
|
|
11
|
+
|
|
12
|
+
### Minor Changes
|
|
13
|
+
|
|
14
|
+
- [#211](https://github.com/agent-teams-ai/engineering-foundation/pull/211) [`a0c4d37`](https://github.com/agent-teams-ai/engineering-foundation/commit/a0c4d373b291e3925f218f9233caa5d902b5a950) Thanks [@777genius](https://github.com/777genius)! - Add portable documentation adoption, bounded ranked agent context, automatic profile discovery, and a read-only MCP adapter for repositories using the open documentation protocol.
|
|
15
|
+
|
|
16
|
+
### Patch Changes
|
|
17
|
+
|
|
18
|
+
- [#213](https://github.com/agent-teams-ai/engineering-foundation/pull/213) [`6150e41`](https://github.com/agent-teams-ai/engineering-foundation/commit/6150e41a55886319d71bfc8db90c733e551ef1af) Thanks [@777genius](https://github.com/777genius)! - Qualify the exact public npm and pnpm installation workflow, package provenance,
|
|
19
|
+
release evidence, and optional read-only MCP transport for open-source consumers.
|
|
20
|
+
|
|
3
21
|
## 0.3.2
|
|
4
22
|
|
|
5
23
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
# `@agent-teams/docs-protocol`
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
3
|
+
A deterministic, repository-native documentation library and CLI for humans
|
|
4
|
+
and coding agents. It keeps Markdown/YAML as authority, provides safe
|
|
5
|
+
create-only authoring, advisory fuzzy search, bounded `llms.txt` context, and a
|
|
6
|
+
portable setup that does not require an Agent Teams managed repository.
|
|
6
7
|
|
|
7
|
-
The
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
The package is a thin application layer over the versioned mutation kernel in
|
|
9
|
+
`@agent-teams/engineering-foundation`. The optional read-only MCP transport is
|
|
10
|
+
published separately as `@agent-teams/docs-protocol-mcp`.
|
|
10
11
|
|
|
11
12
|
## Boundary
|
|
12
13
|
|
|
@@ -22,7 +23,58 @@ references, environment interpolation, or executable consumer code. Semantic
|
|
|
22
23
|
validator IDs are reported by `docs:info` and `docs:check`; this package never
|
|
23
24
|
executes them.
|
|
24
25
|
|
|
25
|
-
##
|
|
26
|
+
## Portable quick start
|
|
27
|
+
|
|
28
|
+
Use the [canonical community workflow](https://github.com/agent-teams-ai/engineering-foundation/blob/main/docs/reference/open-source-docs-protocol.md#install-one-exact-version)
|
|
29
|
+
to prove and install the exact qualified coordinate. It is the single authority
|
|
30
|
+
for versions, registry pinning, package-manager support, and optional MCP pairing.
|
|
31
|
+
|
|
32
|
+
Portable bootstrap apply and recovery are initially POSIX-only. Windows is
|
|
33
|
+
qualified for read-only CLI and MCP use of authority initialized on a supported
|
|
34
|
+
POSIX host, committed, and then cloned; local Windows bootstrap mutation is not
|
|
35
|
+
yet a support claim.
|
|
36
|
+
|
|
37
|
+
Preview setup without writing:
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
docs-protocol init --project-id example/widgets \
|
|
41
|
+
--owner documentation/team --dry-run --json
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
Review the returned files and digest, then repeat the same authority inputs:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
docs-protocol init --project-id example/widgets \
|
|
48
|
+
--owner documentation/team --apply \
|
|
49
|
+
--expect sha256:PLAN_DIGEST_FROM_PREVIEW --json
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
Bootstrap creates inert local profiles, a metadata schema, owners, Diataxis
|
|
53
|
+
templates and indexes, a documentation Skill, and one marker-bounded route in
|
|
54
|
+
`AGENTS.md`. It does not edit a package manifest, lockfile, workflow, or existing
|
|
55
|
+
create-only target. A changed preimage requires a fresh preview.
|
|
56
|
+
|
|
57
|
+
The generated `docs.config.yaml` is discovered automatically:
|
|
58
|
+
|
|
59
|
+
```bash
|
|
60
|
+
docs-protocol find "tenant isolation" --fuzzy
|
|
61
|
+
docs-protocol context "tenant isolation" --fuzzy --max-documents 12
|
|
62
|
+
docs-protocol new --type tutorial --id docs.tutorial.first-run \
|
|
63
|
+
--title "First run" --owner documentation/team \
|
|
64
|
+
--summary "Complete the first successful run." --dry-run
|
|
65
|
+
docs-protocol check
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
Use the same explicit `new` inputs with `--apply` only after reviewing the
|
|
69
|
+
preview. Fuzzy ranking and context are disposable advice; identity, metadata,
|
|
70
|
+
paths, collision checks, and writes always come from the canonical catalog.
|
|
71
|
+
The public Node API exposes the same info/find/context/new/check and portable
|
|
72
|
+
init plan/apply/recover behavior without a terminal.
|
|
73
|
+
|
|
74
|
+
See the [community workflow](https://github.com/agent-teams-ai/engineering-foundation/blob/main/docs/reference/open-source-docs-protocol.md)
|
|
75
|
+
for the complete safety contract.
|
|
76
|
+
|
|
77
|
+
## Managed Agent Teams commands
|
|
26
78
|
|
|
27
79
|
Install this tooling package at one exact version in `devDependencies`, never in
|
|
28
80
|
production `dependencies`. Map these scripts to `agent-teams-docs`:
|
|
@@ -36,9 +88,11 @@ docs:recover -> agent-teams-docs recover
|
|
|
36
88
|
docs:check -> agent-teams-docs check
|
|
37
89
|
```
|
|
38
90
|
|
|
39
|
-
|
|
40
|
-
`architecture/foundation/docs-protocol.yaml`.
|
|
41
|
-
|
|
91
|
+
Managed repositories use
|
|
92
|
+
`architecture/foundation/docs-protocol.yaml`. Portable repositories use
|
|
93
|
+
`docs.config.yaml`. The CLI discovers either path and fails closed when both
|
|
94
|
+
exist; override it with `--profile` and override the repository with
|
|
95
|
+
`--consumer`.
|
|
42
96
|
|
|
43
97
|
`new` requires exactly one of `--dry-run` or `--apply`. Preview never reserves
|
|
44
98
|
an ID or writes. Apply creates only the planned document and reports the exact
|
|
@@ -76,6 +130,10 @@ The JSON schemas are exported under `@agent-teams/docs-protocol/schemas/*`.
|
|
|
76
130
|
Machine output uses one JSON envelope with protocol ID/version and stable exit
|
|
77
131
|
codes: `0` success, `1` violation/conflict/recovery, `2` invalid input, `3`
|
|
78
132
|
execution failure, and `130` cancellation.
|
|
133
|
+
Published v1/v2 commands retain their existing envelope shapes. Portable
|
|
134
|
+
`init`, bounded `context`, and opt-in fuzzy `find` use the additive v3 envelope;
|
|
135
|
+
default exact `find` remains v2. Consumers must dispatch on `schemaVersion` and
|
|
136
|
+
validate against the matching exported schema.
|
|
79
137
|
Recovery is bound to the persisted transaction and exact installed Foundation
|
|
80
138
|
build, so it does not parse mutable authoring profiles before resuming.
|
|
81
139
|
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
export declare const MAX_MANIFEST_BYTES: number;
|
|
2
|
-
export declare const MAX_ROUTING_BYTES: number;
|
|
3
|
-
export declare const MAX_SKILL_BYTES: number;
|
|
4
1
|
export declare function readRealRegularText(path: string, maximumBytes: number): Promise<string>;
|
|
5
2
|
export declare function readContainedText(root: string, repositoryPath: string, maximumBytes: number): Promise<string>;
|
|
6
3
|
export declare function assertContainedAuthority(root: string, repositoryPath: string): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoption-input.d.ts","sourceRoot":"","sources":["../../src/adapters/adoption-input.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adoption-input.d.ts","sourceRoot":"","sources":["../../src/adapters/adoption-input.ts"],"names":[],"mappings":"AAoBA,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6B7F;AAED,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAKnH;AAED,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElG;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAQvE;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAKrG"}
|
|
@@ -3,9 +3,6 @@ import { lstat, open, realpath } from "node:fs/promises";
|
|
|
3
3
|
import { isAbsolute, relative, resolve, sep } from "node:path";
|
|
4
4
|
import { parseDocument } from "yaml";
|
|
5
5
|
const MAX_AUTHORITY_BYTES = 8 * 1024 * 1024;
|
|
6
|
-
export const MAX_MANIFEST_BYTES = 1024 * 1024;
|
|
7
|
-
export const MAX_ROUTING_BYTES = 64 * 1024;
|
|
8
|
-
export const MAX_SKILL_BYTES = 16 * 1024;
|
|
9
6
|
class AdoptionInputError extends Error {
|
|
10
7
|
constructor(message) {
|
|
11
8
|
super(message);
|
|
@@ -26,15 +23,25 @@ export async function readRealRegularText(path, maximumBytes) {
|
|
|
26
23
|
if (!before.isFile() || before.size > BigInt(maximumBytes)) {
|
|
27
24
|
throw new AdoptionInputError(`Input must be a regular file of at most ${maximumBytes} bytes.`);
|
|
28
25
|
}
|
|
29
|
-
const
|
|
26
|
+
const bytes = await handle.readFile();
|
|
30
27
|
const [after, pathState, finalPath] = await Promise.all([
|
|
31
28
|
handle.stat({ bigint: true }),
|
|
32
29
|
lstat(absolute, { bigint: true }),
|
|
33
30
|
realpath(absolute)
|
|
34
31
|
]);
|
|
35
|
-
if (!stable(before, after) || pathState.dev !== after.dev || pathState.ino !== after.ino || finalPath !== absolute ||
|
|
32
|
+
if (!stable(before, after) || pathState.dev !== after.dev || pathState.ino !== after.ino || finalPath !== absolute || bytes.byteLength !== Number(after.size)) {
|
|
36
33
|
throw new AdoptionInputError("Input path or contents changed while it was read.");
|
|
37
34
|
}
|
|
35
|
+
let source;
|
|
36
|
+
try {
|
|
37
|
+
source = new TextDecoder("utf-8", { fatal: true, ignoreBOM: true }).decode(bytes);
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
throw new AdoptionInputError("Input must be strict UTF-8 text.");
|
|
41
|
+
}
|
|
42
|
+
if (source.startsWith("\uFEFF") || source.includes("\u0000")) {
|
|
43
|
+
throw new AdoptionInputError("Input must not contain a UTF-8 BOM or NUL bytes.");
|
|
44
|
+
}
|
|
38
45
|
return source;
|
|
39
46
|
}
|
|
40
47
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoption-input.js","sourceRoot":"","sources":["../../src/adapters/adoption-input.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,MAAM,MAAM,CAAC;AAErC,MAAM,mBAAmB,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"adoption-input.js","sourceRoot":"","sources":["../../src/adapters/adoption-input.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoption-package-identity.d.ts","sourceRoot":"","sources":["../../src/adapters/adoption-package-identity.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"adoption-package-identity.d.ts","sourceRoot":"","sources":["../../src/adapters/adoption-package-identity.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,YAAY,+BAA+B,CAAC;AACzD,eAAO,MAAM,kBAAkB,wCAAwC,CAAC;AAexE,wBAAsB,8BAA8B,CAClD,IAAI,EAAE,MAAM,EACZ,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GACjD,OAAO,CAAC,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAgC5E"}
|
|
@@ -3,7 +3,8 @@ import { createRequire } from "node:module";
|
|
|
3
3
|
import { join, resolve } from "node:path";
|
|
4
4
|
import { fileURLToPath } from "node:url";
|
|
5
5
|
import { inspectDocumentAuthoringEnvironmentV1 } from "@agent-teams/engineering-foundation/document-authoring";
|
|
6
|
-
import {
|
|
6
|
+
import { DOCS_ADOPTION_MAX_MANIFEST_BYTES } from "../domain/model.js";
|
|
7
|
+
import { parseJsonRecord, readRealRegularText } from "./adoption-input.js";
|
|
7
8
|
const EXACT_VERSION = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$/u;
|
|
8
9
|
const DIGEST = /^sha256:[0-9a-f]{64}$/u;
|
|
9
10
|
export const DOCS_PACKAGE = "@agent-teams/docs-protocol";
|
|
@@ -25,8 +26,8 @@ export async function inspectAdoptionPackageIdentity(root, devDependencies) {
|
|
|
25
26
|
const consumerDocsManifestPath = resolvedManifest(root, DOCS_PACKAGE);
|
|
26
27
|
const consumerFoundationManifestPath = resolvedManifest(root, FOUNDATION_PACKAGE);
|
|
27
28
|
const [docsManifest, foundationManifest] = await Promise.all([
|
|
28
|
-
readRealRegularText(executingDocsManifestPath,
|
|
29
|
-
readRealRegularText(executingFoundationManifestPath,
|
|
29
|
+
readRealRegularText(executingDocsManifestPath, DOCS_ADOPTION_MAX_MANIFEST_BYTES).then(parseJsonRecord),
|
|
30
|
+
readRealRegularText(executingFoundationManifestPath, DOCS_ADOPTION_MAX_MANIFEST_BYTES).then(parseJsonRecord)
|
|
30
31
|
]);
|
|
31
32
|
const docsVersion = packageVersion(docsManifest, DOCS_PACKAGE);
|
|
32
33
|
const foundationVersion = packageVersion(foundationManifest, FOUNDATION_PACKAGE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adoption-package-identity.js","sourceRoot":"","sources":["../../src/adapters/adoption-package-identity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,qCAAqC,EAAE,MAAM,wDAAwD,CAAC;AAE/G,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"adoption-package-identity.js","sourceRoot":"","sources":["../../src/adapters/adoption-package-identity.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ async function validator(version) {
|
|
|
10
10
|
const schemaUrl = new URL(`../../schemas/docs-protocol-command-envelope/v${version}.schema.json`, import.meta.url);
|
|
11
11
|
const schema = JSON.parse(await readFile(schemaUrl, "utf8"));
|
|
12
12
|
const ajv = new Ajv2020({ allErrors: true, strict: true });
|
|
13
|
-
if (version === 2) {
|
|
13
|
+
if (version === 2 || version === 3) {
|
|
14
14
|
const [receiptSource, integrationSource] = await Promise.all([
|
|
15
15
|
readFile(new URL("../../schemas/docs-protocol-qualification-receipt/v2.schema.json", import.meta.url), "utf8"),
|
|
16
16
|
readFile(new URL("../../schemas/docs-consumer-integration-profile/v2.schema.json", import.meta.url), "utf8")
|
|
@@ -29,8 +29,8 @@ export async function assertDocsCommandEnvelopeSchema(value) {
|
|
|
29
29
|
const version = typeof value === "object" && value !== null && "schemaVersion" in value
|
|
30
30
|
? value.schemaVersion
|
|
31
31
|
: undefined;
|
|
32
|
-
if (version !== 1 && version !== 2) {
|
|
33
|
-
throw new TypeError("Command output must declare docs-protocol-command-envelope schemaVersion 1 or
|
|
32
|
+
if (version !== 1 && version !== 2 && version !== 3) {
|
|
33
|
+
throw new TypeError("Command output must declare docs-protocol-command-envelope schemaVersion 1, 2, or 3.");
|
|
34
34
|
}
|
|
35
35
|
const validate = await validator(version);
|
|
36
36
|
if (validate(value)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-command-envelope-schema-validator.js","sourceRoot":"","sources":["../../src/adapters/docs-command-envelope-schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAyB,MAAM,kBAAkB,CAAC;AAElE,MAAM,iBAAiB,GAAG,IAAI,GAAG,
|
|
1
|
+
{"version":3,"file":"docs-command-envelope-schema-validator.js","sourceRoot":"","sources":["../../src/adapters/docs-command-envelope-schema-validator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-profile-schema-validator.d.ts","sourceRoot":"","sources":["../../src/adapters/docs-profile-schema-validator.ts"],"names":[],"mappings":"AAuBA,wBAAsB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"docs-profile-schema-validator.d.ts","sourceRoot":"","sources":["../../src/adapters/docs-profile-schema-validator.ts"],"names":[],"mappings":"AAuBA,wBAAsB,+BAA+B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAenF"}
|
|
@@ -19,7 +19,10 @@ async function validator(version) {
|
|
|
19
19
|
return loading;
|
|
20
20
|
}
|
|
21
21
|
export async function assertDocsProtocolProfileSchema(value) {
|
|
22
|
-
const
|
|
22
|
+
const declared = typeof value === "object" && value !== null && "schemaVersion" in value
|
|
23
|
+
? value.schemaVersion
|
|
24
|
+
: undefined;
|
|
25
|
+
const version = declared === 2 ? 2 : declared === 3 ? 3 : 1;
|
|
23
26
|
const validate = await validator(version);
|
|
24
27
|
if (validate(value)) {
|
|
25
28
|
return;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"docs-profile-schema-validator.js","sourceRoot":"","sources":["../../src/adapters/docs-profile-schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAyB,MAAM,kBAAkB,CAAC;AAClE,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAqC,CAAC;AAEvE,KAAK,UAAU,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"docs-profile-schema-validator.js","sourceRoot":"","sources":["../../src/adapters/docs-profile-schema-validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,OAAO,EAAyB,MAAM,kBAAkB,CAAC;AAClE,OAAO,UAAU,MAAM,aAAa,CAAC;AAErC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAqC,CAAC;AAEvE,KAAK,UAAU,SAAS,CAAC,OAAkB;IACzC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAChD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAAA,OAAO,QAAQ,CAAC;IAAA,CAAC;IAC9C,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;QAC1B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,wCAAwC,OAAO,cAAc,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QAC1G,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAW,CAAC;QACvE,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3D,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxB,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC,CAAC,EAAE,CAAC;IACL,iBAAiB,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxC,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,+BAA+B,CAAC,KAAc;IAClE,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,eAAe,IAAI,KAAK;QACtF,CAAC,CAAE,KAAqC,CAAC,aAAa;QACtD,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,OAAO,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1C,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO;IACT,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC;SACrC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;SACX,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,GAAG,YAAY,IAAI,GAAG,IAAI,OAAO,IAAI,YAAY,EAAE,CAAC;SACvF,IAAI,CAAC,IAAI,CAAC;SACV,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAClB,MAAM,IAAI,gBAAgB,CAAC,iDAAiD,OAAO,KAAK,QAAQ,EAAE,CAAC,CAAC;AACtG,CAAC"}
|
|
@@ -1,10 +1,17 @@
|
|
|
1
1
|
import type { DocsFindDocument } from "../domain/model.js";
|
|
2
2
|
import type { FoundationDocsDescriptionV2, FoundationDocsPortV2 } from "../domain/model-v2.js";
|
|
3
|
-
|
|
3
|
+
import type { FoundationDocsPortV3 } from "../domain/model-v3.js";
|
|
4
|
+
export declare class NodeFoundationDocsPort implements FoundationDocsPortV3 {
|
|
4
5
|
inspectEnvironment(input: Parameters<FoundationDocsPortV2["inspectEnvironment"]>[0]): Promise<import("@agent-teams/engineering-foundation/document-authoring").DocumentEnvironmentInspection>;
|
|
5
6
|
describe(input: Parameters<FoundationDocsPortV2["describe"]>[0]): Promise<FoundationDocsDescriptionV2>;
|
|
6
7
|
buildCatalog(input: Parameters<FoundationDocsPortV2["buildCatalog"]>[0]): Promise<import("@agent-teams/engineering-foundation/document-authoring").DocumentationCatalogSnapshotV2>;
|
|
7
8
|
find(input: Parameters<FoundationDocsPortV2["find"]>[0]): Promise<readonly DocsFindDocument[]>;
|
|
9
|
+
findWithEvidence(input: Parameters<FoundationDocsPortV2["find"]>[0]): Promise<Readonly<{
|
|
10
|
+
catalogSemanticDigest: `sha256:${string}`;
|
|
11
|
+
catalogStatus: "complete" | "partial";
|
|
12
|
+
diagnostics: readonly import("@agent-teams/engineering-foundation/document-authoring").DocumentationCatalogDiagnostic[];
|
|
13
|
+
documents: readonly DocsFindDocument[];
|
|
14
|
+
}>>;
|
|
8
15
|
inspect(consumerRoot: string): Promise<import("@agent-teams/engineering-foundation/document-authoring").DocumentTransactionInspectionV2>;
|
|
9
16
|
plan(input: Parameters<FoundationDocsPortV2["plan"]>[0]): Promise<import("@agent-teams/engineering-foundation/document-authoring").DocumentPlanV2>;
|
|
10
17
|
apply(input: Parameters<FoundationDocsPortV2["apply"]>[0]): Promise<import("@agent-teams/engineering-foundation/document-authoring").DocumentReceiptV2>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-docs-port.d.ts","sourceRoot":"","sources":["../../src/adapters/foundation-docs-port.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"foundation-docs-port.d.ts","sourceRoot":"","sources":["../../src/adapters/foundation-docs-port.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EACV,gBAAgB,EACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,2BAA2B,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC/F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AA0BlE,qBAAa,sBAAuB,YAAW,oBAAoB;IACjE,kBAAkB,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAC,2GAKlF;IAEK,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,2BAA2B,CAAC,CA+B3G;IAEK,YAAY,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,4GAM5E;IAEK,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC,CAEnG;IAEK,gBAAgB,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;;;;;QAqBxE;IAED,OAAO,CAAC,YAAY,EAAE,MAAM,6GAE3B;IAED,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,4FAQtD;IAED,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,+FAMxD;IAED,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,qGAK5D;CACF"}
|
|
@@ -68,6 +68,9 @@ export class NodeFoundationDocsPort {
|
|
|
68
68
|
});
|
|
69
69
|
}
|
|
70
70
|
async find(input) {
|
|
71
|
+
return (await this.findWithEvidence(input)).documents;
|
|
72
|
+
}
|
|
73
|
+
async findWithEvidence(input) {
|
|
71
74
|
const base = await findDocumentationDocumentsV2({
|
|
72
75
|
consumerRoot: input.consumerRoot,
|
|
73
76
|
profilePath: input.profilePath,
|
|
@@ -82,7 +85,12 @@ export class NodeFoundationDocsPort {
|
|
|
82
85
|
},
|
|
83
86
|
...signalOption(input.signal)
|
|
84
87
|
});
|
|
85
|
-
return Object.freeze(
|
|
88
|
+
return Object.freeze({
|
|
89
|
+
catalogSemanticDigest: base.catalogSemanticDigest,
|
|
90
|
+
catalogStatus: base.catalogStatus,
|
|
91
|
+
diagnostics: base.diagnostics,
|
|
92
|
+
documents: Object.freeze(base.documents.map((entry) => projected(entry, "blocked_by")))
|
|
93
|
+
});
|
|
86
94
|
}
|
|
87
95
|
inspect(consumerRoot) {
|
|
88
96
|
return inspectDocumentTransactionV2(consumerRoot);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"foundation-docs-port.js","sourceRoot":"","sources":["../../src/adapters/foundation-docs-port.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,wBAAwB,EACxB,2BAA2B,EAC3B,kCAAkC,EAClC,kCAAkC,EAClC,4BAA4B,EAC5B,4BAA4B,EAC5B,qCAAqC,EACrC,2BAA2B,EAC3B,iCAAiC,EAGlC,MAAM,wDAAwD,CAAC;
|
|
1
|
+
{"version":3,"file":"foundation-docs-port.js","sourceRoot":"","sources":["../../src/adapters/foundation-docs-port.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type
|
|
1
|
+
import { type DocsAdoptionInspector, type DocsDiagnostic } from "../domain/model.js";
|
|
2
2
|
export declare class NodeDocsAdoptionInspector implements DocsAdoptionInspector {
|
|
3
3
|
inspect(input: Parameters<DocsAdoptionInspector["inspect"]>[0]): Promise<readonly DocsDiagnostic[]>;
|
|
4
4
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-adoption-inspector.d.ts","sourceRoot":"","sources":["../../src/adapters/node-adoption-inspector.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"node-adoption-inspector.d.ts","sourceRoot":"","sources":["../../src/adapters/node-adoption-inspector.ts"],"names":[],"mappings":"AAGA,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,cAAc,EACpB,MAAM,oBAAoB,CAAC;AA+E5B,qBAAa,yBAA0B,YAAW,qBAAqB;IAC/D,OAAO,CAAC,KAAK,EAAE,UAAU,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,SAAS,cAAc,EAAE,CAAC,CAsCxG;CACF"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { realpath } from "node:fs/promises";
|
|
2
2
|
import { resolve } from "node:path";
|
|
3
|
-
import {
|
|
3
|
+
import { DOCS_ADOPTION_MAX_MANIFEST_BYTES, DOCS_ADOPTION_MAX_ROUTING_BYTES, DOCS_ADOPTION_MAX_SKILL_BYTES } from "../domain/model.js";
|
|
4
|
+
import { assertContainedAuthority, parseJsonRecord, readContainedText, recordField } from "./adoption-input.js";
|
|
4
5
|
import { DOCS_PACKAGE, FOUNDATION_PACKAGE, inspectAdoptionPackageIdentity } from "./adoption-package-identity.js";
|
|
5
6
|
const COMMANDS = ["check", "doctor", "find", "info", "new", "recover"];
|
|
6
7
|
function diagnostic(subject, message) {
|
|
@@ -37,14 +38,47 @@ function inspectSkill(source) {
|
|
|
37
38
|
}
|
|
38
39
|
return diagnostics;
|
|
39
40
|
}
|
|
41
|
+
function inspectPortableSkill(source) {
|
|
42
|
+
if (source.includes("\r") || source !== source.normalize("NFC") || !source.endsWith("\n")) {
|
|
43
|
+
return ["Portable Skill must be NFC UTF-8 text with LF lines and one final newline."];
|
|
44
|
+
}
|
|
45
|
+
const lines = source.slice(0, -1).split("\n");
|
|
46
|
+
const diagnostics = [];
|
|
47
|
+
if (lines.length < 12 || lines.length > 80) {
|
|
48
|
+
diagnostics.push("Portable Skill must contain between 12 and 80 lines.");
|
|
49
|
+
}
|
|
50
|
+
const declarations = source.match(/agent-teams\.docs-protocol\/v[0-9]+/gu) ?? [];
|
|
51
|
+
if (declarations.length !== 1 || declarations[0] !== "agent-teams.docs-protocol/v1") {
|
|
52
|
+
diagnostics.push("Portable Skill must declare exactly agent-teams.docs-protocol/v1.");
|
|
53
|
+
}
|
|
54
|
+
const evidence = [
|
|
55
|
+
/docs-protocol find/u,
|
|
56
|
+
/docs-protocol new.*--dry-run/u,
|
|
57
|
+
/docs-protocol new.*--apply/u,
|
|
58
|
+
/(?=.*manual-required)(?=.*markdownLink)(?=.*indexPath)/u,
|
|
59
|
+
/docs-protocol context/u,
|
|
60
|
+
/docs-protocol check/u
|
|
61
|
+
];
|
|
62
|
+
let previous = -1;
|
|
63
|
+
for (const marker of evidence) {
|
|
64
|
+
const matches = lines.flatMap((line, index) => marker.test(line) ? [index] : []);
|
|
65
|
+
if (matches.length !== 1 || matches[0] <= previous) {
|
|
66
|
+
diagnostics.push("Portable Skill must contain unique ordered find, preview, apply, manual reachability, context, and check steps.");
|
|
67
|
+
break;
|
|
68
|
+
}
|
|
69
|
+
previous = matches[0];
|
|
70
|
+
}
|
|
71
|
+
return diagnostics;
|
|
72
|
+
}
|
|
40
73
|
function inspectAgentsRoute(source, skillPath) {
|
|
41
74
|
const expected = `Use [${skillPath}](${skillPath}) for documentation.`;
|
|
42
|
-
const
|
|
43
|
-
return
|
|
75
|
+
const occurrences = source.split("\n").filter((line) => line === expected).length;
|
|
76
|
+
return occurrences === 1 ? [] : [`AGENTS.md must contain exactly one route: ${expected}`];
|
|
44
77
|
}
|
|
45
78
|
export class NodeDocsAdoptionInspector {
|
|
46
79
|
async inspect(input) {
|
|
47
80
|
const diagnostics = [];
|
|
81
|
+
const policy = input.policy ?? "agent-teams-managed-v1";
|
|
48
82
|
let root = "";
|
|
49
83
|
try {
|
|
50
84
|
root = await realpath(resolve(input.consumerRoot));
|
|
@@ -52,38 +86,42 @@ export class NodeDocsAdoptionInspector {
|
|
|
52
86
|
catch {
|
|
53
87
|
return Object.freeze([diagnostic(input.consumerRoot, "Consumer root must be one accessible real directory.")]);
|
|
54
88
|
}
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
catch (error) {
|
|
60
|
-
diagnostics.push(diagnostic("package.json", `A bounded real strict JSON package manifest is required: ${error instanceof Error ? error.message : "invalid input"}`));
|
|
61
|
-
}
|
|
62
|
-
const scripts = recordField(manifest, "scripts");
|
|
63
|
-
for (const command of COMMANDS) {
|
|
64
|
-
const expected = `agent-teams-docs ${command} --consumer . --profile ${input.profilePath}`;
|
|
65
|
-
if (scripts[`docs:${command}`] !== expected) {
|
|
66
|
-
diagnostics.push(diagnostic(`package.json#scripts.docs:${command}`, `Expected exact script: ${expected}`));
|
|
89
|
+
if (policy === "agent-teams-managed-v1") {
|
|
90
|
+
let manifest = {};
|
|
91
|
+
try {
|
|
92
|
+
manifest = parseJsonRecord(await readContainedText(root, "package.json", DOCS_ADOPTION_MAX_MANIFEST_BYTES));
|
|
67
93
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
94
|
+
catch (error) {
|
|
95
|
+
diagnostics.push(diagnostic("package.json", `A bounded real strict JSON package manifest is required: ${error instanceof Error ? error.message : "invalid input"}`));
|
|
96
|
+
}
|
|
97
|
+
const scripts = recordField(manifest, "scripts");
|
|
98
|
+
for (const command of COMMANDS) {
|
|
99
|
+
const expected = `agent-teams-docs ${command} --consumer . --profile ${input.profilePath}`;
|
|
100
|
+
if (scripts[`docs:${command}`] !== expected) {
|
|
101
|
+
diagnostics.push(diagnostic(`package.json#scripts.docs:${command}`, `Expected exact script: ${expected}`));
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
const dependencies = recordField(manifest, "dependencies");
|
|
105
|
+
const devDependencies = recordField(manifest, "devDependencies");
|
|
106
|
+
for (const packageName of [DOCS_PACKAGE, FOUNDATION_PACKAGE]) {
|
|
107
|
+
if (dependencies[packageName] !== undefined) {
|
|
108
|
+
diagnostics.push(diagnostic("package.json#dependencies", `${packageName} is tooling-only and must not be a production dependency.`));
|
|
109
|
+
}
|
|
74
110
|
}
|
|
111
|
+
const packageDiagnostics = await inspectAdoptionPackageIdentity(root, devDependencies);
|
|
112
|
+
diagnostics.push(...packageDiagnostics.map(({ message, subject }) => diagnostic(subject, message)));
|
|
75
113
|
}
|
|
76
|
-
diagnostics.push(...(await inspectAdoptionPackageIdentity(root, devDependencies)).map(({ message, subject }) => diagnostic(subject, message)));
|
|
77
114
|
try {
|
|
78
|
-
const agents = await readContainedText(root, "AGENTS.md",
|
|
115
|
+
const agents = await readContainedText(root, "AGENTS.md", DOCS_ADOPTION_MAX_ROUTING_BYTES);
|
|
79
116
|
diagnostics.push(...inspectAgentsRoute(agents, input.skillPath).map((message) => diagnostic("AGENTS.md", message)));
|
|
80
117
|
}
|
|
81
118
|
catch (error) {
|
|
82
119
|
diagnostics.push(diagnostic("AGENTS.md", `AGENTS.md must be a bounded real file: ${error instanceof Error ? error.message : "invalid input"}`));
|
|
83
120
|
}
|
|
84
121
|
try {
|
|
85
|
-
const skill = await readContainedText(root, input.skillPath,
|
|
86
|
-
|
|
122
|
+
const skill = await readContainedText(root, input.skillPath, DOCS_ADOPTION_MAX_SKILL_BYTES);
|
|
123
|
+
const inspect = policy === "portable-v1" ? inspectPortableSkill : inspectSkill;
|
|
124
|
+
diagnostics.push(...inspect(skill).map((message) => diagnostic(input.skillPath, message)));
|
|
87
125
|
}
|
|
88
126
|
catch (error) {
|
|
89
127
|
diagnostics.push(diagnostic(input.skillPath, `Skill must be a bounded real file: ${error instanceof Error ? error.message : "invalid input"}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-adoption-inspector.js","sourceRoot":"","sources":["../../src/adapters/node-adoption-inspector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"node-adoption-inspector.js","sourceRoot":"","sources":["../../src/adapters/node-adoption-inspector.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const PORTABLE_DOCS_PROFILE_PATH = "docs.config.yaml";
|
|
2
|
+
export declare const LEGACY_AGENT_TEAMS_PROFILE_PATH = "architecture/foundation/docs-protocol.yaml";
|
|
3
|
+
export declare function discoverDocsProfilePath(input: {
|
|
4
|
+
readonly consumerRoot: string;
|
|
5
|
+
readonly explicitProfilePath?: string;
|
|
6
|
+
}): Promise<string>;
|
|
7
|
+
//# sourceMappingURL=node-profile-discovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-profile-discovery.d.ts","sourceRoot":"","sources":["../../src/adapters/node-profile-discovery.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,+BAA+B,+CAA+C,CAAC;AAY5F,wBAAsB,uBAAuB,CAAC,KAAK,EAAE;IACnD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC,GAAG,OAAO,CAAC,MAAM,CAAC,CAelB"}
|