agent-cfml-check 0.1.0 → 0.1.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/README.md +13 -8
- package/SPEC.md +6 -6
- package/dist/cli/index.js +3 -2
- package/dist/schema/types.d.ts +1 -1
- package/dist/schema/types.js +1 -1
- package/package.json +11 -2
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## Current status
|
|
6
6
|
|
|
7
|
-
Version `0.1.
|
|
7
|
+
Version `0.1.1` contains the first feasibility slice plus executable schema validation, package exports, and Agent onboarding. The prior `agent-cfml-check@0.1.0` publication predates these additions. The current implementation is verified for:
|
|
8
8
|
|
|
9
9
|
- paired CFML tag nesting;
|
|
10
10
|
- `cfelse` and `cfelseif` ownership and ordering;
|
|
@@ -17,14 +17,17 @@ Version `0.1.0` contains the first feasibility slice. The current implementation
|
|
|
17
17
|
- explicit-root path safety, source stability checks, input validation, output limits, nesting limits, finding limits, and time limits;
|
|
18
18
|
- deterministic JSON and text CLI output.
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
Local verification before this documentation update:
|
|
21
21
|
|
|
22
|
-
- `npm test`:
|
|
22
|
+
- `npm test`: 22/22 passed;
|
|
23
23
|
- `npm run typecheck`: passed;
|
|
24
24
|
- `npm pack --dry-run --json`: passed;
|
|
25
|
-
- capabilities, valid-fixture, and misnested-fixture CLI checks: passed
|
|
25
|
+
- capabilities, valid-fixture, and misnested-fixture CLI checks: passed;
|
|
26
|
+
- temporary packed-install CLI and library import smoke checks: passed;
|
|
27
|
+
- targeted Lucee `6.2.2.91` execution probe: passed;
|
|
28
|
+
- Ubuntu WSL Node `18.19.1` `npm ci`, tests, and typecheck: passed.
|
|
26
29
|
|
|
27
|
-
|
|
30
|
+
The prior npm publication of `agent-cfml-check@0.1.0` is immutable and predates this release's schema, package-export, and documentation updates. This release targets `agent-cfml-check@0.1.1`; authenticated registry publication/readback is the final release step. This is not a complete CFML parser or evidence of Adobe ColdFusion compatibility. A targeted Lucee `6.2.2.91` probe and an Ubuntu WSL Node `18.19.1` clean dependency install/test run pass; these do not establish a full engine matrix. Hub lifecycle, canonical ownership, admission, and Adobe compatibility remain outside the current verified evidence.
|
|
28
31
|
|
|
29
32
|
## Install and use
|
|
30
33
|
|
|
@@ -38,7 +41,7 @@ node dist/cli/index.js check --root . fixtures/valid.cfm --json
|
|
|
38
41
|
node dist/cli/index.js check --root . fixtures/misnested.cfm --json
|
|
39
42
|
```
|
|
40
43
|
|
|
41
|
-
The package requires Node.js `>=18.18.0`. It has no runtime npm dependencies; TypeScript and Node.js type definitions are development dependencies.
|
|
44
|
+
The package requires Node.js `>=18.18.0`. It has no runtime npm dependencies; Ajv, TypeScript, and Node.js type definitions are development dependencies. The package exposes `dist/index.js` and `dist/index.d.ts` through `main`, `types`, and `exports`; temporary packed-install CLI and library import smoke checks pass.
|
|
42
45
|
|
|
43
46
|
The CLI supports:
|
|
44
47
|
|
|
@@ -67,8 +70,10 @@ The supported profile is `cfml-structure-v1`. Unknown/custom/imported tags, opti
|
|
|
67
70
|
- `src/cli/index.ts`: CLI argument parsing and rendering;
|
|
68
71
|
- `schema/`: JSON Schema for result envelopes;
|
|
69
72
|
- `fixtures/`: valid and misnested examples;
|
|
70
|
-
- `test/`: implementation and
|
|
73
|
+
- `test/`: implementation, CLI, and package-surface tests;
|
|
74
|
+
- `skills/agent-cfml-check/SKILL.md`: repository-local Agent usage workflow;
|
|
75
|
+
- `.github/workflows/ci.yml`: Node 18/20/22 CI and CLI smoke checks;
|
|
71
76
|
- `dist/`: generated package output;
|
|
72
77
|
- `DESIGN.md`, `EPIC.md`, `ROADMAP.md`, `TASK.md`, `GOAL.md`, `PROGRESS.md`, `GOAL_PROMPT.md`, `CHANGELOG.md`: repository design, planning, status, and maintenance documents.
|
|
73
78
|
|
|
74
|
-
`package.json` currently publishes `dist`, `README.md`, `SPEC.md`, `schema`, and `fixtures`; the design, planning, progress, goal, prompt, and
|
|
79
|
+
`package.json` currently publishes `dist`, `README.md`, `SPEC.md`, `schema`, and `fixtures`; the design, planning, progress, goal, prompt, changelog, and Agent Skill documents remain repository-maintainer documentation. The repository exposes the TypeScript library through `main`, `types`, and `exports`, with package-surface and packed-install tests. The release package version is `0.1.1`.
|
package/SPEC.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Agent CFML Check Specification
|
|
2
2
|
|
|
3
|
-
**Status:** frozen feasibility contract for implementation baseline `
|
|
4
|
-
**Tool version:** `0.1.
|
|
3
|
+
**Status:** frozen feasibility contract for implementation baseline `c76b8be`, extended by release hardening
|
|
4
|
+
**Tool version:** `0.1.1`
|
|
5
5
|
**Profile:** `cfml-structure-v1`
|
|
6
6
|
**Envelope schema:** `schema/agent-cfml-check-result-v1.schema.json`
|
|
7
7
|
|
|
@@ -22,11 +22,11 @@ agent-cfml-check check --root <directory> <file> [--json] [--pretty]
|
|
|
22
22
|
|
|
23
23
|
`capabilities` reports the profile, operations, extensions, tag catalogue, effective default limits, and exclusions. The CLI does not accept a file, root, or check-limit override for this operation.
|
|
24
24
|
|
|
25
|
-
`check` requires exactly one explicit root and one `.cfm` or `.cfc` file. `--pretty` requires `--json`. `--help` prints usage and `--version` prints `0.1.
|
|
25
|
+
`check` requires exactly one explicit root and one `.cfm` or `.cfc` file. `--pretty` requires `--json`. `--help` prints usage and `--version` prints `0.1.1`; neither may be combined with other options.
|
|
26
26
|
|
|
27
27
|
### TypeScript interface
|
|
28
28
|
|
|
29
|
-
`src/index.ts` exports `capabilities`, `checkFile`, `DEFAULT_LIMITS`, `HARD_LIMITS`, `normalizeLimits`, and schema types.
|
|
29
|
+
`src/index.ts` exports `capabilities`, `checkFile`, `DEFAULT_LIMITS`, `HARD_LIMITS`, `normalizeLimits`, and schema types. Repository package metadata declares `main: "./dist/index.js"`, `types: "./dist/index.d.ts"`, and an import/types `exports` map. Package-surface tests and a temporary packed-install CLI/library smoke check verify the current `0.1.1` artifact.
|
|
30
30
|
|
|
31
31
|
The TypeScript `capabilities(limitsInput)` API may receive limit overrides, while the CLI `capabilities` operation rejects them.
|
|
32
32
|
|
|
@@ -111,6 +111,6 @@ JSON mode emits one envelope on stdout; failure diagnostics are also written to
|
|
|
111
111
|
|
|
112
112
|
## 9. Evidence boundary
|
|
113
113
|
|
|
114
|
-
The profile does not validate full CFML grammar, expression/type/runtime semantics, HTML, SQL, include expansion, directory/project context, Lucee/Adobe execution, unknown/custom/imported tags, or CFML tag islands inside `cfscript`.
|
|
114
|
+
The profile does not validate full CFML grammar, expression/type/runtime semantics, HTML, SQL, include expansion, directory/project context, Lucee/Adobe execution, unknown/custom/imported tags, or CFML tag islands inside `cfscript`. The `agent-cfml-check@0.1.1` CLI package is prepared for publication; authenticated npm registry readback remains required. Repository package export metadata, executable schema validation, and temporary packed-install verification are complete. A targeted Lucee `6.2.2.91` probe and Ubuntu WSL Node `18.19.1` verification pass, but they do not establish a full engine matrix. Adobe ColdFusion, Hub lifecycle, canonical ownership/admission, and registry parity remain outside current verified evidence.
|
|
115
115
|
|
|
116
|
-
The repository tests cover CF-01 through CF-13, pure-script `.cfc` handling,
|
|
116
|
+
The repository tests cover CF-01 through CF-13, pure-script `.cfc` handling, three CLI behaviors, and the package export surface. Current local evidence is 22/22 tests, typecheck pass, package dry-run pass, Windows CLI smoke checks, temporary packed-install CLI/library smoke checks, and JSON Schema validation. The prior immutable `0.1.0` artifact predates this release hardening; `0.1.1` registry readback remains required. Full Lucee/Adobe engine comparison, canonical Hub admission, and registry parity remain pending.
|
package/dist/cli/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import { capabilities, checkFile } from "../core/checker.js";
|
|
3
3
|
import { DEFAULT_LIMITS } from "../core/limits.js";
|
|
4
4
|
import { ToolFailure } from "../schema/errors.js";
|
|
5
|
+
import { TOOL_ID, TOOL_VERSION } from "../schema/types.js";
|
|
5
6
|
import { pathToFileURL } from "node:url";
|
|
6
7
|
import path from "node:path";
|
|
7
8
|
const HELP = `agent-cfml-check — deterministic, read-only structural checks for a bounded CFML subset
|
|
@@ -121,7 +122,7 @@ export function main(argv = process.argv.slice(2)) {
|
|
|
121
122
|
return 0;
|
|
122
123
|
}
|
|
123
124
|
if (args.version) {
|
|
124
|
-
process.stdout.write(`${
|
|
125
|
+
process.stdout.write(`${TOOL_VERSION}\n`);
|
|
125
126
|
return 0;
|
|
126
127
|
}
|
|
127
128
|
const result = args.operation === "capabilities"
|
|
@@ -140,7 +141,7 @@ export function main(argv = process.argv.slice(2)) {
|
|
|
140
141
|
const failure = error instanceof ToolFailure ? error : new ToolFailure("INTERNAL_ERROR", "The CLI failed without a safe result", 1);
|
|
141
142
|
const envelope = {
|
|
142
143
|
schema_version: "1.0.0",
|
|
143
|
-
tool: { id:
|
|
144
|
+
tool: { id: TOOL_ID, version: TOOL_VERSION },
|
|
144
145
|
status: "error",
|
|
145
146
|
complete: false,
|
|
146
147
|
data: null,
|
package/dist/schema/types.d.ts
CHANGED
package/dist/schema/types.js
CHANGED
package/package.json
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-cfml-check",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "Deterministic, read-only structural checks for a bounded CFML subset.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
|
+
"main": "./dist/index.js",
|
|
8
|
+
"types": "./dist/index.d.ts",
|
|
9
|
+
"exports": {
|
|
10
|
+
".": {
|
|
11
|
+
"types": "./dist/index.d.ts",
|
|
12
|
+
"import": "./dist/index.js"
|
|
13
|
+
}
|
|
14
|
+
},
|
|
7
15
|
"engines": {
|
|
8
16
|
"node": ">=18.18.0"
|
|
9
17
|
},
|
|
@@ -20,11 +28,12 @@
|
|
|
20
28
|
"scripts": {
|
|
21
29
|
"typecheck": "tsc -p tsconfig.json --noEmit",
|
|
22
30
|
"build": "tsc -p tsconfig.build.json",
|
|
23
|
-
"test": "npm run build && tsc -p tsconfig.test.json && node --test .test-dist/test/check.test.js .test-dist/test/cli.test.js",
|
|
31
|
+
"test": "npm run build && tsc -p tsconfig.test.json && node --test .test-dist/test/check.test.js .test-dist/test/cli.test.js .test-dist/test/package.test.js .test-dist/test/schema.test.js",
|
|
24
32
|
"prepack": "npm run build"
|
|
25
33
|
},
|
|
26
34
|
"devDependencies": {
|
|
27
35
|
"@types/node": "^22.10.0",
|
|
36
|
+
"ajv": "^8.20.0",
|
|
28
37
|
"typescript": "^5.7.0"
|
|
29
38
|
}
|
|
30
39
|
}
|