@lannguyensi/harness 0.48.0 → 0.50.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 +825 -0
- package/dist/cli/add/index.js +15 -3
- package/dist/cli/add/index.js.map +1 -1
- package/dist/cli/apply/apply.js +19 -3
- package/dist/cli/apply/apply.js.map +1 -1
- package/dist/cli/approve/risk.d.ts +28 -2
- package/dist/cli/approve/risk.js +14 -4
- package/dist/cli/approve/risk.js.map +1 -1
- package/dist/cli/diff/index.js +22 -1
- package/dist/cli/diff/index.js.map +1 -1
- package/dist/cli/doctor/format.js +29 -2
- package/dist/cli/doctor/format.js.map +1 -1
- package/dist/cli/doctor/index.js +62 -3
- package/dist/cli/doctor/index.js.map +1 -1
- package/dist/cli/doctor/types.d.ts +57 -0
- package/dist/cli/explain-policy.d.ts +4 -1
- package/dist/cli/explain-policy.js +12 -2
- package/dist/cli/explain-policy.js.map +1 -1
- package/dist/cli/export.js +12 -1
- package/dist/cli/export.js.map +1 -1
- package/dist/cli/index.js +29 -7
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/templates.d.ts +34 -1
- package/dist/cli/init/templates.js +137 -3
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/list.js +6 -0
- package/dist/cli/list.js.map +1 -1
- package/dist/cli/loader.js +15 -0
- package/dist/cli/loader.js.map +1 -1
- package/dist/cli/pack/hook-codex-pre-tool-use.js +11 -6
- package/dist/cli/pack/hook-codex-pre-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-post-tool-use.d.ts +6 -4
- package/dist/cli/pack/hook-post-tool-use.js.map +1 -1
- package/dist/cli/pack/hook-pre-tool-use.js +23 -22
- package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
- package/dist/cli/policy/intercept.js +59 -9
- package/dist/cli/policy/intercept.js.map +1 -1
- package/dist/cli/remove/index.d.ts +12 -0
- package/dist/cli/remove/index.js +89 -0
- package/dist/cli/remove/index.js.map +1 -1
- package/dist/cli/validate/checks.d.ts +49 -0
- package/dist/cli/validate/checks.js +416 -9
- package/dist/cli/validate/checks.js.map +1 -1
- package/dist/cli/validate/index.js +11 -0
- package/dist/cli/validate/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +2 -2
- package/dist/policy-packs/builtin/understanding-before-execution/index.js +33 -27
- package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js +2 -2
- package/dist/policy-packs/builtin/understanding-before-execution/markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.d.ts +46 -8
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js +71 -12
- package/dist/policy-packs/builtin/understanding-before-execution/persisted-reports.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js +6 -3
- package/dist/policy-packs/builtin/understanding-before-execution/post-tool-use-boundary.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution.js +9 -8
- package/dist/policy-packs/builtin/understanding-before-execution.js.map +1 -1
- package/dist/runtime/bash-prefix-parse.d.ts +12 -1
- package/dist/runtime/bash-prefix-parse.js +2 -2
- package/dist/runtime/bash-prefix-parse.js.map +1 -1
- package/dist/runtime/command-normalize.d.ts +112 -0
- package/dist/runtime/command-normalize.js +169 -55
- package/dist/runtime/command-normalize.js.map +1 -1
- package/dist/runtime/deletion-target-resolve.d.ts +28 -0
- package/dist/runtime/deletion-target-resolve.js +1055 -0
- package/dist/runtime/deletion-target-resolve.js.map +1 -0
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/intercept.js +17 -1
- package/dist/runtime/intercept.js.map +1 -1
- package/dist/runtime/kubectl-target-parse.d.ts +31 -0
- package/dist/runtime/kubectl-target-parse.js +249 -0
- package/dist/runtime/kubectl-target-parse.js.map +1 -0
- package/dist/runtime/read-only-bash.d.ts +11 -0
- package/dist/runtime/read-only-bash.js +288 -7
- package/dist/runtime/read-only-bash.js.map +1 -1
- package/dist/runtime/risk-classifier.js +14 -1
- package/dist/runtime/risk-classifier.js.map +1 -1
- package/dist/runtime/when-eval.d.ts +11 -2
- package/dist/runtime/when-eval.js +25 -0
- package/dist/runtime/when-eval.js.map +1 -1
- package/dist/runtime/workflow-policies.d.ts +164 -0
- package/dist/runtime/workflow-policies.js +439 -0
- package/dist/runtime/workflow-policies.js.map +1 -0
- package/dist/schema/index.d.ts +24 -0
- package/dist/schema/policies.d.ts +25 -0
- package/dist/schema/policies.js +29 -0
- package/dist/schema/policies.js.map +1 -1
- package/dist/schema/risk.d.ts +6 -0
- package/dist/schema/risk.js +80 -0
- package/dist/schema/risk.js.map +1 -1
- package/package.json +1 -1
package/dist/cli/doctor/index.js
CHANGED
|
@@ -13,7 +13,8 @@ import { checkPolicyPackConfigs } from "../../policy-packs/config-check.js";
|
|
|
13
13
|
import { checkPolicyPackVersions } from "../../policy-packs/version-check.js";
|
|
14
14
|
import { checkPolicyPackUxDrift } from "../../policy-packs/ux-drift-check.js";
|
|
15
15
|
import { DEFAULT_RUNTIME } from "../../policy-packs/runtime.js";
|
|
16
|
-
import { checkHookBudgetLedgerMargin, checkPolicyRiskWithoutEnvScope, checkSolutionAcceptanceKnobIgnored, checkSolutionAcceptanceProducer, checkTemplatePolicyDrift, createDefaultGitIgnoreProbe, } from "../validate/checks.js";
|
|
16
|
+
import { checkHookBudgetLedgerMargin, checkPolicyRiskWithoutEnvScope, checkSolutionAcceptanceKnobIgnored, checkSolutionAcceptanceProducer, checkTemplatePolicyDrift, checkTriggerBoundaryDrift, checkWorkflows, createDefaultGitIgnoreProbe, } from "../validate/checks.js";
|
|
17
|
+
import { isDerivedPolicy } from "../../runtime/workflow-policies.js";
|
|
17
18
|
import { loadManifest } from "../loader.js";
|
|
18
19
|
import { countCodexDiagnostics, findOnPath, runCodexTargetChecks, } from "./codex.js";
|
|
19
20
|
import { countOpencodeDiagnostics, runOpencodeTargetChecks, } from "./opencode.js";
|
|
@@ -460,6 +461,13 @@ function buildPolicies(manifest) {
|
|
|
460
461
|
name: p.name,
|
|
461
462
|
schemaValid: true,
|
|
462
463
|
caveat: "schema valid; last-evaluated tracking ships in Phase 4",
|
|
464
|
+
// F7 (review round 2): mark provenance so the rendered list can
|
|
465
|
+
// append "(derived from workflows[])" instead of listing a
|
|
466
|
+
// workflow-derived policy indistinguishably from a hand-authored
|
|
467
|
+
// one. `doctor` loads via `loadManifest`, which now folds derived
|
|
468
|
+
// policies in via `withDerivedPolicies` (F2), so this manifest's
|
|
469
|
+
// `policies[]` already contains them.
|
|
470
|
+
...(isDerivedPolicy(p) ? { derived: true } : {}),
|
|
463
471
|
};
|
|
464
472
|
// Producer-gap check (task ce50df99): a `block` policy whose
|
|
465
473
|
// required tag carries a `within` freshness window cannot stay
|
|
@@ -593,10 +601,20 @@ function buildWorkflows(manifest) {
|
|
|
593
601
|
taskLabels: wf.when.task_label ?? [],
|
|
594
602
|
};
|
|
595
603
|
});
|
|
604
|
+
// F3 (review round 2, 99f47307 Slice 1): doctor previously imported
|
|
605
|
+
// validate's workflow-gate check nowhere, so a spawn: "required"
|
|
606
|
+
// workflow with the merge gate unwired (or wired to the wrong hook
|
|
607
|
+
// trigger, F5) showed green here even though `harness validate` errors
|
|
608
|
+
// on it. Delegates to the shared `checkWorkflows` aggregate (review
|
|
609
|
+
// round 3: the one list validate runs too, so the two cannot drift
|
|
610
|
+
// again), mirroring `buildTemplateDrift` / `buildTriggerBoundaryDrift`.
|
|
611
|
+
const workflowChecks = partitionDiagnosticsBySeverity(checkWorkflows(manifest));
|
|
596
612
|
return {
|
|
597
613
|
declared: manifest.workflows.length,
|
|
598
614
|
templates: Object.keys(manifest.review_templates).length,
|
|
599
615
|
entries,
|
|
616
|
+
errors: workflowChecks.errors,
|
|
617
|
+
warnings: workflowChecks.warnings,
|
|
600
618
|
};
|
|
601
619
|
}
|
|
602
620
|
/**
|
|
@@ -641,13 +659,37 @@ function buildRiskGate(manifest) {
|
|
|
641
659
|
* dogfood/CI run should fail until the manifest is caught up or the name
|
|
642
660
|
* is explicitly acknowledged under doctor.ignore_template_drift.
|
|
643
661
|
*/
|
|
644
|
-
|
|
645
|
-
|
|
662
|
+
/**
|
|
663
|
+
* Splits a `Diagnostic[]` into the `{ errors, warnings }` message-array
|
|
664
|
+
* shape every drift-style doctor section uses (task 037cfb7c review round
|
|
665
|
+
* 3: `buildTemplateDrift` and `buildTriggerBoundaryDrift` had become
|
|
666
|
+
* byte-identical bodies around two different `checkX(manifest)` calls;
|
|
667
|
+
* this is the one place that split lives now).
|
|
668
|
+
*/
|
|
669
|
+
function partitionDiagnosticsBySeverity(diags) {
|
|
646
670
|
return {
|
|
647
671
|
errors: diags.filter((d) => d.severity === "error").map((d) => d.message),
|
|
648
672
|
warnings: diags.filter((d) => d.severity === "warning").map((d) => d.message),
|
|
649
673
|
};
|
|
650
674
|
}
|
|
675
|
+
function buildTemplateDrift(manifest) {
|
|
676
|
+
return partitionDiagnosticsBySeverity(checkTemplatePolicyDrift(manifest));
|
|
677
|
+
}
|
|
678
|
+
/**
|
|
679
|
+
* Trigger-boundary drift (task 037cfb7c): shipped-by-name `bash_match`
|
|
680
|
+
* triggers (hook- and policy-level) missing a boundary alternative the
|
|
681
|
+
* template has, or missing a boundary group entirely. Doctor-only, like
|
|
682
|
+
* `checkTemplatePolicyDrift` immediately above: `checkTriggerBoundaryDrift`
|
|
683
|
+
* is deliberately not wired into validate's `runAssetChecks`, so
|
|
684
|
+
* `harness validate` does not run it (only `harness doctor` does). Uses
|
|
685
|
+
* the same `partitionDiagnosticsBySeverity` split as `buildTemplateDrift`
|
|
686
|
+
* above: `checkTriggerBoundaryDrift` only emits `error`-severity
|
|
687
|
+
* diagnostics today, but a future non-`error` diagnostic now surfaces in
|
|
688
|
+
* `warnings` instead of being silently dropped.
|
|
689
|
+
*/
|
|
690
|
+
function buildTriggerBoundaryDrift(manifest) {
|
|
691
|
+
return partitionDiagnosticsBySeverity(checkTriggerBoundaryDrift(manifest));
|
|
692
|
+
}
|
|
651
693
|
/**
|
|
652
694
|
* Hook-budget-vs-ledger-timeout margin (task d20a7e0c). Delegates to the
|
|
653
695
|
* shared validate check so `harness doctor` and `harness validate` stay
|
|
@@ -798,11 +840,26 @@ function countDiagnostics(report) {
|
|
|
798
840
|
warningCount++;
|
|
799
841
|
}
|
|
800
842
|
warningCount += report.riskGate.warnings.length;
|
|
843
|
+
// Workflow gate wiring (F3) + weak-overlap (F1), review round 2,
|
|
844
|
+
// 99f47307 Slice 1: an unwired/mis-wired merge gate is a real
|
|
845
|
+
// silent-non-enforcement gap → errorCount; a weaker hand-authored
|
|
846
|
+
// policy sharing the derived gate's surface is informational →
|
|
847
|
+
// warningCount.
|
|
848
|
+
errorCount += report.workflows.errors.length;
|
|
849
|
+
warningCount += report.workflows.warnings.length;
|
|
801
850
|
// Template-policy drift: each missing-or-downgraded shipped operator_only
|
|
802
851
|
// security policy is a real defense gap → errorCount; stale opt-out
|
|
803
852
|
// entries are warn-only (task adf037c1).
|
|
804
853
|
errorCount += report.templateDrift.errors.length;
|
|
805
854
|
warningCount += report.templateDrift.warnings.length;
|
|
855
|
+
// Trigger-boundary drift (task 037cfb7c): every entry is a measured,
|
|
856
|
+
// exploitable gate bypass (see checkTriggerBoundaryDrift's header),
|
|
857
|
+
// mapped to errorCount, mirroring templateDrift.errors immediately
|
|
858
|
+
// above; warnings mirrors templateDrift.warnings the same way (no
|
|
859
|
+
// warning-severity diagnostic exists today, but the pathway is wired
|
|
860
|
+
// so one would count instead of vanishing).
|
|
861
|
+
errorCount += report.triggerBoundaryDrift.errors.length;
|
|
862
|
+
warningCount += report.triggerBoundaryDrift.warnings.length;
|
|
806
863
|
// Hook-budget-vs-ledger-timeout margin (task d20a7e0c): every entry is
|
|
807
864
|
// a real fail-open gap, mirroring templateDrift.errors immediately
|
|
808
865
|
// above.
|
|
@@ -930,6 +987,7 @@ export async function doctor(opts = {}) {
|
|
|
930
987
|
const workflows = buildWorkflows(manifest);
|
|
931
988
|
const riskGate = buildRiskGate(manifest);
|
|
932
989
|
const templateDrift = buildTemplateDrift(manifest);
|
|
990
|
+
const triggerBoundaryDrift = buildTriggerBoundaryDrift(manifest);
|
|
933
991
|
const hookBudgetLedgerMargin = buildHookBudgetLedgerMargin(manifest);
|
|
934
992
|
const groundingServer = manifest.tools.mcp.find((m) => m.name === GROUNDING_MCP_SERVER_NAME && m.enabled !== false) ?? null;
|
|
935
993
|
const grounding = groundingServer !== null
|
|
@@ -994,6 +1052,7 @@ export async function doctor(opts = {}) {
|
|
|
994
1052
|
workflows,
|
|
995
1053
|
riskGate,
|
|
996
1054
|
templateDrift,
|
|
1055
|
+
triggerBoundaryDrift,
|
|
997
1056
|
hookBudgetLedgerMargin,
|
|
998
1057
|
...(grounding !== undefined ? { grounding } : {}),
|
|
999
1058
|
...(claudeMcp !== undefined ? { claudeMcp } : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/doctor/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACL,YAAY,EACZ,QAAQ,GAGT,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,sBAAsB,EACtB,yBAAyB,GAC1B,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EACL,2BAA2B,EAC3B,8BAA8B,EAC9B,kCAAkC,EAClC,+BAA+B,EAC/B,wBAAwB,EACxB,yBAAyB,EACzB,cAAc,EACd,2BAA2B,GAE5B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAsB,MAAM,cAAc,CAAC;AAChE,OAAO,EACL,qBAAqB,EACrB,UAAU,EACV,oBAAoB,GAErB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,wBAAwB,EACxB,uBAAuB,GAExB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAgB,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,mBAAmB,EAA+B,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,mCAAmC,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EACL,wBAAwB,GAEzB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,cAAc,EACd,oBAAoB,GAgBrB,MAAM,YAAY,CAAC;AAwEpB,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,CAAC;AAEhD,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,SAAS,UAAU,CAAC,CAAS,EAAE,IAAY;IACzC,IAAI,CAAC,KAAK,gBAAgB;QAAE,OAAO,IAAI,CAAC;IACxC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,YAAY,CAAC,QAAgB;IACpC,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,QAAQ,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,cAAc,CAAC,WAAmB,EAAE,SAA6B;IACxE,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,SAAS,CAAC;IACjF,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACnE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,YAAY,CAAC,SAAS,CAAC,EAAE,CAAC;QACxD,OAAO,YAAY,SAAS,6DAA6D,SAAS,SAAS,CAAC;IAC9G,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,QAAQ,CAAC,QAAkB,EAAE,IAAmB,EAAE,SAA6B;IACtF,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACvD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;QAC/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACnD,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;gBACvC,OAAO,EAAE,GAAG,CAAC,QAAQ;oBACnB,CAAC,CAAC,8BAA8B,GAAG,CAAC,MAAM,EAAE;oBAC5C,CAAC,CAAC,6BAA6B,GAAG,CAAC,MAAM,EAAE;gBAC7C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACrB,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC;YACnF,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,4BAA4B,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;aAC5D,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,mCAAmC,MAAM,CAAC,IAAI,EAAE,GAAG;aAC7D,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,OAAO;gBACf,OAAO,EAAE,cAAc,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE;aAC9D,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI,MAAM,MAAM,GAAG,CAAC,WAAW,EAAE;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;GAIG;AACH,SAAS,SAAS,CAAC,OAA0B;IAC3C,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,SAAS,gBAAgB,CAAC,QAAkB,EAAE,IAAmB;IAC/D,MAAM,GAAG,GAAuB,EAAE,CAAC;IACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,WAAW;YAAE,SAAS;QAC/B,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK;YAAE,SAAS;QACpC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,wCAAwC;aAClD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAChE,MAAM,MAAM,GAAG,YAAY,CAAC,UAAU,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,4BAA4B,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;aAC5D,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChB,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,mCAAmC,MAAM,CAAC,IAAI,EAAE,GAAG;aAC7D,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpB,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;YACZ,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,wBAAwB,MAAM,eAAe,GAAG,CAAC,WAAW,EAAE;aACxE,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,OAAO,EAAE,IAAI,MAAM,MAAM,GAAG,CAAC,WAAW,EAAE;aAC3C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sEAAsE;AACtE,mCAAmC;AACnC,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAsB/C;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAAkB,EAClB,OAAkC,EAAE;IAEpC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACvD,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,OAAO;KACR,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/E,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,GAAG,CAAC,OAAO,KAAK,KAAK;YAAE,SAAS;QACpC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;YAAE,SAAS;QACnE,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM;YACN,OAAO,EAAE,6BAA6B,MAAM,EAAE;YAC9C,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD,CAAC,CAAC;IACL,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,YAAY,CAAC;YAAE,SAAS;QAC7E,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QACnD,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,KAAK;YACX,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE,8BAA8B,GAAG,CAAC,MAAM,EAAE;YACnD,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClD,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;AAC/C,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,yBAAyB,CAAC,MAA2B;IACnE,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC1C,MAAM,GAAG,GAAG,CAAC,EAAE,EAAE,4DAA4D,CAAC,CAAC;IAC/E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,IAAI,KAAK,CAAC,QAAQ;YAAE,GAAG,CAAC,IAAI,CAAC,SAAS,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC1D,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,WAAW,CAAC,QAAkB,EAAE,IAAY;IACnD,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;IAC9C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;IACtD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACpD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACtE,IAAI,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC7B,KAAK,GAAG,IAAI,CAAC;gBACb,MAAM;YACR,CAAC;QACH,CAAC;QACD,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;AAC9B,CAAC;AAED,SAAS,gBAAgB,CACvB,IAA+B,EAC/B,YAAuD;IAEvD,uEAAuE;IACvE,uEAAuE;IACvE,mBAAmB;IACnB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,eAAe;QAAE,OAAO,SAAS,CAAC;IACjE,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc;YACpB,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,4BAA4B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;SACtE,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAC9C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChB,OAAO;YACL,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc;YACpB,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,mCAAmC,MAAM,CAAC,IAAI,EAAE,GAAG;SAC7D,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACtD,OAAO,GAAG,GAAG,CAAC;QACZ,CAAC,CAAC;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,aAAa;YACnB,aAAa,EAAE,MAAM;YACrB,OAAO,EAAE,wBAAwB,MAAM,eAAe,IAAI,CAAC,WAAW,EAAE;SACzE;QACH,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,MAAM,MAAM,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;AACpE,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CACjC,KAAgD;IAEhD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAyB,CAAC;IAC/C,OAAO,CAAC,GAAsB,EAAiB,EAAE;QAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAChD,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,SAAS,2BAA2B,CAClC,QAAkB,EAClB,YAAuD;IAEvD,8DAA8D;IAC9D,oEAAoE;IACpE,oEAAoE;IACpE,gEAAgE;IAChE,oDAAoD;IACpD,qEAAqE;IACrE,MAAM,SAAS,GAAG,iBAAiB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC/D,MAAM,YAAY,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,IAAI,GAAqC,EAAE,CAAC;IAClD,KAAK,MAAM,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QACnC,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACrD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAC7D,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,kBAAkB,EAAE,IAAI,CAAC,WAAW;gBACpC,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,IAAI;gBAC5C,cAAc,EAAE,IAAI,CAAC,eAAe,IAAI,EAAE;gBAC1C,OAAO,EAAE,OAAO,CAAC,OAAO;aACzB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CACjB,QAAkB,EAClB,IAAY,EACZ,IAAyC;IAEzC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,MAAM,aAAa,GAAG,IAAI,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QACxE,MAAM,OAAO,GAAG,gBAAgB,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACxD,MAAM,IAAI,GAAG,CAAC,KAA+B,EAAmB,EAAE,CAAC,CAAC;YAClE,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,aAAa;YACvB,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,KAAK;SACW,CAAA,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,KAAK,gBAAgB,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACrF,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAChC,CAAC;QACD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACzC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,wBAAwB,QAAQ,EAAE,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,uBAAuB,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC3E,CAAC;QACD,OAAO,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,0EAA0E;AAC1E,SAAS,eAAe,CAAC,SAAiB;IACxC,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACrC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,SAAS,eAAe,CAAC,QAAkB,EAAE,MAAc,EAAE,MAAc;IACzE,0DAA0D;IAC1D,+DAA+D;IAC/D,4DAA4D;IAC5D,iCAAiC;IACjC,IAAI,MAAM,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IAChC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,CACxB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC5D,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,QAAkB;IACvC,OAAO,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACjC,MAAM,MAAM,GAAsB;YAChC,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,wDAAwD;YAChE,gEAAgE;YAChE,2DAA2D;YAC3D,iEAAiE;YACjE,kEAAkE;YAClE,iEAAiE;YACjE,sCAAsC;YACtC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjD,CAAC;QACF,6DAA6D;QAC7D,+DAA+D;QAC/D,kEAAkE;QAClE,gEAAgE;QAChE,8DAA8D;QAC9D,iEAAiE;QACjE,mEAAmE;QACnE,4DAA4D;QAC5D,WAAW;QACX,EAAE;QACF,gEAAgE;QAChE,kEAAkE;QAClE,gEAAgE;QAChE,8DAA8D;QAC9D,mEAAmE;QACnE,mEAAmE;QACnE,+DAA+D;QAC/D,6DAA6D;QAC7D,iEAAiE;QACjE,8DAA8D;QAC9D,IACE,CAAC,CAAC,WAAW,KAAK,OAAO;YACzB,0DAA0D;YAC1D,mEAAmE;YACnE,iDAAiD;YACjD,CAAC,CAAC,QAAQ,KAAK,SAAS;YACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,SAAS;YAC/B,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,CAAC,EACvD,CAAC;YACD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACtD,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,WAAW,GAAG;oBACnB,SAAS,EAAE,CAAC,CAAC,QAAQ,CAAC,UAAU;oBAChC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM;iBAC1B,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;;GASG;AACH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAmB,GAAG,EAAE,CAAC,IAAI,CAAC;AAEhE;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAuD;IAEvD,IAAI,IAAI,CAAC,cAAc;QAAE,OAAO,IAAI,CAAC,cAAc,CAAC;IACpD,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,qBAAqB,CAAC;IAC/C,OAAO,2BAA2B,EAAE,CAAC;AACvC,CAAC;AAED,SAAS,gBAAgB,CACvB,QAAkB,EAClB,YAAuD,EACvD,cAA8B;IAE9B,MAAM,UAAU,GAA2B,EAAE,CAAC;IAC9C,KAAK,MAAM,IAAI,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,SAAS;QAC5B,MAAM,YAAY,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,IAAI,YAAY,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,gBAAgB;gBACxB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,UAAU,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,oDAAoD;aAClG,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACvD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,UAAU,CAAC,IAAI,CAAC;gBACd,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,sBAAsB;gBAC9B,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,MAAM,EAAE,4EAA4E;aACrF,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,MAAM,YAAY,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC,CAAC;IACJ,MAAM,WAAW,GAAG,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,GAAG,CACrE,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACR,IAAI,EAAE,GAAG,CAAC,QAAQ;QAClB,kBAAkB,EAAE,GAAG,CAAC,kBAAkB;QAC1C,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC,CACH,CAAC;IACF,MAAM,OAAO,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAC/D,IAAI,EAAE,KAAK,CAAC,QAAQ;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC,CAAC,CAAC;IACJ,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,kDAAkD;IAClD,MAAM,kBAAkB,GAAG;QACzB,GAAG,+BAA+B,CAAC,QAAQ,CAAC;QAC5C,GAAG,kCAAkC,CAAC,QAAQ,EAAE,cAAc,CAAC;KAChE,CAAC;IACF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAChF,CAAC;AAED,SAAS,cAAc,CAAC,QAAkB;IACxC,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,iBAAiB,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QACvD,OAAO;YACL,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM;YACtB,WAAW,EAAE,MAAM,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACrE,cAAc,EACZ,MAAM,EAAE,IAAI,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YACvE,SAAS,EAAE,KAAK,EAAE,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;YACtD,UAAU,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE;SACrC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,oEAAoE;IACpE,iEAAiE;IACjE,mEAAmE;IACnE,uEAAuE;IACvE,oEAAoE;IACpE,mEAAmE;IACnE,wEAAwE;IACxE,MAAM,cAAc,GAAG,8BAA8B,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChF,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,MAAM;QACnC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,MAAM;QACxD,OAAO;QACP,MAAM,EAAE,cAAc,CAAC,MAAM;QAC7B,QAAQ,EAAE,cAAc,CAAC,QAAQ;KAClC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,QAAkB;IACvC,MAAM,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;IACrD,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC;IACzD,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAC5B,CAAC,MAAM,CAAC;IACT,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;QAC1C,QAAQ,CAAC,IAAI,CACX,GAAG,YAAY,6EAA6E;YAC1F,0GAA0G,CAC7G,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;QACxC,QAAQ,CAAC,IAAI,CACX,GAAG,YAAY,mFAAmF;YAChG,kDAAkD,CACrD,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,CAAC,EAAE,CAAC;QAC7D,QAAQ,CAAC,IAAI,CACX,wHAAwH,CACzH,CAAC;IACJ,CAAC;IACD,oEAAoE;IACpE,yEAAyE;IACzE,wEAAwE;IACxE,0EAA0E;IAC1E,0EAA0E;IAC1E,yEAAyE;IACzE,uEAAuE;IACvE,KAAK,MAAM,IAAI,IAAI,8BAA8B,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,CAAC;AAC5D,CAAC;AAED;;;;;;;;GAQG;AACH;;;;;;GAMG;AACH,SAAS,8BAA8B,CAAC,KAA4B;IAIlE,OAAO;QACL,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACzE,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;KAC9E,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAkB;IAC5C,OAAO,8BAA8B,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,yBAAyB,CAAC,QAAkB;IACnD,OAAO,8BAA8B,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,2BAA2B,CAAC,QAAkB;IACrD,OAAO,EAAE,MAAM,EAAE,2BAA2B,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;AACjF,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,cAAc,CACrB,QAAkB,EAClB,MAAiB,EACjB,IAAY;IAEZ,MAAM,YAAY,GAAG,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,IAAI,CAAC;IAC7D,MAAM,gBAAgB,GAAG,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,uEAAuE;IACvE,sEAAsE;IACtE,wDAAwD;IACxD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,CAAC;IACzD,MAAM,WAAW,GACf,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACxD,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,gBAAgB,GACpB,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,sEAAsE;IACtE,yEAAyE;IACzE,MAAM,UAAU,GAAG,gBAAgB,IAAI,gBAAgB,CAAC;IACxD,IAAI,gBAAgB,KAAK,IAAI,IAAI,gBAAgB,KAAK,gBAAgB,EAAE,CAAC;QACvE,QAAQ,CAAC,IAAI,CACX,+BAA+B,sBAAsB,MAAM,WAAW,KAAK;YACzE,8CAA8C,YAAY,6BAA6B;YACvF,gEAAgE,CACnE,CAAC;IACJ,CAAC;IAED,IAAI,kBAAkB,GAAG,IAAI,CAAC;IAC9B,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,EAAE,CAAC,UAAU,CAAC,UAAU,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC/C,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACnC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBACjC,IAAI,MAAM,KAAK,GAAG;oBAAE,MAAM;gBAC1B,GAAG,GAAG,MAAM,CAAC;YACf,CAAC;YACD,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,kBAAkB,GAAG,KAAK,CAAC;QAC3B,QAAQ,CAAC,IAAI,CACX,wBAAwB,UAAU,yCAAyC;YACzE,6EAA6E;YAC7E,6EAA6E;YAC7E,+EAA+E;YAC/E,mCAAmC,CACtC,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,WAAW,EAAE,QAAQ,EAAE,CAAC;AACnE,CAAC;AAED,SAAS,eAAe,CAAC,QAAkB;IACzC,MAAM,YAAY,GAAG;QACnB,WAAW;QACX,OAAO;QACP,QAAQ;QACR,OAAO;QACP,UAAU;QACV,WAAW;QACX,kBAAkB;KACnB,CAAC;IACF,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CACjC,CAAC,CAAC,EAAE,EAAE,CAAE,QAAoC,CAAC,CAAC,CAAC,KAAK,SAAS,CAC9D,CAAC,MAAM,CAAC;IACT,wEAAwE;IACxE,sEAAsE;IACtE,qEAAqE;IACrE,6DAA6D;IAC7D,OAAO;QACL,mBAAmB,EAAE,OAAO;QAC5B,QAAQ,EAAE,EAAE;KACb,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAyD;IAIjF,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO;YAAE,UAAU,EAAE,CAAC;QAC7C,qEAAqE;QACrE,oEAAoE;QACpE,4DAA4D;aACvD,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa;YAAE,UAAU,EAAE,CAAC;IAC1D,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACjC,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;YAAE,UAAU,EAAE,CAAC;aAClC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;YAAE,YAAY,EAAE,CAAC;IAC/C,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACzC,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;YAAE,UAAU,EAAE,CAAC;aAClC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;YAAE,YAAY,EAAE,CAAC;IAC/C,CAAC;IACD,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC;IACxD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;YAAE,UAAU,EAAE,CAAC;aAClC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;YAAE,YAAY,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM;YAAE,YAAY,EAAE,CAAC;IACnD,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,CAAC,WAAW;YAAE,YAAY,EAAE,CAAC;IACpC,CAAC;IACD,UAAU,IAAI,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC;IACnD,UAAU,IAAI,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,MAAM,CAAC;IACrD,iEAAiE;IACjE,+DAA+D;IAC/D,+DAA+D;IAC/D,kBAAkB;IAClB,YAAY,IAAI,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC;IACtD,sEAAsE;IACtE,mEAAmE;IACnE,mEAAmE;IACnE,YAAY,IAAI,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC;IACrD,uEAAuE;IACvE,qEAAqE;IACrE,wEAAwE;IACxE,0EAA0E;IAC1E,YAAY,IAAI,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;IAClD,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,WAAW,CAAC,kBAAkB,EAAE,CAAC;QACtD,IAAI,CAAC,CAAC,QAAQ,KAAK,OAAO;YAAE,UAAU,EAAE,CAAC;aACpC,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;YAAE,YAAY,EAAE,CAAC;IACpD,CAAC;IACD,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;IAChD,iEAAiE;IACjE,8DAA8D;IAC9D,kEAAkE;IAClE,+DAA+D;IAC/D,gBAAgB;IAChB,UAAU,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC;IAC7C,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;IACjD,0EAA0E;IAC1E,oEAAoE;IACpE,yCAAyC;IACzC,UAAU,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC;IACjD,YAAY,IAAI,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;IACrD,qEAAqE;IACrE,oEAAoE;IACpE,mEAAmE;IACnE,kEAAkE;IAClE,qEAAqE;IACrE,4CAA4C;IAC5C,UAAU,IAAI,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC;IACxD,YAAY,IAAI,MAAM,CAAC,oBAAoB,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC5D,uEAAuE;IACvE,mEAAmE;IACnE,SAAS;IACT,UAAU,IAAI,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,MAAM,CAAC;IAC1D,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;IACnD,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACzC,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;gBAAE,UAAU,EAAE,CAAC;iBAClC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;gBAAE,YAAY,EAAE,CAAC;QAC/C,CAAC;QACD,YAAY,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;IACnD,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM;QAAE,YAAY,EAAE,CAAC;IAC3D,kEAAkE;IAClE,uEAAuE;IACvE,wEAAwE;IACxE,oEAAoE;IACpE,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;YAC7C,IAAI,CAAC,CAAC,MAAM,KAAK,OAAO;gBAAE,YAAY,EAAE,CAAC;QAC3C,CAAC;IACH,CAAC;IACD,iEAAiE;IACjE,mEAAmE;IACnE,IAAI,MAAM,CAAC,oBAAoB;QAAE,YAAY,EAAE,CAAC;IAChD,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,MAAM;QAAE,UAAU,EAAE,CAAC;IAC3F,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,gBAAgB;QAAE,YAAY,EAAE,CAAC;IACpD,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,KAAK,MAAM;QAAE,YAAY,EAAE,CAAC;IACnE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1C,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,YAAY,EAAE,CAAC;IAChC,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAAE,YAAY,EAAE,CAAC;IAC3D,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9D,UAAU,IAAI,WAAW,CAAC,UAAU,CAAC;QACrC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC;IAC3C,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,MAAM,cAAc,GAAG,wBAAwB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QACvE,UAAU,IAAI,cAAc,CAAC,UAAU,CAAC;QACxC,YAAY,IAAI,cAAc,CAAC,YAAY,CAAC;IAC9C,CAAC;IACD,YAAY,IAAI,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC;IAC7C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAsB,EAAE;IACnD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAClD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,IAAI,IAAI,YAAY,EAAE,CAAC;IAElD,qEAAqE;IACrE,iEAAiE;IACjE,sEAAsE;IACtE,yBAAyB;IACzB,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO;QAC/B,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM,eAAe,CAAC;YACpB,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE,CAAC,CAAC;IACP,MAAM,SAAS,GAAG,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAE/F,MAAM,UAAU,GAAqB,IAAI,CAAC,OAAO;QAC/C,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7B,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,OAAO,EACL,CAAC,CAAC,OAAO,KAAK,KAAK;gBACjB,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE;gBACtB,CAAC,CAAC,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE;oBACnC,CAAC,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE;SACjC,CAAC,CAAC;QACL,CAAC,CAAC,MAAM,QAAQ,CACZ,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,KAAK,CAAC,EACrD,KAAK,CACN,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACd,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,OAAO,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAC3B,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI;gBACjB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAW;aACvC,CACJ,CAAC;QACJ,CAAC,CAAC,CAAC;IAEP,qEAAqE;IACrE,+DAA+D;IAC/D,uDAAuD;IACvD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACjE,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YAC/C,IAAI,IAAI,KAAK,SAAS;gBAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QACpD,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAG,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IAChD,MAAM,WAAW,GAAG,gBAAgB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAiB;QAC1B,GAAG,EAAE,UAAU;QACf,WAAW;QACX,GAAG;QACH,aAAa,EAAE,MAAM,CAAC,OAAO;QAC7B,qBAAqB,EAAE,MAAM,CAAC,OAAO;KACtC,CAAC;IAEF,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,EAAE;QACrC,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChF,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,uBAAuB,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IAClE,MAAM,WAAW,GAAG,gBAAgB,CAClC,QAAQ,EACR,uBAAuB,EACvB,qBAAqB,CAAC,IAAI,CAAC,CAC5B,CAAC;IACF,MAAM,sBAAsB,GAAG,2BAA2B,CACxD,QAAQ,EACR,uBAAuB,CACxB,CAAC;IACF,MAAM,SAAS,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,aAAa,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,oBAAoB,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;IACjE,MAAM,sBAAsB,GAAG,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IACrE,MAAM,eAAe,GACnB,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CACrB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,yBAAyB,IAAI,CAAC,CAAC,OAAO,KAAK,KAAK,CACnE,IAAI,IAAI,CAAC;IACZ,MAAM,SAAS,GACb,eAAe,KAAK,IAAI;QACtB,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,CAAC;QACjD,CAAC,CAAC,SAAS,CAAC;IAChB,4CAA4C;IAC5C,kEAAkE;IAClE,kEAAkE;IAClE,iEAAiE;IACjE,+DAA+D;IAC/D,6CAA6C;IAC7C,EAAE;IACF,uEAAuE;IACvE,kEAAkE;IAClE,+DAA+D;IAC/D,MAAM,YAAY,GAAG,mBAAmB,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,QAAQ,EAAE,IAAI;KACf,CAAC,CAAC;IACH,MAAM,SAAS,GACb,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC;QAC3B,CAAC,CAAC,MAAM,0BAA0B,CAAC,QAAQ,EAAE;YACzC,IAAI;YACJ,YAAY;YACZ,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO;YACvB,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrE,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,oBAAoB,GAAG,mCAAmC,CAC9D,QAAQ,EACR,IAAI,CAAC,WAAW,IAAI,OAAO,CAAC,GAAG,CAChC,CAAC;IACF,yEAAyE;IACzE,oEAAoE;IACpE,qEAAqE;IACrE,sEAAsE;IACtE,MAAM,eAAe,GAAG,QAAQ,CAAC,gBAAgB,CAAC,OAAO;QACvD,CAAC,CAAC,MAAM,wBAAwB,CAAC,QAAQ,EAAE;YACvC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO;YACvB,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,GAAG,IAAI,CAAC,sBAAsB;SAC/B,CAAC;QACJ,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAE9C,MAAM,cAAc,GAAG,mBAAmB,CAAC;QACzC,OAAO,EAAE,IAAI,CAAC,sBAAsB,EAAE,OAAO,IAAI,IAAI;QACrD,GAAG,EAAE,IAAI,CAAC,sBAAsB,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE;QACtD,GAAG,CAAC,IAAI,CAAC,sBAAsB,EAAE,WAAW,KAAK,SAAS;YACxD,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE;YAC1D,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;IAEH,MAAM,OAAO,GAAsD;QACjE,YAAY,EAAE,QAAQ,CAAC,IAAI;QAC3B,eAAe,EAAE,QAAQ,CAAC,OAAO;QACjC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,IAAI;QAC7B,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO;QACvB,QAAQ,EAAE,WAAW;QACrB,KAAK;QACL,MAAM;QACN,KAAK;QACL,QAAQ;QACR,WAAW;QACX,sBAAsB;QACtB,SAAS;QACT,QAAQ;QACR,aAAa;QACb,oBAAoB;QACpB,sBAAsB;QACtB,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7D,cAAc;QACd,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,SAAS,GAAyB;YACtC,WAAW;YACX,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,EAAE,CAAC;SAClC,CAAC;QACF,IAAI,SAAS,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAClE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACnC,CAAC;QACD,OAAO,CAAC,WAAW,GAAG,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAChD,MAAM,YAAY,GAA4B;YAC5C,WAAW;YACX,GAAG,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC;SACrC,CAAC;QACF,IAAI,YAAY,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YACrE,YAAY,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QACtC,CAAC;QACD,OAAO,CAAC,cAAc,GAAG,uBAAuB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC3E,CAAC;IACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACzC,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;AACnC,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
|
|
@@ -114,6 +114,14 @@ export interface PolicyEntryReport {
|
|
|
114
114
|
caveat: string;
|
|
115
115
|
/** Present when this policy has an unproduced freshness-gated tag. */
|
|
116
116
|
producerGap?: PolicyProducerGap;
|
|
117
|
+
/**
|
|
118
|
+
* True when this policy object was derived from `workflows[]`
|
|
119
|
+
* (`isDerivedPolicy`, F7, review round 2) rather than hand-authored
|
|
120
|
+
* under `policies:`. Rendered as "(derived from workflows[])" so an
|
|
121
|
+
* operator reading `harness doctor` output can tell provenance apart
|
|
122
|
+
* without cross-referencing `workflows:` themselves.
|
|
123
|
+
*/
|
|
124
|
+
derived?: boolean;
|
|
117
125
|
}
|
|
118
126
|
/**
|
|
119
127
|
* A declared policy pack whose `source` or builtin name does not
|
|
@@ -229,6 +237,24 @@ export interface WorkflowsSectionReport {
|
|
|
229
237
|
declared: number;
|
|
230
238
|
templates: number;
|
|
231
239
|
entries: WorkflowEntryReport[];
|
|
240
|
+
/**
|
|
241
|
+
* `checkWorkflowGateWiring` errors (F3, review round 2, 99f47307 Slice
|
|
242
|
+
* 1): a `spawn: "required"` review-then-merge workflow whose runtime
|
|
243
|
+
* merge gate is not correctly wired (a missing evidence hook, or one
|
|
244
|
+
* declared under the right name but the wrong trigger surface/command).
|
|
245
|
+
* `harness doctor` previously imported checks selectively and never ran
|
|
246
|
+
* this one, so it showed green on exactly this misconfiguration.
|
|
247
|
+
* Delegates to the shared validate check, mirroring `templateDrift`.
|
|
248
|
+
* Each rolls into `errorCount`.
|
|
249
|
+
*/
|
|
250
|
+
errors: string[];
|
|
251
|
+
/**
|
|
252
|
+
* `checkWorkflowGateWeakOverlap` warnings (F1, review round 2): a
|
|
253
|
+
* hand-authored policy sharing a derived gate's trigger surface but
|
|
254
|
+
* weaker than it (does not suppress the derived gate, just worth
|
|
255
|
+
* flagging). Each rolls into `warningCount`.
|
|
256
|
+
*/
|
|
257
|
+
warnings: string[];
|
|
232
258
|
}
|
|
233
259
|
/**
|
|
234
260
|
* Phase 7 #6 — Risk Gate wiring health. Reports whether the three Risk
|
|
@@ -288,6 +314,30 @@ export interface TemplateDriftSection {
|
|
|
288
314
|
/** Stale/typo'd ignore_template_drift entries that suppress nothing (each → warningCount). */
|
|
289
315
|
warnings: string[];
|
|
290
316
|
}
|
|
317
|
+
/**
|
|
318
|
+
* Trigger-boundary drift (task 037cfb7c, follow-up to adf037c1):
|
|
319
|
+
* shipped-by-name `bash_match` triggers (hook-level `hooks[].bash_match`
|
|
320
|
+
* or policy-level `policies[].trigger.bash_match`) missing a boundary
|
|
321
|
+
* alternative the template has, or missing a boundary group entirely.
|
|
322
|
+
* Rule and rationale live on `checkTriggerBoundaryDrift` in
|
|
323
|
+
* `validate/checks.ts`; the measured incident that motivated this check
|
|
324
|
+
* is in CHANGELOG.md's [Unreleased] entry for task 037cfb7c. Shape
|
|
325
|
+
* mirrors `TemplateDriftSection` immediately above: every `error`
|
|
326
|
+
* diagnostic rolls into `errorCount`, every `warning` diagnostic (none
|
|
327
|
+
* emitted today; the field exists so a future non-error diagnostic from
|
|
328
|
+
* `checkTriggerBoundaryDrift` surfaces here instead of being silently
|
|
329
|
+
* dropped by `buildTriggerBoundaryDrift`) rolls into `warningCount`.
|
|
330
|
+
* Always present; both arrays empty when every shipped-named trigger's
|
|
331
|
+
* boundary covers the template's (or the manifest has none of those
|
|
332
|
+
* triggers, or every drift is acknowledged via
|
|
333
|
+
* doctor.ignore_template_drift).
|
|
334
|
+
*/
|
|
335
|
+
export interface TriggerBoundaryDriftSection {
|
|
336
|
+
/** Stale-boundary bash_match triggers, hook- or policy-level (each → errorCount). */
|
|
337
|
+
errors: string[];
|
|
338
|
+
/** Reserved for a future non-error diagnostic shape (each → warningCount); empty today. */
|
|
339
|
+
warnings: string[];
|
|
340
|
+
}
|
|
291
341
|
/**
|
|
292
342
|
* Hook-budget-vs-ledger-timeout margin (task d20a7e0c, follow-up to
|
|
293
343
|
* f1aea826/7bf47554): blocking, ledger-consulting hooks (both directly
|
|
@@ -360,6 +410,13 @@ export interface DoctorReport {
|
|
|
360
410
|
* via a valid doctor.ignore_template_drift entry).
|
|
361
411
|
*/
|
|
362
412
|
templateDrift: TemplateDriftSection;
|
|
413
|
+
/**
|
|
414
|
+
* Trigger-boundary drift (task 037cfb7c). Always present; `errors`
|
|
415
|
+
* empty when every shipped-named `bash_match` trigger's boundary
|
|
416
|
+
* matches the template (or every drift is acknowledged via
|
|
417
|
+
* doctor.ignore_template_drift).
|
|
418
|
+
*/
|
|
419
|
+
triggerBoundaryDrift: TriggerBoundaryDriftSection;
|
|
363
420
|
/**
|
|
364
421
|
* Hook-budget-vs-ledger-timeout margin (task d20a7e0c). Always
|
|
365
422
|
* present; `errors` empty when every blocking, ledger-consulting hook
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type EnvironmentResolution, type RiskProfile, type WhenClauseResult } from "../runtime/index.js";
|
|
1
|
+
import { type DeletionTargetVerdict, type EnvironmentResolution, type RiskProfile, type WhenClauseResult } from "../runtime/index.js";
|
|
2
2
|
import type { Manifest } from "../schema/index.js";
|
|
3
3
|
import { type EventInputSeams } from "./event-input.js";
|
|
4
4
|
import { type LoaderOptions } from "./loader.js";
|
|
@@ -28,6 +28,9 @@ interface ExplainPolicyProjection {
|
|
|
28
28
|
};
|
|
29
29
|
classifier: RiskProfile;
|
|
30
30
|
environment: EnvironmentResolution;
|
|
31
|
+
/** Static deletion-target verdict (task d03af8f6); null when the
|
|
32
|
+
* event's command is not a recognized deletion verb. */
|
|
33
|
+
deletion_target: DeletionTargetVerdict | null;
|
|
31
34
|
when: {
|
|
32
35
|
declared: false;
|
|
33
36
|
} | {
|
|
@@ -13,7 +13,9 @@
|
|
|
13
13
|
// LAST recorded decision from the evidence ledger; `explain-policy`
|
|
14
14
|
// evaluates a hypothetical event live and reads nothing from the ledger.
|
|
15
15
|
import { stringify as stringifyYaml } from "yaml";
|
|
16
|
-
import { classifyRisk, evaluateWhen, policyMatchesEvent, resolveEnvironment, resolveKubeContext, } from "../runtime/index.js";
|
|
16
|
+
import { classifyRisk, evaluateWhen, policyMatchesEvent, resolveDeletionTarget, resolveEnvironment, resolveKubeContext, } from "../runtime/index.js";
|
|
17
|
+
import { extractShellCommand } from "../runtime/tool-name-aliases.js";
|
|
18
|
+
import { DEFAULT_SAFE_DELETION_ROOTS } from "../schema/risk.js";
|
|
17
19
|
import { loadEventEnvelope } from "./event-input.js";
|
|
18
20
|
import { EX_USAGE, HarnessExitError } from "./exit-codes.js";
|
|
19
21
|
import { loadManifest } from "./loader.js";
|
|
@@ -43,9 +45,16 @@ export function explainPolicy(policyName, opts) {
|
|
|
43
45
|
kubeContext: kube.context,
|
|
44
46
|
kubeNamespace: kube.namespace,
|
|
45
47
|
});
|
|
48
|
+
// Static deletion-target resolution (task d03af8f6) — same "raw
|
|
49
|
+
// command only, no ambient cwd/env" contract as the runtime's own
|
|
50
|
+
// `enrichEnvelope`. See `deletion-target-resolve.ts`.
|
|
51
|
+
const explainShellCommand = extractShellCommand({ raw_input: envelope.raw_input });
|
|
52
|
+
const deletionTarget = explainShellCommand === null
|
|
53
|
+
? null
|
|
54
|
+
: resolveDeletionTarget(explainShellCommand, manifest.risk.safe_deletion_roots ?? DEFAULT_SAFE_DELETION_ROOTS);
|
|
46
55
|
const triggerMatched = policyMatchesEvent(policy, event);
|
|
47
56
|
const whenEval = policy.when !== undefined
|
|
48
|
-
? evaluateWhen(policy.when, { risk: classifier, environment })
|
|
57
|
+
? evaluateWhen(policy.when, { risk: classifier, environment, deletionTarget })
|
|
49
58
|
: undefined;
|
|
50
59
|
const projection = {
|
|
51
60
|
policy: policy.name,
|
|
@@ -63,6 +72,7 @@ export function explainPolicy(policyName, opts) {
|
|
|
63
72
|
},
|
|
64
73
|
classifier,
|
|
65
74
|
environment,
|
|
75
|
+
deletion_target: deletionTarget,
|
|
66
76
|
when: whenEval
|
|
67
77
|
? {
|
|
68
78
|
declared: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"explain-policy.js","sourceRoot":"","sources":["../../src/cli/explain-policy.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,EAAE;AACF,wEAAwE;AACxE,mEAAmE;AACnE,wEAAwE;AACxE,wEAAwE;AACxE,qEAAqE;AACrE,yEAAyE;AACzE,uEAAuE;AACvE,6CAA6C;AAC7C,EAAE;AACF,qEAAqE;AACrE,oEAAoE;AACpE,yEAAyE;AAEzE,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EACL,YAAY,EACZ,YAAY,EACZ,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,
|
|
1
|
+
{"version":3,"file":"explain-policy.js","sourceRoot":"","sources":["../../src/cli/explain-policy.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/export.js
CHANGED
|
@@ -2,6 +2,7 @@ import * as os from "node:os";
|
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import { stringify as stringifyYaml } from "yaml";
|
|
4
4
|
import { atomicWriteFile } from "../io/atomic-write.js";
|
|
5
|
+
import { withoutDerivedPolicies } from "../runtime/workflow-policies.js";
|
|
5
6
|
import { loadManifest } from "./loader.js";
|
|
6
7
|
const SECRET_KEY_PATTERN = /(?:_|^)(KEY|TOKEN|SECRET|PASSWORD|API_KEY)$/i;
|
|
7
8
|
const REDACTED = "<REDACTED>";
|
|
@@ -10,7 +11,17 @@ export const SANITIZE_FOOTER = "# sanitised: /home/<user>/ paths replaced with ~
|
|
|
10
11
|
"sanitiser does NOT touch secrets in command:[] arrays or in policy " +
|
|
11
12
|
"`requires.ledger_tag` values; review before sharing.";
|
|
12
13
|
export function exportManifest(opts = {}) {
|
|
13
|
-
const { manifest } = loadManifest(opts);
|
|
14
|
+
const { manifest: loaded } = loadManifest(opts);
|
|
15
|
+
// F7 (review round 2, 99f47307 Slice 1): `loadManifest` folds
|
|
16
|
+
// `workflows[]`-derived policies into `manifest.policies` (F2), but
|
|
17
|
+
// `harness export` is meant to emit what the OPERATOR declared, not a
|
|
18
|
+
// computed view — a derived policy re-imported via `harness init
|
|
19
|
+
// --config <exported file>`-style workflows would then be a
|
|
20
|
+
// hand-authored duplicate of something the next `harness apply` would
|
|
21
|
+
// derive again anyway. `withoutDerivedPolicies` (identity-based; see
|
|
22
|
+
// workflow-policies.ts) restores the hand-authored view before
|
|
23
|
+
// projecting; `harness list policies` / `doctor` show the derived pair.
|
|
24
|
+
const manifest = withoutDerivedPolicies(loaded);
|
|
14
25
|
const projection = manifest;
|
|
15
26
|
const projected = opts.sanitize ? sanitize(projection, os.homedir()) : projection;
|
|
16
27
|
let output;
|
package/dist/cli/export.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/cli/export.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,SAAS,IAAI,aAAa,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,EAAE,YAAY,EAAsB,MAAM,aAAa,CAAC;AAe/D,MAAM,kBAAkB,GAAG,8CAA8C,CAAC;AAC1E,MAAM,QAAQ,GAAG,YAAY,CAAC;AAE9B,MAAM,CAAC,MAAM,eAAe,GAC1B,0EAA0E;IAC1E,yEAAyE;IACzE,qEAAqE;IACrE,sDAAsD,CAAC;AAEzD,MAAM,UAAU,cAAc,CAAC,OAAsB,EAAE;IACrD,MAAM,EAAE,QAAQ,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../src/cli/export.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/index.js
CHANGED
|
@@ -749,6 +749,17 @@ export function buildProgram(opts = {}) {
|
|
|
749
749
|
if (result.forcedReferences.length > 0) {
|
|
750
750
|
stderr(`(forced removal — referenced by: ${result.forcedReferences.join(", ")})\n`);
|
|
751
751
|
}
|
|
752
|
+
// F3 (review round 3, 99f47307 Slice 1): printed on the dry-run AND
|
|
753
|
+
// the write path. A --force'd removal of an evidence hook silently
|
|
754
|
+
// disables the workflows[]-derived merge gate (no schema safety
|
|
755
|
+
// net, unlike a dangling policy.hook), so this line is the only
|
|
756
|
+
// warning the operator gets.
|
|
757
|
+
if (result.derivedGateReferences.length > 0) {
|
|
758
|
+
stderr(`(forced removal disables the workflows[]-derived merge gate for: ` +
|
|
759
|
+
`${result.derivedGateReferences.join(", ")}; harness policy intercept ` +
|
|
760
|
+
`no longer blocks merges for ${result.derivedGateReferences.length === 1 ? "this workflow" : "these workflows"} ` +
|
|
761
|
+
`and for any other workflow sharing the same merge surface)\n`);
|
|
762
|
+
}
|
|
752
763
|
if (options.dryRun) {
|
|
753
764
|
stdout(result.diff);
|
|
754
765
|
return;
|
|
@@ -840,14 +851,15 @@ export function buildProgram(opts = {}) {
|
|
|
840
851
|
});
|
|
841
852
|
// `harness pack hook` runtime sub-tree (Phase 6 #4): wired by the
|
|
842
853
|
// pack's PreToolUse hook contribution; reads PreToolUse JSON from
|
|
843
|
-
// stdin, consults
|
|
844
|
-
//
|
|
854
|
+
// stdin, consults the signed approval marker (the persisted report and
|
|
855
|
+
// the ledger are audit evidence only, task 7402301d), emits Claude Code
|
|
856
|
+
// deny JSON on block.
|
|
845
857
|
const packHookCmd = packCmd
|
|
846
858
|
.command("hook")
|
|
847
859
|
.description("Pack runtime hook entrypoints (called by Claude Code via settings.json)");
|
|
848
860
|
packHookCmd
|
|
849
861
|
.command("pre-tool-use")
|
|
850
|
-
.description("PreToolUse blocker: read tool-event JSON from stdin, consult
|
|
862
|
+
.description("PreToolUse blocker: read tool-event JSON from stdin, consult the signed approval marker (persisted report and ledger are audit evidence only), emit deny JSON on block")
|
|
851
863
|
.option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
|
|
852
864
|
.option("--project <name>", "apply per-project overrides")
|
|
853
865
|
.option("--pack <name>", "pack name to evaluate (default: understanding-before-execution)")
|
|
@@ -920,7 +932,7 @@ export function buildProgram(opts = {}) {
|
|
|
920
932
|
// on stdout for Codex to prepend to additional_instructions.
|
|
921
933
|
packHookCmd
|
|
922
934
|
.command("codex-pre-tool-use")
|
|
923
|
-
.description("Codex PreToolUse blocker: read tool-event JSON from stdin, consult
|
|
935
|
+
.description("Codex PreToolUse blocker: read tool-event JSON from stdin, consult the signed approval marker (persisted report and ledger are audit evidence only), exit 2 with stderr reason on block")
|
|
924
936
|
.option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
|
|
925
937
|
.option("--project <name>", "apply per-project overrides")
|
|
926
938
|
.option("--pack <name>", "pack name to evaluate (default: understanding-before-execution)")
|
|
@@ -1173,7 +1185,8 @@ export function buildProgram(opts = {}) {
|
|
|
1173
1185
|
approveCmd
|
|
1174
1186
|
.command("understanding")
|
|
1175
1187
|
.description("Mark the latest Understanding Report as approved AND write the evidence-ledger tag. " +
|
|
1176
|
-
"
|
|
1188
|
+
"Writes the signed approval marker and round-trips the audit records (persisted report, ledger row) " +
|
|
1189
|
+
"so harnessed and solo (@lannguyensi/understanding-gate) stacks stay in sync.")
|
|
1177
1190
|
.option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
|
|
1178
1191
|
.option("--project <name>", "apply per-project overrides")
|
|
1179
1192
|
.option("--session <id>", "explicit session id (default: $CLAUDE_CODE_SESSION_ID, then $CLAUDE_SESSION_ID, then $CODEX_SESSION_ID, then staged .pending-approval, then newest pending Understanding Report)")
|
|
@@ -1374,12 +1387,15 @@ export function buildProgram(opts = {}) {
|
|
|
1374
1387
|
.command("risk")
|
|
1375
1388
|
.description("Grant a Risk Gate require_approval decision (default), or deliberately override " +
|
|
1376
1389
|
"a deny-tier block with --force <reason>. The default path writes the " +
|
|
1377
|
-
"risk-approved:${SESSION_ID} ledger tag the require_approval
|
|
1378
|
-
"consults; --
|
|
1390
|
+
"risk-approved:${SESSION_ID} ledger tag the production-scoped require_approval " +
|
|
1391
|
+
"policy's requires consults; --scope deletion writes " +
|
|
1392
|
+
"risk-approved:deletion:${SESSION_ID} instead, for the dev-context deletion arm " +
|
|
1393
|
+
"only; --force writes risk-override:${SESSION_ID}:forced:<reason> for the " +
|
|
1379
1394
|
"deny-tier policy. Operator action.")
|
|
1380
1395
|
.option("--config <path>", "manifest path (default: ~/.harness/harness.yaml; legacy fallback ~/.claude/harness.yaml)")
|
|
1381
1396
|
.option("--project <name>", "apply per-project overrides")
|
|
1382
1397
|
.option("--session <id>", "explicit session id (default: $CLAUDE_CODE_SESSION_ID, then $CLAUDE_SESSION_ID, then $CODEX_SESSION_ID, then staged .pending-approval)")
|
|
1398
|
+
.option("--scope <scope>", "restrict the ledger tag to one Risk Gate arm instead of the shared production tag; only 'deletion' is recognized (writes risk-approved:deletion:${SESSION_ID} for gate-dev-unsafe-deletion). Omit for the default production-scoped tag. Ignored with --force.")
|
|
1383
1399
|
.option("--force <reason>", "operator-deliberate override of a deny-tier Risk Gate block; writes the risk-override tag with the reason stamped into the audit trail")
|
|
1384
1400
|
.option("--i-am-the-operator", "acknowledge a scripted / non-TTY --force invocation (otherwise refused)")
|
|
1385
1401
|
.action(async (options) => {
|
|
@@ -1390,6 +1406,12 @@ export function buildProgram(opts = {}) {
|
|
|
1390
1406
|
cliOpts.project = options.project;
|
|
1391
1407
|
if (options.session)
|
|
1392
1408
|
cliOpts.session = options.session;
|
|
1409
|
+
if (options.scope !== undefined) {
|
|
1410
|
+
if (options.scope !== "deletion") {
|
|
1411
|
+
throw new HarnessExitError(`--scope "${options.scope}" is not recognized; the only supported value is "deletion".`, EX_USAGE);
|
|
1412
|
+
}
|
|
1413
|
+
cliOpts.scope = "deletion";
|
|
1414
|
+
}
|
|
1393
1415
|
if (typeof options.force === "string") {
|
|
1394
1416
|
const reason = options.force.trim();
|
|
1395
1417
|
if (reason.length === 0) {
|