openplanr 1.19.0 → 1.21.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.
- package/README.md +17 -15
- package/dist/cli/commands/backlog.d.ts.map +1 -1
- package/dist/cli/commands/backlog.js +3 -0
- package/dist/cli/commands/backlog.js.map +1 -1
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/config.js +3 -0
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/epic.d.ts.map +1 -1
- package/dist/cli/commands/epic.js +2 -0
- package/dist/cli/commands/epic.js.map +1 -1
- package/dist/cli/commands/feature.d.ts.map +1 -1
- package/dist/cli/commands/feature.js +2 -0
- package/dist/cli/commands/feature.js.map +1 -1
- package/dist/cli/commands/operate.d.ts +6 -3
- package/dist/cli/commands/operate.d.ts.map +1 -1
- package/dist/cli/commands/operate.js +118 -137
- package/dist/cli/commands/operate.js.map +1 -1
- package/dist/cli/commands/pipeline.d.ts.map +1 -1
- package/dist/cli/commands/pipeline.js +5 -1
- package/dist/cli/commands/pipeline.js.map +1 -1
- package/dist/cli/commands/plan.d.ts.map +1 -1
- package/dist/cli/commands/plan.js +2 -0
- package/dist/cli/commands/plan.js.map +1 -1
- package/dist/cli/commands/quick.d.ts.map +1 -1
- package/dist/cli/commands/quick.js +2 -0
- package/dist/cli/commands/quick.js.map +1 -1
- package/dist/cli/commands/refine.d.ts.map +1 -1
- package/dist/cli/commands/refine.js +2 -0
- package/dist/cli/commands/refine.js.map +1 -1
- package/dist/cli/commands/revise.d.ts.map +1 -1
- package/dist/cli/commands/revise.js +2 -0
- package/dist/cli/commands/revise.js.map +1 -1
- package/dist/cli/commands/spec.d.ts.map +1 -1
- package/dist/cli/commands/spec.js +4 -0
- package/dist/cli/commands/spec.js.map +1 -1
- package/dist/cli/commands/sprint.d.ts.map +1 -1
- package/dist/cli/commands/sprint.js +2 -0
- package/dist/cli/commands/sprint.js.map +1 -1
- package/dist/cli/commands/story.d.ts.map +1 -1
- package/dist/cli/commands/story.js +3 -0
- package/dist/cli/commands/story.js.map +1 -1
- package/dist/cli/commands/task.d.ts.map +1 -1
- package/dist/cli/commands/task.js +3 -0
- package/dist/cli/commands/task.js.map +1 -1
- package/dist/services/ai-service.d.ts +3 -5
- package/dist/services/ai-service.d.ts.map +1 -1
- package/dist/services/ai-service.js +7 -1
- package/dist/services/ai-service.js.map +1 -1
- package/dist/services/claude-plugin-service.d.ts +1 -1
- package/dist/services/claude-plugin-service.js +1 -1
- package/dist/services/credentials-service.d.ts.map +1 -1
- package/dist/services/credentials-service.js +2 -0
- package/dist/services/credentials-service.js.map +1 -1
- package/dist/services/deprecation-notices.d.ts +5 -0
- package/dist/services/deprecation-notices.d.ts.map +1 -0
- package/dist/services/deprecation-notices.js +6 -0
- package/dist/services/deprecation-notices.js.map +1 -0
- package/dist/services/operate/advisors.d.ts +207 -166
- package/dist/services/operate/advisors.d.ts.map +1 -1
- package/dist/services/operate/advisors.js +283 -562
- package/dist/services/operate/advisors.js.map +1 -1
- package/dist/services/operate/citation-resolution.d.ts.map +1 -1
- package/dist/services/operate/citation-resolution.js +50 -1
- package/dist/services/operate/citation-resolution.js.map +1 -1
- package/dist/services/operate/config.d.ts +18 -52
- package/dist/services/operate/config.d.ts.map +1 -1
- package/dist/services/operate/config.js +24 -206
- package/dist/services/operate/config.js.map +1 -1
- package/dist/services/operate/context-research.d.ts +41 -0
- package/dist/services/operate/context-research.d.ts.map +1 -0
- package/dist/services/operate/context-research.js +230 -0
- package/dist/services/operate/context-research.js.map +1 -0
- package/dist/services/operate/decision-brief.js +1 -1
- package/dist/services/operate/decision-brief.js.map +1 -1
- package/dist/services/operate/doctor.d.ts +15 -0
- package/dist/services/operate/doctor.d.ts.map +1 -1
- package/dist/services/operate/doctor.js +142 -36
- package/dist/services/operate/doctor.js.map +1 -1
- package/dist/services/operate/drafts.d.ts +48 -0
- package/dist/services/operate/drafts.d.ts.map +1 -0
- package/dist/services/operate/drafts.js +398 -0
- package/dist/services/operate/drafts.js.map +1 -0
- package/dist/services/operate/engine.d.ts +22 -78
- package/dist/services/operate/engine.d.ts.map +1 -1
- package/dist/services/operate/engine.js +275 -203
- package/dist/services/operate/engine.js.map +1 -1
- package/dist/services/operate/event-store.d.ts +1 -1
- package/dist/services/operate/event-store.d.ts.map +1 -1
- package/dist/services/operate/event-store.js +6 -2
- package/dist/services/operate/event-store.js.map +1 -1
- package/dist/services/operate/evidence.d.ts +9 -107
- package/dist/services/operate/evidence.d.ts.map +1 -1
- package/dist/services/operate/evidence.js +0 -1403
- package/dist/services/operate/evidence.js.map +1 -1
- package/dist/services/operate/index.d.ts.map +1 -1
- package/dist/services/operate/index.js +181 -238
- package/dist/services/operate/index.js.map +1 -1
- package/dist/services/operate/integrity.d.ts +81 -0
- package/dist/services/operate/integrity.d.ts.map +1 -0
- package/dist/services/operate/integrity.js +152 -0
- package/dist/services/operate/integrity.js.map +1 -0
- package/dist/services/operate/interaction/answer-service.d.ts +0 -10
- package/dist/services/operate/interaction/answer-service.d.ts.map +1 -1
- package/dist/services/operate/interaction/answer-service.js +63 -43
- package/dist/services/operate/interaction/answer-service.js.map +1 -1
- package/dist/services/operate/interaction/question-engine.d.ts.map +1 -1
- package/dist/services/operate/interaction/question-engine.js +105 -21
- package/dist/services/operate/interaction/question-engine.js.map +1 -1
- package/dist/services/operate/interaction/question-registry.d.ts +16 -1
- package/dist/services/operate/interaction/question-registry.d.ts.map +1 -1
- package/dist/services/operate/interaction/question-registry.js +49 -43
- package/dist/services/operate/interaction/question-registry.js.map +1 -1
- package/dist/services/operate/interaction/session-service.d.ts.map +1 -1
- package/dist/services/operate/interaction/session-service.js +16 -11
- package/dist/services/operate/interaction/session-service.js.map +1 -1
- package/dist/services/operate/interaction/terminal-renderer.d.ts.map +1 -1
- package/dist/services/operate/interaction/terminal-renderer.js +16 -6
- package/dist/services/operate/interaction/terminal-renderer.js.map +1 -1
- package/dist/services/operate/lifecycle.js +1 -1
- package/dist/services/operate/lifecycle.js.map +1 -1
- package/dist/services/operate/maintenance.d.ts +4 -11
- package/dist/services/operate/maintenance.d.ts.map +1 -1
- package/dist/services/operate/maintenance.js +174 -349
- package/dist/services/operate/maintenance.js.map +1 -1
- package/dist/services/operate/mission-dispatch.d.ts +73 -55
- package/dist/services/operate/mission-dispatch.d.ts.map +1 -1
- package/dist/services/operate/mission-dispatch.js +138 -65
- package/dist/services/operate/mission-dispatch.js.map +1 -1
- package/dist/services/operate/projection-persistence.d.ts +4 -0
- package/dist/services/operate/projection-persistence.d.ts.map +1 -1
- package/dist/services/operate/projection-persistence.js +101 -3
- package/dist/services/operate/projection-persistence.js.map +1 -1
- package/dist/services/operate/projection.d.ts.map +1 -1
- package/dist/services/operate/projection.js +10 -3
- package/dist/services/operate/projection.js.map +1 -1
- package/dist/services/operate/protocol.d.ts +3 -43
- package/dist/services/operate/protocol.d.ts.map +1 -1
- package/dist/services/operate/protocol.js +8 -46
- package/dist/services/operate/protocol.js.map +1 -1
- package/dist/services/operate/redaction.d.ts +3 -3
- package/dist/services/operate/redaction.js +4 -4
- package/dist/services/operate/redaction.js.map +1 -1
- package/dist/services/operate/reports.d.ts +14 -1
- package/dist/services/operate/reports.d.ts.map +1 -1
- package/dist/services/operate/reports.js +108 -5
- package/dist/services/operate/reports.js.map +1 -1
- package/dist/services/operate/routes.d.ts.map +1 -1
- package/dist/services/operate/routes.js +3 -5
- package/dist/services/operate/routes.js.map +1 -1
- package/dist/services/operate/shipment-observer.d.ts.map +1 -1
- package/dist/services/operate/shipment-observer.js +1 -2
- package/dist/services/operate/shipment-observer.js.map +1 -1
- package/dist/services/operate/types.d.ts +61 -135
- package/dist/services/operate/types.d.ts.map +1 -1
- package/dist/services/operate/types.js +1 -0
- package/dist/services/operate/types.js.map +1 -1
- package/dist/services/operate/workspace.d.ts +0 -1
- package/dist/services/operate/workspace.d.ts.map +1 -1
- package/dist/services/operate/workspace.js +0 -2
- package/dist/services/operate/workspace.js.map +1 -1
- package/dist/services/runtime-manager-service.d.ts.map +1 -1
- package/dist/services/runtime-manager-service.js +22 -19
- package/dist/services/runtime-manager-service.js.map +1 -1
- package/package.json +3 -3
- package/dist/services/operate/evidence-classifications.d.ts +0 -59
- package/dist/services/operate/evidence-classifications.d.ts.map +0 -1
- package/dist/services/operate/evidence-classifications.js +0 -132
- package/dist/services/operate/evidence-classifications.js.map +0 -1
- package/dist/services/operate/evidence-diagnostics.d.ts +0 -23
- package/dist/services/operate/evidence-diagnostics.d.ts.map +0 -1
- package/dist/services/operate/evidence-diagnostics.js +0 -152
- package/dist/services/operate/evidence-diagnostics.js.map +0 -1
- package/dist/services/operate/evidence-readiness.d.ts +0 -18
- package/dist/services/operate/evidence-readiness.d.ts.map +0 -1
- package/dist/services/operate/evidence-readiness.js +0 -94
- package/dist/services/operate/evidence-readiness.js.map +0 -1
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import type { AIMessage } from '../../ai/types.js';
|
|
3
2
|
import type { OpenPlanrConfig } from '../../models/types.js';
|
|
4
|
-
import { type OperatingDispatchIsolation
|
|
5
|
-
import { type OperatingAdvisorBrief, type OperatingCharter, type OperatingDataGap, type
|
|
3
|
+
import { type OperatingDispatchIsolation } from './mission-dispatch.js';
|
|
4
|
+
import { type OperatingAdvisorBrief, type OperatingCharter, type OperatingDataGap, type OperatingEvidenceReadiness, type OperatingProviderManifest, type OperatingRoleId, type OperatingRoleResult, type OperatingSensitivity, type OperatingState } from './types.js';
|
|
6
5
|
declare const advisorOutputSchema: z.ZodObject<{
|
|
7
6
|
outcome: z.ZodEnum<{
|
|
8
7
|
quiet: "quiet";
|
|
@@ -38,7 +37,86 @@ declare const advisorOutputSchema: z.ZodObject<{
|
|
|
38
37
|
conflicts: z.ZodArray<z.ZodString>;
|
|
39
38
|
}, z.core.$strict>;
|
|
40
39
|
export type OperatingAdvisorResponse = z.infer<typeof advisorOutputSchema>;
|
|
41
|
-
|
|
40
|
+
declare const missionAdvisorOutputSchema: z.ZodObject<{
|
|
41
|
+
outcome: z.ZodEnum<{
|
|
42
|
+
quiet: "quiet";
|
|
43
|
+
proposals: "proposals";
|
|
44
|
+
}>;
|
|
45
|
+
proposals: z.ZodArray<z.ZodObject<{
|
|
46
|
+
proposalKey: z.ZodString;
|
|
47
|
+
type: z.ZodEnum<{
|
|
48
|
+
finding: "finding";
|
|
49
|
+
decision: "decision";
|
|
50
|
+
"data-gap": "data-gap";
|
|
51
|
+
merge: "merge";
|
|
52
|
+
sequence: "sequence";
|
|
53
|
+
}>;
|
|
54
|
+
title: z.ZodString;
|
|
55
|
+
problem: z.ZodString;
|
|
56
|
+
proposal: z.ZodString;
|
|
57
|
+
impact: z.ZodNumber;
|
|
58
|
+
confidence: z.ZodNumber;
|
|
59
|
+
ease: z.ZodNumber;
|
|
60
|
+
severity: z.ZodEnum<{
|
|
61
|
+
critical: "critical";
|
|
62
|
+
high: "high";
|
|
63
|
+
medium: "medium";
|
|
64
|
+
low: "low";
|
|
65
|
+
}>;
|
|
66
|
+
citations: z.ZodArray<z.ZodObject<{
|
|
67
|
+
citationKey: z.ZodOptional<z.ZodString>;
|
|
68
|
+
repositoryPath: z.ZodOptional<z.ZodString>;
|
|
69
|
+
lineRange: z.ZodOptional<z.ZodObject<{
|
|
70
|
+
start: z.ZodNumber;
|
|
71
|
+
end: z.ZodNumber;
|
|
72
|
+
}, z.core.$strict>>;
|
|
73
|
+
gitRevision: z.ZodOptional<z.ZodString>;
|
|
74
|
+
planrArtifactId: z.ZodOptional<z.ZodString>;
|
|
75
|
+
pinnedRevision: z.ZodString;
|
|
76
|
+
}, z.core.$strict>>;
|
|
77
|
+
dependsOnProposalKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
78
|
+
conflictsWithProposalKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
79
|
+
sequenceProposalKeys: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
80
|
+
}, z.core.$strict>>;
|
|
81
|
+
gaps: z.ZodArray<z.ZodString>;
|
|
82
|
+
conflicts: z.ZodArray<z.ZodString>;
|
|
83
|
+
}, z.core.$strict>;
|
|
84
|
+
export type MissionAdvisorOutput = z.infer<typeof missionAdvisorOutputSchema>;
|
|
85
|
+
export interface AgentNativeAdvisorResponse {
|
|
86
|
+
outcome: 'actions' | 'quiet' | 'partial';
|
|
87
|
+
analysisMarkdown: string;
|
|
88
|
+
claims: Array<{
|
|
89
|
+
id: string;
|
|
90
|
+
statement: string;
|
|
91
|
+
epistemicStatus: 'observed' | 'inferred' | 'hypothesis' | 'owner-confirmed' | 'unknown';
|
|
92
|
+
confidence: number;
|
|
93
|
+
citations: Array<Record<string, unknown>>;
|
|
94
|
+
}>;
|
|
95
|
+
actions: Array<{
|
|
96
|
+
actionKey: string;
|
|
97
|
+
title: string;
|
|
98
|
+
summary: string;
|
|
99
|
+
lane: 'DEV' | 'OWNER' | 'AGENT';
|
|
100
|
+
routeKind: 'quick-task' | 'spec' | 'epic' | 'decision' | 'agent-artifact' | 'experiment' | 'metric';
|
|
101
|
+
horizon: 'immediate' | 'next' | 'later';
|
|
102
|
+
confidence: number;
|
|
103
|
+
impact?: number;
|
|
104
|
+
ease?: number;
|
|
105
|
+
critical?: boolean;
|
|
106
|
+
citations: Array<Record<string, unknown>>;
|
|
107
|
+
}>;
|
|
108
|
+
gaps: Array<{
|
|
109
|
+
id: string;
|
|
110
|
+
question: string;
|
|
111
|
+
impact: string;
|
|
112
|
+
ownerRequired?: boolean;
|
|
113
|
+
}>;
|
|
114
|
+
conflicts: Array<{
|
|
115
|
+
id: string;
|
|
116
|
+
summary: string;
|
|
117
|
+
actionKeys: string[];
|
|
118
|
+
}>;
|
|
119
|
+
}
|
|
42
120
|
export declare function advisorResponseContractDetails(brief: OperatingAdvisorBrief): {
|
|
43
121
|
expectedSchema: 'operating-advisor-response@1.2.0';
|
|
44
122
|
example: unknown;
|
|
@@ -92,135 +170,82 @@ export interface AdvisorRoleContext {
|
|
|
92
170
|
openGaps: AdvisorOpenItem[];
|
|
93
171
|
pendingOutcomes: AdvisorOpenItem[];
|
|
94
172
|
}
|
|
95
|
-
/**
|
|
96
|
-
* Immutable, provider-neutral input for one advisory lens. This is the
|
|
97
|
-
* executable prompt contract used by both structured providers and native
|
|
98
|
-
* runtime adapters; it deliberately contains no tools or write authority.
|
|
99
|
-
*/
|
|
100
|
-
export interface OperatingAdvisorPack {
|
|
101
|
-
implementation: 'openplanr-operating-advisor-pack';
|
|
102
|
-
cycleId: string;
|
|
103
|
-
roleId: OperatingRoleId;
|
|
104
|
-
roleBrief: OperatingAdvisorBrief;
|
|
105
|
-
evidence: OperatingEvidence;
|
|
106
|
-
context: AdvisorRoleContext;
|
|
107
|
-
inputDigest: `sha256:${string}`;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Build the immutable non-advisor context shared by all independent lenses.
|
|
111
|
-
* Role filtering is applied later, after the evidence permission set is known.
|
|
112
|
-
*/
|
|
173
|
+
/** Build the immutable non-advisor context shared by all independent lenses. */
|
|
113
174
|
export declare function buildAdvisorOperatingContext(input: {
|
|
114
175
|
charterPath: string;
|
|
115
176
|
state: OperatingState;
|
|
116
177
|
cycleId: string;
|
|
117
178
|
}): Promise<AdvisorOperatingContext>;
|
|
118
|
-
export
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
context: AdvisorOperatingContext;
|
|
123
|
-
}): Promise<OperatingAdvisorPack>;
|
|
124
|
-
/**
|
|
125
|
-
* Measure a canonicalized advisor pack and fail closed when it exceeds the
|
|
126
|
-
* role's v1.2 `maxInputBytes`. Shared by `createOperatingAdvisorPack` (fresh
|
|
127
|
-
* construction) and `operateAdapterLifecycle`'s prepare branch (which also
|
|
128
|
-
* guards packs restored from an on-disk session that may predate this check),
|
|
129
|
-
* so an oversized pack can never reach a provider or native adapter from either
|
|
130
|
-
* call site. Reuses the existing `E_OPERATE_EVIDENCE_BUDGET` code.
|
|
131
|
-
*/
|
|
132
|
-
export declare function assertOperatingAdvisorPackWithinBudget(pack: OperatingAdvisorPack, maxInputBytes: number): void;
|
|
133
|
-
/**
|
|
134
|
-
* Derive a role's mission-mode input budget from the pipeline's published pack
|
|
135
|
-
* budget. Mission packets carry only an evidence INDEX (no bodies), so their
|
|
136
|
-
* budget is a fraction of the role's v1.2 pack budget — `packMaxInputBytes / 32
|
|
137
|
-
* KiB`, rounded — clamped to the registry's real spread `[1, 32]` KiB.
|
|
138
|
-
*
|
|
139
|
-
* The prior `[1, 9]` KiB ceiling was arbitrary: it capped every repository-reading
|
|
140
|
-
* lens (512 KiB → 16 KiB) and `technology-risk` (640 KiB → 20 KiB) down to 9 KiB.
|
|
141
|
-
* At ~300 canonical bytes per index item that admitted only ~25 items, so a real
|
|
142
|
-
* monorepo's packet overflowed the derived budget and mission dispatch failed
|
|
143
|
-
* closed on a healthy repository. The ceiling now tracks the schema's own
|
|
144
|
-
* `maxInputBytes` maximum (1 MiB → 32 KiB), so a large registry budget maps to a
|
|
145
|
-
* proportional mission budget instead of an arbitrary cut. This DERIVES a new
|
|
146
|
-
* value; it never mutates the frozen v1.2 `maxInputBytes`. Enforcing that
|
|
147
|
-
* pack-mode budget is a separate concern handled by
|
|
148
|
-
* `assertOperatingAdvisorPackWithinBudget` at pack construction, not here.
|
|
149
|
-
*/
|
|
150
|
-
export declare function deriveOperatingMissionBudget(packMaxInputBytes: number): number;
|
|
151
|
-
/**
|
|
152
|
-
* Derive how many evidence index items a role's mission packet can carry before
|
|
153
|
-
* the published pipeline must truncate (the `maxEvidenceItems` the assembler
|
|
154
|
-
* enforces). The cap is the number of `MISSION_EVIDENCE_INDEX_ITEM_BYTES`-sized
|
|
155
|
-
* slots that fit in the role's derived byte budget after reserving
|
|
156
|
-
* `MISSION_PACKET_OVERHEAD_RESERVE_BYTES` for the non-evidence payload,
|
|
157
|
-
* intersected with any caller-supplied upper bound (`config.budgets.maxItems`).
|
|
158
|
-
*
|
|
159
|
-
* This is the "per-role registry-sized default": `technology-risk`'s 640-KiB
|
|
160
|
-
* pack budget yields a larger cap than a 512-KiB lens, and the chair's 192-KiB
|
|
161
|
-
* budget a smaller one — instead of one flat number that starves large-budget
|
|
162
|
-
* roles. Because `slots * itemBytes + reserve <= derivedBudget` holds by
|
|
163
|
-
* construction and the real per-item/overhead costs sit under those bounds, a
|
|
164
|
-
* packet truncated to this cap fits the derived budget with margin.
|
|
165
|
-
*/
|
|
166
|
-
export declare function deriveOperatingMissionEvidenceCap(packMaxInputBytes: number, upperBound?: number): number;
|
|
167
|
-
/**
|
|
168
|
-
* The per-role mission evidence-item cap registry, derived once from the
|
|
169
|
-
* pipeline's role registry. Mirrors `deriveOperatingMissionBudgets` for the
|
|
170
|
-
* `maxEvidenceItems` dimension so `buildOperatingMissionPackets` can pass each
|
|
171
|
-
* role its own byte-fitting cap instead of one flat value.
|
|
172
|
-
*/
|
|
173
|
-
export declare function deriveOperatingMissionEvidenceCaps(upperBound?: number): Promise<Record<string, number>>;
|
|
174
|
-
/**
|
|
175
|
-
* The per-role mission input budget registry, derived once from the pipeline's
|
|
176
|
-
* role registry. Every value is single-digit KiB.
|
|
177
|
-
*/
|
|
178
|
-
export declare function deriveOperatingMissionBudgets(): Promise<Record<string, number>>;
|
|
179
|
-
export interface OperatingMissionPacketInput extends OperatingMissionPacketState {
|
|
179
|
+
export interface OperatingMandate {
|
|
180
|
+
kind: 'operating-mandate';
|
|
181
|
+
schemaVersion: '1.0.0';
|
|
182
|
+
protocolVersion: '1.3.0' | '1.4.0';
|
|
180
183
|
roleId: OperatingRoleId;
|
|
181
|
-
|
|
182
|
-
|
|
184
|
+
phase?: 'bootstrap' | 'advisor' | 'chair';
|
|
185
|
+
lensQuestion: string;
|
|
186
|
+
mandate: string;
|
|
187
|
+
investigationMandate: {
|
|
188
|
+
examine: string[];
|
|
189
|
+
sufficientGrounding: string;
|
|
190
|
+
};
|
|
191
|
+
boundaries: {
|
|
192
|
+
roots: string[];
|
|
193
|
+
sensitivityCeiling: OperatingSensitivity;
|
|
194
|
+
forbiddenPaths: string[];
|
|
195
|
+
};
|
|
196
|
+
runtimeBinding?: {
|
|
197
|
+
runtime: string;
|
|
198
|
+
runtimeBinding: 'required';
|
|
199
|
+
crossRuntimeFallback: false;
|
|
200
|
+
executionMode: 'native-agent' | 'sequential-native';
|
|
201
|
+
assurance: 'runtime-governed';
|
|
202
|
+
toolIsolation: 'enforced' | 'advisory' | 'none' | 'enforced-read-only';
|
|
203
|
+
};
|
|
204
|
+
procedure?: string;
|
|
205
|
+
responseSchema: 'operating-advisor-response@1.3.0' | 'operating-advisor-response@1.4.0';
|
|
206
|
+
citationRequirement: {
|
|
207
|
+
everyClaimCited: true;
|
|
208
|
+
citationShape: 'operating-citation@1.3.0';
|
|
209
|
+
description: string;
|
|
210
|
+
} | {
|
|
211
|
+
materialClaimsCited: true;
|
|
212
|
+
materialActionsCited: true;
|
|
213
|
+
citationShape: 'operating-citation@1.4.0';
|
|
214
|
+
};
|
|
215
|
+
permissionPolicy?: {
|
|
216
|
+
authority: 'runtime-session';
|
|
217
|
+
planrGrantsPermissions: false;
|
|
218
|
+
forbiddenEffects: string[];
|
|
219
|
+
};
|
|
220
|
+
mandateDigest: `sha256:${string}`;
|
|
183
221
|
}
|
|
184
222
|
/**
|
|
185
|
-
*
|
|
186
|
-
*
|
|
187
|
-
*
|
|
188
|
-
*
|
|
189
|
-
*
|
|
223
|
+
* Build the Protocol v1.3 operating mandate for a role (FR1). The mandate's
|
|
224
|
+
* boundaries are declared directly from the caller's granted workspace roots —
|
|
225
|
+
* never an evidence-index-derived subset — so a gitignored `.planr/` tree is
|
|
226
|
+
* fully readable when the caller declares it. The registry supplies the lens
|
|
227
|
+
* question, investigation mandate, and sensitivity ceiling; this function only
|
|
228
|
+
* threads the declared boundaries through.
|
|
190
229
|
*/
|
|
191
|
-
export
|
|
230
|
+
export declare function buildOperatingMandate(input: {
|
|
192
231
|
roleId: OperatingRoleId;
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
}
|
|
198
|
-
/**
|
|
199
|
-
* The result of building one mission packet: the digest-bound packet plus, when
|
|
200
|
-
* the pipeline truncated the evidence index to fit `maxEvidenceItems`, the
|
|
201
|
-
* provenance record describing what was dropped.
|
|
202
|
-
*/
|
|
203
|
-
export interface OperatingMissionPacketResult {
|
|
204
|
-
packet: OperatingMissionPacket;
|
|
205
|
-
truncation?: OperatingMissionEvidenceTruncation;
|
|
206
|
-
}
|
|
207
|
-
/**
|
|
208
|
-
* Human-readable one-line warning for a surfaced index truncation, suitable for
|
|
209
|
-
* a cycle's evidence-warnings channel.
|
|
210
|
-
*/
|
|
211
|
-
export declare function describeOperatingMissionTruncation(truncation: OperatingMissionEvidenceTruncation): string;
|
|
232
|
+
roots: readonly string[];
|
|
233
|
+
forbiddenPaths?: readonly string[];
|
|
234
|
+
runtime?: string;
|
|
235
|
+
protocolVersion?: '1.3.0' | '1.4.0';
|
|
236
|
+
}): Promise<OperatingMandate>;
|
|
212
237
|
/**
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
*
|
|
216
|
-
*
|
|
217
|
-
*
|
|
218
|
-
*
|
|
219
|
-
*
|
|
220
|
-
*
|
|
221
|
-
*
|
|
238
|
+
* FR1/FR2: derive a mandate's declared read roots directly from the project
|
|
239
|
+
* working tree — every top-level directory the agent may traverse — for the
|
|
240
|
+
* inline dispatch path. `.planr/` is ALWAYS declared, whether or not it exists
|
|
241
|
+
* yet and REGARDLESS of git tracking, because the mission tool surface walks the
|
|
242
|
+
* filesystem directly rather than a tracked-file inventory, so a gitignored `.planr/` tree
|
|
243
|
+
* is fully readable (finding 2's tracked-file gap cannot reproduce here).
|
|
244
|
+
* `.git`/`node_modules` are never declared, and every root is filtered to the
|
|
245
|
+
* mandate's schema pattern. Mirrors the native adapter path's derivation so both
|
|
246
|
+
* dispatch paths declare identical boundaries.
|
|
222
247
|
*/
|
|
223
|
-
export declare function
|
|
248
|
+
export declare function deriveOperatingMandateRoots(projectRoot: string): Promise<string[]>;
|
|
224
249
|
export interface AdvisorAdapter {
|
|
225
250
|
id: string;
|
|
226
251
|
mode: 'structured' | 'native-isolated';
|
|
@@ -232,27 +257,22 @@ export interface AdvisorAdapter {
|
|
|
232
257
|
* deterministic. Results are restored to registry order before reduction.
|
|
233
258
|
*/
|
|
234
259
|
parallelDispatch?: boolean;
|
|
260
|
+
/**
|
|
261
|
+
* FR1/FR2: a lens is dispatched with a body-free operating MANDATE (the lens
|
|
262
|
+
* question, declared read boundaries, and the citation requirement) and the
|
|
263
|
+
* cycle's pinned revision — never a curated evidence body. It investigates with
|
|
264
|
+
* the host's own read tools and returns the mandate-versioned citation-bearing response; the
|
|
265
|
+
* CLI resolves and snapshots every citation fail-closed after it returns.
|
|
266
|
+
*/
|
|
235
267
|
invoke(input: {
|
|
236
268
|
roleId: OperatingRoleId;
|
|
237
269
|
roleBrief: OperatingAdvisorBrief;
|
|
238
|
-
|
|
270
|
+
mandate: OperatingMandate;
|
|
271
|
+
pinnedRevision: string;
|
|
239
272
|
context: AdvisorRoleContext;
|
|
240
273
|
inputDigest: `sha256:${string}`;
|
|
241
|
-
}): Promise<
|
|
274
|
+
}): Promise<unknown>;
|
|
242
275
|
}
|
|
243
|
-
export declare function operatingAdvisorMessages(input: {
|
|
244
|
-
roleBrief: OperatingAdvisorBrief;
|
|
245
|
-
evidence: Array<{
|
|
246
|
-
id: string;
|
|
247
|
-
source: string;
|
|
248
|
-
location: string;
|
|
249
|
-
freshness: string;
|
|
250
|
-
claimTypes: string[];
|
|
251
|
-
summary?: string;
|
|
252
|
-
}>;
|
|
253
|
-
context: AdvisorRoleContext;
|
|
254
|
-
inputDigest: `sha256:${string}`;
|
|
255
|
-
}): AIMessage[];
|
|
256
276
|
export interface AdvisorDispatchResult {
|
|
257
277
|
results: OperatingRoleResult[];
|
|
258
278
|
provenance: Array<{
|
|
@@ -261,11 +281,9 @@ export interface AdvisorDispatchResult {
|
|
|
261
281
|
adapterId: string;
|
|
262
282
|
capability: 'analysis-standard' | 'analysis-high';
|
|
263
283
|
dispatch: 'parallel' | 'sequential';
|
|
264
|
-
/**
|
|
265
|
-
dispatchMode: OperatingDispatchMode;
|
|
266
|
-
/** Effective isolation after the FR2/FR4 reconciliation (E-002/E-004). */
|
|
284
|
+
/** Effective isolation classification (FR10): enforced-read-only-bounded or unsupported. */
|
|
267
285
|
isolation: OperatingDispatchIsolation;
|
|
268
|
-
/** Audit note explaining the
|
|
286
|
+
/** Audit note explaining the classification (e.g. why a runtime is unsupported for operate). */
|
|
269
287
|
reconciliation: string;
|
|
270
288
|
}>;
|
|
271
289
|
skipped: Array<{
|
|
@@ -277,66 +295,89 @@ export interface AdvisorDispatchResult {
|
|
|
277
295
|
roleId: OperatingRoleId;
|
|
278
296
|
message: string;
|
|
279
297
|
}>;
|
|
298
|
+
/**
|
|
299
|
+
* Governed gaps opened while resolving the dispatched roles' citations
|
|
300
|
+
* (unresolvable-citation and empty-grounding gaps). The engine records them
|
|
301
|
+
* alongside the cycle's other gaps; empty on a fully-resolved dispatch.
|
|
302
|
+
*/
|
|
303
|
+
gaps: OperatingDataGap[];
|
|
280
304
|
blocked: boolean;
|
|
281
305
|
modelCalls: number;
|
|
282
306
|
}
|
|
283
307
|
/**
|
|
284
|
-
*
|
|
285
|
-
*
|
|
286
|
-
*
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
*
|
|
295
|
-
*
|
|
296
|
-
* against exactly the same invariants a pack response is — reusing the pipeline's
|
|
297
|
-
* registry-derived brief as the single source of truth.
|
|
308
|
+
* The mandate's response contract is `operating-advisor-response@1.3.0`, whose
|
|
309
|
+
* output facet mirrors the v1.2 brief's contract (allowed proposal types,
|
|
310
|
+
* maxima), so a v1.3 response is validated against exactly the same invariants a
|
|
311
|
+
* pack response is — reusing the pipeline's registry-derived brief as the single
|
|
312
|
+
* source of truth.
|
|
313
|
+
*
|
|
314
|
+
* FR2: when the response's citations resolve to ZERO evidence IDs across every
|
|
315
|
+
* proposal, the role commits `not_evaluated` — a schema-legal `quiet` result
|
|
316
|
+
* (the frozen v1.2 role-result schema admits no `not_evaluated` outcome; the
|
|
317
|
+
* not_evaluated state lives in the governed gap + the integrity surface) — and
|
|
318
|
+
* the governed empty-grounding gap the citation gate opened is returned, with
|
|
319
|
+
* `notEvaluated: true`, rather than a `quiet` that pretends the lens evaluated.
|
|
298
320
|
*/
|
|
299
321
|
export declare function createNativeMissionOperatingRoleResult(input: {
|
|
300
|
-
|
|
322
|
+
mandate: OperatingMandate;
|
|
323
|
+
cycleId: string;
|
|
301
324
|
response: unknown;
|
|
302
325
|
runtime: string;
|
|
326
|
+
pinnedRevision?: string;
|
|
303
327
|
/**
|
|
304
|
-
* Injected citation resolver so the
|
|
328
|
+
* Injected citation resolver so the mandate response's citations flow into the
|
|
305
329
|
* engine's already-live `gateRecordedProposalCitations` WITHOUT advisors.ts
|
|
306
330
|
* importing engine.ts (which would create an import cycle). Given the
|
|
307
331
|
* intermediate citation-bearing role result, it returns the gated result
|
|
308
|
-
* (minted `evidenceRefs` merged in, unresolvable-citation proposals dropped)
|
|
309
|
-
*
|
|
332
|
+
* (minted `evidenceRefs` merged in, unresolvable-citation proposals dropped),
|
|
333
|
+
* the opened gaps, and the ids of roles whose citations resolved to zero
|
|
334
|
+
* evidence (recorded not_evaluated).
|
|
310
335
|
*/
|
|
311
336
|
resolveCitations: (roleResults: OperatingRoleResult[]) => Promise<{
|
|
312
337
|
roleResults: OperatingRoleResult[];
|
|
313
338
|
gaps: OperatingDataGap[];
|
|
339
|
+
notEvaluatedRoleIds: string[];
|
|
314
340
|
}>;
|
|
315
341
|
}): Promise<{
|
|
316
342
|
result: OperatingRoleResult;
|
|
317
343
|
gaps: OperatingDataGap[];
|
|
344
|
+
notEvaluated: boolean;
|
|
318
345
|
}>;
|
|
319
346
|
export declare function assertAdvisorIsolation(adapter: AdvisorAdapter): void;
|
|
320
|
-
export declare function createOfflineAdvisorAdapter(fixture?: Partial<Record<OperatingRoleId,
|
|
347
|
+
export declare function createOfflineAdvisorAdapter(fixture?: Partial<Record<OperatingRoleId, unknown>>): AdvisorAdapter;
|
|
321
348
|
export declare function createConfiguredStructuredAdapter(projectRoot: string, options?: {
|
|
322
349
|
quiet?: boolean;
|
|
323
350
|
}): Promise<AdvisorAdapter>;
|
|
324
351
|
export declare function dispatchOperatingAdvisors(input: {
|
|
325
352
|
cycleId: string;
|
|
326
|
-
|
|
353
|
+
/** Working tree the mandate's declared read boundaries are derived from. */
|
|
354
|
+
projectRoot: string;
|
|
355
|
+
/** The cycle's frozen control-repository revision; passed to each lens so it cites resolvable content. */
|
|
356
|
+
pinnedRevision: string;
|
|
327
357
|
readiness: OperatingEvidenceReadiness;
|
|
328
358
|
context: AdvisorOperatingContext;
|
|
329
359
|
adapter: AdvisorAdapter;
|
|
330
360
|
depth: 'standard' | 'deep' | 'review-only';
|
|
331
361
|
runtime?: string;
|
|
332
362
|
/**
|
|
333
|
-
*
|
|
334
|
-
*
|
|
335
|
-
*
|
|
336
|
-
* v1.2 pack path with `{ <roleId>: 'pack' }` without waiting for a registry
|
|
337
|
-
* release. When omitted, every role follows the derived registry default.
|
|
363
|
+
* Fresh agent-native harnesses request the Protocol v1.4 narrative response.
|
|
364
|
+
* Legacy direct/offline cycles retain v1.3 so already-prepared adapters and
|
|
365
|
+
* resumable cycles remain readable during the compatibility window.
|
|
338
366
|
*/
|
|
339
|
-
|
|
367
|
+
protocolVersion?: '1.3.0' | '1.4.0';
|
|
368
|
+
/**
|
|
369
|
+
* The engine's fail-closed citation gate, injected so advisors.ts never imports
|
|
370
|
+
* engine.ts (which would create a cycle). Every dispatched role's mandate
|
|
371
|
+
* response flows through it: it resolves each cited locator against the cycle's
|
|
372
|
+
* pinned revision, snapshots the cited bytes, mints the evidenceRefs, drops
|
|
373
|
+
* unresolvable-citation proposals, and records a role that grounds zero evidence
|
|
374
|
+
* as not_evaluated. This is the single, universal FR2 gate on this path.
|
|
375
|
+
*/
|
|
376
|
+
resolveCitations: (roleResults: OperatingRoleResult[]) => Promise<{
|
|
377
|
+
roleResults: OperatingRoleResult[];
|
|
378
|
+
gaps: OperatingDataGap[];
|
|
379
|
+
notEvaluatedRoleIds: string[];
|
|
380
|
+
}>;
|
|
340
381
|
}): Promise<AdvisorDispatchResult>;
|
|
341
382
|
/**
|
|
342
383
|
* Standard-cycle advisor failures are governed data gaps, not ephemeral
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advisors.d.ts","sourceRoot":"","sources":["../../../src/services/operate/advisors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"advisors.d.ts","sourceRoot":"","sources":["../../../src/services/operate/advisors.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAK7D,OAAO,EAIL,KAAK,0BAA0B,EAIhC,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAIL,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,0BAA0B,EAC/B,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACpB,MAAM,YAAY,CAAC;AAsBpB,QAAA,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOd,CAAC;AACZ,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAwD3E,QAAA,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAOrB,CAAC;AACZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,KAAK,CAAC;QACZ,EAAE,EAAE,MAAM,CAAC;QACX,SAAS,EAAE,MAAM,CAAC;QAClB,eAAe,EAAE,UAAU,GAAG,UAAU,GAAG,YAAY,GAAG,iBAAiB,GAAG,SAAS,CAAC;QACxF,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KAC3C,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,CAAC;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,OAAO,CAAC;QAChC,SAAS,EACL,YAAY,GACZ,MAAM,GACN,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,YAAY,GACZ,QAAQ,CAAC;QACb,OAAO,EAAE,WAAW,GAAG,MAAM,GAAG,OAAO,CAAC;QACxC,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KAC3C,CAAC,CAAC;IACH,IAAI,EAAE,KAAK,CAAC;QACV,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,aAAa,CAAC,EAAE,OAAO,CAAC;KACzB,CAAC,CAAC;IACH,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;CACzE;AA6DD,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,qBAAqB,GAAG;IAC5E,cAAc,EAAE,kCAAkC,CAAC;IACnD,OAAO,EAAE,OAAO,CAAC;CAClB,CAQA;AAED,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,qBAAqB,EAC5B,MAAM,EAAE,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,WAAW,CAAC,GACzD,IAAI,CAwCN;AAED,MAAM,WAAW,8BAA8B;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,YAAY,GAAG,iBAAiB,CAAC;IACvC,aAAa,EAAE,UAAU,GAAG,gBAAgB,CAAC;IAC7C,QAAQ,EAAE,yBAAyB,CAAC,UAAU,CAAC,CAAC;IAChD,oBAAoB,EAAE,yBAAyB,CAAC,sBAAsB,CAAC,CAAC;IACxE,SAAS,EAAE,yBAAyB,CAAC,WAAW,CAAC,CAAC;IAClD,WAAW,EAAE,OAAO,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IAC5C,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe,EAAE,yBAAyB,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,CAAC;IACzE,mBAAmB,EAAE,UAAU,MAAM,EAAE,CAAC;CACzC;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,uBAAuB;IACtC,cAAc,EAAE,UAAU,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,gBAAgB,CAAC;IAC1B,UAAU,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,IAAI,EAAE,MAAM,CAAC;QACb,eAAe,EAAE,MAAM,CAAC;KACzB,GAAG,IAAI,CAAC;IACT,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,eAAe,EAAE,eAAe,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,UAAU,MAAM,EAAE,CAAC;IACnC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACnC,UAAU,EAAE,uBAAuB,CAAC,YAAY,CAAC,CAAC;IAClD,aAAa,EAAE,eAAe,EAAE,CAAC;IACjC,QAAQ,EAAE,eAAe,EAAE,CAAC;IAC5B,eAAe,EAAE,eAAe,EAAE,CAAC;CACpC;AA8HD,gFAAgF;AAChF,wBAAsB,4BAA4B,CAAC,KAAK,EAAE;IACxD,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,cAAc,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAuCnC;AAqCD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC;IACnC,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB,EAAE;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,mBAAmB,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,EAAE,CAAC;QAChB,kBAAkB,EAAE,oBAAoB,CAAC;QACzC,cAAc,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IACF,cAAc,CAAC,EAAE;QACf,OAAO,EAAE,MAAM,CAAC;QAChB,cAAc,EAAE,UAAU,CAAC;QAC3B,oBAAoB,EAAE,KAAK,CAAC;QAC5B,aAAa,EAAE,cAAc,GAAG,mBAAmB,CAAC;QACpD,SAAS,EAAE,kBAAkB,CAAC;QAC9B,aAAa,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,oBAAoB,CAAC;KACxE,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,kCAAkC,GAAG,kCAAkC,CAAC;IACxF,mBAAmB,EACf;QACE,eAAe,EAAE,IAAI,CAAC;QACtB,aAAa,EAAE,0BAA0B,CAAC;QAC1C,WAAW,EAAE,MAAM,CAAC;KACrB,GACD;QACE,mBAAmB,EAAE,IAAI,CAAC;QAC1B,oBAAoB,EAAE,IAAI,CAAC;QAC3B,aAAa,EAAE,0BAA0B,CAAC;KAC3C,CAAC;IACN,gBAAgB,CAAC,EAAE;QACjB,SAAS,EAAE,iBAAiB,CAAC;QAC7B,sBAAsB,EAAE,KAAK,CAAC;QAC9B,gBAAgB,EAAE,MAAM,EAAE,CAAC;KAC5B,CAAC;IACF,aAAa,EAAE,UAAU,MAAM,EAAE,CAAC;CACnC;AAuCD;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IACjD,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,cAAc,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAQ5B;AAMD;;;;;;;;;;GAUG;AACH,wBAAsB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CASxF;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,GAAG,iBAAiB,CAAC;IACvC,aAAa,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,GAAG,gBAAgB,CAAC;IACnE,UAAU,EAAE,mBAAmB,GAAG,eAAe,CAAC;IAClD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;;OAMG;IACH,MAAM,CAAC,KAAK,EAAE;QACZ,MAAM,EAAE,eAAe,CAAC;QACxB,SAAS,EAAE,qBAAqB,CAAC;QACjC,OAAO,EAAE,gBAAgB,CAAC;QAC1B,cAAc,EAAE,MAAM,CAAC;QACvB,OAAO,EAAE,kBAAkB,CAAC;QAC5B,WAAW,EAAE,UAAU,MAAM,EAAE,CAAC;KACjC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,UAAU,EAAE,KAAK,CAAC;QAChB,MAAM,EAAE,eAAe,CAAC;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,SAAS,EAAE,MAAM,CAAC;QAClB,UAAU,EAAE,mBAAmB,GAAG,eAAe,CAAC;QAClD,QAAQ,EAAE,UAAU,GAAG,YAAY,CAAC;QACpC,4FAA4F;QAC5F,SAAS,EAAE,0BAA0B,CAAC;QACtC,gGAAgG;QAChG,cAAc,EAAE,MAAM,CAAC;KACxB,CAAC,CAAC;IACH,OAAO,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,eAAe,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC3E,MAAM,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,eAAe,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5D;;;;OAIG;IACH,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAqDD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,sCAAsC,CAAC,KAAK,EAAE;IAClE,OAAO,EAAE,gBAAgB,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,gBAAgB,EAAE,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,OAAO,CAAC;QAChE,WAAW,EAAE,mBAAmB,EAAE,CAAC;QACnC,IAAI,EAAE,gBAAgB,EAAE,CAAC;QACzB,mBAAmB,EAAE,MAAM,EAAE,CAAC;KAC/B,CAAC,CAAC;CACJ,GAAG,OAAO,CAAC;IACV,MAAM,EAAE,mBAAmB,CAAC;IAC5B,IAAI,EAAE,gBAAgB,EAAE,CAAC;IACzB,YAAY,EAAE,OAAO,CAAC;CACvB,CAAC,CAoJD;AAUD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAgBpE;AAED,wBAAgB,2BAA2B,CACzC,OAAO,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,GAClD,cAAc,CAqBhB;AA8DD,wBAAsB,iCAAiC,CACrD,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAChC,OAAO,CAAC,cAAc,CAAC,CAoCzB;AAED,wBAAsB,yBAAyB,CAAC,KAAK,EAAE;IACrD,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,WAAW,EAAE,MAAM,CAAC;IACpB,0GAA0G;IAC1G,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,0BAA0B,CAAC;IACtC,OAAO,EAAE,uBAAuB,CAAC;IACjC,OAAO,EAAE,cAAc,CAAC;IACxB,KAAK,EAAE,UAAU,GAAG,MAAM,GAAG,aAAa,CAAC;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACpC;;;;;;;OAOG;IACH,gBAAgB,EAAE,CAAC,WAAW,EAAE,mBAAmB,EAAE,KAAK,OAAO,CAAC;QAChE,WAAW,EAAE,mBAAmB,EAAE,CAAC;QACnC,IAAI,EAAE,gBAAgB,EAAE,CAAC;QACzB,mBAAmB,EAAE,MAAM,EAAE,CAAC;KAC/B,CAAC,CAAC;CACJ,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAoOjC;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACxC,SAAS,EAAE,0BAA0B,CAAC;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAyB9B;AAED,wBAAsB,mBAAmB,CACvC,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,yBAAyB,GAAG,IAAI,CAAC,CAY3C;AAuCD;;;;GAIG;AACH,wBAAsB,8BAA8B,CAAC,KAAK,EAAE;IAC1D,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,8BAA8B,CAAC;IACzC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC;IAAE,QAAQ,EAAE,yBAAyB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAqCrE;AAgCD,wBAAgB,+BAA+B,CAAC,KAAK,EAAE;IACrD,MAAM,EAAE,eAAe,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,8BAA8B,CA4DjC"}
|