mova_agent 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 +94 -0
- package/build/scripts/check_docs.d.ts +2 -0
- package/build/scripts/check_docs.d.ts.map +1 -0
- package/build/scripts/check_docs.js +48 -0
- package/build/scripts/check_docs.js.map +1 -0
- package/build/scripts/check_schema_paths.d.ts +3 -0
- package/build/scripts/check_schema_paths.d.ts.map +1 -0
- package/build/scripts/check_schema_paths.js +15 -0
- package/build/scripts/check_schema_paths.js.map +1 -0
- package/build/scripts/check_schema_paths_dist.d.ts +3 -0
- package/build/scripts/check_schema_paths_dist.d.ts.map +1 -0
- package/build/scripts/check_schema_paths_dist.js +16 -0
- package/build/scripts/check_schema_paths_dist.js.map +1 -0
- package/build/scripts/check_structure.d.ts +2 -0
- package/build/scripts/check_structure.d.ts.map +1 -0
- package/build/scripts/check_structure.js +59 -0
- package/build/scripts/check_structure.js.map +1 -0
- package/build/scripts/debug_validate.d.ts +3 -0
- package/build/scripts/debug_validate.d.ts.map +1 -0
- package/build/scripts/debug_validate.js +39 -0
- package/build/scripts/debug_validate.js.map +1 -0
- package/build/scripts/debug_validate2.d.ts +3 -0
- package/build/scripts/debug_validate2.d.ts.map +1 -0
- package/build/scripts/debug_validate2.js +18 -0
- package/build/scripts/debug_validate2.js.map +1 -0
- package/build/scripts/debug_validate_runtime.d.ts +3 -0
- package/build/scripts/debug_validate_runtime.d.ts.map +1 -0
- package/build/scripts/debug_validate_runtime.js +39 -0
- package/build/scripts/debug_validate_runtime.js.map +1 -0
- package/build/scripts/dump_ajv_schemas.d.ts +2 -0
- package/build/scripts/dump_ajv_schemas.d.ts.map +1 -0
- package/build/scripts/dump_ajv_schemas.js +22 -0
- package/build/scripts/dump_ajv_schemas.js.map +1 -0
- package/build/scripts/dump_resolved_schema.d.ts +3 -0
- package/build/scripts/dump_resolved_schema.d.ts.map +1 -0
- package/build/scripts/dump_resolved_schema.js +22 -0
- package/build/scripts/dump_resolved_schema.js.map +1 -0
- package/build/scripts/gen_types.d.ts +2 -0
- package/build/scripts/gen_types.d.ts.map +1 -0
- package/build/scripts/gen_types.js +133 -0
- package/build/scripts/gen_types.js.map +1 -0
- package/build/scripts/inspect_validation.d.ts +3 -0
- package/build/scripts/inspect_validation.d.ts.map +1 -0
- package/build/scripts/inspect_validation.js +36 -0
- package/build/scripts/inspect_validation.js.map +1 -0
- package/build/scripts/legacy/check_errors.d.ts +3 -0
- package/build/scripts/legacy/check_errors.d.ts.map +1 -0
- package/build/scripts/legacy/check_errors.js +14 -0
- package/build/scripts/legacy/check_errors.js.map +1 -0
- package/build/scripts/legacy/compile_test.d.ts +5 -0
- package/build/scripts/legacy/compile_test.d.ts.map +1 -0
- package/build/scripts/legacy/compile_test.js +25 -0
- package/build/scripts/legacy/compile_test.js.map +1 -0
- package/build/scripts/legacy/debug_neg.d.ts +6 -0
- package/build/scripts/legacy/debug_neg.d.ts.map +1 -0
- package/build/scripts/legacy/debug_neg.js +230 -0
- package/build/scripts/legacy/debug_neg.js.map +1 -0
- package/build/scripts/legacy/debug_quality_pos.d.ts +5 -0
- package/build/scripts/legacy/debug_quality_pos.d.ts.map +1 -0
- package/build/scripts/legacy/debug_quality_pos.js +195 -0
- package/build/scripts/legacy/debug_quality_pos.js.map +1 -0
- package/build/scripts/legacy/debug_test.d.ts +1 -0
- package/build/scripts/legacy/debug_test.d.ts.map +1 -0
- package/build/scripts/legacy/debug_test.js +51 -0
- package/build/scripts/legacy/debug_test.js.map +1 -0
- package/build/scripts/legacy/hello_test.d.ts +1 -0
- package/build/scripts/legacy/hello_test.d.ts.map +1 -0
- package/build/scripts/legacy/hello_test.js +3 -0
- package/build/scripts/legacy/hello_test.js.map +1 -0
- package/build/scripts/legacy/import_test.d.ts +2 -0
- package/build/scripts/legacy/import_test.d.ts.map +1 -0
- package/build/scripts/legacy/import_test.js +4 -0
- package/build/scripts/legacy/import_test.js.map +1 -0
- package/build/scripts/legacy/quality_neg.d.ts +6 -0
- package/build/scripts/legacy/quality_neg.d.ts.map +1 -0
- package/build/scripts/legacy/quality_neg.js +362 -0
- package/build/scripts/legacy/quality_neg.js.map +1 -0
- package/build/scripts/legacy/quality_pos.d.ts +7 -0
- package/build/scripts/legacy/quality_pos.d.ts.map +1 -0
- package/build/scripts/legacy/quality_pos.js +345 -0
- package/build/scripts/legacy/quality_pos.js.map +1 -0
- package/build/scripts/legacy/simple_test.d.ts +2 -0
- package/build/scripts/legacy/simple_test.d.ts.map +1 -0
- package/build/scripts/legacy/simple_test.js +4 -0
- package/build/scripts/legacy/simple_test.js.map +1 -0
- package/build/scripts/legacy/test.d.ts +1 -0
- package/build/scripts/legacy/test.d.ts.map +1 -0
- package/build/scripts/legacy/test.js +3 -0
- package/build/scripts/legacy/test.js.map +1 -0
- package/build/scripts/legacy/test_additional_props.d.ts +6 -0
- package/build/scripts/legacy/test_additional_props.d.ts.map +1 -0
- package/build/scripts/legacy/test_additional_props.js +45 -0
- package/build/scripts/legacy/test_additional_props.js.map +1 -0
- package/build/scripts/legacy/test_ajv_validation.d.ts +2 -0
- package/build/scripts/legacy/test_ajv_validation.d.ts.map +1 -0
- package/build/scripts/legacy/test_ajv_validation.js +35 -0
- package/build/scripts/legacy/test_ajv_validation.js.map +1 -0
- package/build/scripts/legacy/test_build.d.ts +2 -0
- package/build/scripts/legacy/test_build.d.ts.map +1 -0
- package/build/scripts/legacy/test_build.js +14 -0
- package/build/scripts/legacy/test_build.js.map +1 -0
- package/build/scripts/legacy/test_direct.d.ts +3 -0
- package/build/scripts/legacy/test_direct.d.ts.map +1 -0
- package/build/scripts/legacy/test_direct.js +24 -0
- package/build/scripts/legacy/test_direct.js.map +1 -0
- package/build/scripts/legacy/test_import.d.ts +2 -0
- package/build/scripts/legacy/test_import.d.ts.map +1 -0
- package/build/scripts/legacy/test_import.js +7 -0
- package/build/scripts/legacy/test_import.js.map +1 -0
- package/build/scripts/legacy/test_mova_schemas.d.ts +2 -0
- package/build/scripts/legacy/test_mova_schemas.d.ts.map +1 -0
- package/build/scripts/legacy/test_mova_schemas.js +37 -0
- package/build/scripts/legacy/test_mova_schemas.js.map +1 -0
- package/build/scripts/legacy/test_scenario_integration.d.ts +13 -0
- package/build/scripts/legacy/test_scenario_integration.d.ts.map +1 -0
- package/build/scripts/legacy/test_scenario_integration.js +156 -0
- package/build/scripts/legacy/test_scenario_integration.js.map +1 -0
- package/build/scripts/legacy/test_schemas.d.ts +2 -0
- package/build/scripts/legacy/test_schemas.d.ts.map +1 -0
- package/build/scripts/legacy/test_schemas.js +48 -0
- package/build/scripts/legacy/test_schemas.js.map +1 -0
- package/build/scripts/legacy/test_schemas_simple.d.ts +2 -0
- package/build/scripts/legacy/test_schemas_simple.d.ts.map +1 -0
- package/build/scripts/legacy/test_schemas_simple.js +36 -0
- package/build/scripts/legacy/test_schemas_simple.js.map +1 -0
- package/build/scripts/legacy/test_simple.d.ts +4 -0
- package/build/scripts/legacy/test_simple.d.ts.map +1 -0
- package/build/scripts/legacy/test_simple.js +17 -0
- package/build/scripts/legacy/test_simple.js.map +1 -0
- package/build/scripts/legacy/test_warnings.d.ts +6 -0
- package/build/scripts/legacy/test_warnings.d.ts.map +1 -0
- package/build/scripts/legacy/test_warnings.js +48 -0
- package/build/scripts/legacy/test_warnings.js.map +1 -0
- package/build/scripts/legacy/very_simple_test.d.ts +1 -0
- package/build/scripts/legacy/very_simple_test.d.ts.map +1 -0
- package/build/scripts/legacy/very_simple_test.js +3 -0
- package/build/scripts/legacy/very_simple_test.js.map +1 -0
- package/build/scripts/merge_and_validate.d.ts +6 -0
- package/build/scripts/merge_and_validate.d.ts.map +1 -0
- package/build/scripts/merge_and_validate.js +53 -0
- package/build/scripts/merge_and_validate.js.map +1 -0
- package/build/src/ajv/ajv_loader.d.ts +47 -0
- package/build/src/ajv/ajv_loader.d.ts.map +1 -0
- package/build/src/ajv/ajv_loader.js +274 -0
- package/build/src/ajv/ajv_loader.js.map +1 -0
- package/build/src/ajv/schema_registry.d.ts +19 -0
- package/build/src/ajv/schema_registry.d.ts.map +1 -0
- package/build/src/ajv/schema_registry.js +121 -0
- package/build/src/ajv/schema_registry.js.map +1 -0
- package/build/src/drivers/__tests__/registry.test.d.ts +2 -0
- package/build/src/drivers/__tests__/registry.test.d.ts.map +1 -0
- package/build/src/drivers/__tests__/registry.test.js +100 -0
- package/build/src/drivers/__tests__/registry.test.js.map +1 -0
- package/build/src/drivers/httpDriver.d.ts +3 -0
- package/build/src/drivers/httpDriver.d.ts.map +1 -0
- package/build/src/drivers/httpDriver.js +76 -0
- package/build/src/drivers/httpDriver.js.map +1 -0
- package/build/src/drivers/index.d.ts +20 -0
- package/build/src/drivers/index.d.ts.map +1 -0
- package/build/src/drivers/index.js +33 -0
- package/build/src/drivers/index.js.map +1 -0
- package/build/src/drivers/restrictedShellDriver.d.ts +12 -0
- package/build/src/drivers/restrictedShellDriver.d.ts.map +1 -0
- package/build/src/drivers/restrictedShellDriver.js +88 -0
- package/build/src/drivers/restrictedShellDriver.js.map +1 -0
- package/build/src/episodes/__tests__/episode_writer_atomic.test.d.ts +2 -0
- package/build/src/episodes/__tests__/episode_writer_atomic.test.d.ts.map +1 -0
- package/build/src/episodes/__tests__/episode_writer_atomic.test.js +86 -0
- package/build/src/episodes/__tests__/episode_writer_atomic.test.js.map +1 -0
- package/build/src/episodes/episode_writer.d.ts +100 -0
- package/build/src/episodes/episode_writer.d.ts.map +1 -0
- package/build/src/episodes/episode_writer.js +503 -0
- package/build/src/episodes/episode_writer.js.map +1 -0
- package/build/src/episodes/episode_writer_atomic.d.ts +10 -0
- package/build/src/episodes/episode_writer_atomic.d.ts.map +1 -0
- package/build/src/episodes/episode_writer_atomic.js +46 -0
- package/build/src/episodes/episode_writer_atomic.js.map +1 -0
- package/build/src/evidence/evidence_writer.d.ts +16 -0
- package/build/src/evidence/evidence_writer.d.ts.map +1 -0
- package/build/src/evidence/evidence_writer.js +78 -0
- package/build/src/evidence/evidence_writer.js.map +1 -0
- package/build/src/handlers/registry.d.ts +20 -0
- package/build/src/handlers/registry.d.ts.map +1 -0
- package/build/src/handlers/registry.js +38 -0
- package/build/src/handlers/registry.js.map +1 -0
- package/build/src/interpreter/interpreter.d.ts +90 -0
- package/build/src/interpreter/interpreter.d.ts.map +1 -0
- package/build/src/interpreter/interpreter.js +732 -0
- package/build/src/interpreter/interpreter.js.map +1 -0
- package/build/src/interpreter/interpreter_with_budget.d.ts +92 -0
- package/build/src/interpreter/interpreter_with_budget.d.ts.map +1 -0
- package/build/src/interpreter/interpreter_with_budget.js +678 -0
- package/build/src/interpreter/interpreter_with_budget.js.map +1 -0
- package/build/src/logging/logger.d.ts +83 -0
- package/build/src/logging/logger.d.ts.map +1 -0
- package/build/src/logging/logger.js +226 -0
- package/build/src/logging/logger.js.map +1 -0
- package/build/src/policy/policy_engine.d.ts +116 -0
- package/build/src/policy/policy_engine.d.ts.map +1 -0
- package/build/src/policy/policy_engine.js +296 -0
- package/build/src/policy/policy_engine.js.map +1 -0
- package/build/src/skills/skills_layer.d.ts +94 -0
- package/build/src/skills/skills_layer.d.ts.map +1 -0
- package/build/src/skills/skills_layer.js +405 -0
- package/build/src/skills/skills_layer.js.map +1 -0
- package/build/src/telemetry/token_budget_enforcer.d.ts +113 -0
- package/build/src/telemetry/token_budget_enforcer.d.ts.map +1 -0
- package/build/src/telemetry/token_budget_enforcer.js +253 -0
- package/build/src/telemetry/token_budget_enforcer.js.map +1 -0
- package/build/src/telemetry/token_budget_loader.d.ts +29 -0
- package/build/src/telemetry/token_budget_loader.d.ts.map +1 -0
- package/build/src/telemetry/token_budget_loader.js +112 -0
- package/build/src/telemetry/token_budget_loader.js.map +1 -0
- package/build/src/telemetry/token_meter.d.ts +65 -0
- package/build/src/telemetry/token_meter.d.ts.map +1 -0
- package/build/src/telemetry/token_meter.js +153 -0
- package/build/src/telemetry/token_meter.js.map +1 -0
- package/build/src/ux/cli_interface.d.ts +85 -0
- package/build/src/ux/cli_interface.d.ts.map +1 -0
- package/build/src/ux/cli_interface.js +651 -0
- package/build/src/ux/cli_interface.js.map +1 -0
- package/build/test/drivers/registry.test.d.ts +2 -0
- package/build/test/drivers/registry.test.d.ts.map +1 -0
- package/build/test/drivers/registry.test.js +100 -0
- package/build/test/drivers/registry.test.js.map +1 -0
- package/build/test/episodes/episode_writer_atomic.test.d.ts +2 -0
- package/build/test/episodes/episode_writer_atomic.test.d.ts.map +1 -0
- package/build/test/episodes/episode_writer_atomic.test.js +86 -0
- package/build/test/episodes/episode_writer_atomic.test.js.map +1 -0
- package/build/tests/ajv/check_schemas.d.ts +4 -0
- package/build/tests/ajv/check_schemas.d.ts.map +1 -0
- package/build/tests/ajv/check_schemas.js +27 -0
- package/build/tests/ajv/check_schemas.js.map +1 -0
- package/build/tests/ajv/final_test.d.ts +2 -0
- package/build/tests/ajv/final_test.d.ts.map +1 -0
- package/build/tests/ajv/final_test.js +42 -0
- package/build/tests/ajv/final_test.js.map +1 -0
- package/build/tests/ajv/simple_test.d.ts +2 -0
- package/build/tests/ajv/simple_test.d.ts.map +1 -0
- package/build/tests/ajv/simple_test.js +40 -0
- package/build/tests/ajv/simple_test.js.map +1 -0
- package/build/tests/ajv/test_schema_loading.d.ts +2 -0
- package/build/tests/ajv/test_schema_loading.d.ts.map +1 -0
- package/build/tests/ajv/test_schema_loading.js +39 -0
- package/build/tests/ajv/test_schema_loading.js.map +1 -0
- package/build/tools/mova-agent.d.ts +2 -0
- package/build/tools/mova-agent.d.ts.map +1 -0
- package/build/tools/mova-agent.js +15 -0
- package/build/tools/mova-agent.js.map +1 -0
- package/package.json +63 -0
- package/src/ajv/ajv_loader.ts +311 -0
- package/src/ajv/schema_registry.ts +92 -0
- package/src/drivers/httpDriver.ts +90 -0
- package/src/drivers/index.ts +48 -0
- package/src/drivers/restrictedShellDriver.ts +68 -0
- package/src/episodes/episode_writer.ts +675 -0
- package/src/episodes/episode_writer_atomic.ts +44 -0
- package/src/evidence/evidence_writer.ts +74 -0
- package/src/handlers/registry.ts +53 -0
- package/src/interpreter/interpreter.ts +1009 -0
- package/src/interpreter/interpreter_with_budget.ts +923 -0
- package/src/logging/logger.ts +269 -0
- package/src/policy/policy_engine.ts +395 -0
- package/src/skills/skills_layer.ts +510 -0
- package/src/telemetry/token_budget_enforcer.ts +338 -0
- package/src/telemetry/token_budget_loader.ts +133 -0
- package/src/telemetry/token_meter.ts +185 -0
- package/src/types/generated/ds.connector_core_v1.d.ts +116 -0
- package/src/types/generated/ds.instruction_profile_core_v1.d.ts +141 -0
- package/src/types/generated/ds.mova4_core_catalog_v1.d.ts +80 -0
- package/src/types/generated/ds.mova_agent_run_summary_v1.d.ts +120 -0
- package/src/types/generated/ds.mova_agent_step_v1.d.ts +53 -0
- package/src/types/generated/ds.mova_agent_tool_pool_v1.d.ts +152 -0
- package/src/types/generated/ds.mova_agent_validation_report_v1.d.ts +43 -0
- package/src/types/generated/ds.mova_episode_core_v1.d.ts +56 -0
- package/src/types/generated/ds.mova_schema_core_v1.d.ts +49 -0
- package/src/types/generated/ds.mova_token_budget_contract_v0.d.ts +140 -0
- package/src/types/generated/ds.runtime_binding_core_v1.d.ts +112 -0
- package/src/types/generated/ds.security_event_episode_core_v1.d.ts +138 -0
- package/src/types/generated/ds.ui_text_bundle_core_v1.d.ts +118 -0
- package/src/types/generated/env.instruction_profile_publish_v1.d.ts +159 -0
- package/src/types/generated/env.mova4_core_catalog_publish_v1.d.ts +25 -0
- package/src/types/generated/env.mova_agent_plan_v1.d.ts +40 -0
- package/src/types/generated/env.mova_agent_request_v1.d.ts +43 -0
- package/src/types/generated/env.security_event_store_v1.d.ts +191 -0
- package/src/types/generated/index.d.ts +25 -0
- package/src/ux/cli_interface.ts +719 -0
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
const path_1 = __importDefault(require("path"));
|
|
7
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
8
|
+
const json_schema_to_typescript_1 = require("json-schema-to-typescript");
|
|
9
|
+
const SCHEMA_DIR_CANDIDATES = [
|
|
10
|
+
path_1.default.resolve(__dirname, '../schemas'),
|
|
11
|
+
path_1.default.resolve(__dirname, '../vendor/MOVA/schemas'),
|
|
12
|
+
path_1.default.resolve(__dirname, '../package/schemas'),
|
|
13
|
+
];
|
|
14
|
+
const SCHEMA_DIRS = SCHEMA_DIR_CANDIDATES.filter((dir) => fs_extra_1.default.existsSync(dir));
|
|
15
|
+
const FALLBACK_SCHEMA_DIRS = SCHEMA_DIRS; // reuse discovered dirs for ref resolution
|
|
16
|
+
const OUTPUT_DIR = path_1.default.resolve(__dirname, '../src/types/generated');
|
|
17
|
+
const BANNER = `/* tslint:disable */
|
|
18
|
+
/* eslint-disable */
|
|
19
|
+
/**
|
|
20
|
+
* This file was automatically generated by scripts/gen_types.ts.
|
|
21
|
+
* Do not edit manually. Update JSON Schemas and rerun npm run gen:types.
|
|
22
|
+
*/
|
|
23
|
+
`;
|
|
24
|
+
const MOVA_BASE_URL = 'https://mova.dev/schemas/';
|
|
25
|
+
const INLINE_CACHE = new Map();
|
|
26
|
+
function findSchemaPath(normalized, primaryDir) {
|
|
27
|
+
const searchDirs = [primaryDir, ...FALLBACK_SCHEMA_DIRS];
|
|
28
|
+
for (const dir of searchDirs) {
|
|
29
|
+
const candidate = path_1.default.join(dir, normalized);
|
|
30
|
+
if (fs_extra_1.default.existsSync(candidate)) {
|
|
31
|
+
return candidate;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
function rewriteRefs(value, schemaDir, seenPaths = new Set()) {
|
|
37
|
+
if (typeof value === 'string') {
|
|
38
|
+
if (value.startsWith(MOVA_BASE_URL)) {
|
|
39
|
+
const fileName = value.replace(MOVA_BASE_URL, '');
|
|
40
|
+
const normalized = fileName.endsWith('.schema.json') ? fileName : `${fileName}.schema.json`;
|
|
41
|
+
const targetPath = findSchemaPath(normalized, schemaDir);
|
|
42
|
+
if (!targetPath) {
|
|
43
|
+
console.warn(`Warning: could not inline schema for ${value}: not found in known schema dirs`);
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
46
|
+
if (INLINE_CACHE.has(targetPath)) {
|
|
47
|
+
return INLINE_CACHE.get(targetPath);
|
|
48
|
+
}
|
|
49
|
+
if (seenPaths.has(targetPath)) {
|
|
50
|
+
// Avoid circular refs by returning original $ref
|
|
51
|
+
return value;
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
const targetSchema = fs_extra_1.default.readJsonSync(targetPath);
|
|
55
|
+
seenPaths.add(targetPath);
|
|
56
|
+
const rewritten = rewriteRefs(targetSchema, path_1.default.dirname(targetPath), seenPaths);
|
|
57
|
+
INLINE_CACHE.set(targetPath, rewritten);
|
|
58
|
+
return rewritten;
|
|
59
|
+
}
|
|
60
|
+
catch (err) {
|
|
61
|
+
console.warn(`Warning: could not inline schema for ${value}: ${err.message}`);
|
|
62
|
+
return value;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return value;
|
|
66
|
+
}
|
|
67
|
+
if (Array.isArray(value)) {
|
|
68
|
+
return value.map((item) => rewriteRefs(item, schemaDir, seenPaths));
|
|
69
|
+
}
|
|
70
|
+
if (value && typeof value === 'object') {
|
|
71
|
+
if ('$ref' in value && typeof value.$ref === 'string') {
|
|
72
|
+
return rewriteRefs(value.$ref, schemaDir, seenPaths);
|
|
73
|
+
}
|
|
74
|
+
const next = {};
|
|
75
|
+
for (const [k, v] of Object.entries(value)) {
|
|
76
|
+
next[k] = rewriteRefs(v, schemaDir, seenPaths);
|
|
77
|
+
}
|
|
78
|
+
return next;
|
|
79
|
+
}
|
|
80
|
+
return value;
|
|
81
|
+
}
|
|
82
|
+
async function generateTypes() {
|
|
83
|
+
if (SCHEMA_DIRS.length === 0) {
|
|
84
|
+
console.error('No schema directories found (checked schemas/, vendor/MOVA/schemas, package/schemas)');
|
|
85
|
+
process.exit(1);
|
|
86
|
+
}
|
|
87
|
+
await fs_extra_1.default.ensureDir(OUTPUT_DIR);
|
|
88
|
+
const exported = [];
|
|
89
|
+
const seen = new Set();
|
|
90
|
+
for (const dir of SCHEMA_DIRS) {
|
|
91
|
+
const entries = await fs_extra_1.default.readdir(dir);
|
|
92
|
+
const schemaFiles = entries.filter((f) => f.endsWith('.schema.json')).sort();
|
|
93
|
+
for (const file of schemaFiles) {
|
|
94
|
+
const schemaPath = path_1.default.join(dir, file);
|
|
95
|
+
const baseName = file.replace(/\.schema\.json$/, '');
|
|
96
|
+
if (seen.has(baseName)) {
|
|
97
|
+
// Prefer first occurrence (local schemas override vendor duplicates)
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
const targetPath = path_1.default.join(OUTPUT_DIR, `${baseName}.d.ts`);
|
|
101
|
+
const schemaDir = path_1.default.dirname(schemaPath);
|
|
102
|
+
const schemaJson = await fs_extra_1.default.readJson(schemaPath);
|
|
103
|
+
const rewrittenSchema = rewriteRefs(schemaJson, schemaDir);
|
|
104
|
+
const ts = await (0, json_schema_to_typescript_1.compile)(rewrittenSchema, baseName, {
|
|
105
|
+
cwd: schemaDir,
|
|
106
|
+
bannerComment: BANNER,
|
|
107
|
+
style: {
|
|
108
|
+
singleQuote: true,
|
|
109
|
+
},
|
|
110
|
+
$refOptions: {
|
|
111
|
+
resolve: {
|
|
112
|
+
file: true,
|
|
113
|
+
http: false, // avoid remote fetch; rely on local schemas
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
await fs_extra_1.default.writeFile(targetPath, ts, 'utf8');
|
|
118
|
+
exported.push(baseName);
|
|
119
|
+
seen.add(baseName);
|
|
120
|
+
console.log(`Generated ${path_1.default.relative(process.cwd(), targetPath)}`);
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
const indexContent = `${BANNER}\n${exported
|
|
124
|
+
.map((name) => `export * from './${name}';`)
|
|
125
|
+
.join('\n')}\n`;
|
|
126
|
+
await fs_extra_1.default.writeFile(path_1.default.join(OUTPUT_DIR, 'index.d.ts'), indexContent, 'utf8');
|
|
127
|
+
console.log(`Generated ${path_1.default.relative(process.cwd(), path_1.default.join(OUTPUT_DIR, 'index.d.ts'))}`);
|
|
128
|
+
}
|
|
129
|
+
generateTypes().catch((err) => {
|
|
130
|
+
console.error('Failed to generate types:', err);
|
|
131
|
+
process.exit(1);
|
|
132
|
+
});
|
|
133
|
+
//# sourceMappingURL=gen_types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gen_types.js","sourceRoot":"","sources":["../../scripts/gen_types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect_validation.d.ts","sourceRoot":"","sources":["../../scripts/inspect_validation.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,EAAE,KAAsB,CAAC;AAC/B,QAAA,MAAM,IAAI,KAAkB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
const fs = require('fs-extra');
|
|
4
|
+
const path = require('path');
|
|
5
|
+
(async () => {
|
|
6
|
+
try {
|
|
7
|
+
const indexPath = path.join('artifacts', 'mova_agent', 'req_99be755e-3a41-40f6-9be0-6df3829e3f09', 'runs', 'run_958577be-c4f1-4149-af40-17aa27daa93c', 'episodes', 'index.jsonl');
|
|
8
|
+
const content = await fs.readFile(indexPath, 'utf8');
|
|
9
|
+
const lines = content.trim().split('\n').filter(Boolean);
|
|
10
|
+
const eps = lines.map((l) => JSON.parse(l));
|
|
11
|
+
const sec = eps.find((e) => e.episode_type && e.episode_type.startsWith('security_event'));
|
|
12
|
+
console.log('Episode object:', JSON.stringify(sec, null, 2));
|
|
13
|
+
const ajvLoader = require('../build/src/ajv/ajv_loader');
|
|
14
|
+
const validate = ajvLoader.validate;
|
|
15
|
+
const ajvInst = ajvLoader.ajvLoader.getAjv;
|
|
16
|
+
const v = await validate('ds.security_event_episode_core_v1', sec);
|
|
17
|
+
console.log('validate() returned:', v);
|
|
18
|
+
const validateFunc = ajvInst.getSchema('ds.security_event_episode_core_v1') ||
|
|
19
|
+
ajvInst.getSchema('https://mova.dev/schemas/ds.security_event_episode_core_v1.schema.json');
|
|
20
|
+
console.log('Compiled validator present?:', !!validateFunc);
|
|
21
|
+
if (validateFunc) {
|
|
22
|
+
const ok = validateFunc(sec);
|
|
23
|
+
console.log('validateFunc result:', ok);
|
|
24
|
+
console.log('validateFunc.errors:', JSON.stringify(validateFunc.errors, null, 2));
|
|
25
|
+
}
|
|
26
|
+
// Also attempt to compile merged schema manually for more context
|
|
27
|
+
const loader = ajvLoader.ajvLoader;
|
|
28
|
+
console.log('Loaded schema keys in cache:', loader.getLoadedSchemas());
|
|
29
|
+
process.exit(0);
|
|
30
|
+
}
|
|
31
|
+
catch (err) {
|
|
32
|
+
console.error(err);
|
|
33
|
+
process.exit(2);
|
|
34
|
+
}
|
|
35
|
+
})();
|
|
36
|
+
//# sourceMappingURL=inspect_validation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspect_validation.js","sourceRoot":"","sources":["../../scripts/inspect_validation.ts"],"names":[],"mappings":";AAAA,cAAc;AACd,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAC/B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC,KAAK,IAAI,EAAE;IACV,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,WAAW,EACX,YAAY,EACZ,0CAA0C,EAC1C,MAAM,EACN,0CAA0C,EAC1C,UAAU,EACV,aAAa,CACd,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACzD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAC3F,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAE7D,MAAM,SAAS,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;QACzD,MAAM,QAAQ,GAAG,SAAS,CAAC,QAAQ,CAAC;QACpC,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC;QAE3C,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,mCAAmC,EAAE,GAAG,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC;QAEvC,MAAM,YAAY,GAChB,OAAO,CAAC,SAAS,CAAC,mCAAmC,CAAC;YACtD,OAAO,CAAC,SAAS,CAAC,wEAAwE,CAAC,CAAC;QAC9F,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QAC5D,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,EAAE,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;YAC7B,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACpF,CAAC;QAED,kEAAkE;QAClE,MAAM,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,EAAE,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check_errors.d.ts","sourceRoot":"","sources":["../../../scripts/legacy/check_errors.ts"],"names":[],"mappings":"AACA,QAAA,MAAQ,KAAK,KAA6B,CAAC;AAE3C,QAAA,MAAM,GAAG,KAAwB,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
const { spawn } = require('child_process');
|
|
4
|
+
const tsc = spawn('npx', ['tsc']);
|
|
5
|
+
tsc.stdout.on('data', (data) => {
|
|
6
|
+
console.log(`stdout: ${data}`);
|
|
7
|
+
});
|
|
8
|
+
tsc.stderr.on('data', (data) => {
|
|
9
|
+
console.error(`stderr: ${data}`);
|
|
10
|
+
});
|
|
11
|
+
tsc.on('close', (code) => {
|
|
12
|
+
console.log(`child process exited with code ${code}`);
|
|
13
|
+
});
|
|
14
|
+
//# sourceMappingURL=check_errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"check_errors.js","sourceRoot":"","sources":["../../../scripts/legacy/check_errors.ts"],"names":[],"mappings":";AAAA,cAAc;AACd,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;AAE3C,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAElC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;IAC7B,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;AACjC,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;IAC7B,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;IACvB,OAAO,CAAC,GAAG,CAAC,kCAAkC,IAAI,EAAE,CAAC,CAAC;AACxD,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile_test.d.ts","sourceRoot":"","sources":["../../../scripts/legacy/compile_test.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,EAAE,KAAwB,CAAC;AAGjC,QAAA,MAAM,OAAO,KAMX,CAAC;AAEH,QAAA,MAAM,UAAU,KAAiB,CAAC;AAElC,QAAA,MAAM,cAAc,KAAmE,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// @ts-nocheck
|
|
3
|
+
const ts = require('typescript');
|
|
4
|
+
// Create a program and check for errors
|
|
5
|
+
const program = ts.createProgram(['tools/mova-agent.ts'], {
|
|
6
|
+
target: ts.ScriptTarget.ES2020,
|
|
7
|
+
module: ts.ModuleKind.CommonJS,
|
|
8
|
+
esModuleInterop: true,
|
|
9
|
+
skipLibCheck: true,
|
|
10
|
+
strict: false
|
|
11
|
+
});
|
|
12
|
+
const emitResult = program.emit();
|
|
13
|
+
const allDiagnostics = ts.getPreEmitDiagnostics(program).concat(emitResult.diagnostics);
|
|
14
|
+
allDiagnostics.forEach(diagnostic => {
|
|
15
|
+
if (diagnostic.file) {
|
|
16
|
+
const { line, character } = ts.getLineAndCharacterOfPosition(diagnostic.file, diagnostic.start);
|
|
17
|
+
const message = ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n');
|
|
18
|
+
console.log(`${diagnostic.file.fileName} (${line + 1},${character + 1}): ${message}`);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
console.log(ts.flattenDiagnosticMessageText(diagnostic.messageText, '\n'));
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
console.log(`Found ${allDiagnostics.length} errors`);
|
|
25
|
+
//# sourceMappingURL=compile_test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compile_test.js","sourceRoot":"","sources":["../../../scripts/legacy/compile_test.ts"],"names":[],"mappings":";AAAA,cAAc;AACd,MAAM,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;AAEjC,wCAAwC;AACxC,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,qBAAqB,CAAC,EAAE;IACxD,MAAM,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM;IAC9B,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ;IAC9B,eAAe,EAAE,IAAI;IACrB,YAAY,EAAE,IAAI;IAClB,MAAM,EAAE,KAAK;CACd,CAAC,CAAC;AAEH,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;AAElC,MAAM,cAAc,GAAG,EAAE,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAExF,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;IAClC,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,6BAA6B,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,CAAC,CAAC;QAChG,MAAM,OAAO,GAAG,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC9E,OAAO,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,MAAM,OAAO,EAAE,CAAC,CAAC;IACxF,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,4BAA4B,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,GAAG,CAAC,SAAS,cAAc,CAAC,MAAM,SAAS,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug_neg.d.ts","sourceRoot":"","sources":["../../../scripts/legacy/debug_neg.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,EAAE,KAAsB,CAAC;AAC/B,QAAA,MAAM,IAAI,KAAkB,CAAC;AAC7B,QAAA,MAAY,MAAM,KAAoB,CAAC;AACvC,QAAA,MAAQ,WAAW,KAAmD,CAAC;AACvE,QAAA,MAAQ,QAAQ,KAA0C,CAAC"}
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
!/usr/bin / env;
|
|
3
|
+
node;
|
|
4
|
+
const fs = require('fs-extra');
|
|
5
|
+
const path = require('path');
|
|
6
|
+
const { v4: uuidv4 } = require('uuid');
|
|
7
|
+
const { Interpreter } = require('./build/src/interpreter/interpreter');
|
|
8
|
+
const { validate } = require('./build/src/ajv/ajv_loader');
|
|
9
|
+
async function initializeSchemaLoader() {
|
|
10
|
+
const { AjvSchemaLoader } = require('./build/src/ajv/ajv_loader');
|
|
11
|
+
const loader = new AjvSchemaLoader();
|
|
12
|
+
await loader.initialize();
|
|
13
|
+
return loader;
|
|
14
|
+
}
|
|
15
|
+
async function runNegativeQualitySuite() {
|
|
16
|
+
console.log('Running negative quality suite...');
|
|
17
|
+
try {
|
|
18
|
+
// Initialize schema loader first
|
|
19
|
+
await initializeSchemaLoader();
|
|
20
|
+
// Create a plan that should trigger a security event (using a disallowed connector)
|
|
21
|
+
const planEnvelope = {
|
|
22
|
+
verb: "execute",
|
|
23
|
+
subject_ref: "user_request",
|
|
24
|
+
object_ref: "execution_plan",
|
|
25
|
+
payload: {
|
|
26
|
+
steps: [{
|
|
27
|
+
id: "step-1",
|
|
28
|
+
verb: "get",
|
|
29
|
+
connector_id: "http_connector_1", // This connector is not in the allowlist
|
|
30
|
+
input: {
|
|
31
|
+
url: "http://example.com/api/data",
|
|
32
|
+
method: "GET"
|
|
33
|
+
},
|
|
34
|
+
expected_output_schema_ref: "env.http_response_v1"
|
|
35
|
+
}]
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
// Create a restrictive tool pool that doesn't include the http connector
|
|
39
|
+
const restrictiveToolPool = {
|
|
40
|
+
tools: [
|
|
41
|
+
// Only include noop connector to force a security event
|
|
42
|
+
{
|
|
43
|
+
id: "noop_tool",
|
|
44
|
+
connector: { verb: "noop" },
|
|
45
|
+
binding: {
|
|
46
|
+
driver_kind: "noop",
|
|
47
|
+
limits: {
|
|
48
|
+
timeout_ms: 5000,
|
|
49
|
+
max_retries: 1
|
|
50
|
+
},
|
|
51
|
+
destination_allowlist: [] // Empty allowlist to block all destinations
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
]
|
|
55
|
+
};
|
|
56
|
+
// Create a basic instruction profile
|
|
57
|
+
const instructionProfile = {
|
|
58
|
+
caps: {
|
|
59
|
+
max_timeout_ms: 10000,
|
|
60
|
+
max_data_size: 1024 * 1024, // 1MB
|
|
61
|
+
max_steps: 10
|
|
62
|
+
},
|
|
63
|
+
redaction_rules: ["secret", "password", "token"]
|
|
64
|
+
};
|
|
65
|
+
// Create interpreter instance
|
|
66
|
+
const interpreter = new Interpreter();
|
|
67
|
+
// Wait for interpreter to be ready
|
|
68
|
+
await interpreter.ready();
|
|
69
|
+
// Execute the plan - this should fail due to security policy
|
|
70
|
+
const result = await interpreter.runPlan({
|
|
71
|
+
planEnvelope,
|
|
72
|
+
toolPool: restrictiveToolPool,
|
|
73
|
+
instructionProfile
|
|
74
|
+
});
|
|
75
|
+
if (result.success) {
|
|
76
|
+
throw new Error("Expected plan to fail due to security policy, but it succeeded");
|
|
77
|
+
}
|
|
78
|
+
console.log("✓ Plan correctly failed due to security policy");
|
|
79
|
+
// Find the evidence directory for this run
|
|
80
|
+
const evidenceDirs = await fs.readdir('artifacts/mova_agent');
|
|
81
|
+
const latestRequestDir = evidenceDirs
|
|
82
|
+
.filter(dir => dir.startsWith('req_'))
|
|
83
|
+
.sort()
|
|
84
|
+
.pop();
|
|
85
|
+
if (!latestRequestDir) {
|
|
86
|
+
throw new Error("No evidence directory found");
|
|
87
|
+
}
|
|
88
|
+
const requestDirPath = path.join('artifacts', 'mova_agent', latestRequestDir);
|
|
89
|
+
const runDirs = await fs.readdir(requestDirPath);
|
|
90
|
+
const latestRunDir = runDirs
|
|
91
|
+
.filter(dir => dir.startsWith('run_'))
|
|
92
|
+
.sort()
|
|
93
|
+
.pop();
|
|
94
|
+
if (!latestRunDir) {
|
|
95
|
+
throw new Error("No run directory found");
|
|
96
|
+
}
|
|
97
|
+
const evidenceDir = path.join(requestDirPath, 'runs', latestRunDir);
|
|
98
|
+
const indexPath = path.join(evidenceDir, 'episodes', 'index.jsonl');
|
|
99
|
+
const runSummaryPath = path.join(evidenceDir, 'run_summary.json');
|
|
100
|
+
// Verify the episodes file exists
|
|
101
|
+
if (!(await fs.pathExists(indexPath))) {
|
|
102
|
+
throw new Error(`Episodes index file does not exist: ${indexPath}`);
|
|
103
|
+
}
|
|
104
|
+
// Verify run summary exists
|
|
105
|
+
if (!(await fs.pathExists(runSummaryPath))) {
|
|
106
|
+
throw new Error(`Run summary file does not exist: ${runSummaryPath}`);
|
|
107
|
+
}
|
|
108
|
+
// Read and parse the episodes
|
|
109
|
+
const episodesContent = await fs.readFile(indexPath, 'utf8');
|
|
110
|
+
const episodeLines = episodesContent.trim().split('\n').filter(line => line.trim());
|
|
111
|
+
const episodes = episodeLines.map(line => JSON.parse(line));
|
|
112
|
+
// Look for security events
|
|
113
|
+
const securityEvents = episodes.filter(episode => episode.episode_type && episode.episode_type.startsWith('security_event/'));
|
|
114
|
+
const executionEpisodes = episodes.filter(episode => episode.episode_type && (episode.episode_type === 'execution_step' ||
|
|
115
|
+
episode.episode_type === 'execution_run_summary'));
|
|
116
|
+
if (securityEvents.length === 0) {
|
|
117
|
+
throw new Error("No security events found in episodes");
|
|
118
|
+
}
|
|
119
|
+
console.log(`✓ Found ${securityEvents.length} security events`);
|
|
120
|
+
// Check that we have the expected security event
|
|
121
|
+
const toolNotAllowlistedEvents = securityEvents.filter(event => event.security_event_type === 'tool_not_allowlisted');
|
|
122
|
+
if (toolNotAllowlistedEvents.length === 0) {
|
|
123
|
+
throw new Error("No tool_not_allowlisted security events found");
|
|
124
|
+
}
|
|
125
|
+
console.log("✓ Found expected tool_not_allowlisted security event");
|
|
126
|
+
// Check for execution episodes
|
|
127
|
+
const hasFailedExecution = executionEpisodes.some(episode => episode.result_status === 'failed');
|
|
128
|
+
if (!hasFailedExecution) {
|
|
129
|
+
throw new Error("No failed execution episodes found");
|
|
130
|
+
}
|
|
131
|
+
console.log("✓ Found failed execution episodes");
|
|
132
|
+
// Validate all episodes in the index.jsonl file to guard against regressions
|
|
133
|
+
const episodesIndexContent = await fs.readFile(indexPath, 'utf8');
|
|
134
|
+
const episodeLinesCheck = episodesIndexContent.trim().split('\n').filter(line => line.trim());
|
|
135
|
+
let validationErrors = [];
|
|
136
|
+
for (const line of episodeLinesCheck) {
|
|
137
|
+
if (line.trim()) {
|
|
138
|
+
try {
|
|
139
|
+
const episode = JSON.parse(line);
|
|
140
|
+
// Determine schema based on episode type
|
|
141
|
+
let schemaId = 'ds.mova_episode_core_v1';
|
|
142
|
+
if (episode.episode_type && episode.episode_type.startsWith('security_event/')) {
|
|
143
|
+
schemaId = 'ds.security_event_episode_core_v1';
|
|
144
|
+
}
|
|
145
|
+
console.log(`Validating episode with schema: ${schemaId}`);
|
|
146
|
+
const validation = await validate(schemaId, episode);
|
|
147
|
+
console.log(`Validation result for ${episode.episode_id}: ${validation.ok}`);
|
|
148
|
+
if (!validation.ok) {
|
|
149
|
+
validationErrors.push({
|
|
150
|
+
episode_id: episode.episode_id,
|
|
151
|
+
errors: validation.errors
|
|
152
|
+
});
|
|
153
|
+
// Check for additional properties specifically
|
|
154
|
+
if (validation.errors) {
|
|
155
|
+
for (const error of validation.errors) {
|
|
156
|
+
if (error.keyword === 'additionalProperties') {
|
|
157
|
+
console.warn(`EPISODE_VALIDATION_ERROR: ${error.instancePath} has additional property: ${error.params?.additionalProperty}`);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
catch (parseError) {
|
|
164
|
+
validationErrors.push({ error: `Failed to parse episode line: ${line}`, parseError: parseError.message });
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
if (validationErrors.length > 0) {
|
|
169
|
+
console.error(`✗ Episode validation failed for ${validationErrors.length} episodes`);
|
|
170
|
+
console.error(JSON.stringify(validationErrors, null, 2));
|
|
171
|
+
throw new Error(`Episode validation failed: ${JSON.stringify(validationErrors, null, 2)}`);
|
|
172
|
+
}
|
|
173
|
+
console.log("✓ All episodes passed validation");
|
|
174
|
+
// Create quality report
|
|
175
|
+
const qualityRequestId = `req_${Date.now()}_${uuidv4().split('-')[0]}`;
|
|
176
|
+
const qualityEvidenceDir = path.join('artifacts', 'quality', 'neg', qualityRequestId, 'runs', `run_${Date.now()}_${uuidv4().split('-')[0]}`);
|
|
177
|
+
await fs.ensureDir(qualityEvidenceDir);
|
|
178
|
+
// Extract run_id and request_id from the found evidence directory path
|
|
179
|
+
const pathParts = evidenceDir.split(/[\/\\]/);
|
|
180
|
+
const runId = pathParts[pathParts.length - 1]; // Last part is the run ID
|
|
181
|
+
const runsParentDir = pathParts[pathParts.length - 3]; // Parent of 'runs' folder is request ID
|
|
182
|
+
// Create checked_run object with paths
|
|
183
|
+
const checkedRun = {
|
|
184
|
+
request_id: runsParentDir,
|
|
185
|
+
run_id: runId,
|
|
186
|
+
evidence_dir: evidenceDir,
|
|
187
|
+
run_summary_path: runSummaryPath,
|
|
188
|
+
episodes_index_path: indexPath
|
|
189
|
+
};
|
|
190
|
+
// Create quality report
|
|
191
|
+
const report = {
|
|
192
|
+
run_id: runId,
|
|
193
|
+
request_id: runsParentDir,
|
|
194
|
+
timestamp: new Date().toISOString(),
|
|
195
|
+
status: 'passed',
|
|
196
|
+
assertions: {
|
|
197
|
+
run_should_fail: { expected: true, actual: !result.success, passed: !result.success },
|
|
198
|
+
security_event_present: { expected: true, actual: securityEvents.length > 0, passed: securityEvents.length > 0 },
|
|
199
|
+
correct_security_event: { expected: true, actual: toolNotAllowlistedEvents.length > 0, passed: toolNotAllowlistedEvents.length > 0 },
|
|
200
|
+
execution_failed: { expected: true, actual: hasFailedExecution, passed: hasFailedExecution },
|
|
201
|
+
episodes_index_exists: { expected: true, actual: await fs.pathExists(indexPath), passed: await fs.pathExists(indexPath) },
|
|
202
|
+
run_summary_created: { expected: true, actual: await fs.pathExists(runSummaryPath), passed: await fs.pathExists(runSummaryPath) },
|
|
203
|
+
run_status_failed: { expected: true, actual: result.run_summary?.status === 'failed', passed: result.run_summary?.status === 'failed' }
|
|
204
|
+
},
|
|
205
|
+
checked_run: checkedRun,
|
|
206
|
+
result: result,
|
|
207
|
+
security_events: securityEvents
|
|
208
|
+
};
|
|
209
|
+
// Write report to the quality evidence directory
|
|
210
|
+
const reportPath = path.join(qualityEvidenceDir, 'report.json');
|
|
211
|
+
await fs.writeJson(reportPath, report, { spaces: 2 });
|
|
212
|
+
console.log('✓ Negative quality suite passed!');
|
|
213
|
+
console.log(`Checked run: ${evidenceDir}`);
|
|
214
|
+
console.log(`Report written to: ${reportPath}`);
|
|
215
|
+
return { success: true, report };
|
|
216
|
+
}
|
|
217
|
+
catch (error) {
|
|
218
|
+
console.error('✗ Negative quality suite failed:', error.message);
|
|
219
|
+
console.error(error.stack);
|
|
220
|
+
throw error;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
// Run the test
|
|
224
|
+
runNegativeQualitySuite()
|
|
225
|
+
.then(() => console.log('Test completed successfully'))
|
|
226
|
+
.catch(err => {
|
|
227
|
+
console.error('Test failed:', err.message);
|
|
228
|
+
process.exit(1);
|
|
229
|
+
});
|
|
230
|
+
//# sourceMappingURL=debug_neg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug_neg.js","sourceRoot":"","sources":["../../../scripts/legacy/debug_neg.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug_quality_pos.d.ts","sourceRoot":"","sources":["../../../scripts/legacy/debug_quality_pos.ts"],"names":[],"mappings":"AAGA,QAAA,MAAM,EAAE,KAAsB,CAAC;AAC/B,QAAA,MAAM,IAAI,KAAkB,CAAC;AAC7B,QAAA,MAAY,MAAM,KAAoB,CAAC;AACvC,QAAA,MAAQ,WAAW,KAAmD,CAAC"}
|