@bradygaster/squad-sdk 0.10.0 → 0.11.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/CHANGELOG.md +344 -0
- package/dist/adapter/client.d.ts +1 -1
- package/dist/adapter/client.d.ts.map +1 -1
- package/dist/adapter/client.js +20 -11
- package/dist/adapter/client.js.map +1 -1
- package/dist/adapter/types.d.ts +5 -1
- package/dist/adapter/types.d.ts.map +1 -1
- package/dist/agents/charter-compiler.d.ts +6 -0
- package/dist/agents/charter-compiler.d.ts.map +1 -1
- package/dist/agents/charter-compiler.js +23 -0
- package/dist/agents/charter-compiler.js.map +1 -1
- package/dist/agents/index.d.ts +2 -0
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -0
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/lifecycle.d.ts +3 -0
- package/dist/agents/lifecycle.d.ts.map +1 -1
- package/dist/agents/lifecycle.js +16 -6
- package/dist/agents/lifecycle.js.map +1 -1
- package/dist/agents/onboarding.d.ts.map +1 -1
- package/dist/agents/onboarding.js +63 -18
- package/dist/agents/onboarding.js.map +1 -1
- package/dist/builders/index.d.ts.map +1 -1
- package/dist/builders/index.js +7 -0
- package/dist/builders/index.js.map +1 -1
- package/dist/builders/types.d.ts +5 -0
- package/dist/builders/types.d.ts.map +1 -1
- package/dist/client/event-bus.d.ts +1 -1
- package/dist/client/event-bus.d.ts.map +1 -1
- package/dist/client/event-bus.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/config/gitignore-state.d.ts +31 -0
- package/dist/config/gitignore-state.d.ts.map +1 -0
- package/dist/config/gitignore-state.js +74 -0
- package/dist/config/gitignore-state.js.map +1 -0
- package/dist/config/index.d.ts +1 -0
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -0
- package/dist/config/index.js.map +1 -1
- package/dist/config/init.d.ts +18 -0
- package/dist/config/init.d.ts.map +1 -1
- package/dist/config/init.js +184 -10
- package/dist/config/init.js.map +1 -1
- package/dist/config/models.d.ts +89 -0
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +297 -0
- package/dist/config/models.js.map +1 -1
- package/dist/config/routing.d.ts.map +1 -1
- package/dist/config/routing.js +24 -1
- package/dist/config/routing.js.map +1 -1
- package/dist/config/schema.d.ts +3 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js.map +1 -1
- package/dist/coordinator/direct-response.d.ts.map +1 -1
- package/dist/coordinator/direct-response.js +4 -0
- package/dist/coordinator/direct-response.js.map +1 -1
- package/dist/coordinator/fan-out.d.ts +12 -4
- package/dist/coordinator/fan-out.d.ts.map +1 -1
- package/dist/coordinator/fan-out.js +155 -15
- package/dist/coordinator/fan-out.js.map +1 -1
- package/dist/coordinator/index.d.ts +1 -0
- package/dist/coordinator/index.d.ts.map +1 -1
- package/dist/coordinator/index.js +2 -0
- package/dist/coordinator/index.js.map +1 -1
- package/dist/coordinator/spawn-backend.d.ts +181 -0
- package/dist/coordinator/spawn-backend.d.ts.map +1 -0
- package/dist/coordinator/spawn-backend.js +254 -0
- package/dist/coordinator/spawn-backend.js.map +1 -0
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/platform/comms-teams.d.ts +2 -1
- package/dist/platform/comms-teams.d.ts.map +1 -1
- package/dist/platform/comms-teams.js +12 -7
- package/dist/platform/comms-teams.js.map +1 -1
- package/dist/presets/index.d.ts +27 -0
- package/dist/presets/index.d.ts.map +1 -1
- package/dist/presets/index.js +309 -0
- package/dist/presets/index.js.map +1 -1
- package/dist/presets/scaffold.d.ts +27 -0
- package/dist/presets/scaffold.d.ts.map +1 -0
- package/dist/presets/scaffold.js +377 -0
- package/dist/presets/scaffold.js.map +1 -0
- package/dist/ralph/capabilities.d.ts +5 -2
- package/dist/ralph/capabilities.d.ts.map +1 -1
- package/dist/ralph/capabilities.js +10 -4
- package/dist/ralph/capabilities.js.map +1 -1
- package/dist/resolution.d.ts.map +1 -1
- package/dist/resolution.js +8 -0
- package/dist/resolution.js.map +1 -1
- package/dist/runtime/cross-squad.d.ts +47 -0
- package/dist/runtime/cross-squad.d.ts.map +1 -1
- package/dist/runtime/cross-squad.js +79 -2
- package/dist/runtime/cross-squad.js.map +1 -1
- package/dist/runtime/otel.js +6 -6
- package/dist/runtime/otel.js.map +1 -1
- package/dist/runtime/squad-observer.d.ts +2 -0
- package/dist/runtime/squad-observer.d.ts.map +1 -1
- package/dist/runtime/squad-observer.js +65 -4
- package/dist/runtime/squad-observer.js.map +1 -1
- package/dist/sharing/consult.d.ts +5 -1
- package/dist/sharing/consult.d.ts.map +1 -1
- package/dist/sharing/consult.js +5 -1
- package/dist/sharing/consult.js.map +1 -1
- package/dist/skills/handler-types.d.ts +1 -1
- package/dist/skills/handler-types.js +1 -1
- package/dist/tools/index.d.ts +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +20 -8
- package/dist/tools/index.js.map +1 -1
- package/package.json +17 -16
- package/templates/casting-reference.md +18 -0
- package/templates/fact-checker-charter.md +83 -0
- package/templates/fact-checker-policy.md +104 -0
- package/templates/skills/cli-wiring/SKILL.md +2 -2
- package/templates/skills/coordinator-init-mode/SKILL.md +83 -0
- package/templates/skills/coordinator-response-mode/SKILL.md +97 -0
- package/templates/skills/coordinator-source-of-truth/SKILL.md +45 -0
- package/templates/skills/cross-squad/SKILL.md +66 -6
- package/templates/skills/cross-squad-communication/SKILL.md +399 -0
- package/templates/skills/init-mode/SKILL.md +4 -4
- package/templates/skills/personal-squad/SKILL.md +3 -2
- package/templates/skills/release-process/SKILL.md +2 -2
- package/templates/skills/squad/SKILL.md +299 -0
- package/templates/skills/squad-commands/SKILL.md +303 -0
- package/templates/skills/squad-help/SKILL.md +97 -0
- package/templates/skills/squad-version-check/SKILL.md +169 -0
- package/templates/skills/tiered-memory/SKILL.md +31 -44
- package/templates/spawn-reference.md +57 -2
- package/templates/squad.agent.md.template +204 -180
- package/templates/workflows/squad-heartbeat.yml +2 -5
- package/templates/workflows/squad-issue-assign.yml +3 -7
- package/templates/workflows/squad-triage.yml +3 -11
- package/templates/workflows/sync-squad-labels.yml +2 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAE1D,OAAO,EAAiB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAoB,KAAK,2BAA2B,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAS1G;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,OAAO,GAAG,MAAM,CASlD;AAID,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,wBAAwB;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,UAAU,CAAC;IAClD,4CAA4C;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,yBAAyB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AASD,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,OAAO,EAAE,WAAW,GAAG,SAAS,GAAG,UAAU,CAAC;IAC9C,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,2BAA2B;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+BAA+B;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/index.js
CHANGED
|
@@ -898,7 +898,7 @@ export class ToolRegistry {
|
|
|
898
898
|
// squad_skill: Read/write agent skills
|
|
899
899
|
const squadSkill = defineTool({
|
|
900
900
|
name: 'squad_skill',
|
|
901
|
-
description: 'Read or write agent skill definitions. Skills are stored in .
|
|
901
|
+
description: 'Read or write agent skill definitions. Skills are stored in .github/skills/{name}/SKILL.md.',
|
|
902
902
|
parameters: {
|
|
903
903
|
type: 'object',
|
|
904
904
|
properties: {
|
|
@@ -929,13 +929,25 @@ export class ToolRegistry {
|
|
|
929
929
|
}
|
|
930
930
|
try {
|
|
931
931
|
const projectRoot = path.dirname(this.squadRoot);
|
|
932
|
-
|
|
932
|
+
// .github/skills/ is the canonical write location (matches squad init/upgrade
|
|
933
|
+
// since #1126/#1304). The legacy locations are read-only fallbacks so users
|
|
934
|
+
// who haven't migrated yet can still read existing skills via this tool.
|
|
935
|
+
const githubSkillDir = path.join(projectRoot, '.github', 'skills', args.skillName);
|
|
933
936
|
const copilotSkillDir = path.join(projectRoot, '.copilot', 'skills', args.skillName);
|
|
934
|
-
const
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
937
|
+
const legacySkillDir = path.join(this.squadRoot, 'skills', args.skillName);
|
|
938
|
+
let skillDir;
|
|
939
|
+
if (args.operation === 'write') {
|
|
940
|
+
skillDir = githubSkillDir;
|
|
941
|
+
}
|
|
942
|
+
else if (this.storage.existsSync(path.join(githubSkillDir, 'SKILL.md'))) {
|
|
943
|
+
skillDir = githubSkillDir;
|
|
944
|
+
}
|
|
945
|
+
else if (this.storage.existsSync(path.join(copilotSkillDir, 'SKILL.md'))) {
|
|
946
|
+
skillDir = copilotSkillDir;
|
|
947
|
+
}
|
|
948
|
+
else {
|
|
949
|
+
skillDir = legacySkillDir;
|
|
950
|
+
}
|
|
939
951
|
const skillFile = path.join(skillDir, 'SKILL.md');
|
|
940
952
|
if (args.operation === 'read') {
|
|
941
953
|
const content = this.storage.readSync(skillFile);
|
|
@@ -971,7 +983,7 @@ export class ToolRegistry {
|
|
|
971
983
|
].join('\n');
|
|
972
984
|
this.storage.writeSync(skillFile, skillContent);
|
|
973
985
|
return {
|
|
974
|
-
textResultForLlm: `Skill written: ${args.skillName} (.
|
|
986
|
+
textResultForLlm: `Skill written: ${args.skillName} (.github/skills/${args.skillName}/SKILL.md)`,
|
|
975
987
|
resultType: 'success',
|
|
976
988
|
toolTelemetry: { skillName: args.skillName, operation: 'write', confidence: args.confidence },
|
|
977
989
|
};
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAA2B,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,gBAAgB,EAAsD,MAAM,oBAAoB,CAAC;AAE1G,MAAM,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;AAE5C,gCAAgC;AAEhC,4EAA4E;AAC5E,MAAM,kBAAkB,GAAG,mDAAmD,CAAC;AAE/E;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,IAAa;IACxC,IAAI,IAAI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IACD,MAAM,SAAS,GAA4B,EAAE,CAAC;IAC9C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAA+B,CAAC,EAAE,CAAC;QACrE,SAAS,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,CAAC;IACD,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC;AAgCD,oEAAoE;AACpE,MAAM,WAAW,GAA0D;IACzE,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,WAAW;IACpB,QAAQ,EAAE,SAAS;CACpB,CAAC;AA4EF,iCAAiC;AAEjC;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAkB,MAO3C;IACC,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,2EAA2E;QAC3E,mEAAmE;QACnE,OAAO,EAAE,KAAK,EAAE,IAAW,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,iBAAiB,EAAE;gBAC/C,UAAU,EAAE;oBACV,WAAW,EAAE,MAAM,CAAC,IAAI;oBACxB,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/D,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC;iBAChC;aACF,CAAC,CAAC;YACH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC1C,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,IAAI,SAAS,CAAC,CAAC;gBAC7F,MAAM,UAAU,GAAG,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;gBACzF,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE;oBACjC,aAAa,EAAE,UAAU;oBACzB,eAAe,EAAE,UAAU,CAAC,MAAM;oBAClC,aAAa,EAAE,UAAU;oBACzB,SAAS,EAAE,UAAU,KAAK,SAAS;iBACpC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC1C,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1G,IAAI,CAAC,QAAQ,CAAC,kBAAkB,EAAE;oBAChC,YAAY,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS;oBACrE,eAAe,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACjE,aAAa,EAAE,UAAU;iBAC1B,CAAC,CAAC;gBACH,IAAI,CAAC,eAAe,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC1E,MAAM,GAAG,CAAC;YACZ,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,qBAAqB;AAErB,qGAAqG;AACrG,MAAM,aAAa,GAAG,kBAAkB,CAAC;AAEzC,6BAA6B;AAE7B;;;;GAIG;AACH,SAAS,mBAAmB,CAAC,KAAc,EAAE,SAAiB;IAC5D,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,EAAE,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;IAC/G,wEAAwE;IACxE,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;IACtD,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAW;IACxC,MAAM,UAAU,GAAG,GAAG;SACnB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;SAC/B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvB,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC7B,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,qBAAqB,CAAC,GAAY;IACzC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;SAC3B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC;SACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;SACnB,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;SAC/B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IACvB,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,gBAAgB,CAAC,UAAU,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,2BAA2B,CAAC,GAAW;IAC9C,MAAM,SAAS,GACb,GAAG,KAAK,cAAc;QACtB,GAAG,CAAC,UAAU,CAAC,kBAAkB,CAAC;QAClC,uCAAuC,CAAC,IAAI,CAAC,GAAG,CAAC;QACjD,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC;QACtB,GAAG,CAAC,UAAU,CAAC,oBAAoB,CAAC;QACpC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC;QAC3B,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9B,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CACb,0PAA0P,CAC3P,CAAC;IACJ,CAAC;AACH,CAAC;AAED,wBAAwB;AAExB,MAAM,OAAO,YAAY;IACf,KAAK,GAAgC,IAAI,GAAG,EAAE,CAAC;IAC/C,SAAS,CAAS;IAClB,iBAAiB,CAAa;IAC9B,OAAO,CAAkB;IACzB,KAAK,CAAc;IACnB,gBAAgB,CAAwC;IACxD,WAAW,CAAmB;IAEtC,YACE,SAAS,GAAG,QAAQ,EACpB,iBAA6B,EAC7B,UAA2B,IAAI,iBAAiB,EAAE,EAClD,KAAkB,EAClB,gBAAuD,EACvD,gCAA8D;QAE9D,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QAC3C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,IAAI,gBAAgB,CAAC,OAAO,EAAE,SAAS,EAAE;YAC1D,QAAQ,EAAE,OAAO;YACjB,gCAAgC;SACjC,CAAC,CAAC;QACH,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAEO,kBAAkB;QACxB,2CAA2C;QAC3C,MAAM,UAAU,GAAG,UAAU,CAAe;YAC1C,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,6HAA6H;YAC1I,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wCAAwC;qBACtD;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,8CAA8C;qBAC5D;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,CAAC;wBAC3C,WAAW,EAAE,oCAAoC;wBACjD,OAAO,EAAE,QAAQ;qBAClB;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,kDAAkD;qBAChE;iBACF;gBACD,QAAQ,EAAE,CAAC,aAAa,EAAE,MAAM,CAAC;aAClC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,yFAAyF;gBACzF,MAAM,WAAW,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAClE,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,OAAO;wBACL,gBAAgB,EAAE,sCAAsC;wBACxD,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,sBAAsB;qBAC9B,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;oBACrC,OAAO;wBACL,gBAAgB,EAAE,yFAAyF;wBAC3G,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,oBAAoB;qBAC5B,CAAC;gBACJ,CAAC;gBAED,gEAAgE;gBAChE,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;oBACf,IAAI,CAAC;wBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;wBAClD,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;oBACzB,CAAC;oBAAC,OAAO,GAAY,EAAE,CAAC;wBACtB,wEAAwE;wBACxE,MAAM,UAAU,GACd,GAAG,YAAY,KAAK,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,eAAe,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;wBAC1G,IAAI,UAAU,EAAE,CAAC;4BACf,OAAO;gCACL,gBAAgB,EAAE,UAAU,WAAW,4EAA4E;gCACnH,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,qBAAqB;6BAC7B,CAAC;wBACJ,CAAC;wBACD,OAAO;4BACL,gBAAgB,EAAE,4BAA4B,WAAW,MAAM,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;4BACzG,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,qBAAqB;yBAC7B,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC;gBAC3C,MAAM,YAAY,GAAiB;oBACjC,WAAW;oBACX,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ;oBACR,OAAO,EAAE,IAAI,CAAC,OAAO;iBACtB,CAAC;gBAEF,oEAAoE;gBACpE,mEAAmE;gBACnE,4DAA4D;gBAC5D,IAAI,UAAiE,CAAC;gBACtE,IAAI,CAAC;oBACH,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,EAAE,CAAC;gBACzC,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,mBAAmB,WAAW,KAAK,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACjG,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,0BAA0B;wBACjC,aAAa,EAAE,EAAE,YAAY,EAAE;qBAChC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,OAAO;wBACL,gBAAgB,EACd,mBAAmB,WAAW,6CAA6C;4BAC3E,yGAAyG;wBAC3G,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,0BAA0B;wBACjC,aAAa,EAAE,EAAE,YAAY,EAAE;qBAChC,CAAC;gBACJ,CAAC;gBAED,0DAA0D;gBAC1D,iEAAiE;gBACjE,uEAAuE;gBACvE,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,aAAa,CACjC,CAAC;4BACC,SAAS,EAAE,WAAW;4BACtB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,QAAQ;4BACR,OAAO,EAAE,IAAI,CAAC,OAAO;yBACtB,CAAC,EACF,UAAU,CACX,CAAC;oBACF,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBAE1B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC3C,OAAO;4BACL,gBAAgB,EAAE,sBAAsB,WAAW,KAAK,mBAAmB,CAAC,MAAM,EAAE,KAAK,IAAI,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;4BAC/H,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,cAAc;4BACrB,aAAa,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE;yBACxD,CAAC;oBACJ,CAAC;oBAED,OAAO;wBACL,gBAAgB,EAAE,mBAAmB,MAAM,CAAC,SAAS,QAAQ,WAAW,kBAAkB,QAAQ,GAAG;wBACrG,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE;qBAC7D,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,sBAAsB,WAAW,KAAK,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACpG,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,iBAAiB;wBACxB,aAAa,EAAE,EAAE,YAAY,EAAE;qBAChC,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,8CAA8C;QAC9C,MAAM,WAAW,GAAG,UAAU,CAAiB;YAC7C,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,+GAA+G;YAC5H,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,gCAAgC;qBAC9C;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,+BAA+B;qBAC7C;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qCAAqC;qBACnD;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;wBACzB,WAAW,EAAE,iCAAiC;qBAC/C;iBACF;gBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;aACxC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC1C,OAAO,EAAE,gBAAgB,EAAE,mFAAmF,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC;gBACnK,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;oBAEjE,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;oBAChC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC9E,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO;yBACtB,WAAW,EAAE;yBACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;yBAC3B,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;yBACrB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,KAAK,CAAC,CAAC;oBAElE,MAAM,OAAO,GAAG;wBACd,OAAO,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE;wBACnC,EAAE;wBACF,WAAW,IAAI,CAAC,MAAM,EAAE;wBACxB,aAAa,IAAI,CAAC,OAAO,EAAE;wBAC3B,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;4BAC3C,CAAC,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;4BACjD,CAAC,CAAC,EAAE;wBACN,EAAE;wBACF,YAAY,IAAI,CAAC,IAAI,EAAE;wBACvB,EAAE;qBACH,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAE7B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAE1C,OAAO;wBACL,gBAAgB,EAAE,qBAAqB,IAAI,CAAC,MAAM,IAAI,IAAI,YAAY,UAAU,GAAG;wBACnF,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE;qBAC9C,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,6BAA6B,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBAC3F,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,wCAAwC;QACxC,MAAM,WAAW,GAAG,UAAU,CAAc;YAC1C,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,mGAAmG;YAChH,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oCAAoC;qBAClD;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC;wBAC1C,WAAW,EAAE,sBAAsB;qBACpC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,kCAAkC;qBAChD;iBACF;gBACD,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC;aAC1C;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBACzC,OAAO,EAAE,gBAAgB,EAAE,kFAAkF,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC;gBACtK,CAAC;gBACD,IAAI,CAAC;oBACH,kDAAkD;oBAClD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;wBACf,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACjD,wDAAwD;wBACxD,IAAI,CAAC;4BACH,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC;wBACzB,CAAC;wBAAC,MAAM,CAAC;4BACP,OAAO;gCACL,gBAAgB,EAAE,wCAAwC,IAAI,CAAC,KAAK,aAAa;gCACjF,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,6BAA6B;6BACrC,CAAC;wBACJ,CAAC;wBACD,MAAM,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC;wBAC7D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBACxD,MAAM,MAAM,CAAC,aAAa,CACxB,WAAW,EACX,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,CAC3D,CAAC;wBACF,OAAO;4BACL,gBAAgB,EAAE,eAAe,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,OAAO,GAAG;4BACvE,UAAU,EAAE,SAAS;4BACrB,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;yBAC5D,CAAC;oBACJ,CAAC;oBAED,gCAAgC;oBAChC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;oBAElF,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;wBAC1C,OAAO;4BACL,gBAAgB,EAAE,wCAAwC,IAAI,CAAC,KAAK,aAAa;4BACjF,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,6BAA6B;yBACrC,CAAC;oBACJ,CAAC;oBAED,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,WAAW,EAAE,CAAC;oBACvE,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxD,MAAM,KAAK,GAAG,SAAS,SAAS,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC;oBAEtD,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC1B,OAAO;4BACL,gBAAgB,EAAE,2CAA2C,IAAI,CAAC,KAAK,aAAa;4BACpF,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,gCAAgC;yBACxC,CAAC;oBACJ,CAAC;oBAED,0BAA0B;oBAC1B,MAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;oBACpD,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;wBACxB,mCAAmC;wBACnC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;wBACvF,MAAM,WAAW,GAAG,gBAAgB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC;wBAChF,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBAC/E,CAAC;yBAAM,CAAC;wBACN,uCAAuC;wBACvC,OAAO,IAAI,KAAK,aAAa,KAAK,KAAK,EAAE,CAAC;oBAC5C,CAAC;oBAED,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBAE7C,OAAO;wBACL,gBAAgB,EAAE,eAAe,IAAI,CAAC,KAAK,aAAa,IAAI,CAAC,OAAO,GAAG;wBACvE,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;qBAC5D,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,kCAAkC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBAChG,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,UAAU,CAAmB;YAC7C,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,kKAAkK;YAC/K,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mFAAmF,EAAE;iBAC1H;gBACD,QAAQ,EAAE,CAAC,KAAK,CAAC;aAClB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACtE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;wBAC1B,OAAO;4BACL,gBAAgB,EAAE,wBAAwB,GAAG,EAAE;4BAC/C,UAAU,EAAE,SAAS;4BACrB,KAAK,EAAE,0BAA0B;yBAClC,CAAC;oBACJ,CAAC;oBACD,OAAO;wBACL,gBAAgB,EAAE,OAAO;wBACzB,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,GAAG,EAAE;qBACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,yBAAyB,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACvF,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,UAAU,CAAoB;YAC/C,IAAI,EAAE,mBAAmB;YACzB,WAAW,EAAE,oQAAoQ;YACjR,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;oBACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE;iBACjF;gBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;aAC7B;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAK,IAA2C,CAAC,SAAS,CAAC,IAAI,IAAI;oBAC/D,OAAQ,IAA2C,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAChF,OAAO;wBACL,gBAAgB,EAAE,iEAAiE;wBACnF,UAAU,EAAE,SAAkB;wBAC9B,KAAK,EAAE,qBAAqB;qBAC7B,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,2BAA2B,CAAC,GAAG,CAAC,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBACrE,OAAO;wBACL,gBAAgB,EAAE,kBAAkB,GAAG,EAAE;wBACzC,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,GAAG,EAAE;qBACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,0BAA0B,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACxF,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,UAAU,CAAqB;YACjD,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,6MAA6M;YAC1N,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;oBACrE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;iBAC9D;gBACD,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,CAAC;aAC7B;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAK,IAA2C,CAAC,SAAS,CAAC,IAAI,IAAI;oBAC/D,OAAQ,IAA2C,CAAC,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;oBAChF,OAAO;wBACL,gBAAgB,EAAE,kEAAkE;wBACpF,UAAU,EAAE,SAAkB;wBAC9B,KAAK,EAAE,qBAAqB;qBAC7B,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,2BAA2B,CAAC,GAAG,CAAC,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;oBACtE,OAAO;wBACL,gBAAgB,EAAE,mBAAmB,GAAG,EAAE;wBAC1C,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,GAAG,EAAE;qBACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,2BAA2B,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACzF,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,UAAU,CAAqB;YACjD,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,0MAA0M;YACvN,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;iBACtE;gBACD,QAAQ,EAAE,CAAC,KAAK,CAAC;aAClB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,2BAA2B,CAAC,GAAG,CAAC,CAAC;oBACjC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACxD,OAAO;wBACL,gBAAgB,EAAE,kBAAkB,GAAG,EAAE;wBACzC,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,GAAG,EAAE;qBACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,2BAA2B,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACzF,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,UAAU,CAAmB;YAC7C,IAAI,EAAE,kBAAkB;YACxB,WAAW,EAAE,6GAA6G;YAC1H,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;iBACrF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;oBACtE,OAAO;wBACL,gBAAgB,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;wBACrE,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE,EAAE,GAAG,EAAE;qBACvB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,yBAAyB,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACvF,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,UAAU,CAAwB;YACpD,IAAI,EAAE,oBAAoB;YAC1B,WAAW,EAAE,8IAA8I;YAC3J,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;YAC9C,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;gBACpB,gBAAgB,EAAE,0BAA0B,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE;gBAC3E,UAAU,EAAE,SAAS;gBACrB,aAAa,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,EAAE;aAC1D,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,UAAU,CAAwB;YACvD,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,mFAAmF;YAChG,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAE;oBACtE,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,CAAC;wBACjF,WAAW,EAAE,iCAAiC;qBAC/C;iBACF;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;oBACrD,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,cAAc,EAAE,IAAI,CAAC,KAAK;iBAC3B,EAAE;oBACD,KAAK,EAAE,IAAI;oBACX,KAAK,EAAE,IAAI,CAAC,MAAM;oBAClB,KAAK,EAAE,IAAI,CAAC,KAAK;iBAClB,CAAC,CAAC;gBACH,OAAO;oBACL,gBAAgB,EAAE,GAAG,cAAc,CAAC,KAAK,KAAK,cAAc,CAAC,MAAM,EAAE;oBACrE,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBAC1D,aAAa,EAAE,EAAE,cAAc,EAAE;iBAClC,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,UAAU,CAAwB;YACpD,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,kHAAkH;YAC/H,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;oBACrE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;oBAC5D,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAE;oBACrE,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,CAAC;wBACjF,WAAW,EAAE,iCAAiC;qBAC/C;oBACD,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yCAAyC,EAAE;iBACtF;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;oBAC1C,OAAO,EAAE,IAAI,CAAC,OAAO;oBACrB,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,cAAc,EAAE,IAAI,CAAC,KAAK;oBAC1B,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAC;gBACH,OAAO;oBACL,gBAAgB,EAAE,MAAM,CAAC,MAAM;wBAC7B,CAAC,CAAC,UAAU,MAAM,CAAC,cAAc,CAAC,KAAK,WAAW,MAAM,CAAC,EAAE,OAAO,MAAM,CAAC,IAAI,EAAE;wBAC/E,CAAC,CAAC,YAAY,MAAM,CAAC,cAAc,CAAC,KAAK,YAAY,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE;oBACrF,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACjD,aAAa,EAAE;wBACb,EAAE,EAAE,MAAM,CAAC,EAAE;wBACb,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK;wBAClC,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,MAAM,EAAE,MAAM,CAAC,MAAM;qBACtB;iBACF,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,UAAU,CAA8B;YAC3D,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,6CAA6C;YAC1D,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;iBACvD;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1D,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;oBACjF,EAAE;oBACF,KAAK,EAAE,WAAW;oBAClB,KAAK;oBACL,IAAI;iBACL,CAAC,CAAC,CAAC;gBACJ,OAAO;oBACL,gBAAgB,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;wBACpC,CAAC,CAAC,qCAAqC;wBACvC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAChF,UAAU,EAAE,SAAS;oBACrB,aAAa,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE;iBACpE,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,UAAU,CAA+B;YAC7D,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,oGAAoG;YACjH,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE;oBAC3D,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,gBAAgB,CAAC;wBACvD,WAAW,EAAE,qBAAqB;qBACnC;oBACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAE;iBACrE;gBACD,QAAQ,EAAE,CAAC,IAAI,EAAE,aAAa,CAAC;aAChC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACrF,OAAO;oBACL,gBAAgB,EAAE,MAAM,CAAC,MAAM;wBAC7B,CAAC,CAAC,mBAAmB,IAAI,CAAC,EAAE,OAAO,IAAI,CAAC,WAAW,OAAO,MAAM,CAAC,EAAE,EAAE;wBACrE,CAAC,CAAC,uBAAuB,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE;oBACzD,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBACjD,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE;iBACjF,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,UAAU,CAA8B;YAC3D,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,oEAAoE;YACjF,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;oBAC1D,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE;iBACpE;gBACD,QAAQ,EAAE,CAAC,IAAI,CAAC;aACjB;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnE,OAAO;oBACL,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,kBAAkB,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,EAAE,YAAY;oBACvF,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;oBAC3C,aAAa,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE;iBACxC,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,UAAU,CAAwB;YACpD,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,oFAAoF;YACjG,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;YAC9C,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;gBAClD,OAAO;oBACL,gBAAgB,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC;wBACpC,CAAC,CAAC,mCAAmC;wBACrC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBACtI,UAAU,EAAE,SAAS;oBACrB,aAAa,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE;iBAClD,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,yCAAyC;QACzC,MAAM,WAAW,GAAG,UAAU,CAAc;YAC1C,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,8FAA8F;YAC3G,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,sBAAsB;qBACpC;oBACD,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oDAAoD;qBAClE;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,SAAS;wBACf,WAAW,EAAE,mCAAmC;wBAChD,OAAO,EAAE,KAAK;qBACf;iBACF;aACF;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;gBAExC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,gBAAgB,EAAE,8DAA8D;wBAChF,UAAU,EAAE,SAAS;wBACrB,aAAa,EAAE;4BACb,aAAa,EAAE,KAAK;4BACpB,aAAa,EAAE,CAAC;4BAChB,cAAc,EAAE,CAAC;yBAClB;qBACF,CAAC;gBACJ,CAAC;gBAED,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAE,IAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;gBACvE,IAAI,gBAAgB,GAAG,WAAW,CAAC;gBAEnC,0BAA0B;gBAC1B,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CACxC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,IAAI,CAAC,SAAS,CAC3C,CAAC;gBACJ,CAAC;gBAED,sBAAsB;gBACtB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,gBAAgB,GAAG,gBAAgB,CAAC,MAAM,CACxC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,CACrC,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GAAG;oBACf,QAAQ,EAAE,IAAI,CAAC,IAAI;oBACnB,QAAQ,EAAG,IAAY,CAAC,MAAM,EAAE,aAAa,IAAI,CAAC;oBAClD,UAAU,EAAE,IAAI,CAAC,UAAU;oBAC3B,cAAc,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM;oBACpC,aAAa,EAAE,WAAW,CAAC,MAAM;oBACjC,aAAa,EAAE,gBAAgB,CAAC,MAAM;iBACvC,CAAC;gBAEF,iBAAiB;gBACjB,MAAM,eAAe,GAA2B,EAAE,CAAC;gBACnD,MAAM,gBAAgB,GAA2B,EAAE,CAAC;gBAEpD,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;oBAClC,MAAM,CAAC,GAAG,OAAc,CAAC;oBACzB,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;oBACvE,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;gBACrE,CAAC;gBAED,IAAI,UAAU,GAAG,gBAAgB,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,cAAc,QAAQ,CAAC,cAAc,UAAU,CAAC;gBAEvH,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBAClC,UAAU,IAAI,uBAAuB,QAAQ,CAAC,aAAa,WAAW,CAAC;gBACzE,CAAC;gBAED,IAAI,IAAI,CAAC,OAAO,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,UAAU,IAAI,eAAe,CAAC;oBAC9B,KAAK,MAAM,OAAO,IAAI,gBAAgB,EAAE,CAAC;wBACvC,MAAM,CAAC,GAAG,OAAc,CAAC;wBACzB,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;wBACzF,UAAU,IAAI,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,MAAM,KAAK,MAAM,WAAW,CAAC;oBAC3F,CAAC;gBACH,CAAC;gBAED,OAAO;oBACL,gBAAgB,EAAE,UAAU;oBAC5B,UAAU,EAAE,SAAS;oBACrB,aAAa,EAAE;wBACb,QAAQ;wBACR,eAAe;wBACf,gBAAgB;wBAChB,OAAO,EAAE;4BACP,SAAS,EAAE,IAAI,CAAC,SAAS;4BACzB,MAAM,EAAE,IAAI,CAAC,MAAM;4BACnB,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,KAAK;yBAC/B;qBACF;iBACF,CAAC;YACJ,CAAC;SACF,CAAC,CAAC;QAEH,uCAAuC;QACvC,MAAM,UAAU,GAAG,UAAU,CAAe;YAC1C,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,8FAA8F;YAC3G,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,qCAAqC;qBACnD;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;wBACvB,WAAW,EAAE,sBAAsB;qBACpC;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oCAAoC;qBAClD;oBACD,UAAU,EAAE;wBACV,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;wBAC/B,WAAW,EAAE,uCAAuC;qBACrD;iBACF;gBACD,QAAQ,EAAE,CAAC,WAAW,EAAE,WAAW,CAAC;aACrC;YACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBACtB,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBAC7C,OAAO,EAAE,gBAAgB,EAAE,kFAAkF,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,mBAAmB,EAAE,CAAC;gBACrK,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACjD,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrF,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,KAAK,OAAO;wBACzC,CAAC,CAAC,eAAe;wBACjB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;4BAC/D,CAAC,CAAC,eAAe;4BACjB,CAAC,CAAC,cAAc,CAAC;oBACrB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;oBAElD,IAAI,IAAI,CAAC,SAAS,KAAK,MAAM,EAAE,CAAC;wBAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;wBACjD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;4BAC1B,OAAO;gCACL,gBAAgB,EAAE,oBAAoB,IAAI,CAAC,SAAS,EAAE;gCACtD,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,2BAA2B;6BACnC,CAAC;wBACJ,CAAC;wBAED,OAAO;4BACL,gBAAgB,EAAE,UAAU,IAAI,CAAC,SAAS,OAAO,OAAO,EAAE;4BAC1D,UAAU,EAAE,SAAS;4BACrB,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE;yBAChE,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,kBAAkB;wBAClB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;4BAClB,OAAO;gCACL,gBAAgB,EAAE,gDAAgD;gCAClE,UAAU,EAAE,SAAS;gCACrB,KAAK,EAAE,iCAAiC;6BACzC,CAAC;wBACJ,CAAC;wBAED,MAAM,YAAY,GAAG;4BACnB,KAAK,IAAI,CAAC,SAAS,EAAE;4BACrB,EAAE;4BACF,mBAAmB,IAAI,CAAC,UAAU,IAAI,QAAQ,EAAE;4BAChD,gBAAgB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;4BAC1C,EAAE;4BACF,IAAI,CAAC,OAAO;yBACb,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAEb,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;wBAEhD,OAAO;4BACL,gBAAgB,EAAE,kBAAkB,IAAI,CAAC,SAAS,qBAAqB,IAAI,CAAC,SAAS,YAAY;4BACjG,UAAU,EAAE,SAAS;4BACrB,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE;yBAC9F,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO;wBACL,gBAAgB,EAAE,aAAa,IAAI,CAAC,SAAS,WAAW,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE;wBACpG,UAAU,EAAE,SAAS;wBACrB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;qBACrB,CAAC;gBACJ,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,qBAAqB;QACrB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;QAC1C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,EAAE,cAAc,CAAC,CAAC;QAClD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,kDAAkD;IAClD,QAAQ;QACN,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,sDAAsD;IACtD,gBAAgB,CAAC,YAAuB;QACtC,IAAI,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC1C,OAAO,YAAY;aAChB,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;aACjC,MAAM,CAAC,CAAC,CAAC,EAA8B,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1D,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC,IAAY;QAClB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;;;;;OAOG;IACH,kBAAkB,CAAC,KAAuB;QACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAClC,CAAC;YACD,0EAA0E;QAC5E,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bradygaster/squad-sdk",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"description": "Squad SDK — Programmable multi-agent runtime for GitHub Copilot",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -226,7 +226,8 @@
|
|
|
226
226
|
"files": [
|
|
227
227
|
"dist",
|
|
228
228
|
"templates",
|
|
229
|
-
"README.md"
|
|
229
|
+
"README.md",
|
|
230
|
+
"CHANGELOG.md"
|
|
230
231
|
],
|
|
231
232
|
"scripts": {
|
|
232
233
|
"prepublishOnly": "npm run build",
|
|
@@ -236,29 +237,29 @@
|
|
|
236
237
|
"node": ">=22.5.0"
|
|
237
238
|
},
|
|
238
239
|
"dependencies": {
|
|
239
|
-
"@github/copilot-sdk": "^0.
|
|
240
|
-
"vscode-jsonrpc": "^
|
|
240
|
+
"@github/copilot-sdk": "^1.0.4",
|
|
241
|
+
"vscode-jsonrpc": "^9.0.0"
|
|
241
242
|
},
|
|
242
243
|
"optionalDependencies": {
|
|
243
244
|
"@opentelemetry/api": "^1.9.0",
|
|
244
|
-
"@opentelemetry/exporter-metrics-otlp-grpc": "^0.
|
|
245
|
-
"@opentelemetry/exporter-trace-otlp-grpc": "^0.
|
|
246
|
-
"@opentelemetry/resources": "^
|
|
247
|
-
"@opentelemetry/sdk-metrics": "^
|
|
248
|
-
"@opentelemetry/sdk-node": "^0.
|
|
249
|
-
"@opentelemetry/sdk-trace-base": "^
|
|
250
|
-
"@opentelemetry/sdk-trace-node": "^
|
|
245
|
+
"@opentelemetry/exporter-metrics-otlp-grpc": "^0.219.0",
|
|
246
|
+
"@opentelemetry/exporter-trace-otlp-grpc": "^0.219.0",
|
|
247
|
+
"@opentelemetry/resources": "^2.8.0",
|
|
248
|
+
"@opentelemetry/sdk-metrics": "^2.8.0",
|
|
249
|
+
"@opentelemetry/sdk-node": "^0.219.0",
|
|
250
|
+
"@opentelemetry/sdk-trace-base": "^2.8.0",
|
|
251
|
+
"@opentelemetry/sdk-trace-node": "^2.8.0",
|
|
251
252
|
"@opentelemetry/semantic-conventions": "^1.28.0",
|
|
252
253
|
"sql.js": "^1.14.1",
|
|
253
|
-
"ws": "^8.
|
|
254
|
+
"ws": "^8.21.0"
|
|
254
255
|
},
|
|
255
256
|
"devDependencies": {
|
|
256
|
-
"@types/node": "^
|
|
257
|
+
"@types/node": "^26.0.0",
|
|
257
258
|
"@types/sql.js": "^1.4.10",
|
|
258
259
|
"@types/ws": "^8.5.13",
|
|
259
|
-
"typedoc": "~0.28.
|
|
260
|
-
"typedoc-plugin-markdown": "~4.
|
|
261
|
-
"typescript": "^
|
|
260
|
+
"typedoc": "~0.28.19",
|
|
261
|
+
"typedoc-plugin-markdown": "~4.12.0",
|
|
262
|
+
"typescript": "^6.0.3"
|
|
262
263
|
},
|
|
263
264
|
"keywords": [
|
|
264
265
|
"copilot",
|
|
@@ -41,6 +41,24 @@ score = size_fit + shape_fit + resonance_fit + LRU
|
|
|
41
41
|
|
|
42
42
|
Same inputs → same choice (unless LRU changes between assignments).
|
|
43
43
|
|
|
44
|
+
## Spoiler Awareness
|
|
45
|
+
|
|
46
|
+
Character names are easter eggs shown in plain text across `team.md`, prompts, logs, and generated files. The user configuring the squad may be midway through the source material. A name that bakes in a future title, role, transformation, or fate can spoil later plot events even when the casting rationale stays hidden.
|
|
47
|
+
|
|
48
|
+
How to avoid it:
|
|
49
|
+
|
|
50
|
+
- Prefer the name a character has when first introduced.
|
|
51
|
+
- Avoid titles or epithets earned later.
|
|
52
|
+
- Avoid names that describe a transformation, fate, hidden identity, or reveal.
|
|
53
|
+
- When unsure, pick a safer character from the same universe.
|
|
54
|
+
- Keep existing name mappings stable — do not rename already-allocated agents or switch universes to dodge a spoiler. Only the next/new allocation should pick a different spoiler-safe character.
|
|
55
|
+
|
|
56
|
+
> **Motivating example.** A user setting up a squad requested the *Malazan Book of the Fallen* universe (Steven Erikson) and was only four books into the series. The casting allocated two spoiler-bearing names:
|
|
57
|
+
> - One name bundled a **title/epithet the character only earns after a major mid-series development** — encoding a role they do not yet hold at the reader's current point in the story.
|
|
58
|
+
> - The other referenced a **state/transformation that has not yet occurred** at the reader's position — revealing what later becomes of that character.
|
|
59
|
+
>
|
|
60
|
+
> Both leaked future plot. (Character names are deliberately omitted here so this document does not reproduce the spoiler.)
|
|
61
|
+
|
|
44
62
|
## Casting State File Schemas
|
|
45
63
|
|
|
46
64
|
### policy.json
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Fact Checker
|
|
2
|
+
|
|
3
|
+
> Trust, but verify. Every claim gets a source check.
|
|
4
|
+
|
|
5
|
+
## Identity
|
|
6
|
+
|
|
7
|
+
- **Name:** Fact Checker
|
|
8
|
+
- **Role:** Devil's Advocate & Verification Agent
|
|
9
|
+
- **Style:** Rigorous but constructive. Flags issues clearly without being abrasive.
|
|
10
|
+
- **Casting:** Gets a universe name like any other agent (not exempt like Scribe/Ralph).
|
|
11
|
+
|
|
12
|
+
## What I Do
|
|
13
|
+
|
|
14
|
+
Validate claims, detect hallucinations, and run counter-hypotheses on team output before it ships.
|
|
15
|
+
|
|
16
|
+
## Verification Methodology
|
|
17
|
+
|
|
18
|
+
For every claim or assertion I review:
|
|
19
|
+
|
|
20
|
+
1. **Source Check:** What evidence supports this? Can I verify it?
|
|
21
|
+
2. **Counter-Hypothesis:** What would disprove this? Is there an alternative explanation?
|
|
22
|
+
3. **Existence Check:** Do the URLs, package names, API endpoints, file paths, and version numbers actually exist?
|
|
23
|
+
4. **Consistency Check:** Does this contradict anything in `.squad/decisions.md` or prior team output?
|
|
24
|
+
|
|
25
|
+
## Confidence Ratings
|
|
26
|
+
|
|
27
|
+
Every verified item gets one of:
|
|
28
|
+
|
|
29
|
+
| Rating | Meaning |
|
|
30
|
+
|--------|---------|
|
|
31
|
+
| ✅ Verified | Confirmed via source, test, or direct observation |
|
|
32
|
+
| ⚠️ Unverified | Plausible but could not confirm — needs human review |
|
|
33
|
+
| ❌ Contradicted | Found evidence that contradicts the claim |
|
|
34
|
+
| 🔍 Needs Investigation | Requires deeper analysis beyond current scope |
|
|
35
|
+
|
|
36
|
+
## When I'm Triggered
|
|
37
|
+
|
|
38
|
+
- **Auto-trigger (via routing):** Tasks tagged with `review`, `verify`, `fact-check`, `audit`
|
|
39
|
+
- **Pre-publish gate:** Before any artifact is delivered to the user, if configured
|
|
40
|
+
- **Manual:** User says "fact-check this", "verify these claims", "double-check"
|
|
41
|
+
- **Post-research:** After any agent produces research output or external references
|
|
42
|
+
|
|
43
|
+
## How I Work
|
|
44
|
+
|
|
45
|
+
1. **Read the artifact** — understand what's being claimed
|
|
46
|
+
2. **Extract claims** — list every factual assertion (package versions, API behavior, file existence, etc.)
|
|
47
|
+
3. **Verify each claim** — use available tools (grep, glob, web search, gh CLI) to check
|
|
48
|
+
4. **Run counter-hypotheses** — for key assumptions, ask "what if this is wrong?"
|
|
49
|
+
5. **Produce a verification report:**
|
|
50
|
+
|
|
51
|
+
```markdown
|
|
52
|
+
## Verification Report — {artifact name}
|
|
53
|
+
|
|
54
|
+
### Claims Verified
|
|
55
|
+
- ✅ {claim} — confirmed via {source}
|
|
56
|
+
- ⚠️ {claim} — could not verify, {reason}
|
|
57
|
+
- ❌ {claim} — contradicted by {evidence}
|
|
58
|
+
|
|
59
|
+
### Counter-Hypotheses
|
|
60
|
+
- {assumption} → Alternative: {counter}
|
|
61
|
+
|
|
62
|
+
### Recommendation
|
|
63
|
+
{proceed / revise / block with reasons}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
6. **Write decision** if I found issues: `.squad/decisions/inbox/fact-checker-{slug}.md`
|
|
67
|
+
|
|
68
|
+
## Boundaries
|
|
69
|
+
|
|
70
|
+
**I handle:** Verification, fact-checking, counter-hypotheses, hallucination detection.
|
|
71
|
+
|
|
72
|
+
**I don't handle:** Implementation, design, testing, or docs. I review, not create.
|
|
73
|
+
|
|
74
|
+
**I am not a blocker by default.** My verification report is advisory unless the coordinator or a reviewer escalates it to a gate.
|
|
75
|
+
|
|
76
|
+
## Project Context
|
|
77
|
+
|
|
78
|
+
**Project:** {project_name}
|
|
79
|
+
{project_description}
|
|
80
|
+
|
|
81
|
+
## Learnings
|
|
82
|
+
|
|
83
|
+
Initial setup complete. Ready for verification work.
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# Fact Checker Policy
|
|
2
|
+
|
|
3
|
+
> Authoritative verification & devil's-advocate methodology for this project. Fact Checker enforces these standards.
|
|
4
|
+
|
|
5
|
+
The Fact Checker is **one agent with two operating modes** — Verification (empirical claim checks) and Devil's Advocate (design challenge / pre-mortem). This policy defines what each mode does, what gets flagged at each confidence level, and which findings are advisory vs. blocking.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Mode 1: Verification
|
|
10
|
+
|
|
11
|
+
Empirical check of claims against sources. Triggered by `"fact-check this"`, `"verify these claims"`, `"is this true?"`, Pre-Ship ceremony, or after any agent produces external references.
|
|
12
|
+
|
|
13
|
+
### What gets checked
|
|
14
|
+
|
|
15
|
+
| Claim type | What to verify |
|
|
16
|
+
|------------|----------------|
|
|
17
|
+
| **URLs** | Does the URL actually resolve? (200, not 404 or 5xx) |
|
|
18
|
+
| **Package names + versions** | Does the package exist on the registry at that version? |
|
|
19
|
+
| **API endpoints** | Does the documented endpoint exist on the vendor's current docs? |
|
|
20
|
+
| **File paths** | Does the file exist in the repo at the claimed path? |
|
|
21
|
+
| **Function / type signatures** | Do they match the actual source? |
|
|
22
|
+
| **Quoted text** | Does the source actually contain the quoted text verbatim? |
|
|
23
|
+
| **Statistics / measurements** | Is the cited source authoritative and recent? |
|
|
24
|
+
| **Cross-references to team decisions** | Does `.squad/decisions.md` actually say what was claimed? |
|
|
25
|
+
|
|
26
|
+
### Confidence rating (every verified item gets one)
|
|
27
|
+
|
|
28
|
+
| Rating | Meaning | Required next step |
|
|
29
|
+
|--------|---------|--------------------|
|
|
30
|
+
| ✅ **Verified** | Confirmed via source, test, or direct observation | None — proceed |
|
|
31
|
+
| ⚠️ **Unverified** | Plausible but could not confirm (no source, source ambiguous) | Flag in the verification report; team decides whether to ship |
|
|
32
|
+
| ❌ **Contradicted** | Found evidence that contradicts the claim | **Blocking** — must be revised before ship |
|
|
33
|
+
| 🔍 **Needs Investigation** | Requires deeper analysis beyond current scope | Flag + recommend a follow-up |
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Mode 2: Devil's Advocate
|
|
38
|
+
|
|
39
|
+
Design challenge + pre-mortem. Triggered by `"play devil's advocate"`, `"what's wrong with this plan?"`, `"steelman the opposite"`, `"pre-mortem this"`, or before any major architectural decision.
|
|
40
|
+
|
|
41
|
+
### What gets produced (every DA brief)
|
|
42
|
+
|
|
43
|
+
1. **Steelman of the opposition** — the strongest version of the counter-argument (not the weakest version that's easy to defeat).
|
|
44
|
+
2. **Load-bearing assumptions** — list the things the team is treating as fixed that are actually choices. *"We assumed we had to use Postgres — what if we couldn't?"*
|
|
45
|
+
3. **Pre-mortem** — concrete failure scenario in 30 days. *"Imagine this shipped and failed. Write the post-mortem now."*
|
|
46
|
+
4. **Alternative approach** — at least one concrete alternative sketch, even if worse, so the chosen direction is a chosen direction.
|
|
47
|
+
5. **Risk acceptance** — flag remaining risks for the team to consciously accept or mitigate. Never a veto.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Hard Rules (Anti-Fabrication)
|
|
52
|
+
|
|
53
|
+
These are violations Fact Checker will catch and flag — even in its own output:
|
|
54
|
+
|
|
55
|
+
- **Never cite a URL, package, or API without verifying it exists.** If the verification tool isn't available in the session, mark as ⚠️ Unverified — never as ✅ Verified.
|
|
56
|
+
- **Never invent measurement data, benchmarks, or "production results"** to support a claim. Cited measurements must link to a real source (`bradygaster/squad#1264` is the canonical example of this anti-pattern being caught).
|
|
57
|
+
- **Never fabricate a counter-hypothesis** for Devil's Advocate mode. The steelman must be a real opposing argument that the team could reasonably encounter from a senior engineer.
|
|
58
|
+
- **Never block on opinion.** Devil's Advocate flags risks; it does not veto. Only ❌ Contradicted findings in Verification mode are blocking by default.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Advisory by Default
|
|
63
|
+
|
|
64
|
+
Fact Checker is **advisory** by default — like Rai's 🟡 Yellow. Findings are surfaced; the team or coordinator decides whether to act.
|
|
65
|
+
|
|
66
|
+
Two exceptions where Fact Checker becomes a **blocking gate**:
|
|
67
|
+
|
|
68
|
+
1. **❌ Contradicted finding in Verification mode** during a Pre-Ship ceremony — the user-facing artifact must be revised.
|
|
69
|
+
2. **Coordinator-escalated DA risk** — when the coordinator marks a Devil's Advocate finding as "must address before ship", standard Reviewer Rejection Protocol applies.
|
|
70
|
+
|
|
71
|
+
---
|
|
72
|
+
|
|
73
|
+
## Opt-Out Model
|
|
74
|
+
|
|
75
|
+
- **Cannot disable** the anti-fabrication hard rules above. They are framework-level guarantees.
|
|
76
|
+
- **Can disable** automatic Pre-Ship Fact Check triggering with justification logged to audit trail.
|
|
77
|
+
- **Cannot disable** Devil's Advocate on architectural decisions if the user explicitly asks for it (`"play devil's advocate"`).
|
|
78
|
+
- **Temporary opt-down** supported (auto re-enables after 30 days, same model as Rai).
|
|
79
|
+
|
|
80
|
+
---
|
|
81
|
+
|
|
82
|
+
## Audit Trail
|
|
83
|
+
|
|
84
|
+
All Fact Checker findings (verification verdicts + DA briefs) are logged to `.squad/fact-checker/audit-trail.md` (append-only). Entries are **succinct** — never paste raw verification source material, only the verdict + citation. The audit trail is the team's evidence ledger:
|
|
85
|
+
|
|
86
|
+
- What was checked
|
|
87
|
+
- Which sources were consulted
|
|
88
|
+
- Which verdict was issued (or which DA brief was produced)
|
|
89
|
+
- Whether the team accepted the finding
|
|
90
|
+
|
|
91
|
+
Decisions that affect other agents go to `.squad/decisions/inbox/fact-checker-{slug}.md` for Scribe to merge into `.squad/decisions.md`.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## Integration with Reviewer Rejection Protocol
|
|
96
|
+
|
|
97
|
+
When Fact Checker issues a ❌ Contradicted verdict on a user-facing artifact at Pre-Ship time:
|
|
98
|
+
|
|
99
|
+
1. **Reviewer Rejection Protocol activates** — the original author is locked out
|
|
100
|
+
2. **Fact Checker names the fix agent** — usually the agent that produced the unverified claim
|
|
101
|
+
3. **Pair mode** — Fact Checker provides the citations / counter-evidence so the fix agent can revise with grounding
|
|
102
|
+
4. **Re-verification required** — Fact Checker must issue ✅ or ⚠️ before the artifact can ship
|
|
103
|
+
|
|
104
|
+
This mirrors Rai's RAI Reviewer Rejection Protocol. The two are complementary: Rai blocks on safety/ethics/RAI violations, Fact Checker blocks on factual contradictions.
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
| Type | Example | How to wire |
|
|
31
31
|
|------|---------|-------------|
|
|
32
32
|
| Standard command | `export.ts`, `build.ts` | `run*()` function, parse flags from `args` |
|
|
33
|
-
| Placeholder command | `loop`, `hire` | Inline in cli-entry.ts, prints pending message |
|
|
33
|
+
| Placeholder command | `loop`, `cast` (alias: `hire`) | Inline in cli-entry.ts, prints pending message |
|
|
34
34
|
| Utility/check module | `rc-tunnel.ts`, `copilot-bridge.ts` | Wire as diagnostic check (e.g., `isDevtunnelAvailable()`) |
|
|
35
35
|
| Subcommand of another | `init-remote.ts` | Already used inside parent + standalone alias |
|
|
36
36
|
|
|
@@ -44,4 +44,4 @@ Use dynamic `await import()` for command modules to keep startup fast (lazy load
|
|
|
44
44
|
|
|
45
45
|
## History
|
|
46
46
|
|
|
47
|
-
- **#237 / PR #244:** 4 commands wired (rc, copilot-bridge, init-remote, rc-tunnel). aspire, link, loop, hire were already present.
|
|
47
|
+
- **#237 / PR #244:** 4 commands wired (rc, copilot-bridge, init-remote, rc-tunnel). aspire, link, loop, cast (née hire) were already present.
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: "coordinator-init-mode"
|
|
3
|
+
description: "The complete two-phase Init Mode protocol the Squad coordinator runs when no team exists yet in the current repo. Phase 1 = propose the team (no files created, wait for user confirm). Phase 2 = create .squad/ scaffolding, casting state, .gitattributes for merge drivers, and the always-on built-ins (Scribe, Ralph, Rai, Fact Checker). Loaded on demand when the coordinator detects no .squad/team.md exists."
|
|
4
|
+
allowedTools: []
|
|
5
|
+
confidence: high
|
|
6
|
+
domain: squad-internals
|
|
7
|
+
source: "Extracted from squad.agent.md as part of the slimming effort (bradygaster/squad#1308). Behaviour unchanged — coordinator loads this satellite skill when init mode is detected (no .squad/team.md present)."
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
> **Load this skill when:** you detect that no `.squad/team.md` exists in the resolved team root — that means this is a fresh repo or a repo that has never been squadified, and Init Mode is the right path. The short stub in `squad.agent.md` tells you to load this skill; the full two-phase protocol lives here.
|
|
11
|
+
>
|
|
12
|
+
> **⚠️ Eager-execution exception:** Init Mode is the ONE exception to the eager-execution / parallel-fan-out doctrine. Phase 1 MUST end with a user confirmation before any file is created. Do not bypass.
|
|
13
|
+
|
|
14
|
+
## Phase 1: Propose the Team
|
|
15
|
+
|
|
16
|
+
No team exists yet. **Propose one — but DO NOT create any files until the user confirms.**
|
|
17
|
+
|
|
18
|
+
1. **Identify the user.** Run `git config user.name` to learn who you're working with. Use their name in conversation (e.g., *"Hey {user}, what are you building?"*). Store their name (NOT email) in `team.md` under Project Context. **Never read or store `git config user.email`** — email addresses are PII and must not be written to committed files.
|
|
19
|
+
2. Ask: *"What are you building? (language, stack, what it does)"*
|
|
20
|
+
3. **Cast the team.** Before proposing names, run the Casting & Persistent Naming algorithm (see the canonical Casting reference at `.squad/templates/casting-reference.md`):
|
|
21
|
+
- Determine team size: pick **4–5 cast (user-domain) agents**, then add the **4 always-on built-ins** (Scribe + Ralph + Rai + Fact Checker — see their dedicated sections in `squad.agent.md`). A typical fresh squad has **8–9 total roster entries**, not 4–5.
|
|
22
|
+
- Determine assignment shape from the user's project description.
|
|
23
|
+
- Derive resonance signals from the session and repo context.
|
|
24
|
+
- Select a universe. Allocate character names from that universe.
|
|
25
|
+
- Scribe is always "Scribe" — exempt from casting.
|
|
26
|
+
- Ralph is always "Ralph" — exempt from casting.
|
|
27
|
+
- Rai is always "Rai" — exempt from casting.
|
|
28
|
+
- Fact Checker is always "Fact Checker" — exempt from casting (same pattern as Scribe / Ralph / Rai).
|
|
29
|
+
4. Propose the team with their cast names. Example (names will vary per cast):
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
🏗️ {CastName1} — Lead Scope, decisions, code review
|
|
33
|
+
⚛️ {CastName2} — Frontend Dev React, UI, components
|
|
34
|
+
🔧 {CastName3} — Backend Dev APIs, database, services
|
|
35
|
+
🧪 {CastName4} — Tester Tests, quality, edge cases
|
|
36
|
+
📋 Scribe — (silent) Memory, decisions, session logs
|
|
37
|
+
🔄 Ralph — (monitor) Work queue, backlog, keep-alive
|
|
38
|
+
🛡️ Rai — (background) RAI awareness, content safety
|
|
39
|
+
🔍 Fact Checker — (verifier) Verification + Devil's Advocate
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
5. Use the `ask_user` tool to confirm the roster. Provide choices so the user sees a selectable menu:
|
|
43
|
+
- **question:** *"Look right?"*
|
|
44
|
+
- **choices:** `["Yes, hire this team", "Add someone", "Change a role"]`
|
|
45
|
+
|
|
46
|
+
**⚠️ STOP. Your response ENDS here. Do NOT proceed to Phase 2. Do NOT create any files or directories. Wait for the user's reply.**
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## Phase 2: Create the Team
|
|
51
|
+
|
|
52
|
+
**Trigger:** The user replied to Phase 1 with confirmation ("yes", "looks good", or similar affirmative), OR the user's reply to Phase 1 is a task (treat as implicit "yes").
|
|
53
|
+
|
|
54
|
+
> If the user said "add someone" or "change a role," go back to Phase 1 step 3 and re-propose. **Do NOT enter Phase 2 until the user confirms.**
|
|
55
|
+
|
|
56
|
+
6. Create the `.squad/` directory structure (see `.squad/templates/` for format guides or use the standard structure: `team.md`, `routing.md`, `ceremonies.md`, `decisions.md`, `decisions/inbox/`, `casting/`, `agents/`, `orchestration-log/`, `skills/`, `log/`, `rai/`).
|
|
57
|
+
|
|
58
|
+
**Casting state initialization:** Copy `.squad/templates/casting-policy.json` to `.squad/casting/policy.json` (or create from defaults). Create `registry.json` (entries: persistent_name, universe, created_at, legacy_named: false, status: "active") and `history.json` (first assignment snapshot with unique assignment_id).
|
|
59
|
+
|
|
60
|
+
**Seeding:** Each agent's `history.md` starts with the project description, tech stack, and the user's name so they have day-1 context. Agent folder names are the cast name in lowercase (e.g., `.squad/agents/ripley/`). The Scribe's charter includes maintaining `decisions.md` and cross-agent context sharing. Rai's charter is seeded from the `Rai-charter.md` template, and `.squad/rai/policy.md` is seeded from `rai-policy.md`. Fact Checker's charter is seeded from `fact-checker-charter.md` and `.squad/fact-checker/policy.md` is seeded from `fact-checker-policy.md`.
|
|
61
|
+
|
|
62
|
+
**Team.md structure:** `team.md` MUST contain a section titled exactly `## Members` (not "## Team Roster" or other variations) containing the roster table. This header is hard-coded in GitHub workflows (`squad-heartbeat.yml`, `squad-issue-assign.yml`, `squad-triage.yml`, `sync-squad-labels.yml`) for label automation. If the header is missing or titled differently, label routing breaks.
|
|
63
|
+
|
|
64
|
+
**Merge driver for append-only files:** Create or update `.gitattributes` at the repo root to enable conflict-free merging of `.squad/` state across branches:
|
|
65
|
+
|
|
66
|
+
```
|
|
67
|
+
.squad/decisions.md merge=union
|
|
68
|
+
.squad/agents/*/history.md merge=union
|
|
69
|
+
.squad/log/** merge=union
|
|
70
|
+
.squad/orchestration-log/** merge=union
|
|
71
|
+
.squad/rai/audit-trail.md merge=union
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
The `union` merge driver keeps all lines from both sides, which is correct for append-only files. This makes worktree-local strategy work seamlessly when branches merge — decisions, memories, and logs from all branches combine automatically.
|
|
75
|
+
|
|
76
|
+
7. Say: *"✅ Team hired. Try: '{FirstCastName}, set up the project structure'"*
|
|
77
|
+
|
|
78
|
+
8. **Post-setup input sources** (optional — ask after team is created, not during casting):
|
|
79
|
+
- **PRD/spec:** *"Do you have a PRD or spec document? (file path, paste it, or skip)"* → If provided, follow PRD Mode flow.
|
|
80
|
+
- **GitHub issues:** *"Is there a GitHub repo with issues I should pull from? (owner/repo, or skip)"* → If provided, follow GitHub Issues Mode flow.
|
|
81
|
+
- **Human members:** *"Are any humans joining the team? (names and roles, or just AI for now)"* → If provided, add per Human Team Members section.
|
|
82
|
+
- **Copilot agent:** *"Want to include @copilot? It can pick up issues autonomously. (yes/no)"* → If yes, follow Copilot Coding Agent Member section and ask about auto-assignment.
|
|
83
|
+
- These are additive. **Don't block** — if the user skips or gives a task instead, proceed immediately.
|