@farmslot/protocol 0.53.0 → 0.54.0

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 (65) hide show
  1. package/CHANGELOG.md +11 -2
  2. package/dist/client-cache/index.d.ts +11 -0
  3. package/dist/client-cache/index.d.ts.map +1 -0
  4. package/dist/client-cache/index.js +2 -0
  5. package/dist/client-cache/index.js.map +1 -0
  6. package/dist/contracts/acceptance.d.ts +2 -0
  7. package/dist/contracts/acceptance.d.ts.map +1 -1
  8. package/dist/contracts/acceptance.js.map +1 -1
  9. package/dist/contracts/agents.d.ts +1 -1
  10. package/dist/contracts/agents.d.ts.map +1 -1
  11. package/dist/contracts/runs.d.ts +100 -21
  12. package/dist/contracts/runs.d.ts.map +1 -1
  13. package/dist/contracts/runs.js +15 -0
  14. package/dist/contracts/runs.js.map +1 -1
  15. package/dist/contracts/slots.d.ts +7 -0
  16. package/dist/contracts/slots.d.ts.map +1 -1
  17. package/dist/index.d.ts +2 -0
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +2 -0
  20. package/dist/index.js.map +1 -1
  21. package/dist/recipe/evidence.d.ts +7 -0
  22. package/dist/recipe/evidence.d.ts.map +1 -1
  23. package/dist/recipe/evidence.js.map +1 -1
  24. package/dist/recipe/index.d.ts +1 -0
  25. package/dist/recipe/index.d.ts.map +1 -1
  26. package/dist/recipe/index.js +1 -0
  27. package/dist/recipe/index.js.map +1 -1
  28. package/dist/recipe/pipeline-visual-judgments.d.ts +179 -5
  29. package/dist/recipe/pipeline-visual-judgments.d.ts.map +1 -1
  30. package/dist/recipe/pipeline-visual-judgments.js +64 -4
  31. package/dist/recipe/pipeline-visual-judgments.js.map +1 -1
  32. package/dist/recipe/repair.d.ts +93 -0
  33. package/dist/recipe/repair.d.ts.map +1 -0
  34. package/dist/recipe/repair.js +213 -0
  35. package/dist/recipe/repair.js.map +1 -0
  36. package/dist/runs/decision-resolution.d.ts.map +1 -1
  37. package/dist/runs/decision-resolution.js +4 -0
  38. package/dist/runs/decision-resolution.js.map +1 -1
  39. package/dist/runs/evidence-summary.d.ts +24 -2
  40. package/dist/runs/evidence-summary.d.ts.map +1 -1
  41. package/dist/runs/evidence-summary.js +143 -53
  42. package/dist/runs/evidence-summary.js.map +1 -1
  43. package/dist/runs/run-list-view.d.ts +25 -0
  44. package/dist/runs/run-list-view.d.ts.map +1 -0
  45. package/dist/runs/run-list-view.js +54 -0
  46. package/dist/runs/run-list-view.js.map +1 -0
  47. package/dist/sources/changes.d.ts +37 -0
  48. package/dist/sources/changes.d.ts.map +1 -0
  49. package/dist/sources/changes.js +79 -0
  50. package/dist/sources/changes.js.map +1 -0
  51. package/dist/sources/controller.d.ts +20 -0
  52. package/dist/sources/controller.d.ts.map +1 -1
  53. package/dist/sources/controller.js +63 -1
  54. package/dist/sources/controller.js.map +1 -1
  55. package/dist/sources/status-view.d.ts +6 -1
  56. package/dist/sources/status-view.d.ts.map +1 -1
  57. package/dist/sources/status-view.js +17 -8
  58. package/dist/sources/status-view.js.map +1 -1
  59. package/dist/transport/events.d.ts +16 -0
  60. package/dist/transport/events.d.ts.map +1 -1
  61. package/dist/transport/events.js.map +1 -1
  62. package/dist/version.d.ts +1 -1
  63. package/dist/version.js +1 -1
  64. package/package.json +6 -1
  65. package/scripts/acceptance.mjs +4 -1
@@ -1,6 +1,11 @@
1
1
  import { isRecord } from './common.js';
2
2
  import { validateRecipeParams } from './params.js';
3
3
  export const PIPELINE_VISUAL_RESULT_SCHEMA = 'pipeline-visual-judgments-v1';
4
+ /** Authorised repair review: per-source visual results plus retained-claim applicability. */
5
+ export const PIPELINE_REPAIR_VISUAL_RESULT_SCHEMA = 'pipeline-visual-judgments-v2';
6
+ export function isPipelineRepairVisualReviewInput(input) {
7
+ return 'schemaVersion' in input && input.schemaVersion === 2;
8
+ }
4
9
  const text = { type: 'string', pattern: '\\S' };
5
10
  const digest = { type: 'string', pattern: '^sha256:[a-f0-9]{64}$' };
6
11
  /** The same schema constrains the provider and validates its completed result. */
@@ -49,8 +54,40 @@ export const PIPELINE_VISUAL_JUDGMENTS_SCHEMA = {
49
54
  },
50
55
  },
51
56
  };
57
+ export const PIPELINE_REPAIR_VISUAL_JUDGMENTS_SCHEMA = {
58
+ type: 'object',
59
+ additionalProperties: false,
60
+ required: ['schemaVersion', 'headSha', 'scopeDigest', 'sources', 'retained'],
61
+ properties: {
62
+ schemaVersion: { type: 'integer', enum: [2] },
63
+ headSha: { type: 'string', pattern: '^[a-f0-9]{40,64}$' },
64
+ scopeDigest: digest,
65
+ sources: { type: 'array', items: PIPELINE_VISUAL_JUDGMENTS_SCHEMA },
66
+ retained: {
67
+ type: 'array',
68
+ items: {
69
+ type: 'object',
70
+ additionalProperties: false,
71
+ required: ['claimId', 'recipeRunId', 'closureIdentity', 'unaffected', 'reason'],
72
+ properties: {
73
+ claimId: text,
74
+ recipeRunId: text,
75
+ closureIdentity: digest,
76
+ unaffected: { type: 'boolean' },
77
+ reason: text,
78
+ },
79
+ },
80
+ },
81
+ },
82
+ };
52
83
  export function isNativeResultSchema(value) {
53
- return value === PIPELINE_VISUAL_RESULT_SCHEMA;
84
+ return value === PIPELINE_VISUAL_RESULT_SCHEMA || value === PIPELINE_REPAIR_VISUAL_RESULT_SCHEMA;
85
+ }
86
+ /** The JSON schema a provider is constrained with for a declared result contract. */
87
+ export function nativeResultJsonSchema(schema) {
88
+ return schema === PIPELINE_REPAIR_VISUAL_RESULT_SCHEMA
89
+ ? PIPELINE_REPAIR_VISUAL_JUDGMENTS_SCHEMA
90
+ : PIPELINE_VISUAL_JUDGMENTS_SCHEMA;
54
91
  }
55
92
  export function isPipelineVisualJudgments(value) {
56
93
  if (!isRecord(value) ||
@@ -70,9 +107,32 @@ export function isPipelineVisualJudgments(value) {
70
107
  }
71
108
  return true;
72
109
  }
110
+ export function isPipelineRepairVisualJudgments(value) {
111
+ if (!isRecord(value) ||
112
+ validateRecipeParams(value, PIPELINE_REPAIR_VISUAL_JUDGMENTS_SCHEMA).status !== 'valid' ||
113
+ !Array.isArray(value.sources) ||
114
+ !Array.isArray(value.retained) ||
115
+ !value.sources.every(isPipelineVisualJudgments))
116
+ return false;
117
+ const sources = new Set();
118
+ for (const source of value.sources) {
119
+ if (sources.has(source.recipeRunId))
120
+ return false;
121
+ sources.add(source.recipeRunId);
122
+ }
123
+ const retained = new Set();
124
+ for (const row of value.retained) {
125
+ if (retained.has(row.claimId))
126
+ return false;
127
+ retained.add(row.claimId);
128
+ }
129
+ return true;
130
+ }
73
131
  export function nativeStructuredResult(schema, value) {
74
- return isNativeResultSchema(schema) && isPipelineVisualJudgments(value)
75
- ? { schema, value }
76
- : undefined;
132
+ if (schema === PIPELINE_VISUAL_RESULT_SCHEMA && isPipelineVisualJudgments(value))
133
+ return { schema, value };
134
+ if (schema === PIPELINE_REPAIR_VISUAL_RESULT_SCHEMA && isPipelineRepairVisualJudgments(value))
135
+ return { schema, value };
136
+ return undefined;
77
137
  }
78
138
  //# sourceMappingURL=pipeline-visual-judgments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-visual-judgments.js","sourceRoot":"","sources":["../../src/recipe/pipeline-visual-judgments.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,MAAM,CAAC,MAAM,6BAA6B,GAAG,8BAA8B,CAAC;AAwC5E,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AAChD,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEpE,kFAAkF;AAClF,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,WAAW,CAAC;IAC1E,UAAU,EAAE;QACV,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE;QAC7C,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,MAAM;QACvB,SAAS,EAAE;YACT,IAAI,EAAE,OAAO;YACb,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,oBAAoB,EAAE,KAAK;gBAC3B,QAAQ,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,SAAS,CAAC;gBACtE,UAAU,EAAE;oBACV,OAAO,EAAE,IAAI;oBACb,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE;oBAC5D,MAAM,EAAE,IAAI;oBACZ,aAAa,EAAE;wBACb,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,oBAAoB,EAAE,KAAK;4BAC3B,QAAQ,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;4BAC5B,UAAU,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE;yBACnC;qBACF;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;4BACd,oBAAoB,EAAE,KAAK;4BAC3B,QAAQ,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,CAAC;4BACtD,UAAU,EAAE;gCACV,WAAW,EAAE,IAAI;gCACjB,WAAW,EAAE,MAAM;gCACnB,UAAU,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,EAAE;6BAC5C;yBACF;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAO,KAAK,KAAK,6BAA6B,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,KAAc;IACtD,IACE,CAAC,QAAQ,CAAC,KAAK,CAAC;QAChB,oBAAoB,CAAC,KAAK,EAAE,gCAAgC,CAAC,CAAC,MAAM,KAAK,OAAO;QAChF,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;QAE/B,OAAO,KAAK,CAAC;IACf,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;QAClC,IACE,CAAC,QAAQ,CAAC,GAAG,CAAC;YACd,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAC/B,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;YACvB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YACjC,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;YAC3B,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC;YAElD,OAAO,KAAK,CAAC;QACf,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,MAAe,EACf,KAAc;IAEd,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,yBAAyB,CAAC,KAAK,CAAC;QACrE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE;QACnB,CAAC,CAAC,SAAS,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"pipeline-visual-judgments.js","sourceRoot":"","sources":["../../src/recipe/pipeline-visual-judgments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ import { type RecipeValidationResult } from './common.js';
2
+ import { type EvidenceMomentRef, type RecipeClaimDeclaration, type RecipeClaimEvidence, type RecipeClaimProofMode } from './evidence.js';
3
+ /** The publication gate action that returns qualified Issues to the retained worker. */
4
+ export declare const SEND_BACK_TO_AGENT_ACTION = "send-feedback";
5
+ /** Gateway-written worker input; the run store keeps its authoritative digest. */
6
+ export declare const RECIPE_REPAIR_SCOPE_TASK_PATH = "artifacts/visual-repair-scope.json";
7
+ /** Checked scope copy retained in the fresh attempt. */
8
+ export declare const RECIPE_REPAIR_SCOPE_FILE = "repair-scope.json";
9
+ /** Engine-owned claim-to-source selection retained in the fresh attempt. */
10
+ export declare const RECIPE_REPAIR_SELECTION_FILE = "repair-selection.json";
11
+ /** An original recorded execution that non-rejected criteria may keep. */
12
+ export interface RecipeRepairSource {
13
+ recipeRunId: string;
14
+ closureIdentity: string;
15
+ /** Task-relative root of the retained package. */
16
+ artifactRoot: string;
17
+ /** Commit the source was recorded at; applicability diffs start here. */
18
+ headSha: string;
19
+ }
20
+ /** A qualified Issue frozen from its gateway receipt. */
21
+ export interface RecipeRepairRejection {
22
+ claimId: string;
23
+ /** Original proof mode; fresh proof must not weaken it. */
24
+ proofMode: RecipeClaimProofMode;
25
+ receiptId: string;
26
+ reason: string;
27
+ recipeRunId: string;
28
+ closureIdentity: string;
29
+ reviewedFiles: {
30
+ path: string;
31
+ digest: string;
32
+ }[];
33
+ moments: EvidenceMomentRef[];
34
+ }
35
+ export interface RecipeRepairScope {
36
+ schemaVersion: 1;
37
+ repairId: string;
38
+ runId: string;
39
+ generation: number;
40
+ decisionId: string;
41
+ packageHash: string;
42
+ packageHeadSha: string;
43
+ reviewBaseSha: string;
44
+ /** Retained review loop whose existing worker-fix budget pays for this repair. */
45
+ reviewId: string;
46
+ /** Agent context owning the retained worker. */
47
+ workerContextId: string;
48
+ /** Task-relative path of the separate repair recipe. The main task recipe is unchanged. */
49
+ repairRecipe: string;
50
+ /** The full task registration. */
51
+ claims: RecipeClaimDeclaration[];
52
+ sources: RecipeRepairSource[];
53
+ /** Every non-rejected registered criterion and the original source it currently selects. */
54
+ retained: {
55
+ claimId: string;
56
+ recipeRunId: string;
57
+ }[];
58
+ rejected: RecipeRepairRejection[];
59
+ }
60
+ export type RecipeRepairClaimSource = {
61
+ claimId: string;
62
+ source: 'fresh';
63
+ } | {
64
+ claimId: string;
65
+ source: 'retained';
66
+ recipeRunId: string;
67
+ closureIdentity: string;
68
+ };
69
+ export interface RecipeRepairSelection {
70
+ schemaVersion: 1;
71
+ repairId: string;
72
+ scopeDigest: string;
73
+ /** The fresh execution. */
74
+ recipeRunId: string;
75
+ claims: RecipeRepairClaimSource[];
76
+ }
77
+ /** One identity per package and sorted rejection receipts, so retries reuse the same charge. */
78
+ export declare function recipeRepairId(input: {
79
+ runId: string;
80
+ packageHash: string;
81
+ receiptIds: readonly string[];
82
+ }): string;
83
+ export declare function recipeRepairScopeDigest(scope: RecipeRepairScope): string;
84
+ /** Rejected criteria always re-prove; others keep retained proof only when the fresh graph left them missing. */
85
+ export declare function selectRepairClaimSources(scope: RecipeRepairScope, fresh: readonly RecipeClaimEvidence[]): RecipeRepairClaimSource[];
86
+ export declare function validateRecipeRepairScope(value: unknown): RecipeValidationResult;
87
+ export declare function isRecipeRepairScope(value: unknown): value is RecipeRepairScope;
88
+ /** The selection must be exactly the engine rule over the scope and the fresh claims. */
89
+ export declare function validateRecipeRepairSelection(value: unknown, scope: RecipeRepairScope, fresh: {
90
+ recipeRunId: string;
91
+ criteria: readonly RecipeClaimEvidence[];
92
+ }): RecipeValidationResult;
93
+ //# sourceMappingURL=repair.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../../src/recipe/repair.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,213 @@
1
+ import { addFinding, createContext, finishResult, isNonEmptyString, isRecord, isRelativeArtifactPath, } from './common.js';
2
+ import { digestRecipeDocument } from './digest.js';
3
+ import { normalizeRecipeClaimId, validateRecipeClaimDeclarations, } from './evidence.js';
4
+ /** The publication gate action that returns qualified Issues to the retained worker. */
5
+ export const SEND_BACK_TO_AGENT_ACTION = 'send-feedback';
6
+ /** Gateway-written worker input; the run store keeps its authoritative digest. */
7
+ export const RECIPE_REPAIR_SCOPE_TASK_PATH = 'artifacts/visual-repair-scope.json';
8
+ /** Checked scope copy retained in the fresh attempt. */
9
+ export const RECIPE_REPAIR_SCOPE_FILE = 'repair-scope.json';
10
+ /** Engine-owned claim-to-source selection retained in the fresh attempt. */
11
+ export const RECIPE_REPAIR_SELECTION_FILE = 'repair-selection.json';
12
+ /** One identity per package and sorted rejection receipts, so retries reuse the same charge. */
13
+ export function recipeRepairId(input) {
14
+ const digest = digestRecipeDocument({
15
+ runId: input.runId,
16
+ packageHash: input.packageHash,
17
+ receiptIds: [...input.receiptIds].sort(),
18
+ });
19
+ return `repair-${digest.slice('sha256:'.length, 'sha256:'.length + 24)}`;
20
+ }
21
+ export function recipeRepairScopeDigest(scope) {
22
+ return digestRecipeDocument(scope);
23
+ }
24
+ /** Rejected criteria always re-prove; others keep retained proof only when the fresh graph left them missing. */
25
+ export function selectRepairClaimSources(scope, fresh) {
26
+ const rejected = new Set(scope.rejected.map(({ claimId }) => claimId));
27
+ return scope.claims.map(({ id }) => {
28
+ const claimId = normalizeRecipeClaimId(id);
29
+ const freshClaim = fresh.find((claim) => claim.id === claimId);
30
+ if (rejected.has(claimId) || (freshClaim && freshClaim.verdict !== 'missing'))
31
+ return { claimId, source: 'fresh' };
32
+ const retained = scope.retained.find((row) => row.claimId === claimId);
33
+ const source = scope.sources.find((row) => row.recipeRunId === retained.recipeRunId);
34
+ return {
35
+ claimId,
36
+ source: 'retained',
37
+ recipeRunId: source.recipeRunId,
38
+ closureIdentity: source.closureIdentity,
39
+ };
40
+ });
41
+ }
42
+ const DIGEST = /^sha256:[a-f0-9]{64}$/u;
43
+ /** The ready gate's frozen package identity: a bare sha256 hex digest. */
44
+ const PACKAGE_HASH = /^[a-f0-9]{64}$/u;
45
+ const COMMIT = /^[a-f0-9]{40,64}$/u;
46
+ const EXECUTION = /^[A-Za-z0-9._-]+$/u;
47
+ const PROOF_MODES = ['state', 'visual', 'mixed'];
48
+ function validExecutionId(value) {
49
+ return typeof value === 'string' && EXECUTION.test(value) && !['.', '..'].includes(value);
50
+ }
51
+ function validMoments(value) {
52
+ return (Array.isArray(value) &&
53
+ value.every((moment) => isRecord(moment) &&
54
+ validExecutionId(moment.recipeRunId) &&
55
+ typeof moment.videoDigest === 'string' &&
56
+ DIGEST.test(moment.videoDigest) &&
57
+ Number.isInteger(moment.traceIndex) &&
58
+ Number(moment.traceIndex) >= 0));
59
+ }
60
+ function validFiles(value) {
61
+ return (Array.isArray(value) &&
62
+ value.every((file) => isRecord(file) &&
63
+ isNonEmptyString(file.path) &&
64
+ isRelativeArtifactPath(file.path) &&
65
+ typeof file.digest === 'string' &&
66
+ DIGEST.test(file.digest)));
67
+ }
68
+ export function validateRecipeRepairScope(value) {
69
+ const context = createContext();
70
+ const issue = (path, message) => addFinding(context, 'error', 'recipe.invalid_repair_scope', path, message);
71
+ if (!isRecord(value)) {
72
+ issue('scope', 'A repair scope must be an object.');
73
+ return finishResult(context);
74
+ }
75
+ if (value.schemaVersion !== 1)
76
+ issue('schemaVersion', 'Unsupported repair scope version.');
77
+ for (const field of [
78
+ 'repairId',
79
+ 'runId',
80
+ 'decisionId',
81
+ 'reviewId',
82
+ 'workerContextId',
83
+ 'repairRecipe',
84
+ ])
85
+ if (!isNonEmptyString(value[field]))
86
+ issue(field, `${field} is required.`);
87
+ if (!Number.isInteger(value.generation) || Number(value.generation) < 0)
88
+ issue('generation', 'A run generation is required.');
89
+ if (typeof value.packageHash !== 'string' || !PACKAGE_HASH.test(value.packageHash))
90
+ issue('packageHash', 'A frozen package digest is required.');
91
+ for (const field of ['packageHeadSha', 'reviewBaseSha'])
92
+ if (typeof value[field] !== 'string' || !COMMIT.test(value[field]))
93
+ issue(field, `${field} must be a full commit.`);
94
+ if (typeof value.repairRecipe === 'string' &&
95
+ (!isRelativeArtifactPath(value.repairRecipe) || value.repairRecipe.startsWith('artifacts/')))
96
+ issue('repairRecipe', 'The repair recipe must be a task-owned relative path.');
97
+ const declarations = validateRecipeClaimDeclarations(value.claims);
98
+ for (const finding of declarations.findings)
99
+ addFinding(context, finding.severity, finding.code, `claims.${finding.path}`, finding.message);
100
+ const claims = Array.isArray(value.claims) ? value.claims.filter(isRecord) : [];
101
+ if (!claims.length)
102
+ issue('claims', 'The full task registration is required.');
103
+ if (claims.some((claim) => claim.parentId !== undefined))
104
+ issue('claims', 'Nested criteria cannot be repaired by claim selection.');
105
+ const registered = claims.map((claim) => normalizeRecipeClaimId(String(claim.id)));
106
+ const sources = Array.isArray(value.sources) ? value.sources : [];
107
+ const sourceIds = new Set();
108
+ for (const [index, source] of sources.entries()) {
109
+ if (!isRecord(source) ||
110
+ !validExecutionId(source.recipeRunId) ||
111
+ sourceIds.has(source.recipeRunId) ||
112
+ typeof source.closureIdentity !== 'string' ||
113
+ !DIGEST.test(source.closureIdentity) ||
114
+ typeof source.artifactRoot !== 'string' ||
115
+ !source.artifactRoot.startsWith('artifacts/') ||
116
+ !isRelativeArtifactPath(source.artifactRoot) ||
117
+ typeof source.headSha !== 'string' ||
118
+ !COMMIT.test(source.headSha)) {
119
+ issue(`sources[${index}]`, 'Invalid or duplicate retained source.');
120
+ continue;
121
+ }
122
+ sourceIds.add(source.recipeRunId);
123
+ }
124
+ if (!sources.length)
125
+ issue('sources', 'At least one original source is required.');
126
+ const rejected = Array.isArray(value.rejected) ? value.rejected : [];
127
+ const rejectedIds = new Set();
128
+ for (const [index, row] of rejected.entries()) {
129
+ const path = `rejected[${index}]`;
130
+ if (!isRecord(row) ||
131
+ typeof row.claimId !== 'string' ||
132
+ !registered.includes(row.claimId) ||
133
+ rejectedIds.has(row.claimId) ||
134
+ !PROOF_MODES.includes(String(row.proofMode)) ||
135
+ !isNonEmptyString(row.receiptId) ||
136
+ !isNonEmptyString(row.reason) ||
137
+ !validExecutionId(row.recipeRunId) ||
138
+ !sourceIds.has(row.recipeRunId) ||
139
+ typeof row.closureIdentity !== 'string' ||
140
+ !DIGEST.test(row.closureIdentity) ||
141
+ !validFiles(row.reviewedFiles) ||
142
+ !validMoments(row.moments)) {
143
+ issue(path, 'Invalid, unregistered or duplicate rejected criterion.');
144
+ continue;
145
+ }
146
+ rejectedIds.add(row.claimId);
147
+ }
148
+ if (!rejected.length)
149
+ issue('rejected', 'A repair requires at least one Issue.');
150
+ const retained = Array.isArray(value.retained) ? value.retained : [];
151
+ const retainedIds = new Set();
152
+ for (const [index, row] of retained.entries()) {
153
+ if (!isRecord(row) ||
154
+ typeof row.claimId !== 'string' ||
155
+ !registered.includes(row.claimId) ||
156
+ rejectedIds.has(row.claimId) ||
157
+ retainedIds.has(row.claimId) ||
158
+ typeof row.recipeRunId !== 'string' ||
159
+ !sourceIds.has(row.recipeRunId)) {
160
+ issue(`retained[${index}]`, 'Invalid, rejected or duplicate retained criterion.');
161
+ continue;
162
+ }
163
+ retainedIds.add(row.claimId);
164
+ }
165
+ if (registered.some((id) => !rejectedIds.has(id) && !retainedIds.has(id)))
166
+ issue('retained', 'Every non-rejected criterion must name its current source.');
167
+ if (isNonEmptyString(value.runId) &&
168
+ typeof value.packageHash === 'string' &&
169
+ value.repairId !==
170
+ recipeRepairId({
171
+ runId: value.runId,
172
+ packageHash: value.packageHash,
173
+ receiptIds: rejected.filter(isRecord).map((row) => String(row.receiptId)),
174
+ }))
175
+ issue('repairId', 'Repair identity does not bind the package and rejection receipts.');
176
+ return finishResult(context);
177
+ }
178
+ export function isRecipeRepairScope(value) {
179
+ return validateRecipeRepairScope(value).status === 'valid';
180
+ }
181
+ /** The selection must be exactly the engine rule over the scope and the fresh claims. */
182
+ export function validateRecipeRepairSelection(value, scope, fresh) {
183
+ const context = createContext();
184
+ const issue = (path, message) => addFinding(context, 'error', 'recipe.invalid_repair_selection', path, message);
185
+ if (!isRecord(value)) {
186
+ issue('selection', 'A repair selection must be an object.');
187
+ return finishResult(context);
188
+ }
189
+ if (value.schemaVersion !== 1)
190
+ issue('schemaVersion', 'Unsupported repair selection version.');
191
+ if (value.repairId !== scope.repairId)
192
+ issue('repairId', 'Selection belongs to another repair.');
193
+ if (value.scopeDigest !== recipeRepairScopeDigest(scope))
194
+ issue('scopeDigest', 'Selection does not bind the retained repair scope.');
195
+ if (value.recipeRunId !== fresh.recipeRunId)
196
+ issue('recipeRunId', 'Selection belongs to another fresh execution.');
197
+ const registered = new Set(scope.claims.map(({ id }) => normalizeRecipeClaimId(id)));
198
+ const freshIds = new Set(fresh.criteria.map(({ id }) => id));
199
+ if (fresh.criteria.length !== registered.size ||
200
+ freshIds.size !== registered.size ||
201
+ [...registered].some((id) => !freshIds.has(id)))
202
+ issue('claims', 'The fresh execution must keep the full task registration.');
203
+ for (const rejection of scope.rejected) {
204
+ const claim = fresh.criteria.find(({ id }) => id === rejection.claimId);
205
+ if (claim && claim.proofMode !== rejection.proofMode)
206
+ issue(`claims.${rejection.claimId}.proofMode`, `Fresh proof must keep the original ${rejection.proofMode} proof mode.`);
207
+ }
208
+ if (digestRecipeDocument(value.claims) !==
209
+ digestRecipeDocument(selectRepairClaimSources(scope, fresh.criteria)))
210
+ issue('claims', 'Selection differs from the engine claim-source rule.');
211
+ return finishResult(context);
212
+ }
213
+ //# sourceMappingURL=repair.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair.js","sourceRoot":"","sources":["../../src/recipe/repair.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decision-resolution.d.ts","sourceRoot":"","sources":["../../src/runs/decision-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAKtF,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;;;;;;;;;;;EAS7F;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACnF,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,yBAAyB,CAAC;CAC7C;AAED,MAAM,MAAM,wBAAwB,GAChC;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,kBAAkB,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,GAC7E;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,iBAAiB,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,GAC5E;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,oBAAoB,CAAC;IAAC,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAEtF,oFAAoF;AACpF,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,sBAAsB,GAC5B,wBAAwB,CAuB1B;AAED,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,sBAAsB;;;EAYrE;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAetC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;;OAIG;IACH,eAAe,CAAC,EAAE,yBAAyB,CAAC;CAC7C,GAAG,wBAAwB,CAqC3B"}
1
+ {"version":3,"file":"decision-resolution.d.ts","sourceRoot":"","sources":["../../src/runs/decision-resolution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EAClB,MAAM,sBAAsB,CAAC;AAM9B,OAAO,KAAK,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAKtF,+EAA+E;AAC/E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI;;;;;;;;;;;EAS7F;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC;IACnF,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC,eAAe,CAAC,EAAE,yBAAyB,CAAC;CAC7C;AAED,MAAM,MAAM,wBAAwB,GAChC;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,kBAAkB,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,GAC7E;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,iBAAiB,CAAC;IAAC,MAAM,EAAE,sBAAsB,CAAA;CAAE,GAC5E;IAAE,MAAM,EAAE,OAAO,OAAO,CAAC,oBAAoB,CAAC;IAAC,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAEtF,oFAAoF;AACpF,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,sBAAsB,GAC5B,wBAAwB,CAuB1B;AAED,yFAAyF;AACzF,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,sBAAsB;;;EAYrE;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAetC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE;IACnD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC;IAC9C,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;;OAIG;IACH,eAAe,CAAC,EAAE,yBAAyB,CAAC;CAC7C,GAAG,wBAAwB,CAuC3B"}
@@ -1,4 +1,5 @@
1
1
  import { MARK_CLAIM_UNTESTABLE_ACTION, runClaimOverrideSnapshotIdentity, } from '../recipe/claim-overrides.js';
2
+ import { SEND_BACK_TO_AGENT_ACTION } from '../recipe/repair.js';
2
3
  import { Methods } from '../rpc/registry.js';
3
4
  import { evidenceAttestationReason } from './publish-approval.js';
4
5
  import { reviewPostingFingerprint } from './review-curation.js';
@@ -99,6 +100,9 @@ export function buildRunResolveDecisionParams(input) {
99
100
  ...selectionData,
100
101
  claimOverrideSnapshot: runClaimOverrideSnapshotIdentity(input.decision),
101
102
  };
103
+ // Send back derives its Issues from the frozen gate decision; the gateway refuses selection data.
104
+ if (input.actionId === SEND_BACK_TO_AGENT_ACTION)
105
+ selectionData = undefined;
102
106
  return {
103
107
  runId: input.runId,
104
108
  decisionId: input.decision.id,
@@ -1 +1 @@
1
- {"version":3,"file":"decision-resolution.js","sourceRoot":"","sources":["../../src/runs/decision-resolution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decision-resolution.js","sourceRoot":"","sources":["../../src/runs/decision-resolution.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,36 @@
1
1
  import type { EvidenceManifestEntry, Run } from '../contracts/runs.js';
2
+ /** A run artifact with the metadata its source recorded. */
3
+ export interface RunArtifactManifestEntry extends EvidenceManifestEntry {
4
+ type?: string;
5
+ label?: string;
6
+ nodeId?: string;
7
+ mimeType?: string;
8
+ timelinePath?: string;
9
+ timelineUnavailableReason?: string;
10
+ bundleDigest?: string;
11
+ }
2
12
  export interface RunEvidenceSummary {
3
13
  artifactCount: number;
4
14
  videoCount: number;
5
15
  visualPairCount: number;
6
16
  }
7
- export declare function runEvidenceArtifacts(run: Pick<Run, 'decisions' | 'steps' | 'liveRecipeContext'>): EvidenceManifestEntry[];
8
- export declare function summarizeRunEvidence(run: Pick<Run, 'decisions' | 'steps' | 'liveRecipeContext'>): RunEvidenceSummary;
17
+ /**
18
+ * Every artifact a run reports: gate and review payloads, the captured run
19
+ * output and step outputs, without gateway-internal launch diagnostics. Command
20
+ * Center and Companion both read a run's artifacts through this.
21
+ */
22
+ export declare function extractRunArtifactManifest(run: Pick<Run, 'decisions' | 'steps' | 'output'>): RunArtifactManifestEntry[];
23
+ export declare function runEvidenceArtifacts(run: Pick<Run, 'decisions' | 'steps' | 'output' | 'liveRecipeContext'>): RunArtifactManifestEntry[];
24
+ export declare function summarizeRunEvidence(run: Pick<Run, 'decisions' | 'steps' | 'output' | 'liveRecipeContext'>): RunEvidenceSummary;
9
25
  export declare function isRunEvidenceVideoArtifact(entry: Pick<EvidenceManifestEntry, 'path'>): boolean;
10
26
  export declare function isRunEvidenceImageArtifact(entry: Pick<EvidenceManifestEntry, 'path'>): boolean;
11
27
  /** Canonical "is this evidence displayable" check — image or video. Single
12
28
  * source of truth for visual evidence formats across gateway and UI surfaces. */
13
29
  export declare function isRunEvidenceVisualArtifact(entry: Pick<EvidenceManifestEntry, 'path'>): boolean;
30
+ export declare function runArtifactPathsToManifest(paths: readonly string[]): RunArtifactManifestEntry[];
31
+ /** Image formats the clients show inline; `isRunEvidenceImageArtifact` also counts ones they can't. */
32
+ export declare function isRunArtifactImagePath(path: string): boolean;
33
+ export declare function inferRunArtifactPurpose(path: string): string;
34
+ /** One entry per path; the most specific purpose and the latest retention metadata win. */
35
+ export declare function dedupeRunArtifacts<T extends RunArtifactManifestEntry>(entries: readonly T[]): T[];
14
36
  //# sourceMappingURL=evidence-summary.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"evidence-summary.d.ts","sourceRoot":"","sources":["../../src/runs/evidence-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAEvE,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,mBAAmB,CAAC,GAC1D,qBAAqB,EAAE,CAiBzB;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,mBAAmB,CAAC,GAC1D,kBAAkB,CAOpB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE9F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE9F;AAED;iFACiF;AACjF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE/F"}
1
+ {"version":3,"file":"evidence-summary.d.ts","sourceRoot":"","sources":["../../src/runs/evidence-summary.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,GAAG,EAAE,MAAM,sBAAsB,CAAC;AAIvE,4DAA4D;AAC5D,MAAM,WAAW,wBAAyB,SAAQ,qBAAqB;IACrE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,kBAAkB;IACjC,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC,GAC/C,wBAAwB,EAAE,CAoC5B;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAAmB,CAAC,GACrE,wBAAwB,EAAE,CAK5B;AAED,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,GAAG,QAAQ,GAAG,mBAAmB,CAAC,GACrE,kBAAkB,CAOpB;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE9F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE9F;AAED;iFACiF;AACjF,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,MAAM,CAAC,GAAG,OAAO,CAE/F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,wBAAwB,EAAE,CAE/F;AAED,uGAAuG;AACvG,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAY5D;AAwGD,2FAA2F;AAC3F,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,wBAAwB,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,CAOjG"}