@aacombarro89/praxis 0.1.9 → 0.1.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/emit.d.ts +10 -7
- package/dist/emit.js +30 -60
- package/dist/emit.js.map +1 -1
- package/dist/packages.d.ts +20 -2
- package/dist/packages.js +54 -5
- package/dist/packages.js.map +1 -1
- package/dist/permissions.d.ts +17 -2
- package/dist/permissions.js +5 -14
- package/dist/permissions.js.map +1 -1
- package/dist/plugins.d.ts +2 -2
- package/dist/plugins.js +6 -15
- package/dist/plugins.js.map +1 -1
- package/dist/program.d.ts +5 -0
- package/dist/program.js +143 -77
- package/dist/program.js.map +1 -1
- package/dist/sync.js +1 -1
- package/dist/sync.js.map +1 -1
- package/package.json +1 -1
- package/packages/layer1/capture-codebase-patterns/commands/capture-codebase-patterns.md +68 -0
- package/packages/layer1/capture-codebase-patterns/package.yaml +14 -0
- package/packages/layer2/node-recipes/rules.md +18 -19
- package/packages/layer2/node-testing/rules.md +21 -26
- package/packages/layer2/python-backend-recipes/rules.md +18 -22
- package/packages/layer2/python-testing/rules.md +20 -26
- package/packages/layer2/react-components/rules.md +31 -26
- package/packages/layer2/react-testing/rules.md +19 -28
package/dist/program.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readFileSync } from "node:fs";
|
|
2
2
|
import { dirname, join } from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { cancel,
|
|
4
|
+
import { cancel, intro, isCancel, multiselect, note, outro, select } from "@clack/prompts";
|
|
5
5
|
import { Command } from "commander";
|
|
6
6
|
import { checkAnchors } from "./anchors.js";
|
|
7
7
|
import { computeMethodologySize } from "./emit.js";
|
|
@@ -21,6 +21,17 @@ const STATUS_SYMBOL = {
|
|
|
21
21
|
unchanged: " ",
|
|
22
22
|
deleted: "-",
|
|
23
23
|
};
|
|
24
|
+
const BACK = "__praxis_back__";
|
|
25
|
+
/** The interactive install wizard is reversible until its final apply action. */
|
|
26
|
+
export function previousWizardStep(step, mode) {
|
|
27
|
+
if (step === "stacks")
|
|
28
|
+
return "mode";
|
|
29
|
+
if (step === "packages")
|
|
30
|
+
return "stacks";
|
|
31
|
+
if (step === "targets")
|
|
32
|
+
return mode === "quick" ? "mode" : "packages";
|
|
33
|
+
return "targets";
|
|
34
|
+
}
|
|
24
35
|
function formatPlan(report, mode) {
|
|
25
36
|
return report.files
|
|
26
37
|
.map((f) => {
|
|
@@ -104,7 +115,7 @@ export function reconcile(cwd, write, mode) {
|
|
|
104
115
|
// let this computation throw or mask the sync error already reported.
|
|
105
116
|
try {
|
|
106
117
|
const manifest = loadManifest(join(cwd, "praxis.yaml"));
|
|
107
|
-
methodologySize = computeMethodologySize(manifest);
|
|
118
|
+
methodologySize = computeMethodologySize(manifest, cwd);
|
|
108
119
|
sharedInstructionReport = checkSharedInstructions(cwd, manifest);
|
|
109
120
|
if (!sharedInstructionReport.ok)
|
|
110
121
|
exitCode = 1;
|
|
@@ -183,95 +194,150 @@ async function runInit(opts) {
|
|
|
183
194
|
].filter(Boolean);
|
|
184
195
|
note(detected.length ? detected.join(" · ") : "fresh repo", "Detected");
|
|
185
196
|
let manifest;
|
|
197
|
+
let previewConfirmed = false;
|
|
186
198
|
if (opts.yes) {
|
|
187
199
|
// Non-interactive: Quick start, no prompts
|
|
188
200
|
manifest = defaultManifest(ctx, explicitTargets?.length ? explicitTargets : undefined);
|
|
189
201
|
}
|
|
190
202
|
else {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
203
|
+
let mode = "quick";
|
|
204
|
+
let step = "mode";
|
|
205
|
+
let chosenStacks = ctx.detectedStacks;
|
|
206
|
+
let chosenPkgs;
|
|
207
|
+
let chosenTargets = explicitTargets?.length ? explicitTargets :
|
|
208
|
+
ctx.detectedTargets.length > 0 ? ctx.detectedTargets : ["claude-code", "agents-md"];
|
|
209
|
+
while (step !== "preview" || !previewConfirmed) {
|
|
210
|
+
if (step === "preview") {
|
|
211
|
+
if (manifest === undefined) {
|
|
212
|
+
throw new Error("Install wizard reached preview without a manifest.");
|
|
213
|
+
}
|
|
214
|
+
const manifestYaml = renderManifestYaml(manifest);
|
|
215
|
+
const report = applyManifest(manifest, cwd, false);
|
|
216
|
+
note(manifestYaml.trimEnd(), "praxis.yaml (proposed)");
|
|
217
|
+
const freshHarness = needsSetupSentinel(ctx, manifest);
|
|
218
|
+
const willWritePlan = formatPlan(report, "init");
|
|
219
|
+
const sentinelLine = freshHarness ? "\n + .praxis-setup-pending (onboarding sentinel)" : "";
|
|
220
|
+
note(willWritePlan + sentinelLine, "Will write");
|
|
221
|
+
const next = await select({
|
|
222
|
+
message: "What would you like to do?",
|
|
223
|
+
options: [
|
|
224
|
+
{ value: "apply", label: "Apply these changes" },
|
|
225
|
+
{ value: "back", label: "← Back to targets" },
|
|
226
|
+
{ value: "cancel", label: "Cancel" },
|
|
227
|
+
],
|
|
228
|
+
});
|
|
229
|
+
if (isCancel(next) || next === "cancel") {
|
|
230
|
+
cancel("No changes made.");
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
if (next === "back") {
|
|
234
|
+
step = previousWizardStep("preview", mode);
|
|
235
|
+
}
|
|
236
|
+
else {
|
|
237
|
+
previewConfirmed = true;
|
|
238
|
+
}
|
|
217
239
|
}
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
240
|
+
else if (step === "mode") {
|
|
241
|
+
const selectedMode = await select({
|
|
242
|
+
message: "How do you want to install?",
|
|
243
|
+
options: [
|
|
244
|
+
{ value: "quick", label: "Quick start", hint: "all Layer 1 + detected stack Layer 2" },
|
|
245
|
+
{ value: "customize", label: "Customize", hint: "pick stacks, packages, and targets" },
|
|
246
|
+
],
|
|
247
|
+
});
|
|
248
|
+
if (isCancel(selectedMode)) {
|
|
249
|
+
cancel("No changes made.");
|
|
250
|
+
return;
|
|
251
|
+
}
|
|
252
|
+
mode = selectedMode;
|
|
253
|
+
step = mode === "quick" ? "targets" : "stacks";
|
|
254
|
+
}
|
|
255
|
+
else if (step === "stacks") {
|
|
256
|
+
const selectedStacks = await multiselect({
|
|
257
|
+
message: "Which stacks does this repo use?",
|
|
258
|
+
options: [...STACKS.map((s) => ({ value: s, label: s })), { value: BACK, label: "← Back" }],
|
|
259
|
+
initialValues: chosenStacks,
|
|
260
|
+
required: false,
|
|
261
|
+
});
|
|
262
|
+
if (isCancel(selectedStacks)) {
|
|
263
|
+
cancel("No changes made.");
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
if (selectedStacks.includes(BACK)) {
|
|
267
|
+
step = previousWizardStep("stacks", mode);
|
|
226
268
|
}
|
|
227
|
-
else
|
|
228
|
-
|
|
269
|
+
else {
|
|
270
|
+
chosenStacks = STACKS.filter((stack) => selectedStacks.includes(stack));
|
|
271
|
+
step = "packages";
|
|
229
272
|
}
|
|
230
273
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
274
|
+
else if (step === "packages") {
|
|
275
|
+
const stackSet = new Set(chosenStacks);
|
|
276
|
+
const pkgOptions = [];
|
|
277
|
+
for (const [name, pkg] of availablePackages()) {
|
|
278
|
+
if (pkg.layer === "layer1" || pkg.layer === "external") {
|
|
279
|
+
pkgOptions.push({ value: name, label: name, hint: pkg.layer });
|
|
280
|
+
}
|
|
281
|
+
else if (pkg.layer === "layer2" && pkg.stack && stackSet.has(pkg.stack)) {
|
|
282
|
+
pkgOptions.push({ value: name, label: name, hint: `layer2 / ${pkg.stack}` });
|
|
283
|
+
}
|
|
284
|
+
}
|
|
285
|
+
pkgOptions.sort((a, b) => a.value.localeCompare(b.value));
|
|
286
|
+
const recommended = new Set(defaultManifest({ ...ctx, detectedStacks: chosenStacks }).packages);
|
|
287
|
+
const selectedPkgs = await multiselect({
|
|
288
|
+
message: "Which packages?",
|
|
289
|
+
options: [...pkgOptions, { value: BACK, label: "← Back" }],
|
|
290
|
+
initialValues: chosenPkgs ?? pkgOptions.map((o) => o.value).filter((name) => recommended.has(name)),
|
|
291
|
+
required: true,
|
|
292
|
+
});
|
|
293
|
+
if (isCancel(selectedPkgs)) {
|
|
294
|
+
cancel("No changes made.");
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
if (selectedPkgs.includes(BACK)) {
|
|
298
|
+
step = previousWizardStep("packages", mode);
|
|
299
|
+
}
|
|
300
|
+
else {
|
|
301
|
+
chosenPkgs = selectedPkgs;
|
|
302
|
+
step = "targets";
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
else {
|
|
306
|
+
const selectedTargets = await multiselect({
|
|
307
|
+
message: "Which targets should Praxis support?",
|
|
308
|
+
options: [...TARGETS.map((target) => ({ value: target, label: target })), { value: BACK, label: "← Back" }],
|
|
309
|
+
initialValues: chosenTargets,
|
|
310
|
+
required: true,
|
|
311
|
+
});
|
|
312
|
+
if (isCancel(selectedTargets)) {
|
|
313
|
+
cancel("No changes made.");
|
|
314
|
+
return;
|
|
315
|
+
}
|
|
316
|
+
if (selectedTargets.includes(BACK)) {
|
|
317
|
+
step = previousWizardStep("targets", mode);
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
chosenTargets = TARGETS.filter((target) => selectedTargets.includes(target));
|
|
321
|
+
const baseManifest = mode === "quick"
|
|
322
|
+
? defaultManifest(ctx)
|
|
323
|
+
: manifestFromSelections(chosenStacks, chosenPkgs ?? [], defaultManifest(ctx).targets);
|
|
324
|
+
manifest = { ...baseManifest, targets: chosenTargets };
|
|
325
|
+
step = "preview";
|
|
326
|
+
}
|
|
241
327
|
}
|
|
242
|
-
manifest = manifestFromSelections(chosenStacks, chosenPkgs, defaultManifest(ctx).targets);
|
|
243
328
|
}
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
// dropped; the user still confirms (or changes) the final selection.
|
|
247
|
-
const chosenTargets = await multiselect({
|
|
248
|
-
message: "Which targets should Praxis support?",
|
|
249
|
-
options: TARGETS.map((target) => ({ value: target, label: target })),
|
|
250
|
-
initialValues: explicitTargets?.length ? explicitTargets
|
|
251
|
-
: ctx.detectedTargets.length > 0 ? ctx.detectedTargets
|
|
252
|
-
: ["claude-code", "agents-md"],
|
|
253
|
-
required: true,
|
|
254
|
-
});
|
|
255
|
-
if (isCancel(chosenTargets)) {
|
|
256
|
-
cancel("No changes made.");
|
|
257
|
-
return;
|
|
329
|
+
if (manifest === undefined) {
|
|
330
|
+
throw new Error("Install wizard ended without a manifest.");
|
|
258
331
|
}
|
|
259
|
-
manifest = { ...manifest, targets: chosenTargets };
|
|
260
332
|
}
|
|
261
|
-
// Preview + confirm (interactive) / apply immediately (--yes)
|
|
262
|
-
const manifestYaml = renderManifestYaml(manifest);
|
|
263
|
-
const report = applyManifest(manifest, cwd, false);
|
|
264
|
-
note(manifestYaml.trimEnd(), "praxis.yaml (proposed)");
|
|
265
333
|
const freshHarness = needsSetupSentinel(ctx, manifest);
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
const
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
return;
|
|
274
|
-
}
|
|
334
|
+
if (!previewConfirmed) {
|
|
335
|
+
const manifestYaml = renderManifestYaml(manifest);
|
|
336
|
+
const report = applyManifest(manifest, cwd, false);
|
|
337
|
+
note(manifestYaml.trimEnd(), "praxis.yaml (proposed)");
|
|
338
|
+
const willWritePlan = formatPlan(report, "init");
|
|
339
|
+
const sentinelLine = freshHarness ? "\n + .praxis-setup-pending (onboarding sentinel)" : "";
|
|
340
|
+
note(willWritePlan + sentinelLine, "Will write");
|
|
275
341
|
}
|
|
276
342
|
applyInit(cwd, manifest, ctx);
|
|
277
343
|
const installedWorkflows = [
|
package/dist/program.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAA0B,MAAM,cAAc,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAwB,MAAM,WAAW,CAAC;AACzE,OAAO,EACL,SAAS,EACT,eAAe,EACf,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAA0C,MAAM,eAAe,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAgC,MAAM,0BAA0B,CAAC;AACjG,OAAO,EAAE,aAAa,EAAE,OAAO,EAAoC,MAAM,WAAW,CAAC;AAErF;;;;GAIG;AAEH,MAAM,aAAa,GAAyC;IAC1D,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,GAAG;IACd,OAAO,EAAE,GAAG;CACb,CAAC;AAEF,MAAM,IAAI,GAAG,iBAAiB,CAAC;AAK/B,iFAAiF;AACjF,MAAM,UAAU,kBAAkB,CAAC,IAAiC,EAAE,IAAgB;IACpF,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC;IACrC,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,QAAQ,CAAC;IACzC,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC;IACtE,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,UAAU,CAAC,MAAkB,EAAE,IAA+B;IACrE,OAAO,MAAM,CAAC,KAAK;SAChB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,KAAK,GAAG,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7E,MAAM,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,OAAO,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,QAAQ,EAAE,CAAC;IACrE,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAyB;IACnD,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,wBAAwB,MAAM,CAAC,cAAc,aAAa,MAAM,CAAC,YAAY,4BAA4B,CAAC;IACnH,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW;SACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;QACzE,OAAO,OAAO,CAAC,CAAC,IAAI,GAAG,MAAM,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;IAChD,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IACd,OAAO,gCAAgC,WAAW,EAAE,CAAC;AACvD,CAAC;AAED,SAAS,6BAA6B,CAAC,MAA+B;IACpE,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc;QAAE,OAAO,SAAS,CAAC;IACvD,IAAI,MAAM,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;QAC3C,OAAO,2EAA2E,CAAC;IACrF,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;QACrC,OAAO,sEAAsE,CAAC;IAChF,CAAC;IACD,OAAO,wCAAwC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACxG,CAAC;AAED,6EAA6E;AAE7E,4FAA4F;AAC5F,MAAM,UAAU,aAAa;IAC3B,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QACpF,MAAM,GAAG,GAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAI,GAA6B,CAAC,OAAO,CAAC;QACvD,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAkBD;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CAAC,GAAW,EAAE,KAAc,EAAE,IAAsB;IAC3E,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,IAAI,UAAkC,CAAC;IACvC,IAAI,SAA6B,CAAC;IAClC,IAAI,QAAQ,GAAG,CAAC,CAAC;IAEjB,IAAI,CAAC;QACH,UAAU,GAAG,OAAO,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QACrC,IAAI,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAC/F,QAAQ,GAAG,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,SAAS,GAAI,GAAa,CAAC,OAAO,CAAC;QACnC,QAAQ,GAAG,CAAC,CAAC;IACf,CAAC;IAED,IAAI,YAA2C,CAAC;IAChD,IAAI,eAA4C,CAAC;IACjD,IAAI,uBAA4D,CAAC;IACjE,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;QACrB,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,EAAE;YAAE,QAAQ,GAAG,CAAC,CAAC;QAEnC,4EAA4E;QAC5E,2EAA2E;QAC3E,4EAA4E;QAC5E,sEAAsE;QACtE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;YACxD,eAAe,GAAG,sBAAsB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;YACxD,uBAAuB,GAAG,uBAAuB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YACjE,IAAI,CAAC,uBAAuB,CAAC,EAAE;gBAAE,QAAQ,GAAG,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,0EAA0E;QAC5E,CAAC;IACH,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,QAAQ,EAAE,CAAC;AAC9G,CAAC;AAED,SAAS,YAAY,CAAC,KAAc,EAAE,IAAsB;IAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IAErD,6EAA6E;IAC7E,qDAAqD;IACrD,IAAI,IAAI,KAAK,OAAO;QAAE,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;IAE/D,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,WAAW,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/C,CAAC;SAAM,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC7B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;QACjD,IAAI,MAAM,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CACX,0EAA0E;gBACxE,kFAAkF,CACrF,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QACvD,IAAI,MAAM,CAAC,YAAY,CAAC,EAAE;YAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;;YAC3C,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7B,CAAC;IAED,IAAI,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,6BAA6B,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC7E,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,MAAM,CAAC,uBAAuB,CAAC,EAAE;gBAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;;gBACtD,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,eAAe,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,qBAAqB,UAAU,iBAAiB,SAAS,4BAA4B,CAAC,CAAC;IACrG,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC;QAAE,OAAO,CAAC,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAChE,CAAC;AAED,6EAA6E;AAE7E,KAAK,UAAU,OAAO,CAAC,IAA0C;IAC/D,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAChD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;QAE/B,IAAI,GAAG,CAAC,cAAc,EAAE,CAAC;YACvB,IAAI,CACF,2EAA2E,EAC3E,qBAAqB,CACtB,CAAC;YACF,KAAK,CAAC,gBAAgB,CAAC,CAAC;YACxB,OAAO;QACT,CAAC;QAED,uEAAuE;QACvE,wEAAwE;QACxE,2DAA2D;QAC3D,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAClD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAgB,CAAC,EAAE,CAAC;gBACxC,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,uBAAuB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACzF,CAAC;YACD,OAAO,MAAgB,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG;YACf,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACzB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACpC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;YACpC,GAAG,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAChF,GAAG,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;SAC7E,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAExE,IAAI,QAA8B,CAAC;QACnC,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAE7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,2CAA2C;YAC3C,QAAQ,GAAG,eAAe,CAAC,GAAG,EAAE,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACzF,CAAC;aAAM,CAAC;YACN,IAAI,IAAI,GAAe,OAAO,CAAC;YAC/B,IAAI,IAAI,GAAe,MAAM,CAAC;YAC9B,IAAI,YAAY,GAAG,GAAG,CAAC,cAAc,CAAC;YACtC,IAAI,UAAgC,CAAC;YACrC,IAAI,aAAa,GAAa,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;gBACvE,GAAG,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;YAEtF,OAAO,IAAI,KAAK,SAAS,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC/C,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;oBACvB,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;wBAC3B,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;oBACxE,CAAC;oBACD,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;oBAClD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;oBACnD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,wBAAwB,CAAC,CAAC;oBACvD,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;oBACvD,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;oBACjD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,oDAAoD,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC9F,IAAI,CAAC,aAAa,GAAG,YAAY,EAAE,YAAY,CAAC,CAAC;oBACjD,MAAM,IAAI,GAAG,MAAM,MAAM,CAA8B;wBACrD,OAAO,EAAE,4BAA4B;wBACrC,OAAO,EAAE;4BACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAAE;4BAChD,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,EAAE;4BAC7C,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE;yBACrC;qBACF,CAAC,CAAC;oBACH,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;wBACxC,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAC3B,OAAO;oBACT,CAAC;oBACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;wBACpB,IAAI,GAAG,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBAC7C,CAAC;yBAAM,CAAC;wBACN,gBAAgB,GAAG,IAAI,CAAC;oBAC1B,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC3B,MAAM,YAAY,GAAG,MAAM,MAAM,CAAa;wBAC5C,OAAO,EAAE,6BAA6B;wBACtC,OAAO,EAAE;4BACP,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,sCAAsC,EAAE;4BACtF,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,oCAAoC,EAAE;yBACvF;qBACF,CAAC,CAAC;oBACH,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC3B,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAC3B,OAAO;oBACT,CAAC;oBACD,IAAI,GAAG,YAAY,CAAC;oBACpB,IAAI,GAAG,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;gBACjD,CAAC;qBAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC7B,MAAM,cAAc,GAAG,MAAM,WAAW,CAAS;wBAC/C,OAAO,EAAE,kCAAkC;wBAC3C,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;wBAC3F,aAAa,EAAE,YAAY;wBAC3B,QAAQ,EAAE,KAAK;qBAChB,CAAC,CAAC;oBACH,IAAI,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;wBAC7B,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAC3B,OAAO;oBACT,CAAC;oBACD,IAAI,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClC,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAC5C,CAAC;yBAAM,CAAC;wBACN,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;wBACxE,IAAI,GAAG,UAAU,CAAC;oBACpB,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC/B,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,CAAC;oBACvC,MAAM,UAAU,GAA2D,EAAE,CAAC;oBAC9E,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,iBAAiB,EAAE,EAAE,CAAC;wBAC9C,IAAI,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;4BACvD,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;wBACjE,CAAC;6BAAM,IAAI,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;4BAC1E,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;wBAC/E,CAAC;oBACH,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;oBAC1D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,EAAE,GAAG,GAAG,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;oBAChG,MAAM,YAAY,GAAG,MAAM,WAAW,CAAS;wBAC7C,OAAO,EAAE,iBAAiB;wBAC1B,OAAO,EAAE,CAAC,GAAG,UAAU,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;wBAC1D,aAAa,EAAE,UAAU,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACnG,QAAQ,EAAE,IAAI;qBACf,CAAC,CAAC;oBACH,IAAI,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wBAC3B,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAC3B,OAAO;oBACT,CAAC;oBACD,IAAI,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBAChC,IAAI,GAAG,kBAAkB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;oBAC9C,CAAC;yBAAM,CAAC;wBACN,UAAU,GAAG,YAAY,CAAC;wBAC1B,IAAI,GAAG,SAAS,CAAC;oBACnB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,eAAe,GAAG,MAAM,WAAW,CAAS;wBAChD,OAAO,EAAE,sCAAsC;wBAC/C,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;wBAC3G,aAAa,EAAE,aAAa;wBAC5B,QAAQ,EAAE,IAAI;qBACf,CAAC,CAAC;oBACH,IAAI,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wBAC9B,MAAM,CAAC,kBAAkB,CAAC,CAAC;wBAC3B,OAAO;oBACT,CAAC;oBACD,IAAI,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnC,IAAI,GAAG,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;oBAC7C,CAAC;yBAAM,CAAC;wBACN,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC7E,MAAM,YAAY,GAAG,IAAI,KAAK,OAAO;4BACnC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;4BACtB,CAAC,CAAC,sBAAsB,CAAC,YAAY,EAAE,UAAU,IAAI,EAAE,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;wBACzF,QAAQ,GAAG,EAAE,GAAG,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;wBACvD,IAAI,GAAG,SAAS,CAAC;oBACnB,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACnD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,EAAE,wBAAwB,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YACjD,MAAM,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,oDAAoD,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,IAAI,CAAC,aAAa,GAAG,YAAY,EAAE,YAAY,CAAC,CAAC;QACnD,CAAC;QAED,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAE9B,MAAM,kBAAkB,GAAG;YACzB,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC;gBACtC,CAAC,CAAC,wFAAwF;gBAC1F,CAAC,CAAC,IAAI;YACR,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAChC,CAAC,CAAC,wFAAwF;gBAC1F,CAAC,CAAC,IAAI;SACT,CAAC,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE/D,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CACF;gBACE,sDAAsD;gBACtD,oEAAoE;gBACpE,EAAE;gBACF,mBAAmB;gBACnB,KAAK,kBAAkB,EAAE;gBACzB,EAAE;gBACF,yEAAyE;aAC1E,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,YAAY,CACb,CAAC;YACF,KAAK,CAAC,4EAA4E,CAAC,CAAC;QACtF,CAAC;aAAM,CAAC;YACN,IAAI,CACF;gBACE,uDAAuD;gBACvD,EAAE;gBACF,mBAAmB;gBACnB,KAAK,kBAAkB,EAAE;gBACzB,EAAE;gBACF,sDAAsD;gBACtD,yEAAyE;aAC1E,CAAC,IAAI,CAAC,IAAI,CAAC,EACZ,YAAY,CACb,CAAC;YACF,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,WAAY,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5C,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;IACvB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY;IAC1B,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;IAE9B,OAAO;SACJ,IAAI,CAAC,QAAQ,CAAC;SACd,WAAW,CAAC,2DAA2D,CAAC;SACxE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAE5B,OAAO;SACJ,OAAO,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;SACpC,WAAW,CAAC,kEAAkE,CAAC;SAC/E,MAAM,CAAC,WAAW,EAAE,qDAAqD,CAAC;SAC1E,MAAM,CAAC,mBAAmB,EAAE,0CAA0C,EAAE,CAAC,KAAK,EAAE,QAAkB,EAAE,EAAE,CAAC;QACtG,GAAG,QAAQ;QACX,KAAK;KACN,EAAE,EAAE,CAAC;SACL,MAAM,CAAC,CAAC,IAA0C,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzE,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,WAAW,CAAC,qEAAqE,CAAC;SAClF,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAE5C,OAAO;SACJ,OAAO,CAAC,OAAO,CAAC;SAChB,WAAW,CAAC,uDAAuD,CAAC;SACpE,MAAM,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAE9C,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
package/dist/sync.js
CHANGED
|
@@ -15,7 +15,7 @@ export function runSync(opts) {
|
|
|
15
15
|
* the emit before `praxis.yaml` exists.
|
|
16
16
|
*/
|
|
17
17
|
export function applyManifest(manifest, cwd, write) {
|
|
18
|
-
const ops = planEmit(manifest);
|
|
18
|
+
const ops = planEmit(manifest, cwd);
|
|
19
19
|
const files = [];
|
|
20
20
|
const handledPaths = new Set();
|
|
21
21
|
for (const op of ops) {
|
package/dist/sync.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
description: Capture this team's own coding patterns from an exemplar module into a project-local Praxis package that rides praxis sync.
|
|
3
|
+
argument-hint: [optional-exemplar-path]
|
|
4
|
+
allowed-tools: Read, Glob, Grep, Bash(git log:*), Bash(git diff:*), Bash(ls:*), Bash(mkdir:*), Write, Edit, Bash(npx @aacombarro89/praxis@latest sync:*), Bash(npx @aacombarro89/praxis@latest check:*), Bash(npx @aacombarro89/praxis sync:*), Bash(npx @aacombarro89/praxis check:*), Bash(praxis sync:*), Bash(praxis check:*)
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Exemplar: {{arguments}} — if empty, propose candidates in step 2 rather than
|
|
8
|
+
picking silently.
|
|
9
|
+
|
|
10
|
+
Praxis never calls an LLM (D12) or authors project facts directly (D13). The
|
|
11
|
+
**agent** — you — extracts and authors every pattern below *with the user*;
|
|
12
|
+
Praxis's own CLI only resolves, emits, and syncs the package once it exists.
|
|
13
|
+
|
|
14
|
+
1. **Preflight.** Read `praxis.yaml` (`targets`, `stacks`, `packages`). If a
|
|
15
|
+
`./`-prefixed entry already resolves to a local patterns package (its
|
|
16
|
+
`package.yaml` under `praxis/packages/<name>/`), this is a refinement run:
|
|
17
|
+
read its `rules.md` and offer to update or extend it rather than create a
|
|
18
|
+
new one. State the framing above up front so the user knows what's about to
|
|
19
|
+
happen.
|
|
20
|
+
|
|
21
|
+
2. **Exemplar interview.** Ask the user to point at one to three modules or
|
|
22
|
+
directories that best show how code in this repo *should* look. If they
|
|
23
|
+
can't choose, propose candidates — central, recently and frequently touched
|
|
24
|
+
directories — and confirm before proceeding, never pick silently:
|
|
25
|
+
|
|
26
|
+
- Recently touched: {{shell:git log --oneline -20 2>/dev/null}}
|
|
27
|
+
- Frequently touched: {{shell:git log --pretty=format: --name-only -50 2>/dev/null | sort | uniq -c | sort -rn | head -20}}
|
|
28
|
+
|
|
29
|
+
3. **Extract candidates.** Read the exemplar(s), their immediate neighbors,
|
|
30
|
+
and their tests. Derive candidate patterns across this checklist: module
|
|
31
|
+
structure & naming, import/dependency habits, error handling,
|
|
32
|
+
typing/validation, IO-vs-logic separation, test shape & location,
|
|
33
|
+
comment/doc style. Every candidate cites concrete evidence — the file and
|
|
34
|
+
the shape in it that shows the pattern. Never propose a pattern the code
|
|
35
|
+
does not actually exhibit.
|
|
36
|
+
|
|
37
|
+
4. **Iterate.** Present candidates in small groups; the user accepts, rejects,
|
|
38
|
+
or refines each. When a candidate is a recognized anti-pattern, push back
|
|
39
|
+
once with rationale — what breaks, and when — then let the user decide; if
|
|
40
|
+
they keep it, record it plainly rather than silently dropping the pushback.
|
|
41
|
+
A convention enters the package only if it's verifiable in the exemplar or
|
|
42
|
+
explicitly confirmed by the user.
|
|
43
|
+
|
|
44
|
+
5. **Scaffold the local package.** Default to
|
|
45
|
+
`praxis/packages/codebase-patterns/`; confirm the name with the user
|
|
46
|
+
(kebab-case — the declared `name` must equal the directory basename, same
|
|
47
|
+
rule as a shipped package). Write:
|
|
48
|
+
|
|
49
|
+
- `package.yaml` — `name`, `layer: local`, `provides: [rules]`.
|
|
50
|
+
- `rules.md` — compact imperative bullets, each with a one-line why and an
|
|
51
|
+
exemplar pointer (`path` — what it shows). Aim under ~60 lines; this file
|
|
52
|
+
is always-loaded once installed, so keep it to what earns that cost. Use
|
|
53
|
+
`paths:` frontmatter only if the conventions are scoped to a subtree.
|
|
54
|
+
|
|
55
|
+
6. **Register.** Add `./praxis/packages/codebase-patterns` (or the confirmed
|
|
56
|
+
path) to the `packages:` list in `praxis.yaml`. Editing the manifest and
|
|
57
|
+
syncing is the only customization path — never write emitted files by hand.
|
|
58
|
+
|
|
59
|
+
7. **Sync + verify.** Run `praxis sync` if the CLI is on PATH, otherwise fall
|
|
60
|
+
back to `npx @aacombarro89/praxis@latest sync` (pin `@latest` — a bare
|
|
61
|
+
`npx @aacombarro89/praxis` can silently reuse a stale cached build). Then
|
|
62
|
+
run `praxis check` (or the `npx` equivalent) and fix anything it reports
|
|
63
|
+
before finishing.
|
|
64
|
+
|
|
65
|
+
8. **Report.** Summarize the conventions captured (with their exemplar
|
|
66
|
+
pointers), any candidates the user rejected and why, and note that this
|
|
67
|
+
command is re-runnable anytime to refine or extend the package as the
|
|
68
|
+
codebase evolves.
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
# Package manifest (docs/wiki/packages-and-emit.md, D49). Commands-only: no rules.md,
|
|
2
|
+
# so this package is zero-cost between runs (nothing always-loaded). Ships the
|
|
3
|
+
# /praxis-capture-codebase-patterns command (commands/capture-codebase-patterns.md):
|
|
4
|
+
# the agent interviews the developer, extracts this team's OWN coding patterns from an
|
|
5
|
+
# exemplar module with cited evidence, iterates on candidates, and generates a
|
|
6
|
+
# project-local `codebase-patterns` package (layer: local, D49) that then rides normal
|
|
7
|
+
# `praxis sync`. Praxis never calls an LLM or authors project facts directly (D12/D13) —
|
|
8
|
+
# the agent authors the generated package's content, guided by this command.
|
|
9
|
+
name: capture-codebase-patterns
|
|
10
|
+
layer: layer1
|
|
11
|
+
provides: [commands]
|
|
12
|
+
onboarding:
|
|
13
|
+
command: praxis-capture-codebase-patterns
|
|
14
|
+
summary: "Capture this team's own coding patterns from an exemplar module into a project-local Praxis package that rides praxis sync."
|
|
@@ -12,23 +12,22 @@ Layer 1 rules (think before coding, simplicity first, surgical changes,
|
|
|
12
12
|
goal-driven execution) apply unchanged — this file adds only what is
|
|
13
13
|
Node-specific.
|
|
14
14
|
|
|
15
|
-
- **
|
|
16
|
-
|
|
17
|
-
directory, an adjacent route/command/service). Copy its structure — imports,
|
|
18
|
-
exports, error handling, naming — rather than inventing a new shape. The
|
|
19
|
-
prior art is the template; matching it is verifiable, following prose is not.
|
|
20
|
-
- **One module, one responsibility.** A new `.ts` file exports the smallest
|
|
21
|
-
coherent unit. Keep pure logic separate from I/O (filesystem, network, process)
|
|
22
|
-
so the logic is testable without mocks — mirror how the existing modules here
|
|
23
|
-
already split the two.
|
|
24
|
-
- **Use the platform and installed deps before adding one.** Node stdlib (`node:fs`,
|
|
25
|
-
`node:path`, `node:crypto`, `fetch`) and a dependency already in
|
|
26
|
-
`package.json` cover most needs. A new dependency for what a few lines do is
|
|
27
|
-
debt; justify it against what is already imported in neighbouring files.
|
|
28
|
-
- **Types are the contract.** Type the inputs and outputs at module boundaries;
|
|
29
|
-
validate external/untrusted input where it enters (a schema validator if the
|
|
30
|
-
repo already uses one, e.g. zod). Don't re-validate data already typed and
|
|
31
|
-
checked upstream.
|
|
32
|
-
- **ESM vs CJS, follow the repo.** Match the module system, import extensions
|
|
33
|
-
(`.js` specifiers under `"type": "module"`), and `tsconfig` target already in
|
|
15
|
+
- **ESM vs CJS, follow the repo.** Match the module system, `.js` import
|
|
16
|
+
specifiers under `"type": "module"`, and the `tsconfig` target already in
|
|
34
17
|
use — don't introduce a second convention.
|
|
18
|
+
- **Every promise is handled.** `await` it, `return` it, or explicitly `void`
|
|
19
|
+
it with a comment explaining why. A floating promise swallows its rejection
|
|
20
|
+
and its ordering.
|
|
21
|
+
- **Never silence the type checker.** No `any`, no `as` cast, no non-null `!`
|
|
22
|
+
to make an error disappear. Fix the type; a suppressed error is a runtime
|
|
23
|
+
bug deferred.
|
|
24
|
+
- **Prefer the platform before a dependency.** `node:`-prefixed builtins
|
|
25
|
+
(`node:fs/promises`, `node:path`, `node:crypto`) and global `fetch` cover
|
|
26
|
+
most needs; justify a new dependency against what neighbouring files
|
|
27
|
+
already import.
|
|
28
|
+
- **Throw `Error` subclasses, never strings.** Attach `cause` when
|
|
29
|
+
re-throwing, and handle `error` events on child processes and streams — an
|
|
30
|
+
unhandled one crashes the process.
|
|
31
|
+
- **Validate untrusted input where it enters.** Use the repo's validator
|
|
32
|
+
(e.g. zod) with a non-throwing parse (`safeParse`-style) at the boundary;
|
|
33
|
+
don't re-validate data already typed and checked upstream.
|
|
@@ -4,34 +4,29 @@ paths: ["**/*.ts", "**/*.tsx", "**/*.test.ts", "**/*.spec.ts"]
|
|
|
4
4
|
|
|
5
5
|
## Node/TypeScript test-layer recipe (Layer 2)
|
|
6
6
|
|
|
7
|
-
Choosing *where* a test belongs matters as much as writing it
|
|
8
|
-
|
|
9
|
-
|
|
7
|
+
Choosing *where* a test belongs matters as much as writing it: pick unit,
|
|
8
|
+
integration, or conformance/end-to-end by what could actually break —
|
|
9
|
+
unit for a single module's logic, integration for real seams (filesystem, a
|
|
10
|
+
spawned process, a built artifact), conformance/e2e for rails the whole tool
|
|
11
|
+
must honour. Then mirror the nearest existing test of that same layer for its
|
|
12
|
+
runner, file location, naming, and fixtures rather than inventing a new shape.
|
|
10
13
|
|
|
11
14
|
Layer 1 rules (think before coding, simplicity first, surgical changes,
|
|
12
15
|
goal-driven execution) apply unchanged — this file adds only what is
|
|
13
16
|
Node-testing-specific.
|
|
14
17
|
|
|
15
|
-
- **
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
file location and naming convention, how it builds fixtures and asserts. Don't
|
|
31
|
-
introduce a second runner or a new fixture style.
|
|
32
|
-
- **Assert behaviour, not implementation.** Test observable inputs→outputs and
|
|
33
|
-
error cases at the boundary; avoid asserting private internals that refactors
|
|
34
|
-
will churn. One clear failing assertion beats five brittle ones.
|
|
35
|
-
- **No new framework for one test.** The repo's installed runner and plain
|
|
36
|
-
assertions cover almost everything. Reach for a new testing dependency only
|
|
37
|
-
when the existing one demonstrably cannot express the check.
|
|
18
|
+
- **One runner in `package.json`.** Use whichever of vitest or jest the repo
|
|
19
|
+
already has; don't add a second runner or a new assertion library for what
|
|
20
|
+
plain `expect` calls already cover.
|
|
21
|
+
- **Await the assertion chain.** `await` or `return` a promise-returning
|
|
22
|
+
assertion (e.g. `expect(promise).rejects...`) — a test whose promise
|
|
23
|
+
resolves after the test function returns asserts nothing and passes falsely.
|
|
24
|
+
- **Restore fake timers.** Pair `vi.useFakeTimers()`/`jest.useFakeTimers()`
|
|
25
|
+
with a restore in teardown, and never mix fake timers with a real
|
|
26
|
+
`setTimeout` await inside the same test.
|
|
27
|
+
- **Reset mocks between tests.** No shared mutable module state leaking across
|
|
28
|
+
cases; restore spies/mocks in `afterEach` so test order can't change the
|
|
29
|
+
outcome.
|
|
30
|
+
- **Temp dir for real-filesystem tests.** Use `fs.mkdtemp` (or the repo's tmp
|
|
31
|
+
helper) and clean up in teardown; never write into the repo tree or a fixed
|
|
32
|
+
path on disk.
|