@dsh-enhanced/assistant-growth-contract 0.1.67 → 0.1.70

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/lib/index.d.ts CHANGED
@@ -10,5 +10,7 @@ export * from './source-owner.js';
10
10
  export * from './creation-verification.js';
11
11
  export * from './revision-verification.js';
12
12
  export * from './revision-regression.js';
13
+ export * from './revision-benefit.js';
14
+ export * from './plugin-protection.js';
13
15
  export { version } from './version.js';
14
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
package/lib/index.js CHANGED
@@ -10,5 +10,7 @@ export * from './source-owner.js';
10
10
  export * from './creation-verification.js';
11
11
  export * from './revision-verification.js';
12
12
  export * from './revision-regression.js';
13
+ export * from './revision-benefit.js';
14
+ export * from './plugin-protection.js';
13
15
  export { version } from './version.js';
14
16
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,kBAAkB,CAAA;AAChC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,sBAAsB,CAAA;AACpC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,uBAAuB,CAAA;AACrC,cAAc,wBAAwB,CAAA;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Single source of truth for the two protected-plugin trust boundaries.
3
+ *
4
+ * This module lives inside the inert growth-contract package because that
5
+ * package is already part of the sealed RSI bootstrap dependency closure
6
+ * (plugin-control-plane + assistant-growth-contract). Introducing a third
7
+ * runtime package into the control-plane dependency graph would break the
8
+ * sealed manifest validation in rsi-authority-runtime, which bounds and
9
+ * audits exactly those two packages.
10
+ *
11
+ * `MODEL_PROPOSAL_PROTECTED_PLUGINS` (23 names) is the growth-proposal
12
+ * boundary: plugins the growth model may never read targets for, read source
13
+ * of, or prepare modify/revision proposals against. Both defence layers
14
+ * (growth-driver allowlist and control-plane worktree gate) consume it.
15
+ *
16
+ * `OWNER_REPAIR_PROTECTED_PLUGINS` (12 immutable safety roots) is the strict
17
+ * subset that also excludes plugins from the owner source-repair channel and
18
+ * its signature authorities. Governance machinery added later (growth-driver,
19
+ * recovery, evolution, …) must stay repairable by the owner channel, so it
20
+ * joins only the model-proposal set.
21
+ *
22
+ * Plain data only: no bundle, no services, no I/O.
23
+ */
24
+ export declare const MODEL_PROPOSAL_PROTECTED_PLUGINS: ReadonlySet<string>;
25
+ /** Immutable safety roots excluded even from the owner source-repair channel. */
26
+ export declare const OWNER_REPAIR_PROTECTED_PLUGINS: ReadonlySet<string>;
27
+ export declare function assertProtectedSetsConsistent(): void;
28
+ //# sourceMappingURL=plugin-protection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-protection.d.ts","sourceRoot":"","sources":["../src/plugin-protection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,eAAO,MAAM,gCAAgC,EAAE,WAAW,CAAC,MAAM,CAwB/D,CAAA;AAEF,iFAAiF;AACjF,eAAO,MAAM,8BAA8B,EAAE,WAAW,CAAC,MAAM,CAa7D,CAAA;AAEF,wBAAgB,6BAA6B,IAAI,IAAI,CASpD"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Single source of truth for the two protected-plugin trust boundaries.
3
+ *
4
+ * This module lives inside the inert growth-contract package because that
5
+ * package is already part of the sealed RSI bootstrap dependency closure
6
+ * (plugin-control-plane + assistant-growth-contract). Introducing a third
7
+ * runtime package into the control-plane dependency graph would break the
8
+ * sealed manifest validation in rsi-authority-runtime, which bounds and
9
+ * audits exactly those two packages.
10
+ *
11
+ * `MODEL_PROPOSAL_PROTECTED_PLUGINS` (23 names) is the growth-proposal
12
+ * boundary: plugins the growth model may never read targets for, read source
13
+ * of, or prepare modify/revision proposals against. Both defence layers
14
+ * (growth-driver allowlist and control-plane worktree gate) consume it.
15
+ *
16
+ * `OWNER_REPAIR_PROTECTED_PLUGINS` (12 immutable safety roots) is the strict
17
+ * subset that also excludes plugins from the owner source-repair channel and
18
+ * its signature authorities. Governance machinery added later (growth-driver,
19
+ * recovery, evolution, …) must stay repairable by the owner channel, so it
20
+ * joins only the model-proposal set.
21
+ *
22
+ * Plain data only: no bundle, no services, no I/O.
23
+ */
24
+ export const MODEL_PROPOSAL_PROTECTED_PLUGINS = new Set([
25
+ 'assistant-delivery',
26
+ 'lark-channel',
27
+ 'assistant-automations',
28
+ 'assistant-policy',
29
+ 'credentials-keychain',
30
+ 'assistant-evaluation',
31
+ 'assistant-verifier',
32
+ 'assistant-deepseek-budget',
33
+ 'assistant-skills',
34
+ 'assistant-isolation',
35
+ 'assistant-web-owner',
36
+ 'plugin-control-plane',
37
+ 'assistant-growth-driver',
38
+ 'assistant-recovery',
39
+ 'assistant-evolution',
40
+ 'owner-console',
41
+ 'assistant-actions',
42
+ 'assistant-work-items',
43
+ 'assistant-goals',
44
+ 'event-triggers',
45
+ 'assistant-heartbeat',
46
+ 'assistant-proactive',
47
+ 'assistant-memory-learning',
48
+ ]);
49
+ /** Immutable safety roots excluded even from the owner source-repair channel. */
50
+ export const OWNER_REPAIR_PROTECTED_PLUGINS = new Set([
51
+ 'assistant-delivery',
52
+ 'lark-channel',
53
+ 'assistant-automations',
54
+ 'assistant-policy',
55
+ 'credentials-keychain',
56
+ 'assistant-evaluation',
57
+ 'assistant-verifier',
58
+ 'assistant-deepseek-budget',
59
+ 'assistant-skills',
60
+ 'assistant-isolation',
61
+ 'assistant-web-owner',
62
+ 'plugin-control-plane',
63
+ ]);
64
+ export function assertProtectedSetsConsistent() {
65
+ for (const name of OWNER_REPAIR_PROTECTED_PLUGINS) {
66
+ if (!MODEL_PROPOSAL_PROTECTED_PLUGINS.has(name)) {
67
+ throw new Error(`owner-repair protected plugin ${name} must also be model-proposal protected`);
68
+ }
69
+ }
70
+ if (MODEL_PROPOSAL_PROTECTED_PLUGINS.size <= OWNER_REPAIR_PROTECTED_PLUGINS.size) {
71
+ throw new Error('model-proposal protection must be a strict superset of owner-repair protection');
72
+ }
73
+ }
74
+ assertProtectedSetsConsistent();
75
+ //# sourceMappingURL=plugin-protection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"plugin-protection.js","sourceRoot":"","sources":["../src/plugin-protection.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,MAAM,CAAC,MAAM,gCAAgC,GAAwB,IAAI,GAAG,CAAC;IAC3E,oBAAoB;IACpB,cAAc;IACd,uBAAuB;IACvB,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,oBAAoB;IACpB,2BAA2B;IAC3B,kBAAkB;IAClB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;IACtB,yBAAyB;IACzB,oBAAoB;IACpB,qBAAqB;IACrB,eAAe;IACf,mBAAmB;IACnB,sBAAsB;IACtB,iBAAiB;IACjB,gBAAgB;IAChB,qBAAqB;IACrB,qBAAqB;IACrB,2BAA2B;CAC5B,CAAC,CAAA;AAEF,iFAAiF;AACjF,MAAM,CAAC,MAAM,8BAA8B,GAAwB,IAAI,GAAG,CAAC;IACzE,oBAAoB;IACpB,cAAc;IACd,uBAAuB;IACvB,kBAAkB;IAClB,sBAAsB;IACtB,sBAAsB;IACtB,oBAAoB;IACpB,2BAA2B;IAC3B,kBAAkB;IAClB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;CACvB,CAAC,CAAA;AAEF,MAAM,UAAU,6BAA6B;IAC3C,KAAK,MAAM,IAAI,IAAI,8BAA8B,EAAE,CAAC;QAClD,IAAI,CAAC,gCAAgC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,IAAI,wCAAwC,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;IACD,IAAI,gCAAgC,CAAC,IAAI,IAAI,8BAA8B,CAAC,IAAI,EAAE,CAAC;QACjF,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAA;IACnG,CAAC;AACH,CAAC;AAED,6BAA6B,EAAE,CAAA"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * P1-4 benefit contract: a revision may replace its adopted parent only when
3
+ * the candidate window proves non-inferior under the SAME supplier and budget.
4
+ * Comparison inputs are canonical, Host-derived window statistics; deployment
5
+ * association is never causal evidence, and every verdict keeps the failed
6
+ * attempts visible.
7
+ */
8
+ export interface RevisionBenefitModel {
9
+ provider: string;
10
+ model: string;
11
+ reasoningEffort?: string;
12
+ }
13
+ export interface RevisionBenefitBudget {
14
+ budgetId: string;
15
+ amount: number;
16
+ }
17
+ /** Owner-frozen comparison contract; pins, never model input. */
18
+ export interface RevisionBenefitContract {
19
+ protocol: 'assistant-growth/revision-benefit-contract/v1';
20
+ model: RevisionBenefitModel;
21
+ budget: RevisionBenefitBudget;
22
+ /** Minimum distinct canonical task revisions per window before any verdict. */
23
+ minimumTaskRevisions: number;
24
+ /** Maximum tolerated regression for each non-inferiority metric, in relative terms. */
25
+ thresholds: {
26
+ /** Candidate failure rate may exceed parent by at most this fraction. */
27
+ maxFailureRateDelta: number;
28
+ /** Candidate rework (repeat corrections of the same revision) rate delta cap. */
29
+ maxReworkRateDelta: number;
30
+ /** Candidate corrected/withdrawn task rate delta cap. */
31
+ maxCorrectionRateDelta: number;
32
+ /** Candidate mean latency may exceed parent mean by at most this fraction. */
33
+ maxLatencyRatio: number;
34
+ /** Candidate mean token cost may exceed parent mean by at most this fraction. */
35
+ maxCostRatio: number;
36
+ };
37
+ createdAt: number;
38
+ expiresAt: number;
39
+ }
40
+ /**
41
+ * One observation window over authenticated task outcomes for one artifact
42
+ * version. Every count is over distinct canonical task revisions; corrected
43
+ * and withdrawn revisions are EXCLUDED from the quality aggregates and
44
+ * reported separately so exclusion can be audited.
45
+ */
46
+ export interface RevisionBenefitWindowStats {
47
+ protocol: 'assistant-growth/revision-benefit-window/v1';
48
+ /** Digest binding this window to one artifact (parent or candidate). */
49
+ artifactSha256: string;
50
+ windowStart: number;
51
+ windowEnd: number;
52
+ /** Distinct canonical task revisions observed, before exclusions. */
53
+ taskRevisions: number;
54
+ /** Revisions excluded because the owner corrected or withdrew them. */
55
+ correctedOrWithdrawn: number;
56
+ /** Revisions whose objective was not achieved, over the INCLUDED set. */
57
+ failed: number;
58
+ /** Included revisions that required a repeat delivery for the same task. */
59
+ reworked: number;
60
+ /** Sum of delivery latency ms over the INCLUDED set (mean derives from taskRevisions - correctedOrWithdrawn). */
61
+ latencyMsTotal: number;
62
+ /** Sum of billed token cost over the INCLUDED set. */
63
+ tokensTotal: number;
64
+ inputTokensTotal: number;
65
+ outputTokensTotal: number;
66
+ }
67
+ export type RevisionBenefitVerdict = {
68
+ status: 'insufficient';
69
+ reason: 'below-minimum-samples' | 'contract-expired' | 'cost-or-latency-unmeasured';
70
+ } | {
71
+ status: 'inferior';
72
+ reason: string;
73
+ } | {
74
+ status: 'non-inferior';
75
+ reason: 'all-metrics-within-thresholds';
76
+ };
77
+ export interface RevisionBenefitEvaluation {
78
+ verdict: RevisionBenefitVerdict;
79
+ parent: {
80
+ included: number;
81
+ failureRate: number;
82
+ reworkRate: number;
83
+ correctionRate: number;
84
+ meanLatencyMs: number;
85
+ meanTokens: number;
86
+ };
87
+ candidate: {
88
+ included: number;
89
+ failureRate: number;
90
+ reworkRate: number;
91
+ correctionRate: number;
92
+ meanLatencyMs: number;
93
+ meanTokens: number;
94
+ };
95
+ }
96
+ /** Structural validation for one window; numbers must be non-negative safe integers. */
97
+ export declare function validateRevisionBenefitWindowStats(value: unknown): asserts value is RevisionBenefitWindowStats;
98
+ export declare function validateRevisionBenefitContract(value: unknown): asserts value is RevisionBenefitContract;
99
+ export declare function revisionBenefitContractDigest(value: RevisionBenefitContract): string;
100
+ /**
101
+ * Deterministic non-inferiority evaluation. The candidate is compared against
102
+ * the parent under the contract thresholds; every metric violation names
103
+ * itself in the inferior reason, and sample-short windows stay insufficient.
104
+ */
105
+ export declare function evaluateRevisionBenefit(contract: RevisionBenefitContract, parent: RevisionBenefitWindowStats, candidate: RevisionBenefitWindowStats, now: number): RevisionBenefitEvaluation;
106
+ //# sourceMappingURL=revision-benefit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revision-benefit.d.ts","sourceRoot":"","sources":["../src/revision-benefit.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,135 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { types as utilTypes } from 'node:util';
3
+ const RATE_EPSILON = 1e-9;
4
+ function finiteRate(numerator, denominator) {
5
+ return denominator <= 0 ? 0 : numerator / denominator;
6
+ }
7
+ function isGrowthRecord(value) {
8
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
9
+ }
10
+ /** Structural validation for one window; numbers must be non-negative safe integers. */
11
+ export function validateRevisionBenefitWindowStats(value) {
12
+ if (!isGrowthRecord(value) || utilTypes.isProxy(value))
13
+ throw new Error('benefit window must be a plain record');
14
+ const required = ['protocol', 'artifactSha256', 'windowStart', 'windowEnd', 'taskRevisions',
15
+ 'correctedOrWithdrawn', 'failed', 'reworked', 'latencyMsTotal', 'tokensTotal', 'inputTokensTotal', 'outputTokensTotal'];
16
+ for (const key of required)
17
+ if (!(key in value))
18
+ throw new Error(`benefit window missing ${key}`);
19
+ if (value.protocol !== 'assistant-growth/revision-benefit-window/v1')
20
+ throw new Error('benefit window protocol mismatch');
21
+ if (typeof value.artifactSha256 !== 'string' || !/^[a-f0-9]{64}$/u.test(value.artifactSha256))
22
+ throw new Error('benefit window artifact digest invalid');
23
+ const windowStart = value.windowStart, windowEnd = value.windowEnd, taskRevisions = value.taskRevisions;
24
+ const correctedOrWithdrawn = value.correctedOrWithdrawn, failed = value.failed, reworked = value.reworked;
25
+ for (const item of [windowStart, windowEnd, taskRevisions, correctedOrWithdrawn, failed, reworked,
26
+ value.latencyMsTotal, value.tokensTotal, value.inputTokensTotal, value.outputTokensTotal]) {
27
+ if (typeof item !== 'number' || !Number.isSafeInteger(item) || item < 0)
28
+ throw new Error('benefit window counter invalid');
29
+ }
30
+ if (windowEnd <= windowStart)
31
+ throw new Error('benefit window must be nonempty');
32
+ if (failed + reworked > Math.max(0, taskRevisions - correctedOrWithdrawn)) {
33
+ throw new Error('benefit window counters exceed the included set');
34
+ }
35
+ }
36
+ export function validateRevisionBenefitContract(value) {
37
+ if (!isGrowthRecord(value) || utilTypes.isProxy(value))
38
+ throw new Error('benefit contract must be a plain record');
39
+ if (value.protocol !== 'assistant-growth/revision-benefit-contract/v1')
40
+ throw new Error('benefit contract protocol mismatch');
41
+ const model = value.model;
42
+ if (!isGrowthRecord(model) || typeof model.provider !== 'string' || !model.provider
43
+ || typeof model.model !== 'string' || !model.model
44
+ || model.reasoningEffort !== undefined && (typeof model.reasoningEffort !== 'string' || !model.reasoningEffort)) {
45
+ throw new Error('benefit contract model invalid');
46
+ }
47
+ const budget = value.budget;
48
+ if (!isGrowthRecord(budget) || typeof budget.budgetId !== 'string' || !budget.budgetId
49
+ || typeof budget.amount !== 'number' || !Number.isSafeInteger(budget.amount) || budget.amount < 1) {
50
+ throw new Error('benefit contract budget invalid');
51
+ }
52
+ const thresholds = value.thresholds;
53
+ if (!isGrowthRecord(thresholds))
54
+ throw new Error('benefit contract thresholds missing');
55
+ for (const key of ['maxFailureRateDelta', 'maxReworkRateDelta', 'maxCorrectionRateDelta']) {
56
+ const item = thresholds[key];
57
+ if (typeof item !== 'number' || !Number.isFinite(item) || item < 0 || item > 1)
58
+ throw new Error(`benefit threshold ${key} invalid`);
59
+ }
60
+ for (const key of ['maxLatencyRatio', 'maxCostRatio']) {
61
+ const item = thresholds[key];
62
+ if (typeof item !== 'number' || !Number.isFinite(item) || item < 1 || item > 100)
63
+ throw new Error(`benefit threshold ${key} invalid`);
64
+ }
65
+ if (typeof value.minimumTaskRevisions !== 'number' || !Number.isSafeInteger(value.minimumTaskRevisions)
66
+ || value.minimumTaskRevisions < 1 || value.minimumTaskRevisions > 1_000)
67
+ throw new Error('benefit contract minimumTaskRevisions invalid');
68
+ if (typeof value.createdAt !== 'number' || !Number.isSafeInteger(value.createdAt)
69
+ || typeof value.expiresAt !== 'number' || !Number.isSafeInteger(value.expiresAt)
70
+ || value.expiresAt <= value.createdAt)
71
+ throw new Error('benefit contract lifetime invalid');
72
+ }
73
+ export function revisionBenefitContractDigest(value) {
74
+ validateRevisionBenefitContract(value);
75
+ return createHash('sha256').update(JSON.stringify(value)).digest('hex');
76
+ }
77
+ function summarize(stats) {
78
+ const included = Math.max(0, stats.taskRevisions - stats.correctedOrWithdrawn);
79
+ return {
80
+ included,
81
+ failureRate: finiteRate(stats.failed, included),
82
+ reworkRate: finiteRate(stats.reworked, included),
83
+ correctionRate: finiteRate(stats.correctedOrWithdrawn, stats.taskRevisions),
84
+ meanLatencyMs: finiteRate(stats.latencyMsTotal, included),
85
+ meanTokens: finiteRate(stats.tokensTotal, included),
86
+ };
87
+ }
88
+ /**
89
+ * Deterministic non-inferiority evaluation. The candidate is compared against
90
+ * the parent under the contract thresholds; every metric violation names
91
+ * itself in the inferior reason, and sample-short windows stay insufficient.
92
+ */
93
+ export function evaluateRevisionBenefit(contract, parent, candidate, now) {
94
+ validateRevisionBenefitContract(contract);
95
+ validateRevisionBenefitWindowStats(parent);
96
+ validateRevisionBenefitWindowStats(candidate);
97
+ const parentSummary = summarize(parent);
98
+ const candidateSummary = summarize(candidate);
99
+ const evaluation = {
100
+ verdict: { status: 'insufficient', reason: 'below-minimum-samples' },
101
+ parent: parentSummary,
102
+ candidate: candidateSummary,
103
+ };
104
+ if (now >= contract.expiresAt) {
105
+ return { ...evaluation, verdict: { status: 'insufficient', reason: 'contract-expired' } };
106
+ }
107
+ if (parentSummary.included < contract.minimumTaskRevisions
108
+ || candidateSummary.included < contract.minimumTaskRevisions) {
109
+ return evaluation;
110
+ }
111
+ // Cost and latency must be measurable on both windows before any quality
112
+ // claim: an unmeasured axis never passes non-inferiority by default.
113
+ if (parentSummary.meanTokens <= 0 || candidateSummary.meanTokens <= 0
114
+ || parentSummary.meanLatencyMs <= 0 || candidateSummary.meanLatencyMs <= 0) {
115
+ return { ...evaluation, verdict: { status: 'insufficient', reason: 'cost-or-latency-unmeasured' } };
116
+ }
117
+ const thresholds = contract.thresholds;
118
+ if (candidateSummary.failureRate > parentSummary.failureRate + thresholds.maxFailureRateDelta + RATE_EPSILON) {
119
+ return { ...evaluation, verdict: { status: 'inferior', reason: 'failure-rate' } };
120
+ }
121
+ if (candidateSummary.reworkRate > parentSummary.reworkRate + thresholds.maxReworkRateDelta + RATE_EPSILON) {
122
+ return { ...evaluation, verdict: { status: 'inferior', reason: 'rework-rate' } };
123
+ }
124
+ if (candidateSummary.correctionRate > parentSummary.correctionRate + thresholds.maxCorrectionRateDelta + RATE_EPSILON) {
125
+ return { ...evaluation, verdict: { status: 'inferior', reason: 'correction-rate' } };
126
+ }
127
+ if (candidateSummary.meanLatencyMs > parentSummary.meanLatencyMs * thresholds.maxLatencyRatio + RATE_EPSILON) {
128
+ return { ...evaluation, verdict: { status: 'inferior', reason: 'latency' } };
129
+ }
130
+ if (candidateSummary.meanTokens > parentSummary.meanTokens * thresholds.maxCostRatio + RATE_EPSILON) {
131
+ return { ...evaluation, verdict: { status: 'inferior', reason: 'cost' } };
132
+ }
133
+ return { ...evaluation, verdict: { status: 'non-inferior', reason: 'all-metrics-within-thresholds' } };
134
+ }
135
+ //# sourceMappingURL=revision-benefit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"revision-benefit.js","sourceRoot":"","sources":["../src/revision-benefit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAA;AAoF9C,MAAM,YAAY,GAAG,IAAI,CAAA;AAEzB,SAAS,UAAU,CAAC,SAAiB,EAAE,WAAmB;IACxD,OAAO,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,WAAW,CAAA;AACvD,CAAC;AAED,SAAS,cAAc,CAAC,KAAc;IACpC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;AAC7E,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,kCAAkC,CAAC,KAAc;IAC/D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAChH,MAAM,QAAQ,GAAG,CAAC,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe;QACzF,sBAAsB,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,aAAa,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAA;IACzH,KAAK,MAAM,GAAG,IAAI,QAAQ;QAAE,IAAI,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,EAAE,CAAC,CAAA;IACjG,IAAI,KAAK,CAAC,QAAQ,KAAK,6CAA6C;QAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;IACzH,IAAI,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAA;IACxJ,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,EAAE,SAAS,GAAG,KAAK,CAAC,SAAS,EAAE,aAAa,GAAG,KAAK,CAAC,aAAa,CAAA;IACvG,MAAM,oBAAoB,GAAG,KAAK,CAAC,oBAAoB,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;IACzG,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,EAAE,QAAQ;QAC/F,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAC5F,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IAC5H,CAAC;IACD,IAAK,SAAoB,IAAK,WAAsB;QAAE,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACxG,IAAK,MAAiB,GAAI,QAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAG,aAAwB,GAAI,oBAA+B,CAAC,EAAE,CAAC;QAC1H,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAAc;IAC5D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;IAClH,IAAI,KAAK,CAAC,QAAQ,KAAK,+CAA+C;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAA;IAC7H,MAAM,KAAK,GAAG,KAAK,CAAC,KAAyC,CAAA;IAC7D,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ;WAC9E,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,KAAK;WAC/C,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QAClH,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;IACnD,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAA2C,CAAA;IAChE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ;WACjF,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpG,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;IACpD,CAAC;IACD,MAAM,UAAU,GAAG,KAAK,CAAC,UAA+D,CAAA;IACxF,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACvF,KAAK,MAAM,GAAG,IAAI,CAAC,qBAAqB,EAAE,oBAAoB,EAAE,wBAAwB,CAAU,EAAE,CAAC;QACnG,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,UAAU,CAAC,CAAA;IACrI,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,CAAC,iBAAiB,EAAE,cAAc,CAAU,EAAE,CAAC;QAC/D,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC5B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,UAAU,CAAC,CAAA;IACvI,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,oBAAoB,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,CAAC;WAClG,KAAK,CAAC,oBAAoB,GAAG,CAAC,IAAI,KAAK,CAAC,oBAAoB,GAAG,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAC3I,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;WAC5E,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;WAC7E,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;AAC/F,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,KAA8B;IAC1E,+BAA+B,CAAC,KAAK,CAAC,CAAA;IACtC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;AACzE,CAAC;AAED,SAAS,SAAS,CAAC,KAAiC;IAClD,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,aAAa,GAAG,KAAK,CAAC,oBAAoB,CAAC,CAAA;IAC9E,OAAO;QACL,QAAQ;QACR,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,QAAQ,CAAC;QAC/C,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC;QAChD,cAAc,EAAE,UAAU,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,aAAa,CAAC;QAC3E,aAAa,EAAE,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,QAAQ,CAAC;QACzD,UAAU,EAAE,UAAU,CAAC,KAAK,CAAC,WAAW,EAAE,QAAQ,CAAC;KACpD,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CACrC,QAAiC,EACjC,MAAkC,EAClC,SAAqC,EACrC,GAAW;IAEX,+BAA+B,CAAC,QAAQ,CAAC,CAAA;IACzC,kCAAkC,CAAC,MAAM,CAAC,CAAA;IAC1C,kCAAkC,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;IACvC,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;IAC7C,MAAM,UAAU,GAA8B;QAC5C,OAAO,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACpE,MAAM,EAAE,aAAa;QACrB,SAAS,EAAE,gBAAgB;KAC5B,CAAA;IACD,IAAI,GAAG,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;QAC9B,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAAA;IAC3F,CAAC;IACD,IAAI,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC,oBAAoB;WACrD,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,CAAC,oBAAoB,EAAE,CAAC;QAC/D,OAAO,UAAU,CAAA;IACnB,CAAC;IACD,yEAAyE;IACzE,qEAAqE;IACrE,IAAI,aAAa,CAAC,UAAU,IAAI,CAAC,IAAI,gBAAgB,CAAC,UAAU,IAAI,CAAC;WAChE,aAAa,CAAC,aAAa,IAAI,CAAC,IAAI,gBAAgB,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC;QAC7E,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,4BAA4B,EAAE,EAAE,CAAA;IACrG,CAAC;IACD,MAAM,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAA;IACtC,IAAI,gBAAgB,CAAC,WAAW,GAAG,aAAa,CAAC,WAAW,GAAG,UAAU,CAAC,mBAAmB,GAAG,YAAY,EAAE,CAAC;QAC7G,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAA;IACnF,CAAC;IACD,IAAI,gBAAgB,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC,kBAAkB,GAAG,YAAY,EAAE,CAAC;QAC1G,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAA;IAClF,CAAC;IACD,IAAI,gBAAgB,CAAC,cAAc,GAAG,aAAa,CAAC,cAAc,GAAG,UAAU,CAAC,sBAAsB,GAAG,YAAY,EAAE,CAAC;QACtH,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,iBAAiB,EAAE,EAAE,CAAA;IACtF,CAAC;IACD,IAAI,gBAAgB,CAAC,aAAa,GAAG,aAAa,CAAC,aAAa,GAAG,UAAU,CAAC,eAAe,GAAG,YAAY,EAAE,CAAC;QAC7G,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,CAAA;IAC9E,CAAC;IACD,IAAI,gBAAgB,CAAC,UAAU,GAAG,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC,YAAY,GAAG,YAAY,EAAE,CAAC;QACpG,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAA;IAC3E,CAAC;IACD,OAAO,EAAE,GAAG,UAAU,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,+BAA+B,EAAE,EAAE,CAAA;AACxG,CAAC"}
@@ -16,11 +16,30 @@ export interface PluginRevisionParentBinding {
16
16
  sourceArchiveDigest: string;
17
17
  sourceDigest: string;
18
18
  }
19
- export type PluginRevisionVerificationCertificate = Omit<PluginCreationVerificationCertificate, 'protocol' | 'authority' | 'execution'> & {
20
- protocol: 'assistant-growth/revision-verification/v1' | 'assistant-growth/revision-verification/v2';
19
+ /**
20
+ * Task-failure revisions bind the frozen growth run that authorized them.
21
+ * Owner-instruction revisions have no growth run: their signed source instead
22
+ * binds the exact instruction row that authenticated the revision, while the
23
+ * parent binding already names the adopted plan.
24
+ */
25
+ export type PluginRevisionVerificationTaskSource = {
26
+ referenceDigest: string;
27
+ ownerDigest: string;
28
+ growthRunDigest: string;
29
+ };
30
+ export type PluginRevisionVerificationInstructionSource = {
31
+ instructionDigest: string;
32
+ ownerDigest: string;
33
+ };
34
+ export type PluginRevisionVerificationSource = PluginRevisionVerificationTaskSource | PluginRevisionVerificationInstructionSource;
35
+ export declare function isPluginRevisionTaskSource(value: PluginRevisionVerificationSource): value is PluginRevisionVerificationTaskSource;
36
+ export declare function isPluginRevisionInstructionSource(value: PluginRevisionVerificationSource): value is PluginRevisionVerificationInstructionSource;
37
+ export type PluginRevisionVerificationCertificate = Omit<PluginCreationVerificationCertificate, 'protocol' | 'authority' | 'execution' | 'source'> & {
38
+ protocol: 'assistant-growth/revision-verification/v1' | 'assistant-growth/revision-verification/v2' | 'assistant-growth/revision-verification/v3';
21
39
  authority: RevisionAcceptanceAuthorityRef;
22
40
  parent: PluginRevisionParentBinding;
23
- /** Required exactly for v2 with the Linux native boundary; rejected for v1. */
41
+ source: PluginRevisionVerificationSource;
42
+ /** Required exactly for v2 with the Linux native boundary; rejected for v1 and v3. */
24
43
  execution?: PluginCreationVerificationLinuxExecution;
25
44
  };
26
45
  export type PluginRevisionVerificationCertificateV1 = PluginRevisionVerificationCertificate & {
@@ -31,6 +50,15 @@ export type PluginRevisionVerificationCertificateV2 = PluginRevisionVerification
31
50
  protocol: 'assistant-growth/revision-verification/v2';
32
51
  execution: PluginCreationVerificationLinuxExecution;
33
52
  };
53
+ /** Owner-instruction revision: no task reference and no growth run anywhere in the signed body. */
54
+ export type PluginRevisionVerificationCertificateV3 = PluginRevisionVerificationCertificate & {
55
+ protocol: 'assistant-growth/revision-verification/v3';
56
+ execution?: never;
57
+ source: {
58
+ instructionDigest: string;
59
+ ownerDigest: string;
60
+ };
61
+ };
34
62
  /** Host-only request; the producer must reread the current parent and candidate. */
35
63
  export interface PluginRevisionVerificationRequest {
36
64
  protocol: 'assistant-growth/revision-verification-request/v1';
@@ -1 +1 @@
1
- {"version":3,"file":"revision-verification.d.ts","sourceRoot":"","sources":["../src/revision-verification.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,qCAAqC,EAAE,KAAK,wCAAwC,EAAE,MAAM,4BAA4B,CAAA;AAE/H,sEAAsE;AACtE,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,EAAE,mDAAmD,CAAA;IAC7D,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,gFAAgF;AAChF,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,CAAA;IACd,iBAAiB,EAAE,MAAM,CAAA;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,mBAAmB,EAAE,MAAM,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;CACrB;AAED,MAAM,MAAM,qCAAqC,GAC/C,IAAI,CAAC,qCAAqC,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,CAAC,GAAG;IACpF,QAAQ,EAAE,2CAA2C,GAAG,2CAA2C,CAAA;IACnG,SAAS,EAAE,8BAA8B,CAAA;IACzC,MAAM,EAAE,2BAA2B,CAAA;IACnC,+EAA+E;IAC/E,SAAS,CAAC,EAAE,wCAAwC,CAAA;CACrD,CAAA;AAEH,MAAM,MAAM,uCAAuC,GAAG,qCAAqC,GACzF;IAAE,QAAQ,EAAE,2CAA2C,CAAC;IAAC,SAAS,CAAC,EAAE,KAAK,CAAA;CAAE,CAAA;AAC9E,MAAM,MAAM,uCAAuC,GAAG,qCAAqC,GACzF;IAAE,QAAQ,EAAE,2CAA2C,CAAC;IAAC,SAAS,EAAE,wCAAwC,CAAA;CAAE,CAAA;AAEhH,oFAAoF;AACpF,MAAM,WAAW,iCAAiC;IAChD,QAAQ,EAAE,mDAAmD,CAAA;IAC7D,MAAM,EAAE,MAAM,CAAA;CACf;AAED,MAAM,MAAM,gCAAgC,GACxC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,WAAW,EAAE,qCAAqC,CAAA;CAAE,GAC1E;IAAE,MAAM,EAAE,UAAU,GAAG,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAuBtD,wBAAgB,sCAAsC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,8BAA8B,CAWtH;AAED,wBAAgB,mCAAmC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,2BAA2B,CAOhH;AAED,wBAAgB,6CAA6C,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,qCAAqC,CAcpI;AAED,wBAAgB,wCAAwC,CAAC,KAAK,EAAE,IAAI,CAAC,qCAAqC,EAAE,WAAW,CAAC,GAAG,MAAM,CAIhI;AAED,yGAAyG;AACzG,wBAAgB,2CAA2C,CAAC,KAAK,EAAE,OAAO,EACxE,SAAS,EAAE,8BAA8B,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,SAAa,GAAG,KAAK,IAAI,qCAAqC,CAWhI"}
1
+ {"version":3,"file":"revision-verification.d.ts","sourceRoot":"","sources":["../src/revision-verification.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,15 @@
1
1
  import { createPublicKey, verify } from 'node:crypto';
2
2
  import { canonicalGrowthJson } from './canonical.js';
3
3
  import { validatePluginCreationVerificationCertificate } from './creation-verification.js';
4
+ export function isPluginRevisionTaskSource(value) {
5
+ return Object.hasOwn(value, 'growthRunDigest');
6
+ }
7
+ export function isPluginRevisionInstructionSource(value) {
8
+ return Object.hasOwn(value, 'instructionDigest');
9
+ }
4
10
  const domainV1 = 'assistant-growth/revision-verification/v1\0';
5
11
  const domainV2 = 'assistant-growth/revision-verification/v2\0';
12
+ const domainV3 = 'assistant-growth/revision-verification/v3\0';
6
13
  const digest = /^[a-f0-9]{64}$/u;
7
14
  const identifier = /^[A-Za-z0-9][A-Za-z0-9._:/-]{0,199}$/u;
8
15
  const certificateKeys = ['protocol', 'verificationId', 'authority', 'plan', 'parent', 'source', 'contractDigest',
@@ -50,24 +57,42 @@ export function validatePluginRevisionParentBinding(value) {
50
57
  export function validatePluginRevisionVerificationCertificate(value) {
51
58
  const protocol = value && typeof value === 'object' ? Object.getOwnPropertyDescriptor(value, 'protocol')?.value : undefined;
52
59
  const linux = protocol === 'assistant-growth/revision-verification/v2';
60
+ const instruction = protocol === 'assistant-growth/revision-verification/v3';
53
61
  const item = record(value, [...certificateKeysFor(value), 'signature'], 'certificate');
54
- if (!linux && item.protocol !== 'assistant-growth/revision-verification/v1')
62
+ if (!linux && item.protocol !== 'assistant-growth/revision-verification/v1'
63
+ && item.protocol !== 'assistant-growth/revision-verification/v3')
55
64
  fail('protocol');
56
65
  const authority = item.authority;
57
66
  validateRevisionAcceptanceAuthorityRef(authority);
58
67
  validatePluginRevisionParentBinding(item.parent);
68
+ // The instruction source is validated in full here; the delegated creation
69
+ // shape check only re-verifies the shared fields, so it receives a mapped
70
+ // pseudo-source with the exact triple shape it always required.
71
+ if (instruction) {
72
+ const source = record(item.source, ['instructionDigest', 'ownerDigest'], 'source');
73
+ for (const key of ['instructionDigest', 'ownerDigest']) {
74
+ if (typeof source[key] !== 'string' || !digest.test(source[key]))
75
+ fail(`source ${key}`);
76
+ }
77
+ }
59
78
  const { parent: _parent, ...creationShape } = item;
60
79
  validatePluginCreationVerificationCertificate({ ...creationShape,
61
80
  protocol: linux ? 'assistant-growth/creation-verification/v3' : 'assistant-growth/creation-verification/v1',
62
81
  authority: { ...authority, protocol: 'assistant-growth/creation-acceptance-authority/v1' },
63
- });
82
+ ...(instruction ? { source: instructionSourceForShapeCheck(item.source) } : {}) });
64
83
  if (Buffer.byteLength(canonicalGrowthJson(item)) > 65_536)
65
84
  fail('certificate bytes');
66
85
  }
86
+ /** Maps a validated v3 instruction source onto the shared creation shape for field checks only. */
87
+ function instructionSourceForShapeCheck(source) {
88
+ const item = source;
89
+ return { referenceDigest: item.instructionDigest, ownerDigest: item.ownerDigest, growthRunDigest: item.instructionDigest };
90
+ }
67
91
  export function pluginRevisionVerificationSigningPayload(value) {
68
92
  const body = record(value, certificateKeysFor(value), 'signing body');
69
93
  validatePluginRevisionVerificationCertificate({ ...body, signature: 'A'.repeat(86) });
70
- return (body.protocol === 'assistant-growth/revision-verification/v2' ? domainV2 : domainV1) + canonicalGrowthJson(body);
94
+ return (body.protocol === 'assistant-growth/revision-verification/v2' ? domainV2
95
+ : body.protocol === 'assistant-growth/revision-verification/v3' ? domainV3 : domainV1) + canonicalGrowthJson(body);
71
96
  }
72
97
  /** Signature and authority equality only; consumers must also recheck provenance and parent currency. */
73
98
  export function verifyPluginRevisionVerificationCertificate(value, authority, publicKey, now = Date.now()) {
@@ -1 +1 @@
1
- {"version":3,"file":"revision-verification.js","sourceRoot":"","sources":["../src/revision-verification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revision-verification.js","sourceRoot":"","sources":["../src/revision-verification.ts"],"names":[],"mappings":"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"}
@@ -122,7 +122,48 @@ export interface WorkItemSourceGrowthRunBinding extends Omit<SourceGrowthRunBind
122
122
  };
123
123
  };
124
124
  }
125
- export type AnySourceGrowthRunBinding = SourceGrowthRunBinding | WorkItemSourceGrowthRunBinding;
125
+ export type AnySourceGrowthRunBinding = SourceGrowthRunBinding | WorkItemSourceGrowthRunBinding | WorkItemRevisionSourceGrowthRunBinding;
126
+ /**
127
+ * Revision corridor authorities. Mirrors the v2 work-item pins but binds the
128
+ * revision grant (with explicit workItemFailures), the independent revision
129
+ * acceptance authority and, when present, the parent-behavior regression and
130
+ * version-switch adoption pins. These are pins, never candidate input.
131
+ */
132
+ export interface WorkItemRevisionAuthorityPins {
133
+ protocol: 'assistant-growth/work-item-revision-authorities/v1';
134
+ sourceJobs: {
135
+ authorityId: string;
136
+ authorityDigest: string;
137
+ expiresAt: number;
138
+ };
139
+ revisionGrant: {
140
+ id: string;
141
+ digest: string;
142
+ expiresAt: number;
143
+ workItemFailures: true;
144
+ };
145
+ revisionAcceptance: RevisionAcceptanceAuthorityRef;
146
+ revisionRegressionAcceptance?: RevisionRegressionAcceptanceAuthorityRef;
147
+ revisionAdoption?: {
148
+ authorityId: string;
149
+ authorityDigest: string;
150
+ expiresAt: number;
151
+ };
152
+ }
153
+ /**
154
+ * v3 reuses the v2 work-item source provenance but switches the corridor from
155
+ * create-only to revising an already-adopted, owner-created capability. It is
156
+ * never a foreground source and never carries creation acceptance.
157
+ */
158
+ export interface WorkItemRevisionSourceGrowthRunBinding extends Omit<SourceGrowthRunBinding, 'protocol' | 'source' | 'creationAcceptance' | 'revisionAcceptance' | 'revisionRegressionAcceptance'> {
159
+ protocol: 'assistant-growth/source-run/v3';
160
+ mode: 'revise-created';
161
+ revisionAcceptance: RevisionAcceptanceAuthorityRef;
162
+ /** Present exactly when the revision must also prove retained parent behavior. */
163
+ revisionRegressionAcceptance?: RevisionRegressionAcceptanceAuthorityRef;
164
+ authorities: WorkItemRevisionAuthorityPins;
165
+ source: WorkItemSourceGrowthRunBinding['source'];
166
+ }
126
167
  export interface SourceGrowthRunProducerV2 {
127
168
  protocol: 'assistant-growth-source-run-producer/v2';
128
169
  inspect(input: SourceGrowthRunRequest): AnySourceGrowthRunBinding | undefined;
@@ -134,7 +175,7 @@ export interface SourceGrowthRunProducerV2 {
134
175
  */
135
176
  withWorkItemRunFence<T>(input: SourceGrowthRunRequest & {
136
177
  expectedGrowthRunDigest: string;
137
- }, callback: (binding: Readonly<WorkItemSourceGrowthRunBinding>) => T): T;
178
+ }, callback: (binding: Readonly<WorkItemSourceGrowthRunBinding | WorkItemRevisionSourceGrowthRunBinding>) => T): T;
138
179
  }
139
180
  export type AnySourceGrowthRunProducer = SourceGrowthRunProducer | SourceGrowthRunProducerV2;
140
181
  export declare function validateWorkItemGrowthAuthorityPins(value: unknown): asserts value is WorkItemGrowthAuthorityPins;
@@ -142,5 +183,8 @@ export declare function workItemGrowthAuthorityPinsDigest(value: WorkItemGrowthA
142
183
  export declare function validateWorkItemSourceGrowthRunBinding(value: unknown): asserts value is WorkItemSourceGrowthRunBinding;
143
184
  /** Explicit protocol dispatch; existing foreground-only consumers remain foreground-only. */
144
185
  export declare function validateAnySourceGrowthRunBinding(value: unknown): asserts value is AnySourceGrowthRunBinding;
186
+ export declare function validateWorkItemRevisionAuthorityPins(value: unknown): asserts value is WorkItemRevisionAuthorityPins;
187
+ export declare function workItemRevisionAuthorityPinsDigest(value: WorkItemRevisionAuthorityPins): string;
188
+ export declare function validateWorkItemRevisionSourceGrowthRunBinding(value: unknown): asserts value is WorkItemRevisionSourceGrowthRunBinding;
145
189
  export declare function anySourceGrowthRunDigest(binding: AnySourceGrowthRunBinding): string;
146
190
  //# sourceMappingURL=source-run.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"source-run.d.ts","sourceRoot":"","sources":["../src/source-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-run.d.ts","sourceRoot":"","sources":["../src/source-run.ts"],"names":[],"mappings":"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"}
package/lib/source-run.js CHANGED
@@ -282,10 +282,127 @@ export function validateAnySourceGrowthRunBinding(value) {
282
282
  return validateSourceGrowthRunBinding(value);
283
283
  if (descriptor.value === 'assistant-growth/source-run/v2')
284
284
  return validateWorkItemSourceGrowthRunBinding(value);
285
+ if (descriptor.value === 'assistant-growth/source-run/v3')
286
+ return validateWorkItemRevisionSourceGrowthRunBinding(value);
285
287
  }
286
288
  }
287
289
  invalid('binding protocol');
288
290
  }
291
+ export function validateWorkItemRevisionAuthorityPins(value) {
292
+ workItemData(value);
293
+ const pins = record(value, ['protocol', 'sourceJobs', 'revisionGrant', 'revisionAcceptance',
294
+ ...(isGrowthRecord(value) && Object.hasOwn(value, 'revisionRegressionAcceptance') ? ['revisionRegressionAcceptance'] : []),
295
+ ...(isGrowthRecord(value) && Object.hasOwn(value, 'revisionAdoption') ? ['revisionAdoption'] : [])], 'work item revision authorities');
296
+ if (pins.protocol !== 'assistant-growth/work-item-revision-authorities/v1')
297
+ invalid('work item revision authorities protocol');
298
+ const sourceJobs = record(pins.sourceJobs, ['authorityId', 'authorityDigest', 'expiresAt'], 'sourceJobs');
299
+ text(sourceJobs.authorityId, 'sourceJobs authorityId');
300
+ hash(sourceJobs.authorityDigest, 'sourceJobs authorityDigest');
301
+ workItemExpiry(sourceJobs.expiresAt);
302
+ const revision = record(pins.revisionGrant, ['id', 'digest', 'expiresAt', 'workItemFailures'], 'revision grant');
303
+ text(revision.id, 'revision grant id');
304
+ hash(revision.digest, 'revision grant digest');
305
+ workItemExpiry(revision.expiresAt);
306
+ if (revision.workItemFailures !== true)
307
+ invalid('revision grant work item failures');
308
+ validateRevisionAcceptanceAuthorityRef(pins.revisionAcceptance);
309
+ if (Object.hasOwn(pins, 'revisionRegressionAcceptance'))
310
+ validateRevisionRegressionAcceptanceAuthorityRef(pins.revisionRegressionAcceptance);
311
+ if (Object.hasOwn(pins, 'revisionAdoption')) {
312
+ const adoption = record(pins.revisionAdoption, ['authorityId', 'authorityDigest', 'expiresAt'], 'revisionAdoption');
313
+ text(adoption.authorityId, 'revisionAdoption authorityId');
314
+ hash(adoption.authorityDigest, 'revisionAdoption authorityDigest');
315
+ workItemExpiry(adoption.expiresAt);
316
+ }
317
+ }
318
+ export function workItemRevisionAuthorityPinsDigest(value) {
319
+ validateWorkItemRevisionAuthorityPins(value);
320
+ return sourceGrowthEvidenceDigest(value);
321
+ }
322
+ export function validateWorkItemRevisionSourceGrowthRunBinding(value) {
323
+ workItemData(value);
324
+ const binding = record(value, ['protocol', 'mode', 'runId', 'intentDigest', 'configDigest', 'ownerDigest', 'source', 'model',
325
+ 'modelOrigin', 'revisionAcceptance', 'authorities', 'budget', 'native', 'sessionId', 'toolContractDigest',
326
+ 'executionContractDigest', 'createdAt', 'generationDeadlineAt', 'expiresAt',
327
+ ...(isGrowthRecord(value) && Object.hasOwn(value, 'revisionRegressionAcceptance') ? ['revisionRegressionAcceptance'] : [])], 'work item revision binding');
328
+ if (binding.protocol !== 'assistant-growth/source-run/v3' || binding.mode !== 'revise-created')
329
+ invalid('work item revision protocol or mode');
330
+ for (const key of ['runId', 'sessionId'])
331
+ text(binding[key], key);
332
+ for (const key of ['intentDigest', 'configDigest', 'ownerDigest', 'toolContractDigest', 'executionContractDigest'])
333
+ hash(binding[key], key);
334
+ const source = record(binding.source, ['protocol', 'itemId', 'outcomeId', 'projection', 'objectiveStatus', 'sourceDigest', 'presentationDigest', 'context'], 'work item source');
335
+ if (source.protocol !== 'assistant-growth/work-item-source/v1' || source.objectiveStatus !== 'not-achieved')
336
+ invalid('work item source protocol or objective');
337
+ text(source.itemId, 'work item id');
338
+ text(source.outcomeId, 'outcomeId');
339
+ hash(source.sourceDigest, 'sourceDigest');
340
+ hash(source.presentationDigest, 'presentationDigest');
341
+ if (!isGrowthRecord(source.projection))
342
+ invalid('work item projection');
343
+ const projection = record(source.projection, ['subjectKind', 'subjectRef', 'version', 'digest', 'disposition',
344
+ ...(Object.hasOwn(source.projection, 'evidenceOutcomeId') ? ['evidenceOutcomeId'] : [])], 'work item projection');
345
+ if (projection.subjectKind !== 'work-item' || projection.subjectRef !== source.itemId || projection.disposition !== 'upsert')
346
+ invalid('work item projection identity');
347
+ integer(projection.version, 'projection version');
348
+ hash(projection.digest, 'projection digest');
349
+ if (Object.hasOwn(projection, 'evidenceOutcomeId'))
350
+ text(projection.evidenceOutcomeId, 'evidenceOutcomeId');
351
+ const context = record(source.context, ['protocol', 'manifestDigest', 'objectiveDigest', 'objectiveBytes'], 'work item context');
352
+ if (context.protocol !== 'assistant-delivery/work-item-engineering-context/v1')
353
+ invalid('work item context protocol');
354
+ hash(context.manifestDigest, 'context manifestDigest');
355
+ hash(context.objectiveDigest, 'context objectiveDigest');
356
+ integer(context.objectiveBytes, 'context objectiveBytes');
357
+ if (context.objectiveBytes > 16_384)
358
+ invalid('context objectiveBytes');
359
+ if (!isGrowthRecord(binding.model))
360
+ invalid('model');
361
+ const model = record(binding.model, ['provider', 'model', ...(Object.hasOwn(binding.model, 'reasoningEffort') ? ['reasoningEffort'] : [])], 'model');
362
+ text(model.provider, 'provider');
363
+ text(model.model, 'model');
364
+ if (Object.hasOwn(model, 'reasoningEffort'))
365
+ text(model.reasoningEffort, 'reasoningEffort');
366
+ if (binding.modelOrigin !== 'explicit-growth-override' && binding.modelOrigin !== 'inherited-owner-task')
367
+ invalid('model origin');
368
+ const budget = record(binding.budget, ['budgetId', 'amount', 'maxModelCalls', 'maxToolCalls', 'maxOutputTokens', 'maxDurationMs', 'maxPlansPerWake'], 'budget');
369
+ text(budget.budgetId, 'budgetId');
370
+ for (const key of ['amount', 'maxModelCalls', 'maxToolCalls', 'maxOutputTokens', 'maxDurationMs', 'maxPlansPerWake'])
371
+ integer(budget[key], key);
372
+ const native = record(binding.native, ['owner', 'automationId', 'definitionHash', 'occurrenceId'], 'native');
373
+ if (native.owner !== 'assistant-growth-usage' || native.automationId !== binding.runId)
374
+ invalid('native owner or identity');
375
+ text(native.occurrenceId, 'occurrenceId');
376
+ hash(native.definitionHash, 'definitionHash');
377
+ for (const key of ['createdAt', 'generationDeadlineAt', 'expiresAt']) {
378
+ integer(binding[key], key, 0);
379
+ if (Number(binding[key]) > 8_640_000_000_000_000)
380
+ invalid(key);
381
+ }
382
+ if (Number(binding.createdAt) >= Number(binding.generationDeadlineAt) || Number(binding.generationDeadlineAt) > Number(binding.expiresAt)
383
+ || Number(binding.generationDeadlineAt) - Number(binding.createdAt) > Number(budget.maxDurationMs))
384
+ invalid('deadline');
385
+ validateWorkItemRevisionAuthorityPins(binding.authorities);
386
+ validateRevisionAcceptanceAuthorityRef(binding.revisionAcceptance);
387
+ if (sourceGrowthEvidenceDigest(binding.revisionAcceptance) !== sourceGrowthEvidenceDigest(binding.authorities.revisionAcceptance))
388
+ invalid('revision acceptance authority mismatch');
389
+ if (Object.hasOwn(binding, 'revisionRegressionAcceptance')) {
390
+ if (!Object.hasOwn(binding.authorities, 'revisionRegressionAcceptance'))
391
+ invalid('revision regression authority missing');
392
+ validateRevisionRegressionAcceptanceAuthorityRef(binding.revisionRegressionAcceptance);
393
+ if (sourceGrowthEvidenceDigest(binding.revisionRegressionAcceptance) !== sourceGrowthEvidenceDigest(binding.authorities.revisionRegressionAcceptance))
394
+ invalid('revision regression authority mismatch');
395
+ }
396
+ const revisionAuthorities = [binding.authorities.sourceJobs, binding.authorities.revisionGrant, binding.authorities.revisionAcceptance];
397
+ if (Object.hasOwn(binding.authorities, 'revisionRegressionAcceptance'))
398
+ revisionAuthorities.push(binding.authorities.revisionRegressionAcceptance);
399
+ if (Object.hasOwn(binding.authorities, 'revisionAdoption'))
400
+ revisionAuthorities.push(binding.authorities.revisionAdoption);
401
+ for (const authority of revisionAuthorities) {
402
+ if (authority.expiresAt <= Number(binding.createdAt) || Number(binding.generationDeadlineAt) > authority.expiresAt)
403
+ invalid('work item revision authority expiry');
404
+ }
405
+ }
289
406
  export function anySourceGrowthRunDigest(binding) {
290
407
  validateAnySourceGrowthRunBinding(binding);
291
408
  return sourceGrowthEvidenceDigest(binding);
@@ -1 +1 @@
1
- {"version":3,"file":"source-run.js","sourceRoot":"","sources":["../src/source-run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"source-run.js","sourceRoot":"","sources":["../src/source-run.ts"],"names":[],"mappings":"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"}
package/lib/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const version = "0.1.67";
1
+ export declare const version = "0.1.70";
2
2
  //# sourceMappingURL=version.d.ts.map
package/lib/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const version = '0.1.67';
1
+ export const version = '0.1.70';
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dsh-enhanced/assistant-growth-contract",
3
- "version": "0.1.67",
3
+ "version": "0.1.70",
4
4
  "description": "Strict shared workflow-growth wire contracts for DSH assistant plugins.",
5
5
  "license": "MIT",
6
6
  "type": "module",