@dsh-enhanced/assistant-evaluation 0.1.23 → 0.1.30

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 (132) hide show
  1. package/README.md +109 -3
  2. package/bin/dsh-benchmark.js +21 -0
  3. package/lib/benchmark/cli.d.ts +6 -0
  4. package/lib/benchmark/cli.d.ts.map +1 -0
  5. package/lib/benchmark/cli.js +332 -0
  6. package/lib/benchmark/cli.js.map +1 -0
  7. package/lib/benchmark/corpus.d.ts +28 -0
  8. package/lib/benchmark/corpus.d.ts.map +1 -0
  9. package/lib/benchmark/corpus.js +173 -0
  10. package/lib/benchmark/corpus.js.map +1 -0
  11. package/lib/benchmark/deepseek.d.ts +15 -0
  12. package/lib/benchmark/deepseek.d.ts.map +1 -0
  13. package/lib/benchmark/deepseek.js +143 -0
  14. package/lib/benchmark/deepseek.js.map +1 -0
  15. package/lib/benchmark/holdout-evidence.d.ts +126 -0
  16. package/lib/benchmark/holdout-evidence.d.ts.map +1 -0
  17. package/lib/benchmark/holdout-evidence.js +466 -0
  18. package/lib/benchmark/holdout-evidence.js.map +1 -0
  19. package/lib/benchmark/holdout-protocol.d.ts +68 -0
  20. package/lib/benchmark/holdout-protocol.d.ts.map +1 -0
  21. package/lib/benchmark/holdout-protocol.js +271 -0
  22. package/lib/benchmark/holdout-protocol.js.map +1 -0
  23. package/lib/benchmark/holdout-provider.d.ts +26 -0
  24. package/lib/benchmark/holdout-provider.d.ts.map +1 -0
  25. package/lib/benchmark/holdout-provider.js +382 -0
  26. package/lib/benchmark/holdout-provider.js.map +1 -0
  27. package/lib/benchmark/holdout.d.ts +83 -0
  28. package/lib/benchmark/holdout.d.ts.map +1 -0
  29. package/lib/benchmark/holdout.js +391 -0
  30. package/lib/benchmark/holdout.js.map +1 -0
  31. package/lib/benchmark/index.d.ts +9 -0
  32. package/lib/benchmark/index.d.ts.map +1 -0
  33. package/lib/benchmark/index.js +7 -0
  34. package/lib/benchmark/index.js.map +1 -0
  35. package/lib/benchmark/memory-corpus.d.ts +55 -0
  36. package/lib/benchmark/memory-corpus.d.ts.map +1 -0
  37. package/lib/benchmark/memory-corpus.js +153 -0
  38. package/lib/benchmark/memory-corpus.js.map +1 -0
  39. package/lib/benchmark/memory-runtime.d.ts +63 -0
  40. package/lib/benchmark/memory-runtime.d.ts.map +1 -0
  41. package/lib/benchmark/memory-runtime.js +75 -0
  42. package/lib/benchmark/memory-runtime.js.map +1 -0
  43. package/lib/benchmark/native.d.ts +46 -0
  44. package/lib/benchmark/native.d.ts.map +1 -0
  45. package/lib/benchmark/native.js +300 -0
  46. package/lib/benchmark/native.js.map +1 -0
  47. package/lib/benchmark/report.d.ts +4 -0
  48. package/lib/benchmark/report.d.ts.map +1 -0
  49. package/lib/benchmark/report.js +153 -0
  50. package/lib/benchmark/report.js.map +1 -0
  51. package/lib/benchmark/runner.d.ts +25 -0
  52. package/lib/benchmark/runner.d.ts.map +1 -0
  53. package/lib/benchmark/runner.js +119 -0
  54. package/lib/benchmark/runner.js.map +1 -0
  55. package/lib/benchmark/schema.d.ts +20 -0
  56. package/lib/benchmark/schema.d.ts.map +1 -0
  57. package/lib/benchmark/schema.js +183 -0
  58. package/lib/benchmark/schema.js.map +1 -0
  59. package/lib/benchmark/store.d.ts +18 -0
  60. package/lib/benchmark/store.d.ts.map +1 -0
  61. package/lib/benchmark/store.js +321 -0
  62. package/lib/benchmark/store.js.map +1 -0
  63. package/lib/benchmark/strategy-capabilities.d.ts +154 -0
  64. package/lib/benchmark/strategy-capabilities.d.ts.map +1 -0
  65. package/lib/benchmark/strategy-capabilities.js +300 -0
  66. package/lib/benchmark/strategy-capabilities.js.map +1 -0
  67. package/lib/benchmark/strategy-config.d.ts +26 -0
  68. package/lib/benchmark/strategy-config.d.ts.map +1 -0
  69. package/lib/benchmark/strategy-config.js +80 -0
  70. package/lib/benchmark/strategy-config.js.map +1 -0
  71. package/lib/benchmark/strategy-corpus.d.ts +21 -0
  72. package/lib/benchmark/strategy-corpus.d.ts.map +1 -0
  73. package/lib/benchmark/strategy-corpus.js +95 -0
  74. package/lib/benchmark/strategy-corpus.js.map +1 -0
  75. package/lib/benchmark/strategy-evidence.d.ts +161 -0
  76. package/lib/benchmark/strategy-evidence.d.ts.map +1 -0
  77. package/lib/benchmark/strategy-evidence.js +520 -0
  78. package/lib/benchmark/strategy-evidence.js.map +1 -0
  79. package/lib/benchmark/strategy-executor.d.ts +27 -0
  80. package/lib/benchmark/strategy-executor.d.ts.map +1 -0
  81. package/lib/benchmark/strategy-executor.js +178 -0
  82. package/lib/benchmark/strategy-executor.js.map +1 -0
  83. package/lib/benchmark/strategy-goal-runtime.d.ts +78 -0
  84. package/lib/benchmark/strategy-goal-runtime.d.ts.map +1 -0
  85. package/lib/benchmark/strategy-goal-runtime.js +324 -0
  86. package/lib/benchmark/strategy-goal-runtime.js.map +1 -0
  87. package/lib/benchmark/strategy-meter.d.ts +62 -0
  88. package/lib/benchmark/strategy-meter.d.ts.map +1 -0
  89. package/lib/benchmark/strategy-meter.js +236 -0
  90. package/lib/benchmark/strategy-meter.js.map +1 -0
  91. package/lib/benchmark/strategy-owner.d.ts +71 -0
  92. package/lib/benchmark/strategy-owner.d.ts.map +1 -0
  93. package/lib/benchmark/strategy-owner.js +282 -0
  94. package/lib/benchmark/strategy-owner.js.map +1 -0
  95. package/lib/benchmark/strategy-plan.d.ts +51 -0
  96. package/lib/benchmark/strategy-plan.d.ts.map +1 -0
  97. package/lib/benchmark/strategy-plan.js +71 -0
  98. package/lib/benchmark/strategy-plan.js.map +1 -0
  99. package/lib/benchmark/strategy-policy.d.ts +16 -0
  100. package/lib/benchmark/strategy-policy.d.ts.map +1 -0
  101. package/lib/benchmark/strategy-policy.js +77 -0
  102. package/lib/benchmark/strategy-policy.js.map +1 -0
  103. package/lib/benchmark/strategy.d.ts +17 -0
  104. package/lib/benchmark/strategy.d.ts.map +1 -0
  105. package/lib/benchmark/strategy.js +21 -0
  106. package/lib/benchmark/strategy.js.map +1 -0
  107. package/lib/benchmark/types.d.ts +133 -0
  108. package/lib/benchmark/types.d.ts.map +1 -0
  109. package/lib/benchmark/types.js +3 -0
  110. package/lib/benchmark/types.js.map +1 -0
  111. package/lib/benchmark/usage.d.ts +36 -0
  112. package/lib/benchmark/usage.d.ts.map +1 -0
  113. package/lib/benchmark/usage.js +84 -0
  114. package/lib/benchmark/usage.js.map +1 -0
  115. package/lib/service.d.ts +50 -1
  116. package/lib/service.d.ts.map +1 -1
  117. package/lib/service.js +556 -9
  118. package/lib/service.js.map +1 -1
  119. package/lib/sqlite.d.ts +1 -1
  120. package/lib/sqlite.d.ts.map +1 -1
  121. package/lib/sqlite.js +94 -2
  122. package/lib/sqlite.js.map +1 -1
  123. package/lib/store.d.ts +27 -5
  124. package/lib/store.d.ts.map +1 -1
  125. package/lib/store.js +324 -25
  126. package/lib/store.js.map +1 -1
  127. package/lib/types.d.ts +114 -5
  128. package/lib/types.d.ts.map +1 -1
  129. package/lib/types.js.map +1 -1
  130. package/lib/version.d.ts +1 -1
  131. package/lib/version.js +1 -1
  132. package/package.json +125 -18
@@ -0,0 +1,161 @@
1
+ import type { TaskAcceptanceContract, TaskVerificationReceipt } from '@dsh-enhanced/task-acceptance-contract';
2
+ import type { StrategyBenchmarkMeterSnapshot } from './strategy-meter.js';
3
+ import type { BenchmarkBudget, BenchmarkCase, BenchmarkCell, BenchmarkPlan, BenchmarkVariant, BenchmarkVersions } from './types.js';
4
+ import type { StrategyBenchmarkPlan } from './strategy-plan.js';
5
+ export declare const strategyEvidenceProtocol = "dsh-native-goal-strategy-evidence/v1";
6
+ export interface StrategyEvidenceRequest {
7
+ planId: string;
8
+ dataset: BenchmarkPlan['dataset'];
9
+ cell: BenchmarkCell;
10
+ task: BenchmarkCase;
11
+ variant: BenchmarkVariant;
12
+ budget: BenchmarkBudget;
13
+ }
14
+ export interface StrategyEvidenceNative {
15
+ parent: {
16
+ sessionId: string;
17
+ goalId: string;
18
+ nativeGoalId: string;
19
+ definitionVersion: number;
20
+ definitionDigest: string;
21
+ lifecycle: 'completed' | 'failed' | 'cancelled' | 'unknown';
22
+ quiescent: boolean;
23
+ };
24
+ runs: readonly {
25
+ runId: string;
26
+ executionStatus: 'succeeded' | 'unknown';
27
+ quiescent: boolean;
28
+ }[];
29
+ strategies: readonly {
30
+ strategyId: string;
31
+ parentRunId: string;
32
+ kind: 'investigate' | 'review' | 'compare';
33
+ outcome: 'advice' | 'execution-failed' | 'cancelled' | 'unknown';
34
+ children: readonly {
35
+ sessionId: string;
36
+ stopReason: string;
37
+ quiescent: boolean;
38
+ }[];
39
+ }[];
40
+ outcomeAssessments: readonly {
41
+ contract: TaskAcceptanceContract;
42
+ triggerRunId: string | null;
43
+ dispatchedAt: number | null;
44
+ execution: {
45
+ status: 'succeeded' | 'unknown';
46
+ quiescent: boolean;
47
+ completedAt: number;
48
+ } | null;
49
+ }[];
50
+ selectedOutcomeContractId: string | null;
51
+ receipts: readonly {
52
+ runId: string;
53
+ taskKind: 'goal-step' | 'goal-outcome';
54
+ contract: TaskAcceptanceContract;
55
+ receipt: TaskVerificationReceipt;
56
+ quiescent: boolean;
57
+ }[];
58
+ }
59
+ export interface StrategyEvidenceWrite {
60
+ protocol: typeof strategyEvidenceProtocol;
61
+ version: 1;
62
+ plan: StrategyBenchmarkPlan;
63
+ request: StrategyEvidenceRequest;
64
+ input: {
65
+ digest: string;
66
+ };
67
+ acceptance: {
68
+ digest: string;
69
+ verdict: 'achieved' | 'not-achieved' | 'unknown';
70
+ };
71
+ versions: BenchmarkVersions;
72
+ meter: StrategyBenchmarkMeterSnapshot;
73
+ native: StrategyEvidenceNative;
74
+ outcome: {
75
+ status: 'completed' | 'unknown';
76
+ verdict: 'achieved' | 'not-achieved' | 'unknown';
77
+ quiescent: boolean;
78
+ };
79
+ }
80
+ export interface StrategyEvidenceObject extends Omit<StrategyEvidenceWrite, 'plan'> {
81
+ planDigest: string;
82
+ }
83
+ export interface StrategyEvidenceStoreOptions {
84
+ stateDirectory: string;
85
+ candidateWorkspace: string;
86
+ createDirectories?: boolean;
87
+ }
88
+ export declare const strategyFailureProtocol = "dsh-native-goal-strategy-failure/v1";
89
+ export interface StrategyFailureSnapshot {
90
+ runtimeRoot: string | null;
91
+ stage: 'setup' | 'executing' | 'cleanup' | 'evidence' | 'closed';
92
+ cleanup: 'pending' | 'succeeded' | 'unknown';
93
+ meter: StrategyBenchmarkMeterSnapshot | null;
94
+ /** Current-authority Host observation, or null when no authorized snapshot is available. */
95
+ goalSnapshot: unknown | null;
96
+ lastGoalObservation: {
97
+ observedAt: number;
98
+ value: Readonly<Record<string, unknown>>;
99
+ } | null;
100
+ failureStage: 'setup' | 'executing' | 'cleanup' | 'evidence' | null;
101
+ }
102
+ export interface StrategyFailureWrite {
103
+ protocol: typeof strategyFailureProtocol;
104
+ version: 1;
105
+ plan: StrategyBenchmarkPlan;
106
+ request: StrategyEvidenceRequest;
107
+ reason: 'adapter-error' | 'interrupted' | 'timeout' | 'invalid-observation' | 'budget-exceeded' | 'not-quiescent';
108
+ observedAt: number;
109
+ snapshot: StrategyFailureSnapshot;
110
+ }
111
+ export interface StrategyFailureObject extends Omit<StrategyFailureWrite, 'plan'> {
112
+ planDigest: string;
113
+ }
114
+ export declare const strategyCellProtocol = "dsh-native-goal-strategy-cell/v1";
115
+ export interface StrategyCellWrite {
116
+ protocol: typeof strategyCellProtocol;
117
+ version: 1;
118
+ plan: StrategyBenchmarkPlan;
119
+ request: StrategyEvidenceRequest;
120
+ nativeEvidenceDigest: string;
121
+ capabilities: {
122
+ sourceIdentity: unknown;
123
+ runtimeCommitment: {
124
+ source: string;
125
+ sourceIdentityDigest: string;
126
+ image: string;
127
+ dockerPath: string;
128
+ stepMaxDurationMs: number;
129
+ stopTimeoutMs: number;
130
+ };
131
+ requests: readonly {
132
+ sessionId: string;
133
+ kind: 'parent' | 'child';
134
+ observation: unknown | null;
135
+ }[];
136
+ };
137
+ }
138
+ export interface StrategyCellObject extends Omit<StrategyCellWrite, 'plan'> {
139
+ planDigest: string;
140
+ }
141
+ export declare class StrategyEvidenceStore {
142
+ #private;
143
+ constructor(input: StrategyEvidenceStoreOptions);
144
+ write(input: StrategyEvidenceWrite): Readonly<{
145
+ digest: string;
146
+ path: string;
147
+ }>;
148
+ read(planInput: StrategyBenchmarkPlan, cell: BenchmarkCell, digest: string): Readonly<StrategyEvidenceObject>;
149
+ /** A failure observation is terminal evidence of uncertainty, never an acceptance receipt. */
150
+ writeFailure(input: StrategyFailureWrite): Readonly<{
151
+ digest: string;
152
+ path: string;
153
+ }>;
154
+ readFailure(planInput: StrategyBenchmarkPlan, cell: BenchmarkCell, digest: string): Readonly<StrategyFailureObject>;
155
+ writeCell(input: StrategyCellWrite): Readonly<{
156
+ digest: string;
157
+ path: string;
158
+ }>;
159
+ readCell(planInput: StrategyBenchmarkPlan, cell: BenchmarkCell, digest: string): Readonly<StrategyCellObject>;
160
+ }
161
+ //# sourceMappingURL=strategy-evidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"strategy-evidence.d.ts","sourceRoot":"","sources":["../../src/benchmark/strategy-evidence.ts"],"names":[],"mappings":"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"}