@askdkc/kiokuko 0.2.3 → 0.2.5

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.
Files changed (112) hide show
  1. package/README.ja.md +25 -5
  2. package/README.ko.md +24 -5
  3. package/README.md +29 -5
  4. package/README.zh-CN.md +21 -4
  5. package/dist/agent-file/render.d.ts +1 -1
  6. package/dist/agent-file/render.d.ts.map +1 -1
  7. package/dist/agent-file/render.js +5 -3
  8. package/dist/agent-file/render.js.map +1 -1
  9. package/dist/akinator/agent-task.js +2 -2
  10. package/dist/akinator/agent-task.js.map +1 -1
  11. package/dist/akinator/capabilities.d.ts +5 -1
  12. package/dist/akinator/capabilities.d.ts.map +1 -1
  13. package/dist/akinator/capabilities.js +20 -3
  14. package/dist/akinator/capabilities.js.map +1 -1
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +4 -1
  17. package/dist/cli.js.map +1 -1
  18. package/dist/commands/agent.d.ts.map +1 -1
  19. package/dist/commands/agent.js +36 -9
  20. package/dist/commands/agent.js.map +1 -1
  21. package/dist/commands/doctor.d.ts +1 -0
  22. package/dist/commands/doctor.d.ts.map +1 -1
  23. package/dist/commands/doctor.js +33 -0
  24. package/dist/commands/doctor.js.map +1 -1
  25. package/dist/commands/setup.d.ts.map +1 -1
  26. package/dist/commands/setup.js +2 -1
  27. package/dist/commands/setup.js.map +1 -1
  28. package/dist/commands/use.d.ts +1 -0
  29. package/dist/commands/use.d.ts.map +1 -1
  30. package/dist/commands/use.js +76 -16
  31. package/dist/commands/use.js.map +1 -1
  32. package/dist/enno-oduno/adapters.d.ts +4 -1
  33. package/dist/enno-oduno/adapters.d.ts.map +1 -1
  34. package/dist/enno-oduno/adapters.js +63 -14
  35. package/dist/enno-oduno/adapters.js.map +1 -1
  36. package/dist/enno-oduno/advisory.d.ts.map +1 -1
  37. package/dist/enno-oduno/advisory.js +133 -26
  38. package/dist/enno-oduno/advisory.js.map +1 -1
  39. package/dist/enno-oduno/confirmation.d.ts.map +1 -1
  40. package/dist/enno-oduno/confirmation.js +3 -0
  41. package/dist/enno-oduno/confirmation.js.map +1 -1
  42. package/dist/enno-oduno/directives.d.ts.map +1 -1
  43. package/dist/enno-oduno/directives.js +63 -34
  44. package/dist/enno-oduno/directives.js.map +1 -1
  45. package/dist/enno-oduno/experts.d.ts +1 -1
  46. package/dist/enno-oduno/experts.d.ts.map +1 -1
  47. package/dist/enno-oduno/experts.js +21 -7
  48. package/dist/enno-oduno/experts.js.map +1 -1
  49. package/dist/enno-oduno/instructions.d.ts +5 -4
  50. package/dist/enno-oduno/instructions.d.ts.map +1 -1
  51. package/dist/enno-oduno/instructions.js +4 -3
  52. package/dist/enno-oduno/instructions.js.map +1 -1
  53. package/dist/enno-oduno/plan-recovery.d.ts +15 -0
  54. package/dist/enno-oduno/plan-recovery.d.ts.map +1 -1
  55. package/dist/enno-oduno/plan-recovery.js +26 -0
  56. package/dist/enno-oduno/plan-recovery.js.map +1 -1
  57. package/dist/enno-oduno/repository-state.d.ts +8 -0
  58. package/dist/enno-oduno/repository-state.d.ts.map +1 -0
  59. package/dist/enno-oduno/repository-state.js +139 -0
  60. package/dist/enno-oduno/repository-state.js.map +1 -0
  61. package/dist/enno-oduno/role-runner.d.ts.map +1 -1
  62. package/dist/enno-oduno/role-runner.js +34 -1
  63. package/dist/enno-oduno/role-runner.js.map +1 -1
  64. package/dist/enno-oduno/sanitize.d.ts +17 -0
  65. package/dist/enno-oduno/sanitize.d.ts.map +1 -0
  66. package/dist/enno-oduno/sanitize.js +88 -0
  67. package/dist/enno-oduno/sanitize.js.map +1 -0
  68. package/dist/enno-oduno/schemas.d.ts +185 -36
  69. package/dist/enno-oduno/schemas.d.ts.map +1 -1
  70. package/dist/enno-oduno/schemas.js +172 -46
  71. package/dist/enno-oduno/schemas.js.map +1 -1
  72. package/dist/enno-oduno/service.d.ts +2 -1
  73. package/dist/enno-oduno/service.d.ts.map +1 -1
  74. package/dist/enno-oduno/service.js +310 -137
  75. package/dist/enno-oduno/service.js.map +1 -1
  76. package/dist/enno-oduno/store.d.ts +37 -4
  77. package/dist/enno-oduno/store.d.ts.map +1 -1
  78. package/dist/enno-oduno/store.js +343 -36
  79. package/dist/enno-oduno/store.js.map +1 -1
  80. package/dist/enno-oduno/types.d.ts +55 -2
  81. package/dist/enno-oduno/types.d.ts.map +1 -1
  82. package/dist/enno-oduno/types.js +1 -0
  83. package/dist/enno-oduno/types.js.map +1 -1
  84. package/dist/enno-oduno/validation-errors.d.ts +92 -0
  85. package/dist/enno-oduno/validation-errors.d.ts.map +1 -0
  86. package/dist/enno-oduno/validation-errors.js +151 -0
  87. package/dist/enno-oduno/validation-errors.js.map +1 -0
  88. package/dist/enno-oduno/verifier.d.ts +1 -0
  89. package/dist/enno-oduno/verifier.d.ts.map +1 -1
  90. package/dist/enno-oduno/verifier.js +70 -12
  91. package/dist/enno-oduno/verifier.js.map +1 -1
  92. package/dist/mcp/server.d.ts.map +1 -1
  93. package/dist/mcp/server.js +70 -16
  94. package/dist/mcp/server.js.map +1 -1
  95. package/dist/memory/secrets.js +1 -1
  96. package/dist/memory/secrets.js.map +1 -1
  97. package/dist/server/routes/agent-capability-gate.js +2 -2
  98. package/dist/server/routes/agent-capability-gate.js.map +1 -1
  99. package/dist/setup/render.js +1 -1
  100. package/dist/setup/render.js.map +1 -1
  101. package/dist/setup/standard-skills.d.ts +12 -5
  102. package/dist/setup/standard-skills.d.ts.map +1 -1
  103. package/dist/setup/standard-skills.js +12 -2
  104. package/dist/setup/standard-skills.js.map +1 -1
  105. package/migrations/019_enno_execution_integrity.sql +149 -0
  106. package/package.json +1 -1
  107. package/skills/kiokuko-enno-oduno/SKILL.md +19 -8
  108. package/skills/kiokuko-single-purpose-functions/SKILL.md +18 -10
  109. package/skills/kiokuko-single-purpose-functions/references/problem-shaping-and-language.md +84 -0
  110. package/skills/kiokuko-ui-design-soul/SKILL.md +5 -1
  111. package/skills/memory-reasoning/SKILL.md +52 -0
  112. package/templates/AGENTS.md +6 -4
@@ -71,6 +71,23 @@ export declare const ADVISORY_SLOT_DEFINITIONS: readonly [{
71
71
  export type AdvisorySlotId = (typeof ADVISORY_SLOT_DEFINITIONS)[number]['slotId'];
72
72
  export type AdvisorySource = 'host_reported';
73
73
  export type AdvisoryDispositionKind = 'adopted' | 'not_adopted' | 'unavailable';
74
+ export type AdvisoryPhaseState = {
75
+ state: 'not_started';
76
+ } | {
77
+ state: 'fanout_requested';
78
+ slots: AdvisorySlotDirective[];
79
+ } | {
80
+ state: 'aggregated';
81
+ inputDigest: string;
82
+ requiredDispositionSlots: Array<{
83
+ slotId: AdvisorySlotId;
84
+ outcome: AdvisoryOutcome;
85
+ allowedDispositions: AdvisoryDispositionKind[];
86
+ }>;
87
+ } | {
88
+ state: 'consumed';
89
+ inputDigest: string;
90
+ };
74
91
  export interface AdvisoryDisposition {
75
92
  slotId: AdvisorySlotId;
76
93
  disposition: AdvisoryDispositionKind;
@@ -97,15 +114,28 @@ export interface AdvisorySkillTrust {
97
114
  }
98
115
  export interface AdvisoryFinalVerifierEvidence {
99
116
  id: string;
117
+ kind: VerifierSpec['kind'];
118
+ executable: string;
119
+ args: string[];
120
+ directory: string;
121
+ timeoutMs: number;
100
122
  status: 'passed' | 'failed' | 'timeout' | 'spawn_failed';
101
123
  exitCode: number | null;
102
124
  signal: string | null;
103
125
  stdoutDigest: string;
104
126
  stderrDigest: string;
127
+ stdoutPreview: string;
128
+ stderrPreview: string;
129
+ repositoryStatePolicyVersion: number | null;
130
+ repositoryStateDigest: string | null;
105
131
  }
106
132
  export interface AdvisoryWorkUnitOutcome {
107
133
  id: string;
134
+ objective: string;
135
+ acceptanceCriteria: string[];
136
+ routes: WorkUnitRoute[];
108
137
  status: 'completed' | 'failed' | 'blocked';
138
+ summary: string;
109
139
  mutated: boolean;
110
140
  changedPaths: string[];
111
141
  }
@@ -127,11 +157,14 @@ export interface PlanningAdvisoryContext {
127
157
  export interface FinalReviewAdvisoryContext {
128
158
  phase: 'final_review';
129
159
  workPlanSummary: string;
160
+ acceptanceCriteria: AcceptanceCriterion[];
130
161
  workUnitOutcomes: AdvisoryWorkUnitOutcome[];
131
162
  changedPaths: string[];
132
163
  verifierEvidence: AdvisoryFinalVerifierEvidence[];
133
164
  freshnessMarker: string;
134
165
  evidenceSetDigest: string;
166
+ repositoryStateDigest: string;
167
+ evidenceFreshnessPolicyVersion: number;
135
168
  }
136
169
  export type AdvisoryContext = IdealAdvisoryContext | PlanningAdvisoryContext | FinalReviewAdvisoryContext;
137
170
  export interface AdvisorySlotDirective {
@@ -176,6 +209,8 @@ export interface VerifierSpec {
176
209
  cwd: string;
177
210
  timeoutMs: number;
178
211
  }
212
+ export declare const WORK_UNIT_ROUTES: readonly ["code", "ui", "test", "docs", "operations"];
213
+ export type WorkUnitRoute = (typeof WORK_UNIT_ROUTES)[number];
179
214
  export interface ExpertRef {
180
215
  id: string;
181
216
  reason: string;
@@ -189,6 +224,8 @@ export interface WorkUnit {
189
224
  expertRefs: ExpertRef[];
190
225
  acceptanceCriteria: string[];
191
226
  focusedVerifiers: VerifierSpec[];
227
+ /** Optional only while reading v0.2.x stored WorkUnits. New submissions require it. */
228
+ routes?: WorkUnitRoute[] | undefined;
192
229
  }
193
230
  export interface WorkPlan {
194
231
  objective: string;
@@ -320,6 +357,7 @@ export interface RoleDirective {
320
357
  protocolVersion: 1;
321
358
  runId: string;
322
359
  contractRevision: number | null;
360
+ routeEpoch: number | null;
323
361
  role: EnnoRole;
324
362
  harness: EnnoHarnessDirective;
325
363
  handoff: EnnoRequestHandoff | null;
@@ -343,11 +381,21 @@ export interface EnnoOdunoState {
343
381
  identified: boolean;
344
382
  } | null;
345
383
  contractRevision: number | null;
384
+ routeEpoch: number | null;
346
385
  ideal: OdunoIdeal | null;
347
386
  meditation: OdunoMeditation | null;
348
387
  currentRole: EnnoRole | null;
349
388
  directive: RoleDirective | null;
350
389
  nextAction: EnnoNextAction;
390
+ advisoryPhaseState: AdvisoryPhaseState;
391
+ }
392
+ export interface EnnoExecutionLease {
393
+ leaseToken: string;
394
+ routeEpoch: number;
395
+ contractRevision: number;
396
+ mutationRevision: number;
397
+ workUnitId: string;
398
+ expiresAt: string;
351
399
  }
352
400
  export type WorkUnitStatus = 'pending' | 'in_progress' | 'completed' | 'failed' | 'blocked';
353
401
  export interface StoredWorkUnit {
@@ -366,10 +414,10 @@ export interface EnnoFinalReview {
366
414
  decision: 'accept' | 'replan';
367
415
  summary: string;
368
416
  }
369
- export type VerifierRunStatus = 'started' | 'passed' | 'failed' | 'timeout' | 'spawn_failed';
417
+ export type VerifierRunStatus = 'started' | 'passed' | 'failed' | 'timeout' | 'spawn_failed' | 'abandoned';
370
418
  export interface VerifierRunResult {
371
419
  verifier: VerifierSpec;
372
- status: Exclude<VerifierRunStatus, 'started'>;
420
+ status: Exclude<VerifierRunStatus, 'started' | 'abandoned'>;
373
421
  exitCode: number | null;
374
422
  signal: string | null;
375
423
  durationMs: number;
@@ -377,6 +425,9 @@ export interface VerifierRunResult {
377
425
  stderrPreview: string;
378
426
  stdoutDigest: string;
379
427
  stderrDigest: string;
428
+ repositoryStatePolicyVersion?: number | undefined;
429
+ repositoryStateDigest?: string | undefined;
430
+ changedDuringVerification?: boolean | undefined;
380
431
  }
381
432
  export interface EnnoRunSnapshot {
382
433
  runId: string;
@@ -392,6 +443,7 @@ export interface EnnoRunSnapshot {
392
443
  confirmationState: 'not_required' | 'pending' | 'approved' | 'revision_requested' | 'cancelled';
393
444
  attempts: number;
394
445
  mutationRevision: number;
446
+ routeEpoch?: number | undefined;
395
447
  ideal: OdunoIdeal | null;
396
448
  meditation: OdunoMeditation | null;
397
449
  contract: EnnoOdunoContract;
@@ -400,5 +452,6 @@ export interface EnnoRunSnapshot {
400
452
  finalEvidenceReady: boolean;
401
453
  finalEvidence: VerifierRunResult[];
402
454
  blocker: string | null;
455
+ advisoryPhaseState?: AdvisoryPhaseState | undefined;
403
456
  }
404
457
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/enno-oduno/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/enno-oduno/types.ts"],"names":[],"mappings":"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"}
@@ -62,4 +62,5 @@ export const ENNO_PROVENANCE_KEYS = [
62
62
  'finalVerifiers',
63
63
  'maxAttempts',
64
64
  ];
65
+ export const WORK_UNIT_ROUTES = ['code', 'ui', 'test', 'docs', 'operations'];
65
66
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/enno-oduno/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/enno-oduno/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ import * as z from 'zod/v4';
2
+ import { KiokukoError } from '../errors.js';
3
+ export declare const ENNO_INPUT_INVALID_DETAIL_KEY: "publicEnnoValidationError";
4
+ export declare const ENNO_VALIDATION_PRESENTATION_VERSION: 1;
5
+ export declare const ENNO_MAX_PUBLIC_ISSUES = 16;
6
+ export declare const ENNO_VALIDATION_OPERATIONS: readonly ["ideal_submit", "plan_submit", "advice_submit", "work_report", "verify_prepare", "finish", "meditation_submit"];
7
+ export type EnnoValidationOperation = (typeof ENNO_VALIDATION_OPERATIONS)[number];
8
+ export declare const ENNO_VALIDATION_REASONS: readonly ["missing_required_field", "unknown_field", "invalid_type", "invalid_enum", "non_canonical_text", "too_many_items", "too_few_items", "duplicate_id", "unknown_dependency", "dependency_cycle", "undeclared_skill", "unknown_expert", "duplicate_expert", "missing_code_expert", "missing_ui_expert", "invalid_work_unit_route", "invalid_verifier_directory", "duplicate_verifier_id", "advisory_digest_requires_disposition", "advisory_consumption_required", "advisory_slot_missing", "advisory_slot_duplicate", "advisory_digest_stale"];
9
+ export type PublicEnnoValidationReason = (typeof ENNO_VALIDATION_REASONS)[number];
10
+ export interface PublicEnnoValidationExpected {
11
+ minItems?: number;
12
+ maxItems?: number;
13
+ allowedValues?: string[];
14
+ requiredExpertKinds?: Array<'code' | 'ui'>;
15
+ requiredSlotIds?: string[];
16
+ directoryPolicy?: 'repository_relative';
17
+ }
18
+ export interface PublicEnnoValidationIssue {
19
+ path: Array<string | number>;
20
+ reasonCode: PublicEnnoValidationReason;
21
+ expected?: PublicEnnoValidationExpected;
22
+ }
23
+ export interface PublicEnnoValidationError {
24
+ code: 'ENNO_INPUT_INVALID';
25
+ operation: EnnoValidationOperation;
26
+ presentationVersion: typeof ENNO_VALIDATION_PRESENTATION_VERSION;
27
+ issues: PublicEnnoValidationIssue[];
28
+ retry: 'correct_input' | 'refresh_state' | 'stop';
29
+ mutationApplied: false;
30
+ }
31
+ export declare const publicEnnoValidationErrorSchema: z.ZodObject<{
32
+ code: z.ZodLiteral<"ENNO_INPUT_INVALID">;
33
+ operation: z.ZodEnum<{
34
+ finish: "finish";
35
+ ideal_submit: "ideal_submit";
36
+ plan_submit: "plan_submit";
37
+ advice_submit: "advice_submit";
38
+ work_report: "work_report";
39
+ verify_prepare: "verify_prepare";
40
+ meditation_submit: "meditation_submit";
41
+ }>;
42
+ presentationVersion: z.ZodLiteral<1>;
43
+ issues: z.ZodArray<z.ZodObject<{
44
+ path: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber]>>;
45
+ reasonCode: z.ZodEnum<{
46
+ invalid_type: "invalid_type";
47
+ invalid_enum: "invalid_enum";
48
+ missing_required_field: "missing_required_field";
49
+ unknown_field: "unknown_field";
50
+ non_canonical_text: "non_canonical_text";
51
+ too_many_items: "too_many_items";
52
+ too_few_items: "too_few_items";
53
+ duplicate_id: "duplicate_id";
54
+ unknown_dependency: "unknown_dependency";
55
+ dependency_cycle: "dependency_cycle";
56
+ undeclared_skill: "undeclared_skill";
57
+ unknown_expert: "unknown_expert";
58
+ duplicate_expert: "duplicate_expert";
59
+ missing_code_expert: "missing_code_expert";
60
+ missing_ui_expert: "missing_ui_expert";
61
+ invalid_work_unit_route: "invalid_work_unit_route";
62
+ invalid_verifier_directory: "invalid_verifier_directory";
63
+ duplicate_verifier_id: "duplicate_verifier_id";
64
+ advisory_digest_requires_disposition: "advisory_digest_requires_disposition";
65
+ advisory_consumption_required: "advisory_consumption_required";
66
+ advisory_slot_missing: "advisory_slot_missing";
67
+ advisory_slot_duplicate: "advisory_slot_duplicate";
68
+ advisory_digest_stale: "advisory_digest_stale";
69
+ }>;
70
+ expected: z.ZodOptional<z.ZodObject<{
71
+ minItems: z.ZodOptional<z.ZodNumber>;
72
+ maxItems: z.ZodOptional<z.ZodNumber>;
73
+ allowedValues: z.ZodOptional<z.ZodArray<z.ZodString>>;
74
+ requiredExpertKinds: z.ZodOptional<z.ZodArray<z.ZodEnum<{
75
+ code: "code";
76
+ ui: "ui";
77
+ }>>>;
78
+ requiredSlotIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
79
+ directoryPolicy: z.ZodOptional<z.ZodLiteral<"repository_relative">>;
80
+ }, z.core.$strict>>;
81
+ }, z.core.$strict>>;
82
+ retry: z.ZodEnum<{
83
+ stop: "stop";
84
+ correct_input: "correct_input";
85
+ refresh_state: "refresh_state";
86
+ }>;
87
+ mutationApplied: z.ZodLiteral<false>;
88
+ }, z.core.$strict>;
89
+ export declare function publicIssuesFromZod(error: z.ZodError): PublicEnnoValidationIssue[];
90
+ export declare function ennoValidationError(operation: EnnoValidationOperation, issues: readonly PublicEnnoValidationIssue[], retry?: PublicEnnoValidationError['retry']): KiokukoError;
91
+ export declare function ennoZodValidationError(operation: EnnoValidationOperation, error: z.ZodError): KiokukoError;
92
+ //# sourceMappingURL=validation-errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-errors.d.ts","sourceRoot":"","sources":["../../src/enno-oduno/validation-errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,eAAO,MAAM,6BAA6B,EAAG,2BAAoC,CAAC;AAClF,eAAO,MAAM,oCAAoC,EAAG,CAAU,CAAC;AAC/D,eAAO,MAAM,sBAAsB,KAAK,CAAC;AAEzC,eAAO,MAAM,0BAA0B,2HAQ7B,CAAC;AACX,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAElF,eAAO,MAAM,uBAAuB,uhBAwB1B,CAAC;AACX,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElF,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,mBAAmB,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAC3C,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,qBAAqB,CAAC;CACzC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAC7B,UAAU,EAAE,0BAA0B,CAAC;IACvC,QAAQ,CAAC,EAAE,4BAA4B,CAAC;CACzC;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,SAAS,EAAE,uBAAuB,CAAC;IACnC,mBAAmB,EAAE,OAAO,oCAAoC,CAAC;IACjE,MAAM,EAAE,yBAAyB,EAAE,CAAC;IACpC,KAAK,EAAE,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;IAClD,eAAe,EAAE,KAAK,CAAC;CACxB;AAWD,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAWjC,CAAC;AAoEZ,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAAG,yBAAyB,EAAE,CAElF;AAED,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,uBAAuB,EAClC,MAAM,EAAE,SAAS,yBAAyB,EAAE,EAC5C,KAAK,GAAE,yBAAyB,CAAC,OAAO,CAAmB,GAC1D,YAAY,CAkBd;AAED,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,uBAAuB,EAClC,KAAK,EAAE,CAAC,CAAC,QAAQ,GAChB,YAAY,CAEd"}
@@ -0,0 +1,151 @@
1
+ import * as z from 'zod/v4';
2
+ import { KiokukoError } from '../errors.js';
3
+ export const ENNO_INPUT_INVALID_DETAIL_KEY = 'publicEnnoValidationError';
4
+ export const ENNO_VALIDATION_PRESENTATION_VERSION = 1;
5
+ export const ENNO_MAX_PUBLIC_ISSUES = 16;
6
+ export const ENNO_VALIDATION_OPERATIONS = [
7
+ 'ideal_submit',
8
+ 'plan_submit',
9
+ 'advice_submit',
10
+ 'work_report',
11
+ 'verify_prepare',
12
+ 'finish',
13
+ 'meditation_submit',
14
+ ];
15
+ export const ENNO_VALIDATION_REASONS = [
16
+ 'missing_required_field',
17
+ 'unknown_field',
18
+ 'invalid_type',
19
+ 'invalid_enum',
20
+ 'non_canonical_text',
21
+ 'too_many_items',
22
+ 'too_few_items',
23
+ 'duplicate_id',
24
+ 'unknown_dependency',
25
+ 'dependency_cycle',
26
+ 'undeclared_skill',
27
+ 'unknown_expert',
28
+ 'duplicate_expert',
29
+ 'missing_code_expert',
30
+ 'missing_ui_expert',
31
+ 'invalid_work_unit_route',
32
+ 'invalid_verifier_directory',
33
+ 'duplicate_verifier_id',
34
+ 'advisory_digest_requires_disposition',
35
+ 'advisory_consumption_required',
36
+ 'advisory_slot_missing',
37
+ 'advisory_slot_duplicate',
38
+ 'advisory_digest_stale',
39
+ ];
40
+ const publicExpectedSchema = z.object({
41
+ minItems: z.number().int().min(0).max(1_000_000).optional(),
42
+ maxItems: z.number().int().min(0).max(1_000_000).optional(),
43
+ allowedValues: z.array(z.string().min(1).max(100)).max(32).optional(),
44
+ requiredExpertKinds: z.array(z.enum(['code', 'ui'])).max(2).optional(),
45
+ requiredSlotIds: z.array(z.string().min(1).max(100)).max(3).optional(),
46
+ directoryPolicy: z.literal('repository_relative').optional(),
47
+ }).strict();
48
+ export const publicEnnoValidationErrorSchema = z.object({
49
+ code: z.literal('ENNO_INPUT_INVALID'),
50
+ operation: z.enum(ENNO_VALIDATION_OPERATIONS),
51
+ presentationVersion: z.literal(ENNO_VALIDATION_PRESENTATION_VERSION),
52
+ issues: z.array(z.object({
53
+ path: z.array(z.union([z.string().min(1).max(256), z.number().int().min(0).max(1_000)])).max(12),
54
+ reasonCode: z.enum(ENNO_VALIDATION_REASONS),
55
+ expected: publicExpectedSchema.optional(),
56
+ }).strict()).min(1).max(ENNO_MAX_PUBLIC_ISSUES),
57
+ retry: z.enum(['correct_input', 'refresh_state', 'stop']),
58
+ mutationApplied: z.literal(false),
59
+ }).strict();
60
+ function boundedPath(path) {
61
+ return path.slice(0, 12).map((segment) => {
62
+ if (typeof segment === 'number' && Number.isSafeInteger(segment) && segment >= 0)
63
+ return Math.min(segment, 1_000);
64
+ if (typeof segment !== 'string' || !/^[A-Za-z][A-Za-z0-9_-]{0,255}$/u.test(segment))
65
+ return 'field';
66
+ return segment;
67
+ });
68
+ }
69
+ const customReasons = [
70
+ [/canonical text/iu, 'non_canonical_text'],
71
+ [/Verifier IDs must be unique/iu, 'duplicate_verifier_id'],
72
+ [/WorkUnit IDs must be unique/iu, 'duplicate_id'],
73
+ [/invalid dependency/iu, 'unknown_dependency'],
74
+ [/dependencies must be acyclic/iu, 'dependency_cycle'],
75
+ [/undeclared Skill/iu, 'undeclared_skill'],
76
+ [/expertRefs must be unique/iu, 'duplicate_expert'],
77
+ [/repository-relative/iu, 'invalid_verifier_directory'],
78
+ [/advisoryDisposition is required/iu, 'advisory_digest_requires_disposition'],
79
+ ];
80
+ function numericLimit(issue) {
81
+ const candidate = issue.maximum
82
+ ?? issue.minimum;
83
+ return typeof candidate === 'number' && Number.isFinite(candidate) ? Math.max(0, Math.trunc(candidate)) : undefined;
84
+ }
85
+ function issueProjection(issue) {
86
+ const path = boundedPath([...issue.path]);
87
+ if (issue.code === 'unrecognized_keys')
88
+ return { path, reasonCode: 'unknown_field' };
89
+ if (issue.code === 'invalid_type') {
90
+ return { path, reasonCode: /received undefined$/u.test(issue.message) ? 'missing_required_field' : 'invalid_type' };
91
+ }
92
+ if (issue.code === 'invalid_value') {
93
+ const values = issue.values;
94
+ const last = path.at(-1);
95
+ const reasonCode = last === 'id' && path.includes('expertRefs')
96
+ ? 'unknown_expert'
97
+ : last === 'slotId' && path.includes('advisoryDisposition')
98
+ ? 'advisory_slot_missing'
99
+ : path.includes('routes') ? 'invalid_work_unit_route' : 'invalid_enum';
100
+ return {
101
+ path,
102
+ reasonCode,
103
+ ...(Array.isArray(values) && values.every((value) => typeof value === 'string')
104
+ ? { expected: { allowedValues: values.slice(0, 32) } }
105
+ : {}),
106
+ };
107
+ }
108
+ if (issue.code === 'too_big') {
109
+ const maximum = numericLimit(issue);
110
+ return { path, reasonCode: 'too_many_items', ...(maximum === undefined ? {} : { expected: { maxItems: maximum } }) };
111
+ }
112
+ if (issue.code === 'too_small') {
113
+ const minimum = numericLimit(issue);
114
+ return { path, reasonCode: 'too_few_items', ...(minimum === undefined ? {} : { expected: { minItems: minimum } }) };
115
+ }
116
+ for (const [pattern, reasonCode] of customReasons) {
117
+ if (pattern.test(issue.message)) {
118
+ return reasonCode === 'invalid_verifier_directory'
119
+ ? { path, reasonCode, expected: { directoryPolicy: 'repository_relative' } }
120
+ : { path, reasonCode };
121
+ }
122
+ }
123
+ return { path, reasonCode: 'invalid_type' };
124
+ }
125
+ export function publicIssuesFromZod(error) {
126
+ return error.issues.slice(0, ENNO_MAX_PUBLIC_ISSUES).map(issueProjection);
127
+ }
128
+ export function ennoValidationError(operation, issues, retry = 'correct_input') {
129
+ const candidate = {
130
+ code: 'ENNO_INPUT_INVALID',
131
+ operation,
132
+ presentationVersion: ENNO_VALIDATION_PRESENTATION_VERSION,
133
+ issues: issues.slice(0, ENNO_MAX_PUBLIC_ISSUES).map((issue) => ({
134
+ path: [...issue.path],
135
+ reasonCode: issue.reasonCode,
136
+ ...(issue.expected === undefined ? {} : { expected: { ...issue.expected } }),
137
+ })),
138
+ retry,
139
+ mutationApplied: false,
140
+ };
141
+ const parsed = publicEnnoValidationErrorSchema.safeParse(candidate);
142
+ if (!parsed.success)
143
+ return new KiokukoError('INTEGRITY_ERROR', 'Public Enno validation projection is invalid');
144
+ return new KiokukoError('VALIDATION_ERROR', 'Enno input is invalid', {
145
+ [ENNO_INPUT_INVALID_DETAIL_KEY]: parsed.data,
146
+ });
147
+ }
148
+ export function ennoZodValidationError(operation, error) {
149
+ return ennoValidationError(operation, publicIssuesFromZod(error));
150
+ }
151
+ //# sourceMappingURL=validation-errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation-errors.js","sourceRoot":"","sources":["../../src/enno-oduno/validation-errors.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ import type { VerifierRunResult, VerifierSpec } from './types.js';
3
3
  export interface VerifierDependencies {
4
4
  spawn?: typeof spawn;
5
5
  now?: () => number;
6
+ descendantSettleMs?: number;
6
7
  }
7
8
  export declare function runVerifier(rawVerifier: VerifierSpec, repositoryRoot: string, dependencies?: VerifierDependencies): Promise<VerifierRunResult>;
8
9
  export declare function runVerifiers(verifiers: readonly VerifierSpec[], repositoryRoot: string, dependencies?: VerifierDependencies): Promise<VerifierRunResult[]>;
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../src/enno-oduno/verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAA4B,MAAM,oBAAoB,CAAC;AAKrE,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAIlE,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAWD,wBAAsB,WAAW,CAC/B,WAAW,EAAE,YAAY,EACzB,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,oBAAyB,GACtC,OAAO,CAAC,iBAAiB,CAAC,CAqG5B;AAED,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,oBAAyB,GACtC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAI9B"}
1
+ {"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../src/enno-oduno/verifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAgB,KAAK,EAA4B,MAAM,oBAAoB,CAAC;AAOnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAKlE,MAAM,WAAW,oBAAoB;IACnC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AA2CD,wBAAsB,WAAW,CAC/B,WAAW,EAAE,YAAY,EACzB,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,oBAAyB,GACtC,OAAO,CAAC,iBAAiB,CAAC,CA+G5B;AAED,wBAAsB,YAAY,CAChC,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,cAAc,EAAE,MAAM,EACtB,YAAY,GAAE,oBAAyB,GACtC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAY9B"}
@@ -1,9 +1,46 @@
1
1
  import { createHash } from 'node:crypto';
2
- import { spawn } from 'node:child_process';
2
+ import { execFileSync, spawn } from 'node:child_process';
3
+ import { unwatchFile, watchFile } from 'node:fs';
3
4
  import { performance } from 'node:perf_hooks';
5
+ import path from 'node:path';
4
6
  import { canonicalDirectory } from '../repository/detect-root.js';
5
7
  import { assertVerifierCwd, parseVerifierSpec } from './schemas.js';
6
8
  const MAX_PREVIEW_BYTES = 8 * 1024;
9
+ const DESCENDANT_SETTLE_MS = 500;
10
+ function repositoryMutationAudit(repositoryRoot) {
11
+ let changed = false;
12
+ const watched = [];
13
+ try {
14
+ const paths = execFileSync('git', [
15
+ '-C', repositoryRoot, 'ls-files', '--cached', '--others', '--exclude-standard', '-z',
16
+ ], { encoding: 'utf8', maxBuffer: 16 * 1024 * 1024, stdio: ['ignore', 'pipe', 'ignore'] }).split('\0').filter(Boolean);
17
+ const targets = new Set([repositoryRoot]);
18
+ for (const candidate of paths) {
19
+ const target = path.resolve(repositoryRoot, candidate);
20
+ if (target !== repositoryRoot && !target.startsWith(`${repositoryRoot}${path.sep}`))
21
+ throw new Error('invalid Git path');
22
+ targets.add(target);
23
+ targets.add(path.dirname(target));
24
+ }
25
+ for (const target of targets) {
26
+ const listener = (current, previous) => {
27
+ if (current.mtimeMs !== previous.mtimeMs || current.ctimeMs !== previous.ctimeMs
28
+ || current.size !== previous.size || current.ino !== previous.ino)
29
+ changed = true;
30
+ };
31
+ watchFile(target, { persistent: false, interval: 20 }, listener);
32
+ watched.push({ target, listener });
33
+ }
34
+ }
35
+ catch {
36
+ // Evidence cannot be called mutation-free when the audit boundary is unavailable.
37
+ changed = true;
38
+ }
39
+ return {
40
+ close: () => watched.forEach(({ target, listener }) => unwatchFile(target, listener)),
41
+ observed: () => changed,
42
+ };
43
+ }
7
44
  function appendPreview(current, chunk) {
8
45
  if (current.byteLength >= MAX_PREVIEW_BYTES)
9
46
  return current;
@@ -15,7 +52,9 @@ function digestHex(hash) {
15
52
  export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}) {
16
53
  const verifier = parseVerifierSpec(rawVerifier);
17
54
  const canonicalRoot = canonicalDirectory(repositoryRoot);
18
- const canonicalCwd = canonicalDirectory(verifier.cwd);
55
+ const canonicalCwd = canonicalDirectory(path.isAbsolute(verifier.cwd)
56
+ ? verifier.cwd
57
+ : path.resolve(canonicalRoot, verifier.cwd));
19
58
  const normalized = { ...verifier, cwd: canonicalCwd };
20
59
  assertVerifierCwd(canonicalRoot, normalized);
21
60
  const start = dependencies.now?.() ?? performance.now();
@@ -27,6 +66,7 @@ export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}
27
66
  try {
28
67
  child = (dependencies.spawn ?? spawn)(normalized.executable, normalized.args, {
29
68
  cwd: normalized.cwd,
69
+ detached: process.platform !== 'win32',
30
70
  shell: false,
31
71
  stdio: ['ignore', 'pipe', 'pipe'],
32
72
  windowsHide: true,
@@ -34,7 +74,7 @@ export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}
34
74
  }
35
75
  catch {
36
76
  return {
37
- verifier: normalized,
77
+ verifier: { ...verifier, args: [...verifier.args] },
38
78
  status: 'spawn_failed',
39
79
  exitCode: null,
40
80
  signal: null,
@@ -71,6 +111,10 @@ export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}
71
111
  };
72
112
  const tryKill = (signal) => {
73
113
  try {
114
+ if (process.platform !== 'win32' && child.pid !== undefined) {
115
+ process.kill(-child.pid, signal);
116
+ return true;
117
+ }
74
118
  return child.kill(signal);
75
119
  }
76
120
  catch {
@@ -101,14 +145,18 @@ export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}
101
145
  }
102
146
  settle({ status: 'spawn_failed', exitCode: null, signal: null });
103
147
  });
104
- child.once('close', (code, signal) => settle({
105
- status: timedOut ? 'timeout' : code === 0 ? 'passed' : 'failed',
106
- exitCode: timedOut ? null : code,
107
- signal: timedOut ? signal ?? 'SIGTERM' : signal,
108
- }));
148
+ child.once('close', (code, signal) => {
149
+ if (!timedOut)
150
+ tryKill('SIGTERM');
151
+ settle({
152
+ status: timedOut ? 'timeout' : code === 0 ? 'passed' : 'failed',
153
+ exitCode: timedOut ? null : code,
154
+ signal: timedOut ? signal ?? 'SIGTERM' : signal,
155
+ });
156
+ });
109
157
  });
110
158
  return {
111
- verifier: normalized,
159
+ verifier: { ...verifier, args: [...verifier.args] },
112
160
  ...completion,
113
161
  durationMs: Math.max(0, Math.round((dependencies.now?.() ?? performance.now()) - start)),
114
162
  stdoutPreview: stdoutPreview.toString('utf8'),
@@ -118,9 +166,19 @@ export async function runVerifier(rawVerifier, repositoryRoot, dependencies = {}
118
166
  };
119
167
  }
120
168
  export async function runVerifiers(verifiers, repositoryRoot, dependencies = {}) {
169
+ const audit = repositoryMutationAudit(repositoryRoot);
121
170
  const results = [];
122
- for (const verifier of verifiers)
123
- results.push(await runVerifier(verifier, repositoryRoot, dependencies));
124
- return results;
171
+ try {
172
+ for (const verifier of verifiers)
173
+ results.push(await runVerifier(verifier, repositoryRoot, dependencies));
174
+ const settleMs = dependencies.descendantSettleMs ?? DESCENDANT_SETTLE_MS;
175
+ if (settleMs > 0)
176
+ await new Promise((resolve) => setTimeout(resolve, settleMs));
177
+ const changedDuringVerification = audit.observed();
178
+ return results.map((result) => ({ ...result, changedDuringVerification }));
179
+ }
180
+ finally {
181
+ audit.close();
182
+ }
125
183
  }
126
184
  //# sourceMappingURL=verifier.js.map