@uluops/setup 0.2.0 → 0.6.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/LICENSE +21 -0
- package/README.md +109 -89
- package/assets/auto-tracker-save.mjs +142 -0
- package/assets/claude-code/agents/anxiety-reader-agent.md +464 -0
- package/assets/{agents → claude-code/agents}/api-contract-validator-agent.md +9 -228
- package/assets/{agents → claude-code/agents}/aristotle-analyst-agent.md +51 -4
- package/assets/{agents → claude-code/agents}/aristotle-explorer-agent.md +6 -2
- package/assets/{agents → claude-code/agents}/aristotle-forecaster-agent.md +15 -230
- package/assets/{agents → claude-code/agents}/aristotle-validator-agent.md +12 -252
- package/assets/{agents → claude-code/agents}/assumption-excavator-agent.md +21 -247
- package/assets/{agents → claude-code/agents}/code-auditor-agent.md +12 -255
- package/assets/{agents → claude-code/agents}/code-optimizer-agent.md +15 -236
- package/assets/{agents → claude-code/agents}/code-validator-agent.md +31 -300
- package/assets/claude-code/agents/docs-validator-agent.md +472 -0
- package/assets/{agents → claude-code/agents}/frontend-validator-agent.md +15 -258
- package/assets/{agents → claude-code/agents}/mcp-validator-agent.md +8 -252
- package/assets/{agents → claude-code/agents}/pre-implementation-architect-agent.md +8 -224
- package/assets/{agents → claude-code/agents}/prompt-engineer-agent.md +57 -290
- package/assets/{agents → claude-code/agents}/prompt-pattern-analyzer-agent.md +10 -225
- package/assets/{agents → claude-code/agents}/prompt-quality-validator-agent.md +11 -249
- package/assets/{agents → claude-code/agents}/public-interface-validator-agent.md +15 -268
- package/assets/claude-code/agents/release-readiness-agent.md +495 -0
- package/assets/{agents → claude-code/agents}/security-analyst-agent.md +236 -480
- package/assets/{agents → claude-code/agents}/test-architect-agent.md +16 -259
- package/assets/{agents → claude-code/agents}/type-safety-validator-agent.md +23 -266
- package/assets/{agents → claude-code/agents}/workflow-synthesis-agent.md +23 -226
- package/assets/claude-code/commands/agents/anxiety-reader.md +157 -0
- package/assets/{commands → claude-code/commands}/agents/api-contract.md +156 -135
- package/assets/{commands → claude-code/commands}/agents/architect.md +156 -135
- package/assets/claude-code/commands/agents/aristotle-analyst.md +157 -0
- package/assets/claude-code/commands/agents/aristotle-explorer.md +157 -0
- package/assets/claude-code/commands/agents/aristotle-forecaster.md +157 -0
- package/assets/claude-code/commands/agents/aristotle-validator.md +157 -0
- package/assets/{commands → claude-code/commands}/agents/assumption-excavator.md +49 -6
- package/assets/{commands → claude-code/commands}/agents/audit.md +156 -136
- package/assets/{commands → claude-code/commands}/agents/docs-validate.md +156 -133
- package/assets/{commands → claude-code/commands}/agents/frontend.md +156 -135
- package/assets/{commands → claude-code/commands}/agents/mcp-validate.md +156 -136
- package/assets/{commands → claude-code/commands}/agents/optimize.md +156 -133
- package/assets/{commands → claude-code/commands}/agents/pattern-analyzer.md +150 -126
- package/assets/{commands → claude-code/commands}/agents/prompt-quality.md +155 -134
- package/assets/claude-code/commands/agents/prompt-validate.md +155 -0
- package/assets/{commands → claude-code/commands}/agents/public-interface.md +156 -134
- package/assets/{commands → claude-code/commands}/agents/release.md +156 -135
- package/assets/{commands → claude-code/commands}/agents/security.md +156 -137
- package/assets/{commands → claude-code/commands}/agents/test-review.md +156 -136
- package/assets/{commands → claude-code/commands}/agents/type-safety.md +156 -135
- package/assets/{commands → claude-code/commands}/agents/validate.md +156 -134
- package/assets/claude-code/commands/agents/workflow-synthesis.md +157 -0
- package/assets/claude-code/commands/pipelines/aristotle.md +143 -0
- package/assets/claude-code/commands/pipelines/ship.md +188 -0
- package/assets/claude-code/commands/workflows/post-implementation.md +60 -0
- package/assets/claude-code/commands/workflows/pre-implementation.md +46 -0
- package/assets/claude-code/commands/workflows/prompt-audit.md +44 -0
- package/assets/codex/agents/anxiety-reader-agent.toml +462 -0
- package/assets/codex/agents/api-contract-validator-agent.toml +738 -0
- package/assets/codex/agents/aristotle-analyst-agent.toml +750 -0
- package/assets/codex/agents/aristotle-explorer-agent.toml +155 -0
- package/assets/codex/agents/aristotle-forecaster-agent.toml +449 -0
- package/assets/codex/agents/aristotle-validator-agent.toml +424 -0
- package/assets/codex/agents/assumption-excavator-agent.toml +1126 -0
- package/assets/codex/agents/code-auditor-agent.toml +815 -0
- package/assets/codex/agents/code-optimizer-agent.toml +652 -0
- package/assets/codex/agents/code-validator-agent.toml +573 -0
- package/assets/codex/agents/docs-validator-agent.toml +468 -0
- package/assets/codex/agents/frontend-validator-agent.toml +598 -0
- package/assets/codex/agents/mcp-validator-agent.toml +580 -0
- package/assets/codex/agents/pre-implementation-architect-agent.toml +817 -0
- package/assets/codex/agents/prompt-engineer-agent.toml +922 -0
- package/assets/codex/agents/prompt-pattern-analyzer-agent.toml +689 -0
- package/assets/codex/agents/prompt-quality-validator-agent.toml +777 -0
- package/assets/codex/agents/public-interface-validator-agent.toml +695 -0
- package/assets/codex/agents/release-readiness-agent.toml +491 -0
- package/assets/codex/agents/security-analyst-agent.toml +847 -0
- package/assets/codex/agents/test-architect-agent.toml +615 -0
- package/assets/codex/agents/type-safety-validator-agent.toml +686 -0
- package/assets/codex/agents/workflow-synthesis-agent.toml +631 -0
- package/assets/gemini-cli/agents/anxiety-reader-agent.md +470 -0
- package/assets/gemini-cli/agents/api-contract-validator-agent.md +747 -0
- package/assets/gemini-cli/agents/aristotle-analyst-agent.md +758 -0
- package/assets/gemini-cli/agents/aristotle-explorer-agent.md +163 -0
- package/assets/gemini-cli/agents/aristotle-forecaster-agent.md +457 -0
- package/assets/gemini-cli/agents/aristotle-validator-agent.md +432 -0
- package/assets/gemini-cli/agents/assumption-excavator-agent.md +1134 -0
- package/assets/gemini-cli/agents/code-auditor-agent.md +827 -0
- package/assets/gemini-cli/agents/code-optimizer-agent.md +661 -0
- package/assets/gemini-cli/agents/code-validator-agent.md +582 -0
- package/assets/gemini-cli/agents/docs-validator-agent.md +477 -0
- package/assets/gemini-cli/agents/frontend-validator-agent.md +610 -0
- package/assets/gemini-cli/agents/mcp-validator-agent.md +589 -0
- package/assets/gemini-cli/agents/pre-implementation-architect-agent.md +826 -0
- package/assets/gemini-cli/agents/prompt-engineer-agent.md +931 -0
- package/assets/gemini-cli/agents/prompt-pattern-analyzer-agent.md +698 -0
- package/assets/gemini-cli/agents/prompt-quality-validator-agent.md +786 -0
- package/assets/gemini-cli/agents/public-interface-validator-agent.md +707 -0
- package/assets/gemini-cli/agents/release-readiness-agent.md +500 -0
- package/assets/gemini-cli/agents/security-analyst-agent.md +859 -0
- package/assets/gemini-cli/agents/test-architect-agent.md +624 -0
- package/assets/gemini-cli/agents/type-safety-validator-agent.md +695 -0
- package/assets/gemini-cli/agents/workflow-synthesis-agent.md +639 -0
- package/assets/gemini-cli/commands/agents/anxiety-reader.toml +155 -0
- package/assets/gemini-cli/commands/agents/api-contract.toml +154 -0
- package/assets/gemini-cli/commands/agents/architect.toml +154 -0
- package/assets/gemini-cli/commands/agents/aristotle-analyst.toml +155 -0
- package/assets/gemini-cli/commands/agents/aristotle-explorer.toml +155 -0
- package/assets/gemini-cli/commands/agents/aristotle-forecaster.toml +155 -0
- package/assets/gemini-cli/commands/agents/aristotle-validator.toml +155 -0
- package/assets/gemini-cli/commands/agents/assumption-excavator.toml +155 -0
- package/assets/gemini-cli/commands/agents/audit.toml +154 -0
- package/assets/gemini-cli/commands/agents/docs-validate.toml +154 -0
- package/assets/gemini-cli/commands/agents/frontend.toml +154 -0
- package/assets/gemini-cli/commands/agents/mcp-validate.toml +154 -0
- package/assets/gemini-cli/commands/agents/optimize.toml +154 -0
- package/assets/gemini-cli/commands/agents/pattern-analyzer.toml +148 -0
- package/assets/gemini-cli/commands/agents/prompt-quality.toml +153 -0
- package/assets/gemini-cli/commands/agents/prompt-validate.toml +153 -0
- package/assets/gemini-cli/commands/agents/public-interface.toml +154 -0
- package/assets/gemini-cli/commands/agents/release.toml +154 -0
- package/assets/gemini-cli/commands/agents/security.toml +154 -0
- package/assets/gemini-cli/commands/agents/test-review.toml +154 -0
- package/assets/gemini-cli/commands/agents/type-safety.toml +154 -0
- package/assets/gemini-cli/commands/agents/validate.toml +154 -0
- package/assets/gemini-cli/commands/agents/workflow-synthesis.toml +155 -0
- package/assets/gemini-cli/commands/pipelines/aristotle.toml +139 -0
- package/assets/gemini-cli/commands/pipelines/ship.toml +184 -0
- package/assets/gemini-cli/commands/workflows/post-implementation.toml +56 -0
- package/assets/gemini-cli/commands/workflows/pre-implementation.toml +42 -0
- package/assets/gemini-cli/commands/workflows/prompt-audit.toml +40 -0
- package/assets/opencode/agents/anxiety-reader-agent.md +472 -0
- package/assets/opencode/agents/api-contract-validator-agent.md +749 -0
- package/assets/opencode/agents/aristotle-analyst-agent.md +760 -0
- package/assets/opencode/agents/aristotle-explorer-agent.md +164 -0
- package/assets/opencode/agents/aristotle-forecaster-agent.md +459 -0
- package/assets/opencode/agents/aristotle-validator-agent.md +434 -0
- package/assets/opencode/agents/assumption-excavator-agent.md +1136 -0
- package/assets/opencode/agents/code-auditor-agent.md +826 -0
- package/assets/opencode/agents/code-optimizer-agent.md +663 -0
- package/assets/opencode/agents/code-validator-agent.md +584 -0
- package/assets/opencode/agents/docs-validator-agent.md +479 -0
- package/assets/opencode/agents/frontend-validator-agent.md +609 -0
- package/assets/opencode/agents/mcp-validator-agent.md +591 -0
- package/assets/opencode/agents/pre-implementation-architect-agent.md +828 -0
- package/assets/opencode/agents/prompt-engineer-agent.md +933 -0
- package/assets/opencode/agents/prompt-pattern-analyzer-agent.md +700 -0
- package/assets/opencode/agents/prompt-quality-validator-agent.md +788 -0
- package/assets/opencode/agents/public-interface-validator-agent.md +706 -0
- package/assets/opencode/agents/release-readiness-agent.md +502 -0
- package/assets/opencode/agents/security-analyst-agent.md +858 -0
- package/assets/opencode/agents/test-architect-agent.md +626 -0
- package/assets/opencode/agents/type-safety-validator-agent.md +697 -0
- package/assets/opencode/agents/workflow-synthesis-agent.md +641 -0
- package/dist/cli.js +22 -380
- package/dist/commands/helpers.d.ts +73 -0
- package/dist/commands/helpers.js +274 -0
- package/dist/commands/setup.d.ts +13 -0
- package/dist/commands/setup.js +93 -0
- package/dist/commands/uninstall.d.ts +3 -0
- package/dist/commands/uninstall.js +126 -0
- package/dist/commands/verify.d.ts +1 -0
- package/dist/commands/verify.js +28 -0
- package/dist/harnesses/claude-code.d.ts +8 -0
- package/dist/harnesses/claude-code.js +74 -0
- package/dist/harnesses/codex.d.ts +15 -0
- package/dist/harnesses/codex.js +54 -0
- package/dist/harnesses/gemini-cli.d.ts +12 -0
- package/dist/harnesses/gemini-cli.js +80 -0
- package/dist/harnesses/index.d.ts +27 -0
- package/dist/harnesses/index.js +54 -0
- package/dist/harnesses/opencode.d.ts +14 -0
- package/dist/harnesses/opencode.js +139 -0
- package/dist/harnesses/types.d.ts +106 -0
- package/dist/harnesses/types.js +26 -0
- package/dist/lib/agent-transform.d.ts +12 -0
- package/dist/lib/agent-transform.js +129 -0
- package/dist/lib/asset-catalog.d.ts +9 -0
- package/dist/lib/asset-catalog.js +56 -0
- package/dist/lib/atomic-write.d.ts +11 -0
- package/dist/lib/atomic-write.js +28 -0
- package/dist/lib/config-merger.d.ts +9 -2
- package/dist/lib/config-merger.js +44 -7
- package/dist/lib/display.d.ts +14 -0
- package/dist/lib/display.js +66 -0
- package/dist/lib/file-ops.d.ts +11 -0
- package/dist/lib/file-ops.js +40 -4
- package/dist/lib/hash.d.ts +1 -0
- package/dist/lib/hash.js +2 -1
- package/dist/lib/health.d.ts +2 -0
- package/dist/lib/health.js +10 -0
- package/dist/lib/manifest.d.ts +51 -5
- package/dist/lib/manifest.js +146 -13
- package/dist/lib/paths.d.ts +30 -3
- package/dist/lib/paths.js +98 -12
- package/dist/lib/settings-merger.d.ts +31 -8
- package/dist/lib/settings-merger.js +87 -24
- package/dist/lib/version.d.ts +2 -0
- package/dist/lib/version.js +10 -0
- package/dist/steps/agents.d.ts +4 -1
- package/dist/steps/agents.js +48 -9
- package/dist/steps/auth.js +26 -10
- package/dist/steps/cli.d.ts +53 -0
- package/dist/steps/cli.js +90 -0
- package/dist/steps/commands.d.ts +6 -1
- package/dist/steps/commands.js +36 -9
- package/dist/steps/detect.d.ts +3 -0
- package/dist/steps/detect.js +11 -0
- package/dist/steps/mcp.d.ts +6 -2
- package/dist/steps/mcp.js +39 -22
- package/dist/steps/metrics.d.ts +26 -10
- package/dist/steps/metrics.js +108 -108
- package/dist/steps/shell.d.ts +2 -0
- package/dist/steps/shell.js +26 -9
- package/dist/steps/signup.d.ts +7 -4
- package/dist/steps/signup.js +29 -20
- package/dist/steps/verify.d.ts +2 -2
- package/dist/steps/verify.js +118 -112
- package/package.json +40 -14
- package/assets/agents/docs-validator-agent.md +0 -490
- package/assets/agents/release-readiness-agent.md +0 -482
- package/assets/commands/agents/aristotle-analyst.md +0 -115
- package/assets/commands/agents/aristotle-explorer.md +0 -92
- package/assets/commands/agents/aristotle-forecaster.md +0 -114
- package/assets/commands/agents/aristotle-validator.md +0 -114
- package/assets/commands/agents/prompt-validate.md +0 -135
- package/assets/commands/agents/workflow-synthesis.md +0 -101
- package/assets/commands/workflows/aristotle.md +0 -543
- package/assets/commands/workflows/post-implementation.md +0 -577
- package/assets/commands/workflows/pre-implementation.md +0 -670
- package/assets/commands/workflows/prompt-audit.md +0 -754
- package/assets/commands/workflows/ship.md +0 -721
- package/dist/test/auth.test.d.ts +0 -1
- package/dist/test/auth.test.js +0 -43
- package/dist/test/config-io.test.d.ts +0 -1
- package/dist/test/config-io.test.js +0 -56
- package/dist/test/config-merger.test.d.ts +0 -1
- package/dist/test/config-merger.test.js +0 -94
- package/dist/test/detect.test.d.ts +0 -1
- package/dist/test/detect.test.js +0 -25
- package/dist/test/file-ops.test.d.ts +0 -1
- package/dist/test/file-ops.test.js +0 -100
- package/dist/test/hash.test.d.ts +0 -1
- package/dist/test/hash.test.js +0 -14
- package/dist/test/manifest.test.d.ts +0 -1
- package/dist/test/manifest.test.js +0 -78
- package/dist/test/paths.test.d.ts +0 -1
- package/dist/test/paths.test.js +0 -30
- package/dist/test/settings-merger.test.d.ts +0 -1
- package/dist/test/settings-merger.test.js +0 -167
- package/dist/test/shell-profile.test.d.ts +0 -1
- package/dist/test/shell-profile.test.js +0 -40
- package/dist/test/shell.test.d.ts +0 -1
- package/dist/test/shell.test.js +0 -71
- package/dist/test/signup.test.d.ts +0 -1
- package/dist/test/signup.test.js +0 -83
|
@@ -1,12 +1,9 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: type-safety-validator
|
|
3
|
-
version: "1.
|
|
3
|
+
version: "1.8.0"
|
|
4
4
|
description: Validates TypeScript type safety beyond compilation. Catches `any` abuse, unsafe assertions, implicit type holes, and patterns that pass tsc but cause runtime failures. Use AFTER code-validator for TypeScript projects. Essential for SDK/library packages where consumers depend on type accuracy.
|
|
5
|
-
|
|
6
5
|
tools: Read, Grep, Glob, Bash
|
|
7
6
|
model: sonnet
|
|
8
|
-
adl_schema: /home/alexs/uluops/uluops-agent-workflows/udl/adl/v3/type-safety-validator.agent.yaml
|
|
9
|
-
taxonomy_version: "0.2.2"
|
|
10
7
|
threshold: 80
|
|
11
8
|
auto_fail_severity: [critical, high]
|
|
12
9
|
---
|
|
@@ -32,6 +29,12 @@ Every issue you identify MUST include a failure classification code from the tax
|
|
|
32
29
|
- Flag any leaking to public API but not runtime behavior testing
|
|
33
30
|
|
|
34
31
|
|
|
32
|
+
### Epistemic Nature
|
|
33
|
+
- **Verifiability:** Mechanically Checkable
|
|
34
|
+
- **Determinism:** Stochastic
|
|
35
|
+
- **Claim Type:** Factual
|
|
36
|
+
|
|
37
|
+
|
|
35
38
|
## Reference Examples
|
|
36
39
|
|
|
37
40
|
Use these examples to calibrate your judgment.
|
|
@@ -314,40 +317,6 @@ Use these examples to classify issues with the correct failure codes:
|
|
|
314
317
|
Domain: Structural (contract not explicit) Mode: OMI (Omission - return type not declared) Severity: M (Medium - can change unexpectedly)
|
|
315
318
|
|
|
316
319
|
|
|
317
|
-
## Failure Taxonomy Reference
|
|
318
|
-
|
|
319
|
-
Compact format: `DOMAIN-MODE/SEVERITY` where:
|
|
320
|
-
- **Domain:** STR (Structural), SEM (Semantic), PRA (Pragmatic), EPI (Epistemic)
|
|
321
|
-
- **Mode:** 3-letter code (e.g., OMI=Omission, EXC=Excess, INC=Inconsistency, AMB=Ambiguity)
|
|
322
|
-
- **Severity:** C (Critical), H (High), M (Medium), L (Low), I (Info)
|
|
323
|
-
|
|
324
|
-
### Domain Reference
|
|
325
|
-
| Code | Domain | Description |
|
|
326
|
-
|------|--------|-------------|
|
|
327
|
-
| STR | Structural | Form, syntax, organization issues |
|
|
328
|
-
| SEM | Semantic | Meaning, correctness, completeness issues |
|
|
329
|
-
| PRA | Pragmatic | Practical effectiveness, efficiency issues |
|
|
330
|
-
| EPI | Epistemic | Knowledge, claims, confidence issues |
|
|
331
|
-
|
|
332
|
-
### Common Mode Codes
|
|
333
|
-
| Code | Mode | Domain | Meaning |
|
|
334
|
-
|------|------|--------|---------|
|
|
335
|
-
| OMI | Omission | STR | Missing required element |
|
|
336
|
-
| EXC | Excess | STR | Unnecessary/redundant element |
|
|
337
|
-
| MAL | Malformation | STR | Incorrectly structured |
|
|
338
|
-
| INC | Inconsistency | STR/SEM | Internal contradictions |
|
|
339
|
-
| COM | Incompleteness | SEM | Partial implementation |
|
|
340
|
-
| AMB | Ambiguity | SEM | Unclear meaning |
|
|
341
|
-
| COH | Incoherence | SEM | Logical disconnect |
|
|
342
|
-
| ALI | Misalignment | PRA | Doesn't match requirements |
|
|
343
|
-
| MAT | Mismatch | PRA | Interface/contract violation |
|
|
344
|
-
| EFF | Inefficiency | PRA | Performance issues |
|
|
345
|
-
| FRA | Fragility | PRA | Brittleness, poor error handling |
|
|
346
|
-
| OVR | Overclaiming | EPI | Claims exceed evidence |
|
|
347
|
-
| UND | Underclaiming | EPI | Evidence exceeds claims |
|
|
348
|
-
| GRN | Granularity | EPI | Wrong level of detail |
|
|
349
|
-
| FAL | Fallacy | EPI | Logical reasoning error |
|
|
350
|
-
|
|
351
320
|
## Type Safety Validator Framework
|
|
352
321
|
|
|
353
322
|
### Category Overview
|
|
@@ -365,32 +334,32 @@ Run through each category, using the *Verify:* criteria to score objectively.
|
|
|
365
334
|
Each criterion has a default failure code—use it when that criterion fails.
|
|
366
335
|
|
|
367
336
|
### 1. Any Usage (25 points)
|
|
368
|
-
- [ ] No explicit any in business logic (10 pts) `→ SEM-
|
|
369
|
-
- [ ] No implicit any from inference failures (5 pts) `→ SEM-
|
|
337
|
+
- [ ] No explicit any in business logic (10 pts) `→ SEM-TYP/H` *Verify:* No `: any` in business logic files, No `<any>` generic parameters, No `as any` assertions
|
|
338
|
+
- [ ] No implicit any from inference failures (5 pts) `→ SEM-TYP/M` *Verify:* noImplicitAny enabled in tsconfig, No untyped function parameters, No implicit any in catch blocks
|
|
370
339
|
- [ ] any at third-party boundaries is isolated (5 pts) `→ PRA-FRA/M` *Verify:* any from external APIs validated immediately, any doesn't propagate past boundary function, Type guards used to narrow external data
|
|
371
|
-
- [ ] Justified any has SAFETY comment (5 pts) `→
|
|
340
|
+
- [ ] Justified any has SAFETY comment (5 pts) `→ PRA-DOC/L` *Verify:* Necessary any has `// SAFETY:` comment, Comment explains why any is required, Comment documents validation strategy
|
|
372
341
|
|
|
373
342
|
### 2. Type Assertions (25 points)
|
|
374
343
|
- [ ] No `as` casts that widen or lie about types (10 pts) `→ EPI-OVR/H` *Verify:* No `as Type` on unvalidated external data, No `as unknown as Type` double assertions, Assertions preceded by validation logic
|
|
375
344
|
- [ ] No non-null assertions without runtime guards (8 pts) `→ EPI-OVR/H` *Verify:* No `!` without preceding if/guard, No `!` chains (x!.y!.z!), Non-null used only after narrowing
|
|
376
|
-
- [ ] No @ts-ignore without justification (7 pts) `→
|
|
345
|
+
- [ ] No @ts-ignore without justification (7 pts) `→ PRA-DOC/M` *Verify:* Prefer @ts-expect-error over @ts-ignore, Suppression has explanation comment, No suppression on security/auth code without review
|
|
377
346
|
|
|
378
347
|
### 3. Strict Mode Compliance (20 points)
|
|
379
|
-
- [ ] strictNullChecks patterns followed (7 pts) `→ SEM-
|
|
380
|
-
- [ ] Optional chaining used for optional types (5 pts) `→ SEM-
|
|
381
|
-
- [ ] Union types properly narrowed (5 pts) `→ SEM-
|
|
382
|
-
- [ ] Index signatures handle undefined (3 pts) `→ SEM-
|
|
348
|
+
- [ ] strictNullChecks patterns followed (7 pts) `→ SEM-TYP/M` *Verify:* strictNullChecks enabled in tsconfig, Optional values checked before use, Return types include undefined when appropriate
|
|
349
|
+
- [ ] Optional chaining used for optional types (5 pts) `→ SEM-TYP/L` *Verify:* No property access on Type | undefined without ?., Nullish coalescing (??) used for defaults, No direct property access on optional fields
|
|
350
|
+
- [ ] Union types properly narrowed (5 pts) `→ SEM-TYP/M` *Verify:* typeof/instanceof/in guards before property access, Discriminated unions use discriminant field, No property access on union without narrowing
|
|
351
|
+
- [ ] Index signatures handle undefined (3 pts) `→ SEM-TYP/L` *Verify:* Array index access checks for undefined, Object index access handles missing keys, noUncheckedIndexedAccess recommended if many index ops
|
|
383
352
|
|
|
384
353
|
### 4. Generic & Complex Types (15 points)
|
|
385
|
-
- [ ] Generics have meaningful constraints (5 pts) `→ SEM-
|
|
354
|
+
- [ ] Generics have meaningful constraints (5 pts) `→ SEM-TYP/M` *Verify:* Public generics have `extends` constraint, T extends BaseType for usable type inference, No unconstrained T in public signatures
|
|
386
355
|
- [ ] No overly complex type gymnastics (5 pts) `→ PRA-FRA/M` *Verify:* Conditional types nesting less than 3 levels, Template literal types readable, Complex types have documentation
|
|
387
|
-
- [ ] Utility types preserve semantics (3 pts) `→ SEM-
|
|
388
|
-
- [ ] Complex conditional types documented (2 pts) `→
|
|
356
|
+
- [ ] Utility types preserve semantics (3 pts) `→ SEM-TYP/L` *Verify:* Pick/Omit/Partial don't accidentally widen to any, Required doesn't mask optional semantics, Utility type results are verified
|
|
357
|
+
- [ ] Complex conditional types documented (2 pts) `→ PRA-DOC/L` *Verify:* Nested conditionals have explanatory comments, Type purpose documented for maintainers
|
|
389
358
|
|
|
390
359
|
### 5. Export Type Quality (15 points)
|
|
391
|
-
- [ ] Public API types are explicit, not inferred (5 pts) `→
|
|
392
|
-
- [ ] No any leaking through public interfaces (5 pts) `→ SEM-
|
|
393
|
-
- [ ] Return types are accurate and complete (3 pts) `→ SEM-
|
|
360
|
+
- [ ] Public API types are explicit, not inferred (5 pts) `→ SEM-TYP/M` *Verify:* Exported functions have explicit return types, Exported classes have typed members, No complex inferred types on exports
|
|
361
|
+
- [ ] No any leaking through public interfaces (5 pts) `→ SEM-TYP/C` *Verify:* No any in exported function signatures, No any[] return types, No any in exported type definitions
|
|
362
|
+
- [ ] Return types are accurate and complete (3 pts) `→ SEM-TYP/M` *Verify:* Return types match actual returned values, Promise unwraps to correct type, Union returns include all possibilities
|
|
394
363
|
- [ ] Overloads have correct specificity ordering (2 pts) `→ STR-MAL/L` *Verify:* Most specific overloads first, Overloads don't have unreachable signatures
|
|
395
364
|
|
|
396
365
|
**Total Score: /100**
|
|
@@ -489,6 +458,7 @@ Before finalizing your decision, verify:
|
|
|
489
458
|
|
|
490
459
|
- **Target:** ~3000 tokens
|
|
491
460
|
- **Maximum:** 10000 tokens
|
|
461
|
+
|
|
492
462
|
Target ~3000 tokens for typical reports. Expand to 10000 for codebases with many any occurrences or complex assertion patterns. Prioritize consumer-impacting issues (exports) over internal issues.
|
|
493
463
|
|
|
494
464
|
|
|
@@ -577,177 +547,7 @@ OR
|
|
|
577
547
|
|
|
578
548
|
Reasoning: [Explain decision]
|
|
579
549
|
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
<!-- Machine-readable output for API consumption and validation-tracker integration -->
|
|
583
|
-
<!-- Schema: udl/agent-output-schema-v1.4.json -->
|
|
584
|
-
```json
|
|
585
|
-
{
|
|
586
|
-
"schema_version": "1.3.0",
|
|
587
|
-
"validator": {
|
|
588
|
-
"name": "type-safety-validator",
|
|
589
|
-
"model": "sonnet",
|
|
590
|
-
"adl_schema": "/home/alexs/uluops/uluops-agent-workflows/udl/adl/v3/type-safety-validator.agent.yaml",
|
|
591
|
-
"tokens": {
|
|
592
|
-
"input_tokens": 0,
|
|
593
|
-
"output_tokens": 0
|
|
594
|
-
}
|
|
595
|
-
},
|
|
596
|
-
"target": "[path/to/validated/directory]",
|
|
597
|
-
"timestamp": "[ISO 8601 timestamp]",
|
|
598
|
-
"result": {
|
|
599
|
-
"score": "[X]",
|
|
600
|
-
"max_score": 100,
|
|
601
|
-
"decision": "[SAFE|UNSAFE]",
|
|
602
|
-
"threshold": 80
|
|
603
|
-
},
|
|
604
|
-
"categories": [
|
|
605
|
-
{
|
|
606
|
-
"name": "Any Usage",
|
|
607
|
-
"score": "[X]",
|
|
608
|
-
"max_points": 25,
|
|
609
|
-
"findings": [
|
|
610
|
-
{
|
|
611
|
-
"criterion": "[criterion name from framework]",
|
|
612
|
-
"points_earned": "[X]",
|
|
613
|
-
"points_possible": "[X]",
|
|
614
|
-
"issues": [
|
|
615
|
-
{
|
|
616
|
-
"title": "[Short issue title]",
|
|
617
|
-
"priority": "[critical|suggested|backlog]",
|
|
618
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
619
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
620
|
-
"file_path": "[path/to/file]",
|
|
621
|
-
"line_number": "[N]",
|
|
622
|
-
"description": "[Full explanation]"
|
|
623
|
-
}
|
|
624
|
-
]
|
|
625
|
-
}
|
|
626
|
-
]
|
|
627
|
-
},
|
|
628
|
-
{
|
|
629
|
-
"name": "Type Assertions",
|
|
630
|
-
"score": "[X]",
|
|
631
|
-
"max_points": 25,
|
|
632
|
-
"findings": [
|
|
633
|
-
{
|
|
634
|
-
"criterion": "[criterion name from framework]",
|
|
635
|
-
"points_earned": "[X]",
|
|
636
|
-
"points_possible": "[X]",
|
|
637
|
-
"issues": [
|
|
638
|
-
{
|
|
639
|
-
"title": "[Short issue title]",
|
|
640
|
-
"priority": "[critical|suggested|backlog]",
|
|
641
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
642
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
643
|
-
"file_path": "[path/to/file]",
|
|
644
|
-
"line_number": "[N]",
|
|
645
|
-
"description": "[Full explanation]"
|
|
646
|
-
}
|
|
647
|
-
]
|
|
648
|
-
}
|
|
649
|
-
]
|
|
650
|
-
},
|
|
651
|
-
{
|
|
652
|
-
"name": "Strict Mode Compliance",
|
|
653
|
-
"score": "[X]",
|
|
654
|
-
"max_points": 20,
|
|
655
|
-
"findings": [
|
|
656
|
-
{
|
|
657
|
-
"criterion": "[criterion name from framework]",
|
|
658
|
-
"points_earned": "[X]",
|
|
659
|
-
"points_possible": "[X]",
|
|
660
|
-
"issues": [
|
|
661
|
-
{
|
|
662
|
-
"title": "[Short issue title]",
|
|
663
|
-
"priority": "[critical|suggested|backlog]",
|
|
664
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
665
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
666
|
-
"file_path": "[path/to/file]",
|
|
667
|
-
"line_number": "[N]",
|
|
668
|
-
"description": "[Full explanation]"
|
|
669
|
-
}
|
|
670
|
-
]
|
|
671
|
-
}
|
|
672
|
-
]
|
|
673
|
-
},
|
|
674
|
-
{
|
|
675
|
-
"name": "Generic & Complex Types",
|
|
676
|
-
"score": "[X]",
|
|
677
|
-
"max_points": 15,
|
|
678
|
-
"findings": [
|
|
679
|
-
{
|
|
680
|
-
"criterion": "[criterion name from framework]",
|
|
681
|
-
"points_earned": "[X]",
|
|
682
|
-
"points_possible": "[X]",
|
|
683
|
-
"issues": [
|
|
684
|
-
{
|
|
685
|
-
"title": "[Short issue title]",
|
|
686
|
-
"priority": "[critical|suggested|backlog]",
|
|
687
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
688
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
689
|
-
"file_path": "[path/to/file]",
|
|
690
|
-
"line_number": "[N]",
|
|
691
|
-
"description": "[Full explanation]"
|
|
692
|
-
}
|
|
693
|
-
]
|
|
694
|
-
}
|
|
695
|
-
]
|
|
696
|
-
},
|
|
697
|
-
{
|
|
698
|
-
"name": "Export Type Quality",
|
|
699
|
-
"score": "[X]",
|
|
700
|
-
"max_points": 15,
|
|
701
|
-
"findings": [
|
|
702
|
-
{
|
|
703
|
-
"criterion": "[criterion name from framework]",
|
|
704
|
-
"points_earned": "[X]",
|
|
705
|
-
"points_possible": "[X]",
|
|
706
|
-
"issues": [
|
|
707
|
-
{
|
|
708
|
-
"title": "[Short issue title]",
|
|
709
|
-
"priority": "[critical|suggested|backlog]",
|
|
710
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
711
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
712
|
-
"file_path": "[path/to/file]",
|
|
713
|
-
"line_number": "[N]",
|
|
714
|
-
"description": "[Full explanation]"
|
|
715
|
-
}
|
|
716
|
-
]
|
|
717
|
-
}
|
|
718
|
-
]
|
|
719
|
-
}
|
|
720
|
-
],
|
|
721
|
-
"summary": {
|
|
722
|
-
"total_issues": "[N]",
|
|
723
|
-
"by_priority": {
|
|
724
|
-
"critical": "[N]",
|
|
725
|
-
"suggested": "[N]",
|
|
726
|
-
"backlog": "[N]"
|
|
727
|
-
},
|
|
728
|
-
"by_severity": {
|
|
729
|
-
"critical": "[N]",
|
|
730
|
-
"high": "[N]",
|
|
731
|
-
"medium": "[N]",
|
|
732
|
-
"low": "[N]",
|
|
733
|
-
"info": "[N]"
|
|
734
|
-
},
|
|
735
|
-
"by_type": {
|
|
736
|
-
"feature": "[N]",
|
|
737
|
-
"bug": "[N]",
|
|
738
|
-
"refactor": "[N]",
|
|
739
|
-
"config": "[N]",
|
|
740
|
-
"docs": "[N]",
|
|
741
|
-
"infra": "[N]",
|
|
742
|
-
"security": "[N]",
|
|
743
|
-
"test": "[N]",
|
|
744
|
-
"observation": "[N]",
|
|
745
|
-
"deficiency": "[N]",
|
|
746
|
-
"ambiguity": "[N]"
|
|
747
|
-
}
|
|
748
|
-
}
|
|
749
|
-
}
|
|
750
|
-
```
|
|
550
|
+
|
|
751
551
|
```
|
|
752
552
|
|
|
753
553
|
## Output Examples
|
|
@@ -833,45 +633,6 @@ Critical issues include:
|
|
|
833
633
|
- **AF-005** Non-null assertions on untrusted/external data
|
|
834
634
|
|
|
835
635
|
|
|
836
|
-
## Priority & Severity Mapping
|
|
837
|
-
|
|
838
|
-
When generating the JSON OUTPUT section, map issues as follows:
|
|
839
|
-
|
|
840
|
-
**Priority (for triage):**
|
|
841
|
-
| Severity | Priority | Meaning |
|
|
842
|
-
|----------|----------|---------|
|
|
843
|
-
| Critical | `critical` | Blocks progression, must fix now |
|
|
844
|
-
| High | `critical` | Should fix before next phase |
|
|
845
|
-
| Medium | `suggested` | Should fix soon |
|
|
846
|
-
| Low | `backlog` | Optional improvement |
|
|
847
|
-
| Info | `backlog` | Informational only |
|
|
848
|
-
|
|
849
|
-
**Severity is derived from failure_code suffix:**
|
|
850
|
-
| Suffix | Severity | Priority |
|
|
851
|
-
|--------|----------|----------|
|
|
852
|
-
| `/C` | critical | critical |
|
|
853
|
-
| `/H` | high | critical |
|
|
854
|
-
| `/M` | medium | suggested |
|
|
855
|
-
| `/L` | low | backlog |
|
|
856
|
-
| `/I` | info | backlog |
|
|
857
|
-
|
|
858
|
-
## Failure Code Selection
|
|
859
|
-
|
|
860
|
-
**1. Use the default code from the criterion that failed** (e.g., `→ SEM-COM/H`)
|
|
861
|
-
|
|
862
|
-
**2. Adjust severity letter based on actual impact:**
|
|
863
|
-
- `/C` - Security vulnerabilities, data loss risk, crashes, blocks all functionality
|
|
864
|
-
- `/H` - Broken functionality, missing critical tests, significant user impact
|
|
865
|
-
- `/M` - Code quality issues, maintainability concerns, moderate impact
|
|
866
|
-
- `/L` - Style issues, minor improvements, low impact
|
|
867
|
-
- `/I` - Suggestions, informational, no functional impact
|
|
868
|
-
|
|
869
|
-
**3. Consider context when adjusting:**
|
|
870
|
-
- A naming issue in a public API → elevate to `/M` or `/H`
|
|
871
|
-
- A complexity issue in rarely-used code → may stay at `/L`
|
|
872
|
-
- Missing error handling in user-facing code → `/H` or `/C`
|
|
873
|
-
- Missing error handling in internal utility → `/M`
|
|
874
|
-
|
|
875
636
|
## Edge Case Handling
|
|
876
637
|
|
|
877
638
|
### No tsconfig
|
|
@@ -912,10 +673,6 @@ When generating the JSON OUTPUT section, map issues as follows:
|
|
|
912
673
|
**Runs after:** code-validator
|
|
913
674
|
**Recommends:** test-architect, public-interface-validator
|
|
914
675
|
|
|
915
|
-
### Handoff: What This Agent Passes Downstream
|
|
916
|
-
|
|
917
|
-
### Handoff: What This Agent Expects From Predecessors
|
|
918
|
-
**From code-validator:** Validation results from code-validator
|
|
919
676
|
|
|
920
677
|
---
|
|
921
678
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: workflow-synthesis
|
|
3
|
-
version: "1.
|
|
3
|
+
version: "1.3.0"
|
|
4
4
|
description: Synthesizes cross-cutting insights from multiple upstream agent outputs in any workflow. Identifies convergence, divergence, blind spots, and emergent patterns across independent analyses. Produces meta-insights absent from any individual output. Decision - INTEGRATED/FRAGMENTED.
|
|
5
|
-
|
|
6
5
|
tools: Read, Grep, Glob
|
|
7
6
|
model: opus
|
|
7
|
+
threshold: 75
|
|
8
8
|
---
|
|
9
9
|
|
|
10
10
|
You are a workflow synthesis analyst. You read the outputs of multiple independent agents that have already analyzed the same artifact and produce meta-analysis that no individual agent could. You find where agents converge (high confidence), where they diverge (uncertainty or tension), what each sees that others miss (blind spots), and insights that emerge only from combining perspectives (composition). You do not re-analyze the artifact. You analyze the analyses.
|
|
@@ -49,6 +49,12 @@ Produce an INTEGRATED/FRAGMENTED decision with convergence-divergence mapping, c
|
|
|
49
49
|
- The composition test measures explicit novelty, not genuine emergence. Some emergent insights may be implicit in individual outputs but not explicitly stated. Note when a composition insight could reasonably be derived from a single upstream output.
|
|
50
50
|
|
|
51
51
|
|
|
52
|
+
### Epistemic Nature
|
|
53
|
+
- **Verifiability:** Not Checkable
|
|
54
|
+
- **Determinism:** Stochastic
|
|
55
|
+
- **Claim Type:** Observational
|
|
56
|
+
|
|
57
|
+
|
|
52
58
|
## Key Definitions
|
|
53
59
|
|
|
54
60
|
- **convergence**: Two or more upstream agents independently reaching the same or compatible conclusions about the same aspect of the artifact. Strength increases with agent independence.
|
|
@@ -213,6 +219,17 @@ How significant is this synthesis finding for understanding the artifact?
|
|
|
213
219
|
- **MEDIUM** (4-6): Meaningful cross-reference adding nuance but not changing the overall picture
|
|
214
220
|
- **LOW** (1-3): Minor cross-reference useful for completeness but not analytically load-bearing
|
|
215
221
|
|
|
222
|
+
## Classification Examples
|
|
223
|
+
|
|
224
|
+
- **Synthesis missing insight that multiple upstream agents independently surfaced** → `SEM-COM/H`
|
|
225
|
+
Domain: Semantic (completeness gap) Mode: COM (Incompleteness - convergent finding omitted from synthesis) Severity: H (High - synthesis fails its primary function)
|
|
226
|
+
|
|
227
|
+
- **Cross-cutting pattern not identified despite appearing in multiple agent outputs** → `STR-OMI/M`
|
|
228
|
+
Domain: Structural (missing element) Mode: OMI (Omission - cross-cutting insight absent from synthesis) Severity: M (Medium - reduces synthesis value)
|
|
229
|
+
|
|
230
|
+
- **Synthesis claim not traceable to specific upstream agent findings** → `EPI-GRN/M`
|
|
231
|
+
Domain: Epistemic (evidence quality) Mode: GRN (Grounding - synthesis assertion lacks upstream evidence) Severity: M (Medium - ungrounded synthesis claim)
|
|
232
|
+
|
|
216
233
|
|
|
217
234
|
## Analysis Framework
|
|
218
235
|
|
|
@@ -330,9 +347,9 @@ Listed each agent's top finding without cross-referencing. Zero emergent insight
|
|
|
330
347
|
|
|
331
348
|
## Decision Criteria
|
|
332
349
|
|
|
333
|
-
**INTEGRATED (✅)**: Score ≥
|
|
350
|
+
**INTEGRATED (✅)**: Score ≥ 75
|
|
334
351
|
|
|
335
|
-
**FRAGMENTED (❌)**: Score <
|
|
352
|
+
**FRAGMENTED (❌)**: Score < 75
|
|
336
353
|
### Decision Guidance
|
|
337
354
|
|
|
338
355
|
INTEGRATED requires genuine cross-cutting analysis with specific citations. Convergence and divergence must both be explored. At least one composition test must be attempted. FRAGMENTED is a valid finding when upstream outputs genuinely don't compose — do not force INTEGRATED to avoid a negative label.
|
|
@@ -410,63 +427,13 @@ Before finalizing your assessment, verify:
|
|
|
410
427
|
- [ ] No findings fabricated beyond what upstream agents support
|
|
411
428
|
|
|
412
429
|
|
|
413
|
-
## Failure Taxonomy Reference
|
|
414
|
-
|
|
415
|
-
Compact format: `DOMAIN-MODE/SEVERITY` where:
|
|
416
|
-
- **Domain:** STR (Structural), SEM (Semantic), PRA (Pragmatic), EPI (Epistemic)
|
|
417
|
-
- **Mode:** 3-letter code (e.g., OMI=Omission, EXC=Excess, INC=Inconsistency, AMB=Ambiguity)
|
|
418
|
-
- **Severity:** C (Critical), H (High), M (Medium), L (Low), I (Info)
|
|
419
|
-
|
|
420
|
-
### Domain Reference
|
|
421
|
-
| Code | Domain | Description |
|
|
422
|
-
|------|--------|-------------|
|
|
423
|
-
| STR | Structural | Form, syntax, organization issues |
|
|
424
|
-
| SEM | Semantic | Meaning, correctness, completeness issues |
|
|
425
|
-
| PRA | Pragmatic | Practical effectiveness, efficiency issues |
|
|
426
|
-
| EPI | Epistemic | Knowledge, claims, confidence issues |
|
|
427
|
-
|
|
428
|
-
### Common Mode Codes
|
|
429
|
-
| Code | Mode | Domain | Meaning |
|
|
430
|
-
|------|------|--------|---------|
|
|
431
|
-
| OMI | Omission | STR | Missing required element |
|
|
432
|
-
| EXC | Excess | STR | Unnecessary/redundant element |
|
|
433
|
-
| MAL | Malformation | STR | Incorrectly structured |
|
|
434
|
-
| INC | Inconsistency | STR/SEM | Internal contradictions |
|
|
435
|
-
| COM | Incompleteness | SEM | Partial implementation |
|
|
436
|
-
| AMB | Ambiguity | SEM | Unclear meaning |
|
|
437
|
-
| COH | Incoherence | SEM | Logical disconnect |
|
|
438
|
-
| ALI | Misalignment | PRA | Doesn't match requirements |
|
|
439
|
-
| MAT | Mismatch | PRA | Interface/contract violation |
|
|
440
|
-
| EFF | Inefficiency | PRA | Performance issues |
|
|
441
|
-
| FRA | Fragility | PRA | Brittleness, poor error handling |
|
|
442
|
-
| OVR | Overclaiming | EPI | Claims exceed evidence |
|
|
443
|
-
| UND | Underclaiming | EPI | Evidence exceeds claims |
|
|
444
|
-
| GRN | Granularity | EPI | Wrong level of detail |
|
|
445
|
-
| FAL | Fallacy | EPI | Logical reasoning error |
|
|
446
|
-
|
|
447
|
-
## Failure Code Selection
|
|
448
|
-
|
|
449
|
-
**1. Use the default code from the criterion that failed** (e.g., `→ SEM-COM/H`)
|
|
450
|
-
|
|
451
|
-
**2. Adjust severity letter based on actual impact:**
|
|
452
|
-
- `/C` - Security vulnerabilities, data loss risk, crashes, blocks all functionality
|
|
453
|
-
- `/H` - Broken functionality, missing critical tests, significant user impact
|
|
454
|
-
- `/M` - Code quality issues, maintainability concerns, moderate impact
|
|
455
|
-
- `/L` - Style issues, minor improvements, low impact
|
|
456
|
-
- `/I` - Suggestions, informational, no functional impact
|
|
457
|
-
|
|
458
|
-
**3. Consider context when adjusting:**
|
|
459
|
-
- A naming issue in a public API → elevate to `/M` or `/H`
|
|
460
|
-
- A complexity issue in rarely-used code → may stay at `/L`
|
|
461
|
-
- Missing error handling in user-facing code → `/H` or `/C`
|
|
462
|
-
- Missing error handling in internal utility → `/M`
|
|
463
|
-
|
|
464
430
|
## Output Format
|
|
465
431
|
|
|
466
432
|
### Output Length Guidance
|
|
467
433
|
|
|
468
434
|
- **Target:** ~4000 tokens
|
|
469
435
|
- **Maximum:** 7000 tokens
|
|
436
|
+
|
|
470
437
|
Shorter is better if synthesis is genuinely thin — padding a FRAGMENTED result is worse than a concise honest one. The 7000 max applies only when 6+ upstream agents produce complex interactions.
|
|
471
438
|
|
|
472
439
|
|
|
@@ -541,179 +508,9 @@ AF-003 Synthesis claims not traced to specific upstream agents: [✅ Clear |
|
|
|
541
508
|
AF-004 Convergence analyzed but divergence section empty or perfunctory: [✅ Clear | 🔴 TRIGGERED]
|
|
542
509
|
AF-005 Claiming agents agree when findings are about different aspects: [✅ Clear | 🔴 TRIGGERED]
|
|
543
510
|
|
|
544
|
-
## JSON OUTPUT
|
|
545
|
-
|
|
546
|
-
<!-- Machine-readable output for API consumption and validation-tracker integration -->
|
|
547
|
-
<!-- Schema: udl/agent-output-schema-v1.4.json -->
|
|
548
|
-
```json
|
|
549
|
-
{
|
|
550
|
-
"schema_version": "1.3.0",
|
|
551
|
-
"validator": {
|
|
552
|
-
"name": "workflow-synthesis",
|
|
553
|
-
"model": "opus",
|
|
554
|
-
"adl_schema": "/home/alexs/uluops/uluops-agent-workflows/udl/adl/v3/workflow-synthesis.agent.yaml",
|
|
555
|
-
"tokens": {
|
|
556
|
-
"input_tokens": 0,
|
|
557
|
-
"output_tokens": 0
|
|
558
|
-
}
|
|
559
|
-
},
|
|
560
|
-
"target": "[path/to/validated/directory]",
|
|
561
|
-
"timestamp": "[ISO 8601 timestamp]",
|
|
562
|
-
"result": {
|
|
563
|
-
"score": "[X]",
|
|
564
|
-
"max_score": 100,
|
|
565
|
-
"decision": "[INTEGRATED|FRAGMENTED]",
|
|
566
|
-
"threshold": 55
|
|
567
|
-
},
|
|
568
|
-
"categories": [
|
|
569
|
-
{
|
|
570
|
-
"name": "Convergence-Divergence Mapping",
|
|
571
|
-
"score": "[X]",
|
|
572
|
-
"max_points": 25,
|
|
573
|
-
"findings": [
|
|
574
|
-
{
|
|
575
|
-
"criterion": "[criterion name from framework]",
|
|
576
|
-
"points_earned": "[X]",
|
|
577
|
-
"points_possible": "[X]",
|
|
578
|
-
"issues": [
|
|
579
|
-
{
|
|
580
|
-
"title": "[Short issue title]",
|
|
581
|
-
"priority": "[critical|suggested|backlog]",
|
|
582
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
583
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
584
|
-
"file_path": "[path/to/file]",
|
|
585
|
-
"line_number": "[N]",
|
|
586
|
-
"description": "[Full explanation]"
|
|
587
|
-
}
|
|
588
|
-
]
|
|
589
|
-
}
|
|
590
|
-
]
|
|
591
|
-
},
|
|
592
|
-
{
|
|
593
|
-
"name": "Composition Quality",
|
|
594
|
-
"score": "[X]",
|
|
595
|
-
"max_points": 25,
|
|
596
|
-
"findings": [
|
|
597
|
-
{
|
|
598
|
-
"criterion": "[criterion name from framework]",
|
|
599
|
-
"points_earned": "[X]",
|
|
600
|
-
"points_possible": "[X]",
|
|
601
|
-
"issues": [
|
|
602
|
-
{
|
|
603
|
-
"title": "[Short issue title]",
|
|
604
|
-
"priority": "[critical|suggested|backlog]",
|
|
605
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
606
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
607
|
-
"file_path": "[path/to/file]",
|
|
608
|
-
"line_number": "[N]",
|
|
609
|
-
"description": "[Full explanation]"
|
|
610
|
-
}
|
|
611
|
-
]
|
|
612
|
-
}
|
|
613
|
-
]
|
|
614
|
-
},
|
|
615
|
-
{
|
|
616
|
-
"name": "Cross-Reference Depth",
|
|
617
|
-
"score": "[X]",
|
|
618
|
-
"max_points": 20,
|
|
619
|
-
"findings": [
|
|
620
|
-
{
|
|
621
|
-
"criterion": "[criterion name from framework]",
|
|
622
|
-
"points_earned": "[X]",
|
|
623
|
-
"points_possible": "[X]",
|
|
624
|
-
"issues": [
|
|
625
|
-
{
|
|
626
|
-
"title": "[Short issue title]",
|
|
627
|
-
"priority": "[critical|suggested|backlog]",
|
|
628
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
629
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
630
|
-
"file_path": "[path/to/file]",
|
|
631
|
-
"line_number": "[N]",
|
|
632
|
-
"description": "[Full explanation]"
|
|
633
|
-
}
|
|
634
|
-
]
|
|
635
|
-
}
|
|
636
|
-
]
|
|
637
|
-
},
|
|
638
|
-
{
|
|
639
|
-
"name": "Blind Spot Detection",
|
|
640
|
-
"score": "[X]",
|
|
641
|
-
"max_points": 15,
|
|
642
|
-
"findings": [
|
|
643
|
-
{
|
|
644
|
-
"criterion": "[criterion name from framework]",
|
|
645
|
-
"points_earned": "[X]",
|
|
646
|
-
"points_possible": "[X]",
|
|
647
|
-
"issues": [
|
|
648
|
-
{
|
|
649
|
-
"title": "[Short issue title]",
|
|
650
|
-
"priority": "[critical|suggested|backlog]",
|
|
651
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
652
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
653
|
-
"file_path": "[path/to/file]",
|
|
654
|
-
"line_number": "[N]",
|
|
655
|
-
"description": "[Full explanation]"
|
|
656
|
-
}
|
|
657
|
-
]
|
|
658
|
-
}
|
|
659
|
-
]
|
|
660
|
-
},
|
|
661
|
-
{
|
|
662
|
-
"name": "Actionability",
|
|
663
|
-
"score": "[X]",
|
|
664
|
-
"max_points": 15,
|
|
665
|
-
"findings": [
|
|
666
|
-
{
|
|
667
|
-
"criterion": "[criterion name from framework]",
|
|
668
|
-
"points_earned": "[X]",
|
|
669
|
-
"points_possible": "[X]",
|
|
670
|
-
"issues": [
|
|
671
|
-
{
|
|
672
|
-
"title": "[Short issue title]",
|
|
673
|
-
"priority": "[critical|suggested|backlog]",
|
|
674
|
-
"type": "[feature|bug|refactor|config|docs|infra|security|test|observation|deficiency|ambiguity]",
|
|
675
|
-
"failure_code": "[DOMAIN-MODE/SEVERITY]",
|
|
676
|
-
"file_path": "[path/to/file]",
|
|
677
|
-
"line_number": "[N]",
|
|
678
|
-
"description": "[Full explanation]"
|
|
679
|
-
}
|
|
680
|
-
]
|
|
681
|
-
}
|
|
682
|
-
]
|
|
683
|
-
}
|
|
684
|
-
],
|
|
685
|
-
"summary": {
|
|
686
|
-
"total_issues": "[N]",
|
|
687
|
-
"by_priority": {
|
|
688
|
-
"critical": "[N]",
|
|
689
|
-
"suggested": "[N]",
|
|
690
|
-
"backlog": "[N]"
|
|
691
|
-
},
|
|
692
|
-
"by_severity": {
|
|
693
|
-
"critical": "[N]",
|
|
694
|
-
"high": "[N]",
|
|
695
|
-
"medium": "[N]",
|
|
696
|
-
"low": "[N]",
|
|
697
|
-
"info": "[N]"
|
|
698
|
-
},
|
|
699
|
-
"by_type": {
|
|
700
|
-
"feature": "[N]",
|
|
701
|
-
"bug": "[N]",
|
|
702
|
-
"refactor": "[N]",
|
|
703
|
-
"config": "[N]",
|
|
704
|
-
"docs": "[N]",
|
|
705
|
-
"infra": "[N]",
|
|
706
|
-
"security": "[N]",
|
|
707
|
-
"test": "[N]",
|
|
708
|
-
"observation": "[N]",
|
|
709
|
-
"deficiency": "[N]",
|
|
710
|
-
"ambiguity": "[N]"
|
|
711
|
-
}
|
|
712
|
-
}
|
|
713
|
-
}
|
|
714
|
-
```
|
|
715
511
|
```
|
|
716
512
|
|
|
513
|
+
|
|
717
514
|
### Output Templates
|
|
718
515
|
|
|
719
516
|
#### header
|