@zelari/core 1.49.0 → 2.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/experimental.d.ts +17 -0
- package/dist/experimental.d.ts.map +1 -0
- package/dist/experimental.js +31 -0
- package/dist/experimental.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -1
- package/dist/mission/index.d.ts +5 -0
- package/dist/mission/index.d.ts.map +1 -0
- package/dist/mission/index.js +5 -0
- package/dist/mission/index.js.map +1 -0
- package/dist/mission/missionState.d.ts +37 -0
- package/dist/mission/missionState.d.ts.map +1 -0
- package/dist/mission/missionState.js +61 -0
- package/dist/mission/missionState.js.map +1 -0
- package/dist/runtime/executionContext.d.ts +46 -0
- package/dist/runtime/executionContext.d.ts.map +1 -0
- package/dist/runtime/executionContext.js +63 -0
- package/dist/runtime/executionContext.js.map +1 -0
- package/dist/runtime/index.d.ts +10 -0
- package/dist/runtime/index.d.ts.map +1 -0
- package/dist/runtime/index.js +10 -0
- package/dist/runtime/index.js.map +1 -0
- package/dist/runtime/memoryProviders.d.ts +27 -0
- package/dist/runtime/memoryProviders.d.ts.map +1 -0
- package/dist/runtime/memoryProviders.js +64 -0
- package/dist/runtime/memoryProviders.js.map +1 -0
- package/dist/runtime/nodeProviders.d.ts +21 -0
- package/dist/runtime/nodeProviders.d.ts.map +1 -0
- package/dist/runtime/nodeProviders.js +138 -0
- package/dist/runtime/nodeProviders.js.map +1 -0
- package/dist/runtime/profiles.d.ts +44 -0
- package/dist/runtime/profiles.d.ts.map +1 -0
- package/dist/runtime/profiles.js +91 -0
- package/dist/runtime/profiles.js.map +1 -0
- package/dist/runtime/providers.d.ts +85 -0
- package/dist/runtime/providers.d.ts.map +1 -0
- package/dist/runtime/providers.js +58 -0
- package/dist/runtime/providers.js.map +1 -0
- package/dist/runtime/worktreeWorkspace.d.ts +38 -0
- package/dist/runtime/worktreeWorkspace.d.ts.map +1 -0
- package/dist/runtime/worktreeWorkspace.js +80 -0
- package/dist/runtime/worktreeWorkspace.js.map +1 -0
- package/dist/session/exportSession.d.ts +31 -0
- package/dist/session/exportSession.d.ts.map +1 -0
- package/dist/session/exportSession.js +37 -0
- package/dist/session/exportSession.js.map +1 -0
- package/dist/session/index.d.ts +15 -0
- package/dist/session/index.d.ts.map +1 -0
- package/dist/session/index.js +15 -0
- package/dist/session/index.js.map +1 -0
- package/dist/session/lineage.d.ts +38 -0
- package/dist/session/lineage.d.ts.map +1 -0
- package/dist/session/lineage.js +69 -0
- package/dist/session/lineage.js.map +1 -0
- package/dist/session/modelSurface.d.ts +43 -0
- package/dist/session/modelSurface.d.ts.map +1 -0
- package/dist/session/modelSurface.js +96 -0
- package/dist/session/modelSurface.js.map +1 -0
- package/dist/session/replay.d.ts +61 -0
- package/dist/session/replay.d.ts.map +1 -0
- package/dist/session/replay.js +137 -0
- package/dist/session/replay.js.map +1 -0
- package/dist/session/store.d.ts +60 -0
- package/dist/session/store.d.ts.map +1 -0
- package/dist/session/store.js +117 -0
- package/dist/session/store.js.map +1 -0
- package/dist/session/types.d.ts +85 -0
- package/dist/session/types.d.ts.map +1 -0
- package/dist/session/types.js +62 -0
- package/dist/session/types.js.map +1 -0
- package/dist/session/writer.d.ts +44 -0
- package/dist/session/writer.d.ts.map +1 -0
- package/dist/session/writer.js +114 -0
- package/dist/session/writer.js.map +1 -0
- package/dist/verification/completionPolicy.d.ts +33 -0
- package/dist/verification/completionPolicy.d.ts.map +1 -0
- package/dist/verification/completionPolicy.js +68 -0
- package/dist/verification/completionPolicy.js.map +1 -0
- package/dist/verification/criteriaPack.v1.d.ts +27 -0
- package/dist/verification/criteriaPack.v1.d.ts.map +1 -0
- package/dist/verification/criteriaPack.v1.js +58 -0
- package/dist/verification/criteriaPack.v1.js.map +1 -0
- package/dist/verification/engine.d.ts +38 -0
- package/dist/verification/engine.d.ts.map +1 -0
- package/dist/verification/engine.js +163 -0
- package/dist/verification/engine.js.map +1 -0
- package/dist/verification/index.d.ts +11 -0
- package/dist/verification/index.d.ts.map +1 -0
- package/dist/verification/index.js +11 -0
- package/dist/verification/index.js.map +1 -0
- package/dist/verification/metrics.d.ts +26 -0
- package/dist/verification/metrics.d.ts.map +1 -0
- package/dist/verification/metrics.js +29 -0
- package/dist/verification/metrics.js.map +1 -0
- package/dist/verification/types.d.ts +161 -0
- package/dist/verification/types.d.ts.map +1 -0
- package/dist/verification/types.js +92 -0
- package/dist/verification/types.js.map +1 -0
- package/dist/verification/verifier.d.ts +133 -0
- package/dist/verification/verifier.d.ts.map +1 -0
- package/dist/verification/verifier.js +215 -0
- package/dist/verification/verifier.js.map +1 -0
- package/package.json +17 -1
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* verification/verifier.ts — optional LLM VerifierService (Phase 3B, alpha).
|
|
3
|
+
*
|
|
4
|
+
* Contract (plan §14 / ADR-0023):
|
|
5
|
+
* - enable/disable + model selection `inherit | fixed` (same semantics as the
|
|
6
|
+
* 1.49 `--verifier-provider/--verifier-model/--verifier-clear` channel);
|
|
7
|
+
* - the EFFECTIVE provider/model is always recorded in the emitted event;
|
|
8
|
+
* - unparseable/absent model output degrades to a DECLARED discrete fallback
|
|
9
|
+
* (`verdict: 'unknown', fallback: 'discrete'`) — never to `pass`;
|
|
10
|
+
* - ADVISORY ONLY: reviews and scores never enter CompletionPolicy. No done
|
|
11
|
+
* based on the score alone; no P2 bypass;
|
|
12
|
+
* - progress score is labeled "experimental", never "% complete";
|
|
13
|
+
* - BoN selection requires BOTH config.bon.enabled and the experimental flag.
|
|
14
|
+
*/
|
|
15
|
+
import { z } from 'zod';
|
|
16
|
+
import type { SessionEventInput } from '../session/types.js';
|
|
17
|
+
import type { VerificationResult } from './types.js';
|
|
18
|
+
export declare const ModelSelectionSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
19
|
+
mode: z.ZodLiteral<"inherit">;
|
|
20
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
21
|
+
mode: z.ZodLiteral<"fixed">;
|
|
22
|
+
provider: z.ZodString;
|
|
23
|
+
model: z.ZodString;
|
|
24
|
+
}, z.core.$strip>]>;
|
|
25
|
+
export type ModelSelection = z.infer<typeof ModelSelectionSchema>;
|
|
26
|
+
export declare const BonConfigSchema: z.ZodObject<{
|
|
27
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
28
|
+
n: z.ZodDefault<z.ZodNumber>;
|
|
29
|
+
}, z.core.$strip>;
|
|
30
|
+
export declare const VerifierConfigSchema: z.ZodObject<{
|
|
31
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
32
|
+
model: z.ZodDefault<z.ZodUnion<readonly [z.ZodObject<{
|
|
33
|
+
mode: z.ZodLiteral<"inherit">;
|
|
34
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
35
|
+
mode: z.ZodLiteral<"fixed">;
|
|
36
|
+
provider: z.ZodString;
|
|
37
|
+
model: z.ZodString;
|
|
38
|
+
}, z.core.$strip>]>>;
|
|
39
|
+
progressScoring: z.ZodDefault<z.ZodBoolean>;
|
|
40
|
+
bon: z.ZodDefault<z.ZodObject<{
|
|
41
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
42
|
+
n: z.ZodDefault<z.ZodNumber>;
|
|
43
|
+
}, z.core.$strip>>;
|
|
44
|
+
}, z.core.$strip>;
|
|
45
|
+
export type VerifierConfig = z.infer<typeof VerifierConfigSchema>;
|
|
46
|
+
export declare const DEFAULT_VERIFIER_CONFIG: VerifierConfig;
|
|
47
|
+
export interface VerifierModelResponse {
|
|
48
|
+
text: string;
|
|
49
|
+
provider?: string;
|
|
50
|
+
model?: string;
|
|
51
|
+
/** Present only when the provider exposes them (optional path). */
|
|
52
|
+
logprobs?: number[];
|
|
53
|
+
}
|
|
54
|
+
export type VerifierModelCaller = (input: {
|
|
55
|
+
system: string;
|
|
56
|
+
user: string;
|
|
57
|
+
}) => Promise<VerifierModelResponse>;
|
|
58
|
+
export interface VerifierReview {
|
|
59
|
+
verdict: 'confirmed' | 'rejected' | 'unknown';
|
|
60
|
+
score?: number;
|
|
61
|
+
rationale?: string;
|
|
62
|
+
/** Declared degradation path (discrete fallback), when used. */
|
|
63
|
+
fallback?: 'discrete';
|
|
64
|
+
effectiveModel: {
|
|
65
|
+
mode: 'inherit' | 'fixed';
|
|
66
|
+
provider?: string;
|
|
67
|
+
model?: string;
|
|
68
|
+
};
|
|
69
|
+
usedLogprobs: boolean;
|
|
70
|
+
}
|
|
71
|
+
export interface SessionModelInfo {
|
|
72
|
+
provider?: string;
|
|
73
|
+
model?: string;
|
|
74
|
+
}
|
|
75
|
+
export interface Hypothesis {
|
|
76
|
+
id: string;
|
|
77
|
+
summary?: string;
|
|
78
|
+
/** Optional prior score (e.g. from selection). */
|
|
79
|
+
score?: number;
|
|
80
|
+
}
|
|
81
|
+
export interface RankingResult<T extends {
|
|
82
|
+
id: string;
|
|
83
|
+
}> {
|
|
84
|
+
ordered: T[];
|
|
85
|
+
/** True when no usable scores existed and original order was kept. */
|
|
86
|
+
fallbackUsed: boolean;
|
|
87
|
+
}
|
|
88
|
+
export interface BonSelection {
|
|
89
|
+
enabled: boolean;
|
|
90
|
+
selected?: string;
|
|
91
|
+
fallbackUsed: boolean;
|
|
92
|
+
reason: string;
|
|
93
|
+
}
|
|
94
|
+
export interface ProgressScore {
|
|
95
|
+
tier: 'deterministic' | 'blended';
|
|
96
|
+
value: number | null;
|
|
97
|
+
label: string;
|
|
98
|
+
}
|
|
99
|
+
export interface VerifierServiceDeps {
|
|
100
|
+
callModel: VerifierModelCaller;
|
|
101
|
+
config?: VerifierConfig;
|
|
102
|
+
emit?: (input: SessionEventInput) => Promise<unknown>;
|
|
103
|
+
env?: Record<string, string | undefined>;
|
|
104
|
+
}
|
|
105
|
+
export declare class VerifierService {
|
|
106
|
+
private readonly deps;
|
|
107
|
+
readonly config: VerifierConfig;
|
|
108
|
+
constructor(deps: VerifierServiceDeps);
|
|
109
|
+
get enabled(): boolean;
|
|
110
|
+
/** Resolve the model that would actually be used (§14: log the effective model). */
|
|
111
|
+
effectiveModel(session?: SessionModelInfo): {
|
|
112
|
+
mode: 'inherit' | 'fixed';
|
|
113
|
+
provider?: string;
|
|
114
|
+
model?: string;
|
|
115
|
+
};
|
|
116
|
+
/** Review a claimed completion. Degrades to a declared discrete fallback. */
|
|
117
|
+
reviewCompletion(request: {
|
|
118
|
+
summary: string;
|
|
119
|
+
results: readonly VerificationResult[];
|
|
120
|
+
session?: SessionModelInfo;
|
|
121
|
+
}): Promise<VerifierReview>;
|
|
122
|
+
private emitReview;
|
|
123
|
+
/** Rank hypotheses by score; original order is the declared fallback. */
|
|
124
|
+
rankHypotheses<T extends Hypothesis>(hypotheses: readonly T[]): RankingResult<T>;
|
|
125
|
+
/** BoN alpha selection: requires config + experimental flag; ties declare fallback. */
|
|
126
|
+
selectBestN(candidates: readonly Hypothesis[]): BonSelection;
|
|
127
|
+
/**
|
|
128
|
+
* Epistemically honest progress: deterministic ratio, optionally blended
|
|
129
|
+
* with the verifier score. Always labeled `experimental`, never "% complete".
|
|
130
|
+
*/
|
|
131
|
+
progressScore(results: readonly VerificationResult[], review?: VerifierReview): ProgressScore;
|
|
132
|
+
}
|
|
133
|
+
//# sourceMappingURL=verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifier.d.ts","sourceRoot":"","sources":["../../src/verification/verifier.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* verification/verifier.ts — optional LLM VerifierService (Phase 3B, alpha).
|
|
3
|
+
*
|
|
4
|
+
* Contract (plan §14 / ADR-0023):
|
|
5
|
+
* - enable/disable + model selection `inherit | fixed` (same semantics as the
|
|
6
|
+
* 1.49 `--verifier-provider/--verifier-model/--verifier-clear` channel);
|
|
7
|
+
* - the EFFECTIVE provider/model is always recorded in the emitted event;
|
|
8
|
+
* - unparseable/absent model output degrades to a DECLARED discrete fallback
|
|
9
|
+
* (`verdict: 'unknown', fallback: 'discrete'`) — never to `pass`;
|
|
10
|
+
* - ADVISORY ONLY: reviews and scores never enter CompletionPolicy. No done
|
|
11
|
+
* based on the score alone; no P2 bypass;
|
|
12
|
+
* - progress score is labeled "experimental", never "% complete";
|
|
13
|
+
* - BoN selection requires BOTH config.bon.enabled and the experimental flag.
|
|
14
|
+
*/
|
|
15
|
+
import { z } from 'zod';
|
|
16
|
+
import { isExperimentalEnabled } from '../experimental.js';
|
|
17
|
+
export const ModelSelectionSchema = z.union([
|
|
18
|
+
z.object({ mode: z.literal('inherit') }),
|
|
19
|
+
z.object({ mode: z.literal('fixed'), provider: z.string().min(1), model: z.string().min(1) }),
|
|
20
|
+
]);
|
|
21
|
+
export const BonConfigSchema = z.object({
|
|
22
|
+
enabled: z.boolean().default(false),
|
|
23
|
+
n: z.number().int().min(2).max(8).default(3),
|
|
24
|
+
});
|
|
25
|
+
export const VerifierConfigSchema = z.object({
|
|
26
|
+
enabled: z.boolean().default(false),
|
|
27
|
+
model: ModelSelectionSchema.default({ mode: 'inherit' }),
|
|
28
|
+
progressScoring: z.boolean().default(false),
|
|
29
|
+
bon: BonConfigSchema.default({ enabled: false, n: 3 }),
|
|
30
|
+
});
|
|
31
|
+
export const DEFAULT_VERIFIER_CONFIG = VerifierConfigSchema.parse({});
|
|
32
|
+
const ReviewOutputSchema = z.object({
|
|
33
|
+
verdict: z.enum(['confirmed', 'rejected', 'unknown']),
|
|
34
|
+
score: z.number().min(0).max(1).optional(),
|
|
35
|
+
rationale: z.string().optional(),
|
|
36
|
+
});
|
|
37
|
+
function extractJson(text) {
|
|
38
|
+
const start = text.indexOf('{');
|
|
39
|
+
const end = text.lastIndexOf('}');
|
|
40
|
+
if (start === -1 || end <= start)
|
|
41
|
+
return null;
|
|
42
|
+
try {
|
|
43
|
+
return JSON.parse(text.slice(start, end + 1));
|
|
44
|
+
}
|
|
45
|
+
catch {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
const VERIFIER_SYSTEM_PROMPT = [
|
|
50
|
+
'You are an independent completion verifier.',
|
|
51
|
+
'You receive a work summary and deterministic verification results.',
|
|
52
|
+
'Answer with a single JSON object and nothing else:',
|
|
53
|
+
'{"verdict":"confirmed|rejected|unknown","score":0..1,"rationale":"..."}',
|
|
54
|
+
'Rules: never confirm when a required deterministic check failed or is unknown;',
|
|
55
|
+
'when evidence is insufficient, use verdict "unknown".',
|
|
56
|
+
].join('\n');
|
|
57
|
+
export class VerifierService {
|
|
58
|
+
deps;
|
|
59
|
+
config;
|
|
60
|
+
constructor(deps) {
|
|
61
|
+
this.deps = deps;
|
|
62
|
+
this.config = deps.config ?? DEFAULT_VERIFIER_CONFIG;
|
|
63
|
+
}
|
|
64
|
+
get enabled() {
|
|
65
|
+
return this.config.enabled;
|
|
66
|
+
}
|
|
67
|
+
/** Resolve the model that would actually be used (§14: log the effective model). */
|
|
68
|
+
effectiveModel(session) {
|
|
69
|
+
if (this.config.model.mode === 'fixed') {
|
|
70
|
+
const fixed = this.config.model;
|
|
71
|
+
return { mode: 'fixed', provider: fixed.provider, model: fixed.model };
|
|
72
|
+
}
|
|
73
|
+
return { mode: 'inherit', provider: session?.provider, model: session?.model };
|
|
74
|
+
}
|
|
75
|
+
/** Review a claimed completion. Degrades to a declared discrete fallback. */
|
|
76
|
+
async reviewCompletion(request) {
|
|
77
|
+
const effective = this.effectiveModel(request.session);
|
|
78
|
+
const base = { effectiveModel: effective, usedLogprobs: false };
|
|
79
|
+
if (!this.config.enabled) {
|
|
80
|
+
return { ...base, verdict: 'unknown', fallback: 'discrete', rationale: 'verifier disabled' };
|
|
81
|
+
}
|
|
82
|
+
let response;
|
|
83
|
+
try {
|
|
84
|
+
response = await this.deps.callModel({
|
|
85
|
+
system: VERIFIER_SYSTEM_PROMPT,
|
|
86
|
+
user: JSON.stringify({
|
|
87
|
+
summary: request.summary,
|
|
88
|
+
deterministicResults: request.results.map((r) => ({
|
|
89
|
+
criterionId: r.criterionId,
|
|
90
|
+
status: r.status,
|
|
91
|
+
detail: r.detail,
|
|
92
|
+
})),
|
|
93
|
+
}, null, 2),
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
const review = {
|
|
98
|
+
...base,
|
|
99
|
+
verdict: 'unknown',
|
|
100
|
+
fallback: 'discrete',
|
|
101
|
+
rationale: `verifier call failed: ${err instanceof Error ? err.message : String(err)}`,
|
|
102
|
+
};
|
|
103
|
+
await this.emitReview(review);
|
|
104
|
+
return review;
|
|
105
|
+
}
|
|
106
|
+
const parsed = ReviewOutputSchema.safeParse(extractJson(response.text));
|
|
107
|
+
if (!parsed.success) {
|
|
108
|
+
const review = {
|
|
109
|
+
...base,
|
|
110
|
+
verdict: 'unknown',
|
|
111
|
+
fallback: 'discrete',
|
|
112
|
+
rationale: 'verifier output unparseable — declared discrete fallback',
|
|
113
|
+
effectiveModel: {
|
|
114
|
+
...effective,
|
|
115
|
+
provider: response.provider ?? effective.provider,
|
|
116
|
+
model: response.model ?? effective.model,
|
|
117
|
+
},
|
|
118
|
+
};
|
|
119
|
+
await this.emitReview(review);
|
|
120
|
+
return review;
|
|
121
|
+
}
|
|
122
|
+
const blockedByDeterministic = request.results.some((r) => r.status === 'fail' && parsed.data.verdict === 'confirmed');
|
|
123
|
+
const review = {
|
|
124
|
+
...base,
|
|
125
|
+
verdict: blockedByDeterministic ? 'unknown' : parsed.data.verdict,
|
|
126
|
+
score: parsed.data.score,
|
|
127
|
+
rationale: blockedByDeterministic
|
|
128
|
+
? 'cannot confirm while a deterministic check failed — downgraded to unknown'
|
|
129
|
+
: parsed.data.rationale,
|
|
130
|
+
fallback: blockedByDeterministic ? 'discrete' : undefined,
|
|
131
|
+
effectiveModel: {
|
|
132
|
+
...effective,
|
|
133
|
+
provider: response.provider ?? effective.provider,
|
|
134
|
+
model: response.model ?? effective.model,
|
|
135
|
+
},
|
|
136
|
+
usedLogprobs: Array.isArray(response.logprobs) && response.logprobs.length > 0,
|
|
137
|
+
};
|
|
138
|
+
await this.emitReview(review);
|
|
139
|
+
return review;
|
|
140
|
+
}
|
|
141
|
+
async emitReview(review) {
|
|
142
|
+
if (!this.deps.emit)
|
|
143
|
+
return;
|
|
144
|
+
await this.deps.emit({
|
|
145
|
+
kind: 'verification.run',
|
|
146
|
+
actor: { type: 'system', role: 'verifier' },
|
|
147
|
+
data: {
|
|
148
|
+
source: 'verifier-model',
|
|
149
|
+
verdict: review.verdict,
|
|
150
|
+
score: review.score,
|
|
151
|
+
fallback: review.fallback ?? null,
|
|
152
|
+
provider: review.effectiveModel.provider ?? null,
|
|
153
|
+
model: review.effectiveModel.model ?? null,
|
|
154
|
+
selectionMode: review.effectiveModel.mode,
|
|
155
|
+
},
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
/** Rank hypotheses by score; original order is the declared fallback. */
|
|
159
|
+
rankHypotheses(hypotheses) {
|
|
160
|
+
const scored = hypotheses.filter((h) => typeof h.score === 'number');
|
|
161
|
+
if (scored.length === 0) {
|
|
162
|
+
return { ordered: [...hypotheses], fallbackUsed: true };
|
|
163
|
+
}
|
|
164
|
+
const ordered = [...hypotheses].sort((a, b) => (b.score ?? -1) - (a.score ?? -1));
|
|
165
|
+
return { ordered, fallbackUsed: false };
|
|
166
|
+
}
|
|
167
|
+
/** BoN alpha selection: requires config + experimental flag; ties declare fallback. */
|
|
168
|
+
selectBestN(candidates) {
|
|
169
|
+
const env = this.deps.env ?? process.env;
|
|
170
|
+
if (!this.config.bon.enabled) {
|
|
171
|
+
return { enabled: false, fallbackUsed: true, reason: 'BoN disabled in verifier config (default)' };
|
|
172
|
+
}
|
|
173
|
+
if (!isExperimentalEnabled('bon', env)) {
|
|
174
|
+
return {
|
|
175
|
+
enabled: false,
|
|
176
|
+
fallbackUsed: true,
|
|
177
|
+
reason: 'BoN requires ZELARI_EXPERIMENTAL=bon (alpha flag)',
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
const { ordered, fallbackUsed } = this.rankHypotheses(candidates);
|
|
181
|
+
const top = ordered[0];
|
|
182
|
+
const second = ordered[1];
|
|
183
|
+
const margin = (top?.score ?? 0) - (second?.score ?? 0);
|
|
184
|
+
if (fallbackUsed || !top || (second !== undefined && margin < 0.05)) {
|
|
185
|
+
return {
|
|
186
|
+
enabled: true,
|
|
187
|
+
selected: candidates[0]?.id,
|
|
188
|
+
fallbackUsed: true,
|
|
189
|
+
reason: fallbackUsed
|
|
190
|
+
? 'no usable scores — declared fallback to first candidate'
|
|
191
|
+
: `score margin ${margin.toFixed(3)} below 0.05 — declared fallback to first candidate`,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
return { enabled: true, selected: top.id, fallbackUsed: false, reason: 'selected by score' };
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Epistemically honest progress: deterministic ratio, optionally blended
|
|
198
|
+
* with the verifier score. Always labeled `experimental`, never "% complete".
|
|
199
|
+
*/
|
|
200
|
+
progressScore(results, review) {
|
|
201
|
+
const total = results.length;
|
|
202
|
+
const passed = results.filter((r) => r.status === 'pass').length;
|
|
203
|
+
const deterministic = total === 0 ? null : passed / total;
|
|
204
|
+
if (this.config.progressScoring && review?.score !== undefined) {
|
|
205
|
+
const blended = deterministic === null ? review.score : 0.5 * deterministic + 0.5 * review.score;
|
|
206
|
+
return { tier: 'blended', value: blended, label: `Verifier score: ${blended.toFixed(2)} · experimental` };
|
|
207
|
+
}
|
|
208
|
+
return {
|
|
209
|
+
tier: 'deterministic',
|
|
210
|
+
value: deterministic,
|
|
211
|
+
label: deterministic === null ? 'no criteria yet' : `Evidence: ${passed}/${total} criteria pass`,
|
|
212
|
+
};
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
//# sourceMappingURL=verifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifier.js","sourceRoot":"","sources":["../../src/verification/verifier.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zelari/core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0-alpha.3",
|
|
4
4
|
"description": "Zelari Code core library — provider-neutral agent loop (AgentHarness), multi-agent council orchestration, and built-in skills. Used by the zelari-code CLI; consumable by other agent frontends.",
|
|
5
5
|
"author": "Anathema Studio <https://anathema-studio.com/>",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -119,6 +119,22 @@
|
|
|
119
119
|
"./harness/tools/builtin/web": {
|
|
120
120
|
"types": "./dist/core/tools/builtin/web.d.ts",
|
|
121
121
|
"default": "./dist/core/tools/builtin/web.js"
|
|
122
|
+
},
|
|
123
|
+
"./session": {
|
|
124
|
+
"types": "./dist/session/index.d.ts",
|
|
125
|
+
"default": "./dist/session/index.js"
|
|
126
|
+
},
|
|
127
|
+
"./runtime": {
|
|
128
|
+
"types": "./dist/runtime/index.d.ts",
|
|
129
|
+
"default": "./dist/runtime/index.js"
|
|
130
|
+
},
|
|
131
|
+
"./verification": {
|
|
132
|
+
"types": "./dist/verification/index.d.ts",
|
|
133
|
+
"default": "./dist/verification/index.js"
|
|
134
|
+
},
|
|
135
|
+
"./mission": {
|
|
136
|
+
"types": "./dist/mission/index.d.ts",
|
|
137
|
+
"default": "./dist/mission/index.js"
|
|
122
138
|
}
|
|
123
139
|
},
|
|
124
140
|
"files": [
|