agentera 3.0.0-dev.7 → 3.0.0-dev.9

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 (101) hide show
  1. package/dist/cli/commands/schema.js +1 -1
  2. package/dist/cli/commands/schema.js.map +1 -1
  3. package/dist/cli/commands/upgrade.js +63 -1
  4. package/dist/cli/commands/upgrade.js.map +1 -1
  5. package/dist/cli/commands/upgradeVerify.js +81 -0
  6. package/dist/cli/commands/upgradeVerify.js.map +1 -0
  7. package/dist/cli/dispatch/lifecycle.js +6 -0
  8. package/dist/cli/dispatch/lifecycle.js.map +1 -1
  9. package/dist/cli/help.js +3 -1
  10. package/dist/cli/help.js.map +1 -1
  11. package/dist/setup/doctor/core.js +1 -5
  12. package/dist/setup/doctor/core.js.map +1 -1
  13. package/dist/setup/doctor/opencode.js +16 -28
  14. package/dist/setup/doctor/opencode.js.map +1 -1
  15. package/dist/setup/opencode.js +1 -1
  16. package/dist/setup/opencode.js.map +1 -1
  17. package/dist/setup/opencodeConstants.js +2 -0
  18. package/dist/setup/opencodeConstants.js.map +1 -0
  19. package/dist/state/installRoot.js +15 -6
  20. package/dist/state/installRoot.js.map +1 -1
  21. package/dist/upgrade/appContentRefresh.js +13 -1
  22. package/dist/upgrade/appContentRefresh.js.map +1 -1
  23. package/dist/upgrade/atomicWriter.js +23 -0
  24. package/dist/upgrade/atomicWriter.js.map +1 -0
  25. package/dist/upgrade/coexistenceProbe.js +0 -2
  26. package/dist/upgrade/coexistenceProbe.js.map +1 -1
  27. package/dist/upgrade/compatibility.js +1 -12
  28. package/dist/upgrade/compatibility.js.map +1 -1
  29. package/dist/upgrade/doctor.js +33 -18
  30. package/dist/upgrade/doctor.js.map +1 -1
  31. package/dist/upgrade/doctorClassifier.js +11 -0
  32. package/dist/upgrade/doctorClassifier.js.map +1 -1
  33. package/dist/upgrade/legacyAgentCleanup.js +69 -2
  34. package/dist/upgrade/legacyAgentCleanup.js.map +1 -1
  35. package/dist/upgrade/migrateArtifactsV1ToV2.js +3 -5
  36. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +1 -1
  37. package/dist/upgrade/migrateArtifactsV2ToV3.js +39 -19
  38. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  39. package/dist/upgrade/projectIntegration.js +10 -47
  40. package/dist/upgrade/projectIntegration.js.map +1 -1
  41. package/dist/upgrade/projectIntegrationDecision.js +36 -87
  42. package/dist/upgrade/projectIntegrationDecision.js.map +1 -1
  43. package/dist/upgrade/runtimeMigration.js +132 -93
  44. package/dist/upgrade/runtimeMigration.js.map +1 -1
  45. package/dist/upgrade/upgradeLock.js +54 -0
  46. package/dist/upgrade/upgradeLock.js.map +1 -0
  47. package/dist/upgrade/upgradeOrchestrator.js +10 -48
  48. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  49. package/dist/upgrade/upgradeSnapshot.js +93 -0
  50. package/dist/upgrade/upgradeSnapshot.js.map +1 -0
  51. package/package.json +4 -4
  52. package/dist/capabilities/dokumentera/instructions.js +0 -6
  53. package/dist/capabilities/dokumentera/instructions.js.map +0 -1
  54. package/dist/capabilities/hej/instructions.js +0 -6
  55. package/dist/capabilities/hej/instructions.js.map +0 -1
  56. package/dist/capabilities/inspektera/instructions.js +0 -6
  57. package/dist/capabilities/inspektera/instructions.js.map +0 -1
  58. package/dist/capabilities/inspirera/instructions.js +0 -6
  59. package/dist/capabilities/inspirera/instructions.js.map +0 -1
  60. package/dist/capabilities/optimera/instructions.js +0 -6
  61. package/dist/capabilities/optimera/instructions.js.map +0 -1
  62. package/dist/capabilities/orkestrera/instructions.js +0 -6
  63. package/dist/capabilities/orkestrera/instructions.js.map +0 -1
  64. package/dist/capabilities/planera/instructions.js +0 -6
  65. package/dist/capabilities/planera/instructions.js.map +0 -1
  66. package/dist/capabilities/profilera/instructions.js +0 -6
  67. package/dist/capabilities/profilera/instructions.js.map +0 -1
  68. package/dist/capabilities/realisera/instructions.js +0 -6
  69. package/dist/capabilities/realisera/instructions.js.map +0 -1
  70. package/dist/capabilities/resonera/instructions.js +0 -6
  71. package/dist/capabilities/resonera/instructions.js.map +0 -1
  72. package/dist/capabilities/visionera/instructions.js +0 -6
  73. package/dist/capabilities/visionera/instructions.js.map +0 -1
  74. package/dist/capabilities/visualisera/instructions.js +0 -5
  75. package/dist/capabilities/visualisera/instructions.js.map +0 -1
  76. package/dist/cli/capabilityContext/realisera.js +0 -174
  77. package/dist/cli/capabilityContext/realisera.js.map +0 -1
  78. package/dist/cli/commands/backfill.js +0 -84
  79. package/dist/cli/commands/backfill.js.map +0 -1
  80. package/dist/cli/commands/prime/routeOutput.js +0 -50
  81. package/dist/cli/commands/prime/routeOutput.js.map +0 -1
  82. package/dist/cli/commands/state.js +0 -1023
  83. package/dist/cli/commands/state.js.map +0 -1
  84. package/dist/core/git.js +0 -43
  85. package/dist/core/git.js.map +0 -1
  86. package/dist/hooks/compaction/todoResolved.js +0 -137
  87. package/dist/hooks/compaction/todoResolved.js.map +0 -1
  88. package/dist/hooks/compaction.js +0 -935
  89. package/dist/hooks/compaction.js.map +0 -1
  90. package/dist/hooks/todoLayout.js +0 -177
  91. package/dist/hooks/todoLayout.js.map +0 -1
  92. package/dist/hooks/validateArtifact.js +0 -924
  93. package/dist/hooks/validateArtifact.js.map +0 -1
  94. package/dist/routing/index.js +0 -2
  95. package/dist/routing/index.js.map +0 -1
  96. package/dist/routing/routeEngine.js +0 -189
  97. package/dist/routing/routeEngine.js.map +0 -1
  98. package/dist/state/progressCommit.js +0 -289
  99. package/dist/state/progressCommit.js.map +0 -1
  100. package/dist/upgrade/cliProbe.js +0 -22
  101. package/dist/upgrade/cliProbe.js.map +0 -1
@@ -1,174 +0,0 @@
1
- import { asList } from "../stateQuery.js";
2
- import { capabilityContext } from "./contract.js";
3
- import { sourceProvenance, uniqueList, hasRecordedValue, taskRef } from "./shared.js";
4
- import { closeoutChangelogBoundary, orchestrationTaskSummary, planContextField, buildArtifactUpdateRequirements, buildPlanCompletionSweep, buildScopeBoundary, selectEvidenceTarget, taskByRef, } from "./planState.js";
5
- import { progressVerificationSummary } from "./progress.js";
6
- export function buildExecutionContext(capability, schemas, plan, progress, health, todoItems, docs, profile, bundle) {
7
- if (capability !== "build")
8
- return null;
9
- const capabilityContract = capabilityContext(capability) ?? {};
10
- const tasks = asList(plan.tasks).filter((t) => t && typeof t === "object" && !Array.isArray(t));
11
- const target = selectEvidenceTarget(plan);
12
- const selected = taskByRef(plan, target && typeof target === "object" ? target.task : null);
13
- const acceptance = selected && typeof selected === "object" ? asList(selected.acceptance) : [];
14
- const progressVerification = progressVerificationSummary(progress);
15
- const changelogBoundary = closeoutChangelogBoundary(schemas, plan);
16
- const sweep = buildPlanCompletionSweep(plan);
17
- let mode;
18
- if (plan.complete_plan)
19
- mode = "completed_plan_sweep";
20
- else if (!plan.exists || tasks.length === 0)
21
- mode = "no_plan";
22
- else if (target.status === "selected" && selected !== null)
23
- mode = "plan_driven";
24
- else
25
- mode = "blocked_or_dependency_unready";
26
- let stateCaveats = [];
27
- let fallbackCommands = [];
28
- for (const family of (capabilityContract.missing_state_families ?? [])) {
29
- stateCaveats.push(`${family} state is not included in prime --context startup context.`);
30
- }
31
- fallbackCommands.push(...(capabilityContract.cli_fallback ?? []));
32
- if (!plan.exists) {
33
- stateCaveats.push("plan state is unavailable; execution context cannot select plan-driven work.");
34
- fallbackCommands.push("agentera state plan --format json");
35
- }
36
- if (mode === "blocked_or_dependency_unready") {
37
- stateCaveats.push("No dependency-ready pending plan task is available in CLI plan state.");
38
- fallbackCommands.push("agentera state plan --format json");
39
- }
40
- if (mode === "plan_driven" && acceptance.length === 0) {
41
- stateCaveats.push("Selected Build task has no acceptance criteria in CLI plan state.");
42
- fallbackCommands.push("agentera state plan --format json");
43
- }
44
- if (!progress.exists) {
45
- stateCaveats.push("progress state is unavailable; progress logging context is incomplete.");
46
- fallbackCommands.push("agentera state progress --format json");
47
- }
48
- if (!health.exists) {
49
- stateCaveats.push("health state is unavailable or incomplete.");
50
- fallbackCommands.push("agentera state health --format json");
51
- }
52
- if (!docs.exists) {
53
- stateCaveats.push("docs mapping state is unavailable or incomplete.");
54
- fallbackCommands.push("agentera state docs --format json");
55
- }
56
- if (todoItems.length === 0) {
57
- stateCaveats.push("todo state has no open entries in prime --context response; absence may mean none open or unavailable.");
58
- fallbackCommands.push("agentera state todo --format json");
59
- }
60
- if (changelogBoundary.status !== "available") {
61
- stateCaveats.push(...(changelogBoundary.caveats ?? []));
62
- fallbackCommands.push("agentera state query changelog --format json");
63
- }
64
- if (profile.status !== "loaded") {
65
- stateCaveats.push("profile-derived state is unavailable in prime --context response.");
66
- }
67
- else if (profile.stale === true) {
68
- stateCaveats.push("profile-derived state is stale; this is a caveat, not approval to refresh profile state.");
69
- }
70
- if (bundle.status !== "up_to_date") {
71
- stateCaveats.push("Agentera app files are not up to date; this is a caveat, not approval to repair or update app files.");
72
- }
73
- const scopeBoundary = buildScopeBoundary(plan, selected);
74
- if (scopeBoundary.source_scope.status === "unspecified") {
75
- stateCaveats.push("source-file scope is unspecified; no allowed or prohibited source paths were inferred.");
76
- }
77
- fallbackCommands = uniqueList(fallbackCommands);
78
- stateCaveats = uniqueList(stateCaveats);
79
- const requiredState = {
80
- work_selection: mode === "plan_driven" || mode === "completed_plan_sweep",
81
- acceptance_criteria: mode === "completed_plan_sweep" || acceptance.length > 0,
82
- artifact_update_requirements: Boolean(docs.exists),
83
- progress_logging_requirements: progressVerification.status === "available" || (progressVerification.caveats ?? []).length > 0,
84
- changelog_boundary: changelogBoundary.status === "available",
85
- scope_boundary: true,
86
- safety_boundaries: true,
87
- };
88
- const missingRequired = Object.entries(requiredState).filter(([, present]) => !present).map(([name]) => name);
89
- const caveated = stateCaveats.length > 0;
90
- const complete = (mode === "plan_driven" || mode === "completed_plan_sweep") && missingRequired.length === 0;
91
- return {
92
- capability: "build",
93
- mode,
94
- work_selection: {
95
- status: target.status,
96
- selection_reason: target.selection_reason,
97
- task: selected && typeof selected === "object" ? taskRef(selected) : null,
98
- source_provenance: target.source_provenance,
99
- caveats: target.caveats ?? [],
100
- },
101
- plan_task: selected && typeof selected === "object" ? orchestrationTaskSummary(selected) : null,
102
- acceptance_criteria: {
103
- status: acceptance.length > 0 ? "available" : "incomplete",
104
- items: acceptance,
105
- count: acceptance.length,
106
- source_provenance: sourceProvenance("plan", "agentera plan --format json", "entries.acceptance"),
107
- },
108
- constraints: {
109
- plan_constraints_present: hasRecordedValue(planContextField(plan, "constraints")),
110
- plan_constraints_summary: "Plan constraints are represented here as structured safety and fallback policy; " +
111
- "run the plan CLI fallback only if full wording is needed.",
112
- protected_actions: [
113
- "no profile refresh",
114
- "no installed app refresh",
115
- "no vision edit",
116
- "no objective-state edit",
117
- "no dispatch without explicit cycle execution",
118
- "no commit/push/tag/publication without explicit approval",
119
- ],
120
- unsupported_cli_command_policy: "Do not introduce capability-name or slash-alias CLI commands for Build.",
121
- source_provenance: sourceProvenance("plan", "agentera plan --format json", "summary.constraints"),
122
- },
123
- scope_boundary: scopeBoundary,
124
- verification_expectations: {
125
- latest_progress_verification: progressVerification,
126
- expected_commands: ["focused pytest targets", "Build capability validation", "self-validation", "agentera gate", "compaction check", "git diff --check"],
127
- source_provenance: sourceProvenance("plan", "agentera plan --format json", "entries.acceptance"),
128
- },
129
- artifact_update_requirements: buildArtifactUpdateRequirements(plan, docs),
130
- progress_logging_requirements: {
131
- append_cycle: true,
132
- verified_field_mandatory: true,
133
- latest_progress_verification_pointer: progressVerification.latest_progress_verification_pointer ?? null,
134
- source_provenance: sourceProvenance("progress", "agentera progress --format json"),
135
- },
136
- changelog_boundary: changelogBoundary,
137
- git_boundary: {
138
- remote_push_allowed: false,
139
- commit_allowed_only_with_explicit_user_request: true,
140
- tag_or_publication_allowed: false,
141
- source_provenance: sourceProvenance("execution_context", "agentera prime --context build --format json", "git_boundary"),
142
- },
143
- plan_completion_sweep: sweep,
144
- state_family_caveats: stateCaveats,
145
- fallback_commands: fallbackCommands,
146
- source_contract: {
147
- complete_for_execution_context: complete,
148
- caveated,
149
- raw_artifact_reads_required: false,
150
- raw_artifact_read_policy: "Use this execution_context and included status state first. Run listed routine/query CLI fallback commands " +
151
- "for missing or incomplete execution state; raw artifact reads are last-resort diagnostics, not normal Build startup behavior.",
152
- included_state_families: capabilityContract.included_state_families ?? [],
153
- missing_state_families: capabilityContract.missing_state_families ?? [],
154
- required_execution_state: requiredState,
155
- missing_required_execution_state: missingRequired,
156
- fallback_commands: fallbackCommands,
157
- caveats: stateCaveats,
158
- owns: [
159
- "selected work item",
160
- "task details and acceptance criteria",
161
- "constraints and safety boundaries",
162
- "verification expectations",
163
- "artifact update requirements",
164
- "progress logging requirements",
165
- "changelog boundary",
166
- "scope boundary",
167
- "read-only plan completion sweep metadata",
168
- "truthful completeness metadata",
169
- ],
170
- deferred: [],
171
- },
172
- };
173
- }
174
- //# sourceMappingURL=realisera.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"realisera.js","sourceRoot":"","sources":["../../../src/cli/capabilityContext/realisera.ts"],"names":[],"mappings":"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"}
@@ -1,84 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { resolvePath } from "../../core/paths.js";
4
- import { computeBackfill, rewriteCycleCommits } from "../../state/progressCommit.js";
5
- import { discoverSchemasDir, loadSchemas } from "../appContext.js";
6
- import { emitStructured } from "../structured.js";
7
- function pyStr(value) {
8
- if (value === null || value === undefined)
9
- return "None";
10
- if (value === true)
11
- return "True";
12
- if (value === false)
13
- return "False";
14
- return String(value);
15
- }
16
- export function backfillProgressPath(project) {
17
- const schemas = loadSchemas(discoverSchemasDir());
18
- const info = schemas.progress;
19
- const rel = info && info.path ? String(info.path) : ".agentera/progress.yaml";
20
- return path.isAbsolute(rel) ? rel : path.join(project, rel);
21
- }
22
- function changesToObject(changes) {
23
- const obj = {};
24
- for (const [n, v] of changes)
25
- obj[String(n)] = v;
26
- return obj;
27
- }
28
- function emitBackfill(payload, format, out) {
29
- if (format === "json") {
30
- emitStructured(payload, "json", out);
31
- return;
32
- }
33
- out(`status=${payload.status} | mode=${payload.mode ?? "None"} | path=${payload.path}\n`);
34
- if (payload.message)
35
- out(`${payload.message}\n`);
36
- for (const op of payload.operations ?? []) {
37
- out(`- cycle=${op.cycle} | commit=${pyStr(op.commit)} | state=${op.state} | action=${op.action}\n`);
38
- }
39
- const changes = (payload.changes ?? {});
40
- const keys = Object.keys(changes);
41
- if (keys.length > 0) {
42
- const sorted = keys.sort((a, b) => Number(b) - Number(a));
43
- out("changes=" + sorted.map((n) => `${n}->${changes[n]}`).join(", ") + "\n");
44
- }
45
- }
46
- export function cmdBackfill(args, io = {}) {
47
- const out = io.out ?? ((t) => process.stdout.write(t));
48
- const project = resolvePath(args.project ?? process.cwd());
49
- const mode = args.mode ?? "check";
50
- const p = backfillProgressPath(project);
51
- const payload = {
52
- command: "backfill",
53
- status: "ok",
54
- project,
55
- mode,
56
- path: p,
57
- operations: [],
58
- changes: {},
59
- };
60
- if (!fs.existsSync(p)) {
61
- payload.status = "noop";
62
- payload.message = `progress artifact not found at ${p}`;
63
- emitBackfill(payload, args.format ?? "text", out);
64
- return 0;
65
- }
66
- const text = fs.readFileSync(p, "utf8");
67
- const result = computeBackfill(text, {
68
- mode,
69
- targetCommit: args.commit ?? null,
70
- targetCycle: args.cycle ?? null,
71
- cwd: project,
72
- });
73
- payload.status = result.status;
74
- payload.operations = result.operations;
75
- payload.changes = changesToObject(result.changes);
76
- if (result.message !== null)
77
- payload.message = result.message;
78
- if (result.status === "fixed") {
79
- fs.writeFileSync(p, rewriteCycleCommits(text, new Map(result.changes)), "utf8");
80
- }
81
- emitBackfill(payload, args.format ?? "text", out);
82
- return result.exitCode;
83
- }
84
- //# sourceMappingURL=backfill.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"backfill.js","sourceRoot":"","sources":["../../../src/cli/commands/backfill.ts"],"names":[],"mappings":"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"}
@@ -1,50 +0,0 @@
1
- import path from "node:path";
2
- import { loadCapabilitySchemaContract } from "../../../registries/capabilityContract.js";
3
- import { loadTriggerModel } from "../../../registries/triggerLoader.js";
4
- import { routeInput } from "../../../routing/index.js";
5
- import { resolveSourceRoot } from "../../../core/sourceRoot.js";
6
- /**
7
- * `prime --route` output builder. Invokes the Layer 3-4 routing engine against
8
- * the loaded trigger model and emits the request-derived route payload defined
9
- * in references/cli/trigger-schema-enrichment.md §7.1. Mutually exclusive with
10
- * the orientation dashboard: this payload MUST NOT include `next_action` or any
11
- * state-derived field (spec §7.3).
12
- */
13
- const ROUTE_CONTRACT_REL = "skills/agentera/capability_schema_contract.yaml";
14
- const ROUTE_SPEC = "references/cli/trigger-schema-enrichment.md";
15
- function roundConfidence(n) {
16
- return Math.round(n);
17
- }
18
- /** Build the `prime --route` JSON payload for the given input text. */
19
- export function buildRoutePayload(input, options = {}) {
20
- const sourceRoot = options.sourceRoot ?? resolveSourceRoot();
21
- const contractPath = path.join(sourceRoot, ROUTE_CONTRACT_REL);
22
- const contract = loadCapabilitySchemaContract(contractPath);
23
- const model = loadTriggerModel(contract, { sourceRoot });
24
- const result = routeInput(input, model);
25
- const candidates = result.candidates.map((c) => {
26
- const rounded = {
27
- capability: c.capability,
28
- confidence: roundConfidence(c.confidence),
29
- };
30
- if (c.hint !== undefined)
31
- rounded.hint = c.hint;
32
- return rounded;
33
- });
34
- return {
35
- command: "prime --route",
36
- status: "ok",
37
- route: {
38
- capability: result.capability,
39
- confidence: roundConfidence(result.confidence),
40
- fallback: result.fallback,
41
- candidates,
42
- },
43
- input,
44
- source_contract: {
45
- engine: "layer-3-4",
46
- spec: ROUTE_SPEC,
47
- },
48
- };
49
- }
50
- //# sourceMappingURL=routeOutput.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routeOutput.js","sourceRoot":"","sources":["../../../../src/cli/commands/prime/routeOutput.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,4BAA4B,EAAE,MAAM,2CAA2C,CAAC;AACzF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE;;;;;;GAMG;AAEH,MAAM,kBAAkB,GAAG,iDAAiD,CAAC;AAC7E,MAAM,UAAU,GAAG,6CAA6C,CAAC;AAEjE,SAAS,eAAe,CAAC,CAAS;IAChC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACvB,CAAC;AA0BD,uEAAuE;AACvE,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,UAAmC,EAAE;IACpF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB,EAAE,CAAC;IAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,4BAA4B,CAAC,YAAY,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,gBAAgB,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IAExC,MAAM,UAAU,GAA4B,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACtE,MAAM,OAAO,GAA0B;YACrC,UAAU,EAAE,CAAC,CAAC,UAAU;YACxB,UAAU,EAAE,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC;SAC1C,CAAC;QACF,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;YAAE,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QAChD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,OAAO,EAAE,eAAe;QACxB,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE;YACL,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,UAAU,EAAE,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC;YAC9C,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,UAAU;SACX;QACD,KAAK;QACL,eAAe,EAAE;YACf,MAAM,EAAE,WAAW;YACnB,IAAI,EAAE,UAAU;SACjB;KACF,CAAC;AACJ,CAAC"}