@squads-sh/validator 0.1.1 → 0.2.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/adapters/filesystem.d.ts +8 -0
- package/dist/adapters/filesystem.d.ts.map +1 -1
- package/dist/adapters/filesystem.js +16 -2
- package/dist/adapters/filesystem.js.map +1 -1
- package/dist/categories/agents.js +15 -16
- package/dist/categories/agents.js.map +1 -1
- package/dist/categories/structure.d.ts +1 -1
- package/dist/categories/structure.js +3 -3
- package/dist/categories/structure.js.map +1 -1
- package/dist/fixer.d.ts +23 -0
- package/dist/fixer.d.ts.map +1 -0
- package/dist/fixer.js +377 -0
- package/dist/fixer.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -2
- package/dist/index.js.map +1 -1
- package/dist/scoring.d.ts +4 -3
- package/dist/scoring.d.ts.map +1 -1
- package/dist/scoring.js +8 -4
- package/dist/scoring.js.map +1 -1
- package/dist/utils/enums.d.ts +1 -1
- package/dist/utils/enums.d.ts.map +1 -1
- package/dist/utils/enums.js +9 -1
- package/dist/utils/enums.js.map +1 -1
- package/package.json +7 -7
|
@@ -8,4 +8,12 @@ import type { FileTree } from "../types.js";
|
|
|
8
8
|
* @returns FileTree ready for validateSquad()
|
|
9
9
|
*/
|
|
10
10
|
export declare function buildFileTreeFromFS(dirPath: string): Promise<FileTree>;
|
|
11
|
+
/**
|
|
12
|
+
* Write a fixed FileTree back to disk.
|
|
13
|
+
* Only writes files that exist in the FileTree (does not delete missing files).
|
|
14
|
+
*
|
|
15
|
+
* @param dirPath Absolute path to the squad directory
|
|
16
|
+
* @param fileTree FileTree with fixed contents
|
|
17
|
+
*/
|
|
18
|
+
export declare function writeFileTreeToFS(dirPath: string, fileTree: FileTree): Promise<void>;
|
|
11
19
|
//# sourceMappingURL=filesystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../src/adapters/filesystem.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAI5E"}
|
|
1
|
+
{"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../src/adapters/filesystem.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAI5E;AAID;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,QAAQ,GACjB,OAAO,CAAC,IAAI,CAAC,CAMf"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { readFile, readdir } from "node:fs/promises";
|
|
2
|
-
import { join, relative } from "node:path";
|
|
1
|
+
import { readFile, readdir, writeFile, mkdir } from "node:fs/promises";
|
|
2
|
+
import { join, relative, dirname } from "node:path";
|
|
3
3
|
/**
|
|
4
4
|
* Build a FileTree from a local filesystem directory.
|
|
5
5
|
* Recursively reads all files and returns a Map<relativePath, content>.
|
|
@@ -14,6 +14,20 @@ export async function buildFileTreeFromFS(dirPath) {
|
|
|
14
14
|
return fileTree;
|
|
15
15
|
}
|
|
16
16
|
const TEXT_EXTENSIONS = new Set([".yaml", ".yml", ".md", ".json", ".txt"]);
|
|
17
|
+
/**
|
|
18
|
+
* Write a fixed FileTree back to disk.
|
|
19
|
+
* Only writes files that exist in the FileTree (does not delete missing files).
|
|
20
|
+
*
|
|
21
|
+
* @param dirPath Absolute path to the squad directory
|
|
22
|
+
* @param fileTree FileTree with fixed contents
|
|
23
|
+
*/
|
|
24
|
+
export async function writeFileTreeToFS(dirPath, fileTree) {
|
|
25
|
+
for (const [relativePath, content] of fileTree) {
|
|
26
|
+
const fullPath = join(dirPath, relativePath);
|
|
27
|
+
await mkdir(dirname(fullPath), { recursive: true });
|
|
28
|
+
await writeFile(fullPath, content, "utf-8");
|
|
29
|
+
}
|
|
30
|
+
}
|
|
17
31
|
async function walkDir(basePath, currentPath, fileTree) {
|
|
18
32
|
const entries = await readdir(currentPath, { withFileTypes: true });
|
|
19
33
|
for (const entry of entries) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/adapters/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../src/adapters/filesystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,OAAe;IACvD,MAAM,QAAQ,GAAa,IAAI,GAAG,EAAE,CAAC;IACrC,MAAM,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1C,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAE3E;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAAe,EACf,QAAkB;IAElB,KAAK,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC7C,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACpD,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CACpB,QAAgB,EAChB,WAAmB,EACnB,QAAkB;IAElB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEpE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE/C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,2CAA2C;YAC3C,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;gBAAE,SAAS;YAC1E,MAAM,OAAO,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC9C,CAAC;aAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;YAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAExC,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YACtE,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClD,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACtC,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -169,23 +169,22 @@ export function validateAgents(fileTree) {
|
|
|
169
169
|
file,
|
|
170
170
|
});
|
|
171
171
|
}
|
|
172
|
-
// communication.tone
|
|
172
|
+
// communication.tone (optional — auto-fixer can add a default)
|
|
173
173
|
const comm = personaBlock["communication"];
|
|
174
|
-
if (
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
});
|
|
174
|
+
if (comm && comm["tone"] && typeof comm["tone"] === "string") {
|
|
175
|
+
// Accept compound tones like "strategic, decisive, clear"
|
|
176
|
+
// Check if at least one known tone is present
|
|
177
|
+
const toneValue = comm["tone"];
|
|
178
|
+
const parts = toneValue.split(/,\s*/).map((t) => t.trim().toLowerCase());
|
|
179
|
+
const hasKnownTone = parts.some((t) => TONES.has(t));
|
|
180
|
+
if (!hasKnownTone) {
|
|
181
|
+
findings.push({
|
|
182
|
+
severity: "warning",
|
|
183
|
+
category: CAT,
|
|
184
|
+
message: `'persona_profile.communication.tone' has no recognized value: "${toneValue}"`,
|
|
185
|
+
file,
|
|
186
|
+
});
|
|
187
|
+
}
|
|
189
188
|
}
|
|
190
189
|
}
|
|
191
190
|
// Validate greeting_levels
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/categories/agents.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/categories/agents.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,8 +6,8 @@ import type { FileTree, ValidationFinding, ParsedManifest } from "../types.js";
|
|
|
6
6
|
* Validates:
|
|
7
7
|
* - agents/ directory exists with at least 1 .md file
|
|
8
8
|
* - tasks/ directory exists (warning if missing)
|
|
9
|
-
* - workflows/ directory exists (warning if missing)
|
|
10
9
|
* - config/ directory exists (warning if missing)
|
|
10
|
+
* - workflows/ directory is fully optional (no warning)
|
|
11
11
|
* - Each file listed in components.* exists in the FileTree
|
|
12
12
|
*/
|
|
13
13
|
export declare function validateStructure(fileTree: FileTree, manifest: ParsedManifest | null): ValidationFinding[];
|
|
@@ -6,8 +6,8 @@ const CAT = "structure";
|
|
|
6
6
|
* Validates:
|
|
7
7
|
* - agents/ directory exists with at least 1 .md file
|
|
8
8
|
* - tasks/ directory exists (warning if missing)
|
|
9
|
-
* - workflows/ directory exists (warning if missing)
|
|
10
9
|
* - config/ directory exists (warning if missing)
|
|
10
|
+
* - workflows/ directory is fully optional (no warning)
|
|
11
11
|
* - Each file listed in components.* exists in the FileTree
|
|
12
12
|
*/
|
|
13
13
|
export function validateStructure(fileTree, manifest) {
|
|
@@ -27,8 +27,8 @@ export function validateStructure(fileTree, manifest) {
|
|
|
27
27
|
message: "agents/ directory must contain at least one .md file",
|
|
28
28
|
});
|
|
29
29
|
}
|
|
30
|
-
// Optional directories (warnings)
|
|
31
|
-
for (const dir of ["tasks", "
|
|
30
|
+
// Optional directories (warnings — only for tasks/ and config/, not workflows/)
|
|
31
|
+
for (const dir of ["tasks", "config"]) {
|
|
32
32
|
const hasFiles = [...fileTree.keys()].some((p) => p.startsWith(`${dir}/`));
|
|
33
33
|
if (!hasFiles) {
|
|
34
34
|
findings.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../src/categories/structure.ts"],"names":[],"mappings":"AAEA,MAAM,GAAG,GAAG,WAAoB,CAAC;AAEjC;;;;;;;;;;GAUG;AACH,MAAM,UAAU,iBAAiB,CAC/B,QAAkB,EAClB,QAA+B;IAE/B,MAAM,QAAQ,GAAwB,EAAE,CAAC;IAEzC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,YAAY;YAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,0BAA0B;IAC1B,MAAM,UAAU,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CACpD,CAAC;IACF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,OAAO;YACjB,QAAQ,EAAE,GAAG;YACb,OAAO,EAAE,sDAAsD;SAChE,CAAC,CAAC;IACL,CAAC;IAED,
|
|
1
|
+
{"version":3,"file":"structure.js","sourceRoot":"","sources":["../../src/categories/structure.ts"],"names":[],"mappings":"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"}
|
package/dist/fixer.d.ts
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { FileTree } from "./types.js";
|
|
2
|
+
export interface FixResult {
|
|
3
|
+
/** Updated file tree with fixed files */
|
|
4
|
+
fileTree: FileTree;
|
|
5
|
+
/** Summary of changes made */
|
|
6
|
+
changes: FixChange[];
|
|
7
|
+
/** Total files analyzed */
|
|
8
|
+
filesAnalyzed: number;
|
|
9
|
+
/** Total files modified */
|
|
10
|
+
filesModified: number;
|
|
11
|
+
}
|
|
12
|
+
export interface FixChange {
|
|
13
|
+
file: string;
|
|
14
|
+
description: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Auto-fix common validation issues in a squad FileTree.
|
|
18
|
+
* Returns a new FileTree with fixes applied + a change log.
|
|
19
|
+
*
|
|
20
|
+
* This is isomorphic — works in Node.js, browsers, Deno.
|
|
21
|
+
*/
|
|
22
|
+
export declare function fixSquad(fileTree: FileTree): FixResult;
|
|
23
|
+
//# sourceMappingURL=fixer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixer.d.ts","sourceRoot":"","sources":["../src/fixer.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAoC3C,MAAM,WAAW,SAAS;IACxB,yCAAyC;IACzC,QAAQ,EAAE,QAAQ,CAAC;IACnB,8BAA8B;IAC9B,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,2BAA2B;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,2BAA2B;IAC3B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CA6OtD"}
|
package/dist/fixer.js
ADDED
|
@@ -0,0 +1,377 @@
|
|
|
1
|
+
import yaml from "js-yaml";
|
|
2
|
+
import { ARCHETYPES, RESPONSAVEL_TYPES, ATOMIC_LAYERS } from "./utils/enums.js";
|
|
3
|
+
import { FRONTMATTER_BLOCK, CAMEL_CASE_PAREN } from "./utils/patterns.js";
|
|
4
|
+
/** Map of non-standard archetype values to valid ones */
|
|
5
|
+
const ARCHETYPE_MAP = {
|
|
6
|
+
Strategist: "Builder",
|
|
7
|
+
Connector: "Flow_Master",
|
|
8
|
+
Investigator: "Guardian",
|
|
9
|
+
Orchestrator: "Balancer",
|
|
10
|
+
strategist: "Builder",
|
|
11
|
+
connector: "Flow_Master",
|
|
12
|
+
investigator: "Guardian",
|
|
13
|
+
orchestrator: "Balancer",
|
|
14
|
+
builder: "Builder",
|
|
15
|
+
guardian: "Guardian",
|
|
16
|
+
balancer: "Balancer",
|
|
17
|
+
flow_master: "Flow_Master",
|
|
18
|
+
};
|
|
19
|
+
/** Map of non-standard responsavel_type values to valid ones */
|
|
20
|
+
const RESPONSAVEL_TYPE_MAP = {
|
|
21
|
+
agent: "Agente",
|
|
22
|
+
agente: "Agente",
|
|
23
|
+
worker: "Worker",
|
|
24
|
+
humano: "Humano",
|
|
25
|
+
human: "Humano",
|
|
26
|
+
clone: "Clone",
|
|
27
|
+
};
|
|
28
|
+
const DEFAULT_TONE = "professional, collaborative";
|
|
29
|
+
const DEFAULT_GREETING_LEVELS = {
|
|
30
|
+
brief: "Agent ready.",
|
|
31
|
+
standard: "Agent ready to help.",
|
|
32
|
+
detailed: "Agent ready with full context.",
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Auto-fix common validation issues in a squad FileTree.
|
|
36
|
+
* Returns a new FileTree with fixes applied + a change log.
|
|
37
|
+
*
|
|
38
|
+
* This is isomorphic — works in Node.js, browsers, Deno.
|
|
39
|
+
*/
|
|
40
|
+
export function fixSquad(fileTree) {
|
|
41
|
+
const fixed = new Map(fileTree);
|
|
42
|
+
const changes = [];
|
|
43
|
+
let filesAnalyzed = 0;
|
|
44
|
+
let filesModified = 0;
|
|
45
|
+
// Collect agent identity for task cross-reference fixing
|
|
46
|
+
const agentNameById = new Map();
|
|
47
|
+
const allAgentRefs = new Set();
|
|
48
|
+
// --- Pass 1: Fix agents ---
|
|
49
|
+
const agentFiles = [...fixed.keys()].filter((p) => p.startsWith("agents/") && p.endsWith(".md"));
|
|
50
|
+
for (const file of agentFiles) {
|
|
51
|
+
filesAnalyzed++;
|
|
52
|
+
const original = fixed.get(file);
|
|
53
|
+
let content = original;
|
|
54
|
+
// Fix: convert yaml code fence to frontmatter
|
|
55
|
+
content = convertCodeFenceToFrontmatter(content);
|
|
56
|
+
if (content !== original) {
|
|
57
|
+
changes.push({ file, description: "Converted YAML code fence to frontmatter block" });
|
|
58
|
+
}
|
|
59
|
+
// Parse frontmatter
|
|
60
|
+
const fmMatch = content.match(FRONTMATTER_BLOCK);
|
|
61
|
+
if (!fmMatch || !fmMatch[1]) {
|
|
62
|
+
fixed.set(file, content);
|
|
63
|
+
if (content !== original)
|
|
64
|
+
filesModified++;
|
|
65
|
+
continue;
|
|
66
|
+
}
|
|
67
|
+
let fmBlock = fmMatch[1];
|
|
68
|
+
const bodyAfterFm = content.slice(fmMatch[0].length);
|
|
69
|
+
let fmChanged = false;
|
|
70
|
+
// Parse YAML to inspect values
|
|
71
|
+
let parsed = null;
|
|
72
|
+
try {
|
|
73
|
+
parsed = yaml.load(fmBlock);
|
|
74
|
+
}
|
|
75
|
+
catch {
|
|
76
|
+
// Invalid YAML — skip fixes
|
|
77
|
+
}
|
|
78
|
+
if (parsed) {
|
|
79
|
+
// Collect agent identity
|
|
80
|
+
const agentBlock = parsed["agent"];
|
|
81
|
+
if (agentBlock) {
|
|
82
|
+
const id = agentBlock["id"];
|
|
83
|
+
const name = agentBlock["name"];
|
|
84
|
+
if (id)
|
|
85
|
+
allAgentRefs.add(id);
|
|
86
|
+
if (name)
|
|
87
|
+
allAgentRefs.add(name);
|
|
88
|
+
if (id && name)
|
|
89
|
+
agentNameById.set(id, name);
|
|
90
|
+
}
|
|
91
|
+
// Fix archetype
|
|
92
|
+
const personaBlock = parsed["persona_profile"];
|
|
93
|
+
if (personaBlock) {
|
|
94
|
+
const archetype = personaBlock["archetype"];
|
|
95
|
+
if (archetype && !ARCHETYPES.has(archetype)) {
|
|
96
|
+
const mapped = ARCHETYPE_MAP[archetype] || "Builder";
|
|
97
|
+
fmBlock = replaceYamlValue(fmBlock, "archetype", archetype, mapped);
|
|
98
|
+
fmChanged = true;
|
|
99
|
+
changes.push({
|
|
100
|
+
file,
|
|
101
|
+
description: `Fixed archetype: "${archetype}" → "${mapped}"`,
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
// Fix: add default tone if missing
|
|
105
|
+
const comm = personaBlock["communication"];
|
|
106
|
+
if (!comm || !comm["tone"]) {
|
|
107
|
+
fmBlock = ensureTone(fmBlock, parsed);
|
|
108
|
+
fmChanged = true;
|
|
109
|
+
changes.push({
|
|
110
|
+
file,
|
|
111
|
+
description: `Added default communication tone: "${DEFAULT_TONE}"`,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
// No persona_profile at all — add minimal one
|
|
117
|
+
fmBlock = fmBlock.trimEnd() + "\npersona_profile:\n archetype: Builder\n communication:\n tone: \"" + DEFAULT_TONE + "\"\n";
|
|
118
|
+
fmChanged = true;
|
|
119
|
+
changes.push({
|
|
120
|
+
file,
|
|
121
|
+
description: "Added default persona_profile with archetype and tone",
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
// Fix: ensure greeting_levels has at least 3 keys
|
|
125
|
+
const greetingBlock = parsed["greeting_levels"];
|
|
126
|
+
if (greetingBlock) {
|
|
127
|
+
const keys = Object.keys(greetingBlock);
|
|
128
|
+
const missing = [];
|
|
129
|
+
for (const [key, val] of Object.entries(DEFAULT_GREETING_LEVELS)) {
|
|
130
|
+
if (!keys.includes(key))
|
|
131
|
+
missing.push(key);
|
|
132
|
+
}
|
|
133
|
+
if (missing.length > 0) {
|
|
134
|
+
fmBlock = addMissingGreetingLevels(fmBlock, missing);
|
|
135
|
+
fmChanged = true;
|
|
136
|
+
changes.push({
|
|
137
|
+
file,
|
|
138
|
+
description: `Added missing greeting_levels: ${missing.join(", ")}`,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
// No greeting_levels at all — add default
|
|
144
|
+
fmBlock = fmBlock.trimEnd() + "\ngreeting_levels:\n brief: \"Agent ready.\"\n standard: \"Agent ready to help.\"\n detailed: \"Agent ready with full context.\"\n";
|
|
145
|
+
fmChanged = true;
|
|
146
|
+
changes.push({
|
|
147
|
+
file,
|
|
148
|
+
description: "Added default greeting_levels (brief, standard, detailed)",
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (fmChanged) {
|
|
153
|
+
content = `---\n${fmBlock.trim()}\n---\n${bodyAfterFm}`;
|
|
154
|
+
}
|
|
155
|
+
if (content !== original) {
|
|
156
|
+
fixed.set(file, content);
|
|
157
|
+
filesModified++;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
// --- Pass 2: Fix tasks ---
|
|
161
|
+
const taskFiles = [...fixed.keys()].filter((p) => p.startsWith("tasks/") && p.endsWith(".md"));
|
|
162
|
+
for (const file of taskFiles) {
|
|
163
|
+
filesAnalyzed++;
|
|
164
|
+
const original = fixed.get(file);
|
|
165
|
+
let content = original;
|
|
166
|
+
// Fix: convert yaml code fence to frontmatter
|
|
167
|
+
content = convertCodeFenceToFrontmatter(content);
|
|
168
|
+
if (content !== original) {
|
|
169
|
+
changes.push({ file, description: "Converted YAML code fence to frontmatter block" });
|
|
170
|
+
}
|
|
171
|
+
const fmMatch = content.match(FRONTMATTER_BLOCK);
|
|
172
|
+
if (!fmMatch || !fmMatch[1]) {
|
|
173
|
+
fixed.set(file, content);
|
|
174
|
+
if (content !== original)
|
|
175
|
+
filesModified++;
|
|
176
|
+
continue;
|
|
177
|
+
}
|
|
178
|
+
let fmBlock = fmMatch[1];
|
|
179
|
+
const bodyAfterFm = content.slice(fmMatch[0].length);
|
|
180
|
+
let fmChanged = false;
|
|
181
|
+
let parsed = null;
|
|
182
|
+
try {
|
|
183
|
+
parsed = yaml.load(fmBlock);
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
// skip
|
|
187
|
+
}
|
|
188
|
+
if (parsed) {
|
|
189
|
+
// Fix: responsavel_type
|
|
190
|
+
const respType = parsed["responsavel_type"];
|
|
191
|
+
if (respType && !RESPONSAVEL_TYPES.has(respType)) {
|
|
192
|
+
const mapped = RESPONSAVEL_TYPE_MAP[respType.toLowerCase()] || "Agente";
|
|
193
|
+
fmBlock = replaceYamlValue(fmBlock, "responsavel_type", respType, mapped);
|
|
194
|
+
fmChanged = true;
|
|
195
|
+
changes.push({
|
|
196
|
+
file,
|
|
197
|
+
description: `Fixed responsavel_type: "${respType}" → "${mapped}"`,
|
|
198
|
+
});
|
|
199
|
+
}
|
|
200
|
+
// Fix: atomic_layer
|
|
201
|
+
const atomicLayer = parsed["atomic_layer"];
|
|
202
|
+
if (atomicLayer && !ATOMIC_LAYERS.has(atomicLayer)) {
|
|
203
|
+
fmBlock = replaceYamlValue(fmBlock, "atomic_layer", atomicLayer, "Molecule");
|
|
204
|
+
fmChanged = true;
|
|
205
|
+
changes.push({
|
|
206
|
+
file,
|
|
207
|
+
description: `Fixed atomic_layer: "${atomicLayer}" → "Molecule"`,
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
// Fix: task name to camelCase()
|
|
211
|
+
const taskName = parsed["task"];
|
|
212
|
+
if (taskName && !CAMEL_CASE_PAREN.test(taskName)) {
|
|
213
|
+
const fixedName = toCamelCaseFromFilename(file);
|
|
214
|
+
fmBlock = replaceYamlValue(fmBlock, "task", taskName, fixedName);
|
|
215
|
+
fmChanged = true;
|
|
216
|
+
changes.push({
|
|
217
|
+
file,
|
|
218
|
+
description: `Fixed task identifier: "${taskName}" → "${fixedName}"`,
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
// Fix: responsavel reference — try to map ID to agent name
|
|
222
|
+
const responsavel = parsed["responsavel"];
|
|
223
|
+
if (responsavel) {
|
|
224
|
+
const cleaned = responsavel.replace(/^@/, "").replace(/^"|"$/g, "");
|
|
225
|
+
if (agentNameById.has(cleaned) && agentNameById.get(cleaned) !== cleaned) {
|
|
226
|
+
const agentName = agentNameById.get(cleaned);
|
|
227
|
+
fmBlock = replaceYamlValue(fmBlock, "responsavel", responsavel, `"${agentName}"`);
|
|
228
|
+
fmChanged = true;
|
|
229
|
+
changes.push({
|
|
230
|
+
file,
|
|
231
|
+
description: `Fixed responsavel reference: "${responsavel}" → "${agentName}"`,
|
|
232
|
+
});
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
// Fix: Entrada/Saida that are pipe-strings instead of arrays
|
|
236
|
+
fmBlock = fixPipeToArrayMarker(fmBlock, "Entrada");
|
|
237
|
+
fmBlock = fixPipeToArrayMarker(fmBlock, "Saida");
|
|
238
|
+
if (fmBlock !== fmMatch[1] && !fmChanged) {
|
|
239
|
+
fmChanged = true;
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
if (fmChanged) {
|
|
243
|
+
content = `---\n${fmBlock.trim()}\n---\n${bodyAfterFm}`;
|
|
244
|
+
}
|
|
245
|
+
if (content !== original) {
|
|
246
|
+
fixed.set(file, content);
|
|
247
|
+
filesModified++;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return {
|
|
251
|
+
fileTree: fixed,
|
|
252
|
+
changes,
|
|
253
|
+
filesAnalyzed,
|
|
254
|
+
filesModified,
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
// --- Helpers ---
|
|
258
|
+
function convertCodeFenceToFrontmatter(content) {
|
|
259
|
+
if (/^---\s*\n/.test(content))
|
|
260
|
+
return content;
|
|
261
|
+
// Pattern: # Heading\n\n```yaml\n...\n```\n...
|
|
262
|
+
const withHeading = content.match(/^#\s+[^\r\n]+\r?\n\r?\n```yaml\r?\n([\s\S]*?)\r?\n```\r?\n?([\s\S]*)$/);
|
|
263
|
+
if (withHeading) {
|
|
264
|
+
return `---\n${withHeading[1].trimEnd()}\n---\n\n${withHeading[2] || ""}`;
|
|
265
|
+
}
|
|
266
|
+
// Pattern: ```yaml\n...\n```\n...
|
|
267
|
+
const plainFence = content.match(/^```yaml\r?\n([\s\S]*?)\r?\n```\r?\n?([\s\S]*)$/);
|
|
268
|
+
if (plainFence) {
|
|
269
|
+
return `---\n${plainFence[1].trimEnd()}\n---\n\n${plainFence[2] || ""}`;
|
|
270
|
+
}
|
|
271
|
+
return content;
|
|
272
|
+
}
|
|
273
|
+
function replaceYamlValue(fmBlock, key, oldValue, newValue) {
|
|
274
|
+
// Escape special regex chars in oldValue
|
|
275
|
+
const escaped = oldValue.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
|
|
276
|
+
const regex = new RegExp(`(^|\\n)(\\s*${key}:\\s*)(?:"${escaped}"|'${escaped}'|${escaped})`, "m");
|
|
277
|
+
const match = fmBlock.match(regex);
|
|
278
|
+
if (match) {
|
|
279
|
+
return fmBlock.replace(regex, `$1$2${newValue}`);
|
|
280
|
+
}
|
|
281
|
+
return fmBlock;
|
|
282
|
+
}
|
|
283
|
+
function ensureTone(fmBlock, parsed) {
|
|
284
|
+
const personaBlock = parsed["persona_profile"];
|
|
285
|
+
if (!personaBlock)
|
|
286
|
+
return fmBlock;
|
|
287
|
+
const comm = personaBlock["communication"];
|
|
288
|
+
if (!comm) {
|
|
289
|
+
// No communication block — add it under persona_profile
|
|
290
|
+
const lines = fmBlock.split("\n");
|
|
291
|
+
const personaIdx = lines.findIndex((l) => /^\s*persona_profile\s*:/.test(l));
|
|
292
|
+
if (personaIdx === -1)
|
|
293
|
+
return fmBlock;
|
|
294
|
+
// Find indent level
|
|
295
|
+
const personaIndent = (lines[personaIdx].match(/^\s*/) || [""])[0].length;
|
|
296
|
+
const childIndent = " ".repeat(personaIndent + 2);
|
|
297
|
+
// Find insertion point: after last child of persona_profile
|
|
298
|
+
let insertIdx = personaIdx + 1;
|
|
299
|
+
while (insertIdx < lines.length) {
|
|
300
|
+
const line = lines[insertIdx];
|
|
301
|
+
if (line.trim() === "") {
|
|
302
|
+
insertIdx++;
|
|
303
|
+
continue;
|
|
304
|
+
}
|
|
305
|
+
const indent = (line.match(/^\s*/) || [""])[0].length;
|
|
306
|
+
if (indent <= personaIndent)
|
|
307
|
+
break;
|
|
308
|
+
insertIdx++;
|
|
309
|
+
}
|
|
310
|
+
lines.splice(insertIdx, 0, `${childIndent}communication:`, `${childIndent} tone: "${DEFAULT_TONE}"`);
|
|
311
|
+
return lines.join("\n");
|
|
312
|
+
}
|
|
313
|
+
// Communication exists but no tone
|
|
314
|
+
const lines = fmBlock.split("\n");
|
|
315
|
+
const commIdx = lines.findIndex((l) => /^\s*communication\s*:/.test(l));
|
|
316
|
+
if (commIdx === -1)
|
|
317
|
+
return fmBlock;
|
|
318
|
+
const commIndent = (lines[commIdx].match(/^\s*/) || [""])[0].length;
|
|
319
|
+
const childIndent = " ".repeat(commIndent + 2);
|
|
320
|
+
// Find insertion point after communication children
|
|
321
|
+
let insertIdx = commIdx + 1;
|
|
322
|
+
while (insertIdx < lines.length) {
|
|
323
|
+
const line = lines[insertIdx];
|
|
324
|
+
if (line.trim() === "") {
|
|
325
|
+
insertIdx++;
|
|
326
|
+
continue;
|
|
327
|
+
}
|
|
328
|
+
const indent = (line.match(/^\s*/) || [""])[0].length;
|
|
329
|
+
if (indent <= commIndent)
|
|
330
|
+
break;
|
|
331
|
+
insertIdx++;
|
|
332
|
+
}
|
|
333
|
+
lines.splice(insertIdx, 0, `${childIndent}tone: "${DEFAULT_TONE}"`);
|
|
334
|
+
return lines.join("\n");
|
|
335
|
+
}
|
|
336
|
+
function addMissingGreetingLevels(fmBlock, missing) {
|
|
337
|
+
const lines = fmBlock.split("\n");
|
|
338
|
+
const idx = lines.findIndex((l) => /^\s*greeting_levels\s*:/.test(l));
|
|
339
|
+
if (idx === -1)
|
|
340
|
+
return fmBlock;
|
|
341
|
+
const baseIndent = (lines[idx].match(/^\s*/) || [""])[0].length;
|
|
342
|
+
const childIndent = " ".repeat(baseIndent + 2);
|
|
343
|
+
// Find end of greeting_levels block
|
|
344
|
+
let end = idx + 1;
|
|
345
|
+
while (end < lines.length) {
|
|
346
|
+
const line = lines[end];
|
|
347
|
+
if (line.trim() === "") {
|
|
348
|
+
end++;
|
|
349
|
+
continue;
|
|
350
|
+
}
|
|
351
|
+
const indent = (line.match(/^\s*/) || [""])[0].length;
|
|
352
|
+
if (indent <= baseIndent)
|
|
353
|
+
break;
|
|
354
|
+
end++;
|
|
355
|
+
}
|
|
356
|
+
const toAdd = [];
|
|
357
|
+
for (const key of missing) {
|
|
358
|
+
toAdd.push(`${childIndent}${key}: "${DEFAULT_GREETING_LEVELS[key]}"`);
|
|
359
|
+
}
|
|
360
|
+
lines.splice(end, 0, ...toAdd);
|
|
361
|
+
return lines.join("\n");
|
|
362
|
+
}
|
|
363
|
+
function toCamelCaseFromFilename(filePath) {
|
|
364
|
+
const base = filePath.split("/").pop()?.replace(/\.md$/, "") || "taskName";
|
|
365
|
+
const parts = base.split("-").filter(Boolean);
|
|
366
|
+
if (parts.length === 0)
|
|
367
|
+
return "taskName()";
|
|
368
|
+
const [head, ...rest] = parts;
|
|
369
|
+
const fn = head.toLowerCase() +
|
|
370
|
+
rest.map((p) => p.charAt(0).toUpperCase() + p.slice(1)).join("");
|
|
371
|
+
return `${fn}()`;
|
|
372
|
+
}
|
|
373
|
+
function fixPipeToArrayMarker(fmBlock, sectionName) {
|
|
374
|
+
// Fix: "Entrada: |" → "Entrada:" (remove pipe so YAML parses children as mapping)
|
|
375
|
+
return fmBlock.replace(new RegExp(`(^|\\n)(${sectionName}:\\s*)\\|\\s*$`, "m"), `$1$2`);
|
|
376
|
+
}
|
|
377
|
+
//# sourceMappingURL=fixer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fixer.js","sourceRoot":"","sources":["../src/fixer.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -9,6 +9,8 @@ import type { FileTree, ValidationReport } from "./types.js";
|
|
|
9
9
|
* @returns ValidationReport with score, status, and per-category results
|
|
10
10
|
*/
|
|
11
11
|
export declare function validateSquad(fileTree: FileTree): ValidationReport;
|
|
12
|
+
export { fixSquad } from "./fixer.js";
|
|
13
|
+
export type { FixResult, FixChange } from "./fixer.js";
|
|
12
14
|
export type { FileTree, ValidationReport, ValidationStatus, ValidationFinding, CategoryResult, CategoryName, Severity, ParsedManifest, ParsedAgent, ParsedTask, ParsedWorkflow, } from "./types.js";
|
|
13
15
|
export { CATEGORY_WEIGHTS, CATEGORY_LABELS } from "./types.js";
|
|
14
16
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAcpB;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAcpB;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,QAAQ,GAAG,gBAAgB,CA4DlE;AAGD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvD,YAAY,EACV,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,QAAQ,EACR,cAAc,EACd,WAAW,EACX,UAAU,EACV,cAAc,GACf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -46,9 +46,10 @@ export function validateSquad(fileTree) {
|
|
|
46
46
|
const categories = categoryNames.map((name) => buildCategoryResult(name, allFindings));
|
|
47
47
|
const totalErrors = allFindings.filter((f) => f.severity === "error").length;
|
|
48
48
|
const totalWarnings = allFindings.filter((f) => f.severity === "warning").length;
|
|
49
|
+
const score = computeWeightedScore(categories);
|
|
49
50
|
return {
|
|
50
|
-
score
|
|
51
|
-
status: computeStatus(totalErrors, totalWarnings),
|
|
51
|
+
score,
|
|
52
|
+
status: computeStatus(totalErrors, totalWarnings, score),
|
|
52
53
|
categories,
|
|
53
54
|
findings: allFindings,
|
|
54
55
|
summary: {
|
|
@@ -58,5 +59,7 @@ export function validateSquad(fileTree) {
|
|
|
58
59
|
},
|
|
59
60
|
};
|
|
60
61
|
}
|
|
62
|
+
// Re-export fixer
|
|
63
|
+
export { fixSquad } from "./fixer.js";
|
|
61
64
|
export { CATEGORY_WEIGHTS, CATEGORY_LABELS } from "./types.js";
|
|
62
65
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,aAAa,GACd,MAAM,cAAc,CAAC;AAEtB;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,QAAkB;IAC9C,MAAM,WAAW,GAAwB,EAAE,CAAC;IAE5C,uBAAuB;IACvB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,GACpD,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IAC7B,WAAW,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAEtC,wBAAwB;IACxB,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAChE,WAAW,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,CAAC;IAEvC,qBAAqB;IACrB,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IACrE,WAAW,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;IAEnC,oBAAoB;IACpB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IAClE,WAAW,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,CAAC;IAElC,wBAAwB;IACxB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,SAAS,EAAE,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAC9E,WAAW,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAEtC,+BAA+B;IAC/B,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IAC3E,WAAW,CAAC,IAAI,CAAC,GAAG,gBAAgB,CAAC,CAAC;IAEtC,yBAAyB;IACzB,MAAM,aAAa,GAAmB;QACpC,UAAU;QACV,WAAW;QACX,QAAQ;QACR,OAAO;QACP,WAAW;QACX,YAAY;KACb,CAAC;IAEF,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC5C,mBAAmB,CAAC,IAAI,EAAE,WAAW,CAAC,CACvC,CAAC;IAEF,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM,CAAC;IAC7E,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAChC,CAAC,MAAM,CAAC;IAET,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/scoring.d.ts
CHANGED
|
@@ -14,9 +14,10 @@ export declare function buildCategoryResult(name: CategoryName, findings: Valida
|
|
|
14
14
|
export declare function computeWeightedScore(categories: CategoryResult[]): number;
|
|
15
15
|
/**
|
|
16
16
|
* Determine overall validation status.
|
|
17
|
-
* SAFE: 0 errors, 0 warnings
|
|
18
|
-
* WARNING: 0 errors, >= 1 warning
|
|
19
17
|
* CRITICAL: >= 1 error
|
|
18
|
+
* SAFE: score > 90 (even with warnings)
|
|
19
|
+
* WARNING: score <= 90 with warnings
|
|
20
|
+
* SAFE: 0 errors, 0 warnings
|
|
20
21
|
*/
|
|
21
|
-
export declare function computeStatus(totalErrors: number, totalWarnings: number): ValidationStatus;
|
|
22
|
+
export declare function computeStatus(totalErrors: number, totalWarnings: number, score?: number): ValidationStatus;
|
|
22
23
|
//# sourceMappingURL=scoring.d.ts.map
|
package/dist/scoring.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAMpB;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAM1E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,iBAAiB,EAAE,GAC5B,cAAc,CAWhB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,MAAM,CAWzE;AAED
|
|
1
|
+
{"version":3,"file":"scoring.d.ts","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,YAAY,CAAC;AAMpB;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAM1E;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,iBAAiB,EAAE,GAC5B,cAAc,CAWhB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,MAAM,CAWzE;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,KAAK,CAAC,EAAE,MAAM,GACb,gBAAgB,CAOlB"}
|
package/dist/scoring.js
CHANGED
|
@@ -43,15 +43,19 @@ export function computeWeightedScore(categories) {
|
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
45
|
* Determine overall validation status.
|
|
46
|
-
* SAFE: 0 errors, 0 warnings
|
|
47
|
-
* WARNING: 0 errors, >= 1 warning
|
|
48
46
|
* CRITICAL: >= 1 error
|
|
47
|
+
* SAFE: score > 90 (even with warnings)
|
|
48
|
+
* WARNING: score <= 90 with warnings
|
|
49
|
+
* SAFE: 0 errors, 0 warnings
|
|
49
50
|
*/
|
|
50
|
-
export function computeStatus(totalErrors, totalWarnings) {
|
|
51
|
+
export function computeStatus(totalErrors, totalWarnings, score) {
|
|
51
52
|
if (totalErrors > 0)
|
|
52
53
|
return "CRITICAL";
|
|
53
|
-
if (totalWarnings > 0)
|
|
54
|
+
if (totalWarnings > 0) {
|
|
55
|
+
if (score !== undefined && score > 90)
|
|
56
|
+
return "SAFE";
|
|
54
57
|
return "WARNING";
|
|
58
|
+
}
|
|
55
59
|
return "SAFE";
|
|
56
60
|
}
|
|
57
61
|
//# sourceMappingURL=scoring.js.map
|
package/dist/scoring.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAA6B;IAChE,IAAI,KAAK,GAAG,GAAG,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAkB,EAClB,QAA6B;IAE7B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC;IACrE,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC;QAC5B,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC9B,KAAK,EAAE,oBAAoB,CAAC,gBAAgB,CAAC;QAC7C,QAAQ,EAAE,gBAAgB;QAC1B,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM;QACzE,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM;KAC9E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAA4B;IAC/D,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,WAAW,IAAI,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;QACtC,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,IAAI,WAAW,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;AAC/C,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"scoring.js","sourceRoot":"","sources":["../src/scoring.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE/D,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,eAAe,GAAG,CAAC,CAAC;AAE1B;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,QAA6B;IAChE,IAAI,KAAK,GAAG,GAAG,CAAC;IAChB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,KAAK,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;IACpE,CAAC;IACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAkB,EAClB,QAA6B;IAE7B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC;IACrE,OAAO;QACL,IAAI;QACJ,KAAK,EAAE,eAAe,CAAC,IAAI,CAAC;QAC5B,MAAM,EAAE,gBAAgB,CAAC,IAAI,CAAC;QAC9B,KAAK,EAAE,oBAAoB,CAAC,gBAAgB,CAAC;QAC7C,QAAQ,EAAE,gBAAgB;QAC1B,UAAU,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,MAAM;QACzE,YAAY,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,MAAM;KAC9E,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAA4B;IAC/D,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;QAC7B,WAAW,IAAI,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC;QACtC,WAAW,IAAI,GAAG,CAAC,MAAM,CAAC;IAC5B,CAAC;IAED,IAAI,WAAW,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAChC,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,CAAC;AAC/C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAC3B,WAAmB,EACnB,aAAqB,EACrB,KAAc;IAEd,IAAI,WAAW,GAAG,CAAC;QAAE,OAAO,UAAU,CAAC;IACvC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,GAAG,EAAE;YAAE,OAAO,MAAM,CAAC;QACrD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/utils/enums.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
export declare const ARCHETYPES: Set<string>;
|
|
3
3
|
/** Valid communication tone values */
|
|
4
4
|
export declare const TONES: Set<string>;
|
|
5
|
-
/** Valid atomic_layer values for tasks */
|
|
5
|
+
/** Valid atomic_layer values for tasks (Structural + Functional) */
|
|
6
6
|
export declare const ATOMIC_LAYERS: Set<string>;
|
|
7
7
|
/** Valid responsavel_type values for tasks */
|
|
8
8
|
export declare const RESPONSAVEL_TYPES: Set<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/utils/enums.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,eAAO,MAAM,UAAU,aAKrB,CAAC;AAEH,sCAAsC;AACtC,eAAO,MAAM,KAAK,aAYhB,CAAC;AAEH,
|
|
1
|
+
{"version":3,"file":"enums.d.ts","sourceRoot":"","sources":["../../src/utils/enums.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,eAAO,MAAM,UAAU,aAKrB,CAAC;AAEH,sCAAsC;AACtC,eAAO,MAAM,KAAK,aAYhB,CAAC;AAEH,oEAAoE;AACpE,eAAO,MAAM,aAAa,aAcxB,CAAC;AAEH,8CAA8C;AAC9C,eAAO,MAAM,iBAAiB,aAK5B,CAAC"}
|
package/dist/utils/enums.js
CHANGED
|
@@ -19,13 +19,21 @@ export const TONES = new Set([
|
|
|
19
19
|
"empathetic",
|
|
20
20
|
"pragmatic",
|
|
21
21
|
]);
|
|
22
|
-
/** Valid atomic_layer values for tasks */
|
|
22
|
+
/** Valid atomic_layer values for tasks (Structural + Functional) */
|
|
23
23
|
export const ATOMIC_LAYERS = new Set([
|
|
24
|
+
// Structural (Atomic Design)
|
|
24
25
|
"Atom",
|
|
25
26
|
"Molecule",
|
|
26
27
|
"Organism",
|
|
27
28
|
"Template",
|
|
28
29
|
"Page",
|
|
30
|
+
// Functional (AIOS spec)
|
|
31
|
+
"Config",
|
|
32
|
+
"Strategy",
|
|
33
|
+
"Content",
|
|
34
|
+
"Media",
|
|
35
|
+
"Layout",
|
|
36
|
+
"Analysis",
|
|
29
37
|
]);
|
|
30
38
|
/** Valid responsavel_type values for tasks */
|
|
31
39
|
export const RESPONSAVEL_TYPES = new Set([
|
package/dist/utils/enums.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/utils/enums.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IAChC,SAAS;IACT,UAAU;IACV,UAAU;IACV,aAAa;CACd,CAAC,CAAC;AAEH,sCAAsC;AACtC,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC;IAC3B,QAAQ;IACR,UAAU;IACV,WAAW;IACX,UAAU;IACV,WAAW;IACX,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;IACX,YAAY;IACZ,WAAW;CACZ,CAAC,CAAC;AAEH,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../src/utils/enums.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;IAChC,SAAS;IACT,UAAU;IACV,UAAU;IACV,aAAa;CACd,CAAC,CAAC;AAEH,sCAAsC;AACtC,MAAM,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC;IAC3B,QAAQ;IACR,UAAU;IACV,WAAW;IACX,UAAU;IACV,WAAW;IACX,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;IACX,YAAY;IACZ,WAAW;CACZ,CAAC,CAAC;AAEH,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IACnC,6BAA6B;IAC7B,MAAM;IACN,UAAU;IACV,UAAU;IACV,UAAU;IACV,MAAM;IACN,yBAAyB;IACzB,QAAQ;IACR,UAAU;IACV,SAAS;IACT,OAAO;IACP,QAAQ;IACR,UAAU;CACX,CAAC,CAAC;AAEH,8CAA8C;AAC9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACvC,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,OAAO;CACR,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@squads-sh/validator",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Deep validation engine for AIOS Squad packages",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -15,6 +15,10 @@
|
|
|
15
15
|
"types": "./dist/adapters/filesystem.d.ts"
|
|
16
16
|
}
|
|
17
17
|
},
|
|
18
|
+
"scripts": {
|
|
19
|
+
"build": "tsc",
|
|
20
|
+
"clean": "rm -rf dist"
|
|
21
|
+
},
|
|
18
22
|
"dependencies": {
|
|
19
23
|
"js-yaml": "^4.1.0"
|
|
20
24
|
},
|
|
@@ -26,9 +30,5 @@
|
|
|
26
30
|
"files": [
|
|
27
31
|
"dist"
|
|
28
32
|
],
|
|
29
|
-
"license": "MIT"
|
|
30
|
-
|
|
31
|
-
"build": "tsc",
|
|
32
|
-
"clean": "rm -rf dist"
|
|
33
|
-
}
|
|
34
|
-
}
|
|
33
|
+
"license": "MIT"
|
|
34
|
+
}
|