@tacuchi/agent-workflow-cli 25.1.2 → 25.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/dist/adapters/node-process.js +35 -0
- package/dist/adapters/node-process.js.map +1 -1
- package/dist/application/amend-service.js +393 -0
- package/dist/application/amend-service.js.map +1 -0
- package/dist/application/decision-note-service.js +20 -3
- package/dist/application/decision-note-service.js.map +1 -1
- package/dist/application/doctor/actions.js +158 -0
- package/dist/application/doctor/actions.js.map +1 -0
- package/dist/application/doctor/apply.js +399 -0
- package/dist/application/doctor/apply.js.map +1 -0
- package/dist/application/doctor/auth-dsn.js +143 -0
- package/dist/application/doctor/auth-dsn.js.map +1 -0
- package/dist/application/doctor/auth-flow.js +28 -0
- package/dist/application/doctor/auth-flow.js.map +1 -0
- package/dist/application/doctor/auth-registry.js +12 -0
- package/dist/application/doctor/auth-registry.js.map +1 -0
- package/dist/application/doctor/hosts.js +41 -0
- package/dist/application/doctor/hosts.js.map +1 -0
- package/dist/application/doctor/native-host-state.js +211 -0
- package/dist/application/doctor/native-host-state.js.map +1 -0
- package/dist/application/doctor/prepare.js +262 -0
- package/dist/application/doctor/prepare.js.map +1 -0
- package/dist/application/doctor/provider-installation.js +124 -0
- package/dist/application/doctor/provider-installation.js.map +1 -0
- package/dist/application/doctor/provider-mcps.js +650 -0
- package/dist/application/doctor/provider-mcps.js.map +1 -0
- package/dist/application/doctor/provider-plugins-hooks.js +112 -0
- package/dist/application/doctor/provider-plugins-hooks.js.map +1 -0
- package/dist/application/doctor/provider-skills.js +212 -0
- package/dist/application/doctor/provider-skills.js.map +1 -0
- package/dist/application/doctor/provider-tools-auth.js +201 -0
- package/dist/application/doctor/provider-tools-auth.js.map +1 -0
- package/dist/application/doctor/provider-visibility.js +149 -0
- package/dist/application/doctor/provider-visibility.js.map +1 -0
- package/dist/application/doctor/repair-runner.js +169 -0
- package/dist/application/doctor/repair-runner.js.map +1 -0
- package/dist/application/doctor/report.js +155 -0
- package/dist/application/doctor/report.js.map +1 -0
- package/dist/application/doctor/types.js +5 -0
- package/dist/application/doctor/types.js.map +1 -0
- package/dist/application/flow/advance.js +152 -13
- package/dist/application/flow/advance.js.map +1 -1
- package/dist/application/flow/flow-service.js +18 -7
- package/dist/application/flow/flow-service.js.map +1 -1
- package/dist/application/flow/internal-actions.js +167 -7
- package/dist/application/flow/internal-actions.js.map +1 -1
- package/dist/application/flow/run-projection.js +6 -1
- package/dist/application/flow/run-projection.js.map +1 -1
- package/dist/application/flow/submit.js +330 -7
- package/dist/application/flow/submit.js.map +1 -1
- package/dist/application/mcp-doctor-service.js +1 -1
- package/dist/application/mcp-doctor-service.js.map +1 -1
- package/dist/application/mcp-host-reader.js +134 -26
- package/dist/application/mcp-host-reader.js.map +1 -1
- package/dist/application/mcp-host-receipt-service.js +9 -7
- package/dist/application/mcp-host-receipt-service.js.map +1 -1
- package/dist/application/plan-current-point.js +54 -0
- package/dist/application/plan-current-point.js.map +1 -0
- package/dist/application/plan-exec-decision-service.js +143 -4
- package/dist/application/plan-exec-decision-service.js.map +1 -1
- package/dist/application/plan-locator.js +78 -0
- package/dist/application/plan-locator.js.map +1 -0
- package/dist/application/plan-open-run.js +129 -0
- package/dist/application/plan-open-run.js.map +1 -0
- package/dist/application/reseal-service.js +14 -44
- package/dist/application/reseal-service.js.map +1 -1
- package/dist/application/resume-service.js +9 -3
- package/dist/application/resume-service.js.map +1 -1
- package/dist/application/self/install-skill.js +10 -2
- package/dist/application/self/install-skill.js.map +1 -1
- package/dist/application/self/mcp-config.js +1 -1
- package/dist/application/self/mcp-config.js.map +1 -1
- package/dist/application/session-narrative.js +15 -0
- package/dist/application/session-narrative.js.map +1 -1
- package/dist/application/settle-service.js +442 -0
- package/dist/application/settle-service.js.map +1 -0
- package/dist/application/source-boundary-policy.js +87 -6
- package/dist/application/source-boundary-policy.js.map +1 -1
- package/dist/application/workline-index-service.js +165 -62
- package/dist/application/workline-index-service.js.map +1 -1
- package/dist/cli/commands/amend.js +122 -0
- package/dist/cli/commands/amend.js.map +1 -0
- package/dist/cli/commands/doctor.js +300 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/index.js +6 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/settle.js +197 -0
- package/dist/cli/commands/settle.js.map +1 -0
- package/dist/cli/commands/status.js +2 -0
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/dispatch-plan.js +47 -0
- package/dist/cli/dispatch-plan.js.map +1 -0
- package/dist/cli/help-groups.js +15 -0
- package/dist/cli/help-groups.js.map +1 -1
- package/dist/cli/main.js +54 -10
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/parser.js +26 -0
- package/dist/cli/parser.js.map +1 -1
- package/dist/domain/decision-note.js +166 -3
- package/dist/domain/decision-note.js.map +1 -1
- package/dist/domain/decision-preview.js.map +1 -1
- package/dist/domain/doctor/auth.js +65 -0
- package/dist/domain/doctor/auth.js.map +1 -0
- package/dist/domain/doctor/model.js +82 -0
- package/dist/domain/doctor/model.js.map +1 -0
- package/dist/domain/doctor/operations.js +114 -0
- package/dist/domain/doctor/operations.js.map +1 -0
- package/dist/domain/effective-contract.js +4 -3
- package/dist/domain/effective-contract.js.map +1 -1
- package/dist/domain/flow/answer.js +10 -0
- package/dist/domain/flow/answer.js.map +1 -1
- package/dist/domain/flow/authority.js +124 -0
- package/dist/domain/flow/authority.js.map +1 -1
- package/dist/domain/flow/directive.js +8 -1
- package/dist/domain/flow/directive.js.map +1 -1
- package/dist/domain/flow/run-state.js +276 -34
- package/dist/domain/flow/run-state.js.map +1 -1
- package/dist/domain/obligation-correspondence.js +95 -0
- package/dist/domain/obligation-correspondence.js.map +1 -0
- package/dist/domain/reconciliation.js +142 -25
- package/dist/domain/reconciliation.js.map +1 -1
- package/dist/domain/redaction.js +40 -0
- package/dist/domain/redaction.js.map +1 -1
- package/dist/domain/settlement.js +129 -0
- package/dist/domain/settlement.js.map +1 -0
- package/package.json +1 -1
- package/skills/w/SKILL.md +2 -1
- package/skills/w/commands/README.md +2 -1
- package/skills/w/commands/doctor.md +31 -0
- package/skills/w/commands/resume.md +2 -2
- package/skills/w/context/MANIFEST.json +4 -0
- package/skills/w/loops/plan-exec-loop/LOOP.md +31 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"source-boundary-policy.js","sourceRoot":"","sources":["../../src/application/source-boundary-policy.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"source-boundary-policy.js","sourceRoot":"","sources":["../../src/application/source-boundary-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAM/D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAElE,OAAO,EACL,uBAAuB,GAIxB,MAAM,8BAA8B,CAAC;AAEtC,MAAM,CAAC,MAAM,0BAA0B,GAAqB,UAAU,CAAC;AAsCvE,MAAM,aAAa,GAAG,OAAO,CAAC;AAC9B,MAAM,aAAa,GAAG,8BAA8B,CAAC;AACrD,MAAM,YAAY,GAAG,mEAAmE,CAAC;AACzF,MAAM,YAAY,GAAG,2BAA2B,CAAC;AACjD,MAAM,SAAS,GAAG,8BAA8B,CAAC;AACjD,MAAM,YAAY,GAAG,iCAAiC,CAAC;AAUvD,gFAAgF;AAChF,8EAA8E;AAC9E,uEAAuE;AACvE,MAAM,eAAe,GAAG,8CAA8C,CAAC;AACvE,MAAM,mBAAmB,GAAG,iCAAiC,CAAC;AAC9D,MAAM,qBAAqB,GACzB,2FAA2F,CAAC;AAC9F,MAAM,eAAe,GACnB,oGAAoG,CAAC;AACvG,8EAA8E;AAC9E,+EAA+E;AAC/E,qBAAqB;AACrB,MAAM,cAAc,GAClB,wGAAwG,CAAC;AAC3G,gFAAgF;AAChF,4EAA4E;AAC5E,MAAM,2BAA2B,GAAG,mCAAmC,CAAC;AACxE,yCAAyC;AACzC,EAAE;AACF,8EAA8E;AAC9E,yEAAyE;AACzE,yEAAyE;AACzE,wEAAwE;AACxE,EAAE;AACF,gFAAgF;AAChF,6EAA6E;AAC7E,+EAA+E;AAC/E,6EAA6E;AAC7E,MAAM,wBAAwB,GAC5B,+PAA+P,CAAC;AAElQ,iFAAiF;AACjF,gFAAgF;AAChF,6EAA6E;AAC7E,EAAE;AACF,oFAAoF;AACpF,8EAA8E;AAC9E,EAAE;AACF,iFAAiF;AACjF,6EAA6E;AAC7E,gFAAgF;AAChF,+EAA+E;AAC/E,yBAAyB;AACzB,MAAM,gBAAgB,GAAG,cAAc,CAAC;AACxC,+EAA+E;AAC/E,4EAA4E;AAC5E,2EAA2E;AAC3E,MAAM,aAAa,GAAG,uEAAuE,CAAC;AAC9F,MAAM,SAAS,GAAG,qBAAqB,CAAC;AACxC,MAAM,YAAY,GAAG,mCAAmC,CAAC;AAEzD;;;;GAIG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,MAAM,GAAuB,EAAE,CAAC;IACtC,IAAI,OAAO,GAA4B,IAAI,CAAC;IAC5C,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,OAAO,GAA4B,IAAI,CAAC;IAC5C,IAAI,WAAW,GAA2B,IAAI,CAAC;IAC/C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAEpC,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACpD,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,SAAS;QACrC,MAAM,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC;QACvB,MAAM,OAAO,GAAG,uBAAuB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAChC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACf,OAAO,GAAG,KAAK,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,aAAa,CAAC;gBACnE,OAAO,GAAG,IAAI,CAAC;gBACf,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9D,IAAI,OAAO,KAAK,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3C,WAAW,GAAG,IAAI,CAAC;gBACnB,SAAS;YACX,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QACnD,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACxD,OAAO,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAChD,SAAS;QACX,CAAC;QAED,IAAI,OAAO,KAAK,IAAI;YAAE,SAAS;QAC/B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAClD,IAAI,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YACrD,OAAO,CAAC,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACpD,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,WAAW,GAAG;gBACZ,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC3B,IAAI;gBACJ,OAAO,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACnE,CAAC;YACF,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,SAAS;QACX,CAAC;QACD,sEAAsE;QACtE,0EAA0E;QAC1E,0EAA0E;QAC1E,sCAAsC;QACtC,IACE,WAAW,KAAK,IAAI;YACpB,WAAW,CAAC,OAAO,KAAK,IAAI;YAC5B,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC;YACrB,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EACrB,CAAC;YACD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxC,IAAI,QAAQ,KAAK,IAAI;gBAAE,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC9E,CAAC;aAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACnC,WAAW,GAAG,IAAI,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAChD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAY,EACZ,eAAkC;IAElC,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,IAAI,MAAM,CAAC,iBAAiB,KAAK,0BAA0B,EAAE,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,mFAAmF;SAC7F,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,8BAA8B;YACpC,OAAO,EAAE,wDAAwD;SAClE,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,EAAE,GAAG,eAAe,CAAC,CAAC,CAAC;IACzD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,0BAA0B;gBAC9C,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;QAClD,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvD,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,8BAA8B;oBACpC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,8BAA8B;oBAC5D,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;gBACH,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC1F,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,QAAQ,CAAC,IAAI,CAAC;oBACZ,IAAI,EAAE,gCAAgC;oBACtC,OAAO,EAAE,IAAI,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,6BAA6B,KAAK,CAAC,CAAC,EAAE;oBAClG,IAAI,EAAE,IAAI,CAAC,IAAI;iBAChB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,GAAG,8BAA8B,CAAC,IAAI,CAAC,CAAC,CAAC;IACvD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAAY;IACzD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,KAAK,MAAM,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,8BAA8B;gBACpC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC,sCAAsC,MAAM,GAAG;aACvF,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IACE,CAAC,MAAM,CAAC,IAAI,KAAK,kBAAkB,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAAC;YACzE,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,CAAC;YACnC,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAC3C,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,iCAAiC;gBACvC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,GAAG,mBAAmB,CAAC,MAAM,CAAC,mHAAmH;aAC3J,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,OAAO,oBAAoB,CAAC,IAAI,CAAC;SAC9B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;SAC1C,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAY;IACxC,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACpC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACtF,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,MAAM,GAA0B,IAAI,CAAC;IAEzC,MAAM,GAAG,GAAG,CAAC,IAAwB,EAAE,IAAY,EAAE,KAAa,EAAkB,EAAE;QACpF,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC9D,IAAI,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,GAAG,IAAI,CAAC;YACd,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACpC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBACvB,SAAS,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzC,aAAa,GAAG,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjD,OAAO,GAAG,MAAM,KAAK,aAAa,CAAC;gBACnC,OAAO,GAAG,KAAK,CAAC;YAClB,CAAC;iBAAM,IAAI,OAAO,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,GAAG,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC;YAC3E,CAAC;YACD,MAAM,GAAG,IAAI,CAAC;YACd,SAAS;QACX,CAAC;QACD,IAAI,SAAS;YAAE,SAAS;QAExB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjC,IAAI,OAAO,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAClD,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC;YACnE,SAAS;QACX,CAAC;QACD,IAAI,OAAO,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,CAAC,kBAAkB,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YACjD,SAAS;QACX,CAAC;QACD,IAAI,OAAO,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,CAAC,YAAY,EAAE,KAAK,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAC3C,SAAS;QACX,CAAC;QACD,IAAI,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,CAAC,iBAAiB,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC;YAC5E,SAAS;QACX,CAAC;QACD,uEAAuE;QACvE,iEAAiE;QACjE,IAAI,MAAM,KAAK,IAAI,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5C,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,qBAAqB,CAAC,IAAY;IACzC,IAAI,iBAAiB,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpD,MAAM,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC5B,IAAI,EAAE;aACN,KAAK,CAAC,KAAK,CAAC;aACZ,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAAE,OAAO,IAAI,CAAC;IAC5E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,iBAAiB,CAAC,IAAY;IACrC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IACzE,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,IAAY;IACnC,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC;AACjF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAsB;IACjD,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,MAAM;YACT,OAAO,qBAAqB,MAAM,CAAC,IAAI,EAAE,CAAC;QAC5C,KAAK,kBAAkB;YACrB,OAAO,kCAAkC,MAAM,CAAC,IAAI,EAAE,CAAC;QACzD,KAAK,YAAY;YACf,OAAO,mCAAmC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1D,KAAK,iBAAiB;YACpB,OAAO,kCAAkC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,KAAK,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACzD,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YACzC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,SAAS;YAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,cAAc,CAAC,KAO9B;IACC,OAAO,cAAc,CAAC;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,aAAa,EAAE,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE;QAC9C,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;KACjD,CAAC,CAAC;AACL,CAAC;AAoBD,qFAAqF;AACrF,SAAS,eAAe,CAAC,MAAgC;IACvD,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,YAAY,CAAC,OAAsB;IAC1C,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,GAAG,CAAC;IAClE,IAAI,OAAO,CAAC,YAAY,KAAK,KAAK,EAAE,CAAC;QACnC,OAAO;YACL,mBAAmB,OAAO,CAAC,MAAM,IAAI,EAAE,yCAAyC;YAChF,sFAAsF;SACvF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IACD,OAAO;QACL,iBAAiB,OAAO,CAAC,MAAM,IAAI,EAAE,iDAAiD;QACtF,qFAAqF;QACrF,mFAAmF;KACpF,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB,CACnC,KAAgC,EAChC,MAAuC;IAEvC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iEAAiE;SAC3E,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IACjC,8EAA8E;IAC9E,8EAA8E;IAC9E,yCAAyC;IACzC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC,CAAC;IACtE,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EACL,gCAAgC,KAAK,CAAC,MAAM,yBAAyB;gBACrE,kCAAkC,eAAe,CAAC,MAAM,CAAC,GAAG;SAC/D,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,KAAK,KAAK,CAAC,eAAe,EAAE,CAAC;QAC7C,OAAO;YACL,IAAI,EAAE,+BAA+B;YACrC,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;SAC/B,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,6BAA6B,CAAC,KAAc;IAC1D,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC7F,IACE,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ;QACpC,OAAO,KAAK,CAAC,cAAc,KAAK,QAAQ;QACxC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,EACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IACE,KAAK,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACpC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACxC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QACrC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EACvC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,IAAY;IACnD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/C,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;AACjE,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK;SACT,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;SACpC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;SACpB,IAAI,EAAE;SACN,WAAW,EAAE,CAAC;AACnB,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa;IACzC,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,0BAA0B;QAC9D,CAAC,CAAC,0BAA0B;QAC5B,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,cAAc,CACrB,OAA0B,EAC1B,KAA0B,EAC1B,IAAY,EACZ,KAAa;IAEb,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO;QACL;YACE,IAAI,EAAE,qBAAqB;YAC3B,OAAO,EAAE,GAAG,KAAK,yDAAyD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9F,IAAI;SACL;KACF,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,KAAoB;IACxC,IAAI,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClF,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,4DAA4D;SACtE,CAAC;IACJ,CAAC;IACD,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IAClG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iBAAiB,KAAK,CAAC,YAAY,6CAA6C;SAC1F,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAoB;IAC/C,IAAI,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,yDAAyD;SACnE,CAAC;IACJ,CAAC;IACD,IACE,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC;QAC5C,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QACrC,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,EAC9D,CAAC;QACD,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,0DAA0D;SACpE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC;IACrF,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,OAAO;QACL,IAAI,EAAE,iCAAiC;QACvC,OAAO,EAAE,8DAA8D,MAAM,GAAG;KACjF,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAoB;IAClD,IAAI,CAAC,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,+DAA+D;SACzE,CAAC;IACJ,CAAC;IACD,IACE,OAAO,KAAK,CAAC,UAAU,CAAC,QAAQ,KAAK,QAAQ;QAC7C,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAC7C,CAAC;QACD,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iDAAiD;SAC3D,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAClE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,aAAa,KAAK,CAAC,UAAU,CAAC,QAAQ,6CAA6C;SAC7F,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAChD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,iCAAiC;YACvC,OAAO,EAAE,iEAAiE,MAAM,GAAG;SACpF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,6FAA6F;AAC7F,SAAS,eAAe,CAAC,MAAyB;IAChD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,SAAS;YAAE,OAAO,OAAO,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
|
@@ -2,7 +2,7 @@ import { basename, join, relative } from "node:path";
|
|
|
2
2
|
import { CORRELATIVE_SOURCE, compareCorrelatives, isCorrelative } from "../domain/correlative.js";
|
|
3
3
|
import { composeEffectiveContract } from "../domain/effective-contract.js";
|
|
4
4
|
import { alignSpecBaseline, specBaselineDigest, } from "../domain/lineage.js";
|
|
5
|
-
import { reconciliationOf } from "../domain/reconciliation.js";
|
|
5
|
+
import { obligationExit, reconciliationOf, } from "../domain/reconciliation.js";
|
|
6
6
|
import { sanctionedActionFor, scanSlots } from "./claims-recovery.js";
|
|
7
7
|
import { localDateIso } from "./dates.js";
|
|
8
8
|
import { noteIndexPath, readNoteIndex } from "./decision-note-service.js";
|
|
@@ -16,6 +16,8 @@ import { parseProjectBlock } from "./parsers/project-block.js";
|
|
|
16
16
|
import { functionalSpecDigest, unclosedSpecFence } from "./parsers/spec-functional.js";
|
|
17
17
|
import { parsePlanBaselineSeal, parseSpecCriteria, parseSpecRelation, } from "./parsers/spec-relation.js";
|
|
18
18
|
import { parseTasks } from "./parsers/tasks.js";
|
|
19
|
+
import { resumePointOf } from "./plan-current-point.js";
|
|
20
|
+
import { holdingRunOf, readHoldingRuns } from "./plan-open-run.js";
|
|
19
21
|
import { listPendingJournals } from "./retirement/journal.js";
|
|
20
22
|
import { findArtifact } from "./session-artifacts.js";
|
|
21
23
|
import { readSessionPhase } from "./session-narrative.js";
|
|
@@ -58,6 +60,13 @@ export async function buildWorklineIndex(fs, env, paths, input = {}) {
|
|
|
58
60
|
for (const session of sessions) {
|
|
59
61
|
session.units = isolation.bySession.get(session.folder) ?? [];
|
|
60
62
|
}
|
|
63
|
+
// One pass over the live runs for every plan, rather than one scan per plan:
|
|
64
|
+
// the answer is the same map either way, and this is the reading `aw settle`
|
|
65
|
+
// refuses on, so the board and the command cannot disagree about who holds what.
|
|
66
|
+
const runs = await readHoldingRuns(fs, paths);
|
|
67
|
+
for (const plan of plans) {
|
|
68
|
+
plan.holding_run = holdingRunOf(runs, plan.file);
|
|
69
|
+
}
|
|
61
70
|
const discarded = await readDiscarded(fs, sessions, cwd, now);
|
|
62
71
|
const designs = await buildDesignGraph(fs, cwd, [
|
|
63
72
|
...specs.map((s) => ({ file: s.file, kind: "spec" })),
|
|
@@ -158,12 +167,12 @@ function derivePipeline(specs, plans, designs) {
|
|
|
158
167
|
}
|
|
159
168
|
}
|
|
160
169
|
for (const plan of plans) {
|
|
161
|
-
if (plan
|
|
170
|
+
if (!planIsPending(plan))
|
|
162
171
|
continue;
|
|
163
172
|
const presentation = planPresentation(plan, designs);
|
|
164
173
|
items.push({
|
|
165
|
-
kind:
|
|
166
|
-
priority: 3,
|
|
174
|
+
kind: presentation.kind,
|
|
175
|
+
priority: presentation.kind === "plan-handoff" ? 4 : 3,
|
|
167
176
|
file: plan.file,
|
|
168
177
|
number: plan.number,
|
|
169
178
|
slug: plan.slug,
|
|
@@ -196,8 +205,14 @@ function specItem(spec, priority, kind, command, detail) {
|
|
|
196
205
|
};
|
|
197
206
|
}
|
|
198
207
|
function planSummary(plan) {
|
|
199
|
-
|
|
200
|
-
|
|
208
|
+
const handoffs = liveHandoffs(plan);
|
|
209
|
+
// El único plan cerrado que llega acá: `planIsPending` deja fuera del pipeline
|
|
210
|
+
// a todos los demás, y ésta es la línea de título de una fila del pipeline.
|
|
211
|
+
// La rama que hablaba del cierre no verificado de un `done` murió con eso; el
|
|
212
|
+
// dato no se perdió —lo dicen `renderAssuranceAlerts` y el aviso de la propia
|
|
213
|
+
// fila— y conservarla sería un tercer lugar diciendo lo mismo, inalcanzable.
|
|
214
|
+
if (plan.plan_state === "done" && handoffs > 0) {
|
|
215
|
+
return `plan ${plan.number} — cerrado · ${handoffs} traspaso(s) vigente(s)`;
|
|
201
216
|
}
|
|
202
217
|
const phases = plan.phases_total > 0 ? `, fases ${plan.phases_validated}/${plan.phases_total}` : "";
|
|
203
218
|
const blocked = plan.phases_blocked > 0 ? `, ${plan.phases_blocked} bloqueada(s)` : "";
|
|
@@ -229,10 +244,6 @@ export function specDetail(spec, plans) {
|
|
|
229
244
|
obligation: false,
|
|
230
245
|
};
|
|
231
246
|
}
|
|
232
|
-
/** What a plan owes, and whether saying it outranks saying its percentage. */
|
|
233
|
-
export function planDetail(plan, designs) {
|
|
234
|
-
return planPresentation(plan, designs).detail;
|
|
235
|
-
}
|
|
236
247
|
/** The one plan projection shared by the pipeline and direct `resume <plan>`. */
|
|
237
248
|
// biome-ignore lint/complexity/noExcessiveCognitiveComplexity: one presentation keeps direct resume and status equivalent.
|
|
238
249
|
export function planPresentation(plan, designs) {
|
|
@@ -245,8 +256,32 @@ export function planPresentation(plan, designs) {
|
|
|
245
256
|
// no baseline seal is not retroactively made owing or executable merely
|
|
246
257
|
// because a direct `resume <plan>` bypassed the pipeline's done filter.
|
|
247
258
|
if (plan.plan_state === "done") {
|
|
259
|
+
// The one live thing a closure does not settle. Its exit comes from the same
|
|
260
|
+
// derivation the refusals use, so the row cannot name a different way out
|
|
261
|
+
// from the one the seal and the board name.
|
|
262
|
+
const handoff = exitOf(plan);
|
|
263
|
+
if (handoff !== null && handoff.kind === "handoff") {
|
|
264
|
+
return {
|
|
265
|
+
kind: "plan-handoff",
|
|
266
|
+
detail: {
|
|
267
|
+
...base,
|
|
268
|
+
next: handoff.headline,
|
|
269
|
+
// Not an obligation: `obligation` means "neither runnable nor
|
|
270
|
+
// closable", and a handoff is precisely the class that holds nothing
|
|
271
|
+
// shut. Marking it would put somebody else's work ahead of this
|
|
272
|
+
// workspace's own.
|
|
273
|
+
obligation: false,
|
|
274
|
+
// The closure's own caveat survives the handoff row. Without it a plan
|
|
275
|
+
// closed on omitted or substitute evidence would stop saying so the
|
|
276
|
+
// moment it delegated something — a warning lost to an unrelated fact.
|
|
277
|
+
...unverifiedClosure(plan),
|
|
278
|
+
},
|
|
279
|
+
action: { kind: "continue", command: handoff.command, mode: "settlement" },
|
|
280
|
+
};
|
|
281
|
+
}
|
|
248
282
|
const assurance = plan.assurance;
|
|
249
283
|
return {
|
|
284
|
+
kind: "plan-open",
|
|
250
285
|
detail: {
|
|
251
286
|
...base,
|
|
252
287
|
next: assurance === null || assurance === "verified"
|
|
@@ -265,6 +300,7 @@ export function planPresentation(plan, designs) {
|
|
|
265
300
|
const missing = describeMissingDesign(designs, plan.file);
|
|
266
301
|
if (missing !== null) {
|
|
267
302
|
return {
|
|
303
|
+
kind: "plan-open",
|
|
268
304
|
detail: { ...base, next: missing, obligation: true },
|
|
269
305
|
action: {
|
|
270
306
|
kind: "blocked",
|
|
@@ -277,6 +313,7 @@ export function planPresentation(plan, designs) {
|
|
|
277
313
|
const [blocked] = plan.blocked_phases;
|
|
278
314
|
if (blocked !== undefined) {
|
|
279
315
|
return {
|
|
316
|
+
kind: "plan-open",
|
|
280
317
|
detail: {
|
|
281
318
|
...base,
|
|
282
319
|
next: `BLOQUEADA F${blocked.number} — ${blocked.blocker ?? "sin motivo declarado"}`,
|
|
@@ -290,20 +327,22 @@ export function planPresentation(plan, designs) {
|
|
|
290
327
|
},
|
|
291
328
|
};
|
|
292
329
|
}
|
|
293
|
-
const owed =
|
|
294
|
-
|
|
330
|
+
const owed = exitOf(plan);
|
|
331
|
+
// Solo la compensación se apodera de la ruta. Un traspaso sobre un plan ABIERTO
|
|
332
|
+
// no bloquea nada, así que cambiarle el comando dejaría sin ejecutar un plan
|
|
333
|
+
// por trabajo que no es de esta línea — la inversión exacta que la clase evita.
|
|
334
|
+
if (owed !== null && owed.kind === "compensation") {
|
|
295
335
|
return {
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
action: "cerrá las obligaciones compensatorias desde su punto de reanudación",
|
|
302
|
-
},
|
|
336
|
+
kind: "plan-open",
|
|
337
|
+
detail: { ...base, next: owed.headline, obligation: true },
|
|
338
|
+
// Nunca `command: null`: la salida existe —la corrida abierta o `aw settle`—
|
|
339
|
+
// y un tablero que la calla convierte un rechazo accionable en una pared.
|
|
340
|
+
action: { kind: "continue", command: owed.command, mode: "settlement" },
|
|
303
341
|
};
|
|
304
342
|
}
|
|
305
343
|
if (plan.baseline.status === "divergent") {
|
|
306
344
|
return {
|
|
345
|
+
kind: "plan-open",
|
|
307
346
|
detail: { ...base, next: describeUnprovenBaseline(plan), obligation: true },
|
|
308
347
|
action: {
|
|
309
348
|
kind: "handoff",
|
|
@@ -315,6 +354,7 @@ export function planPresentation(plan, designs) {
|
|
|
315
354
|
}
|
|
316
355
|
if (plan.baseline.status === "malformed") {
|
|
317
356
|
return {
|
|
357
|
+
kind: "plan-open",
|
|
318
358
|
detail: { ...base, next: describeUnprovenBaseline(plan), obligation: true },
|
|
319
359
|
action: {
|
|
320
360
|
kind: "blocked",
|
|
@@ -326,6 +366,7 @@ export function planPresentation(plan, designs) {
|
|
|
326
366
|
}
|
|
327
367
|
if (plan.baseline.status === "unresolved") {
|
|
328
368
|
return {
|
|
369
|
+
kind: "plan-open",
|
|
329
370
|
detail: { ...base, next: describeUnprovenBaseline(plan), obligation: true },
|
|
330
371
|
action: {
|
|
331
372
|
kind: "blocked",
|
|
@@ -343,6 +384,7 @@ export function planPresentation(plan, designs) {
|
|
|
343
384
|
// closes, exactly like a normal plan.
|
|
344
385
|
if (plan.spec.status === "standalone") {
|
|
345
386
|
return {
|
|
387
|
+
kind: "plan-open",
|
|
346
388
|
detail: { ...base, ...normalPlanNext(plan) },
|
|
347
389
|
action: { kind: "continue", command: `/w:plan-exec ${plan.file}`, mode: "standalone" },
|
|
348
390
|
};
|
|
@@ -352,6 +394,7 @@ export function planPresentation(plan, designs) {
|
|
|
352
394
|
// accidentally lost behind the counter repair route.
|
|
353
395
|
if (plan.baseline.status === "unsealed") {
|
|
354
396
|
return {
|
|
397
|
+
kind: "plan-open",
|
|
355
398
|
detail: {
|
|
356
399
|
...base,
|
|
357
400
|
...normalPlanNext(plan),
|
|
@@ -368,6 +411,7 @@ export function planPresentation(plan, designs) {
|
|
|
368
411
|
// turn an unreadable/missing contract into an advertised `plan-exec` command.
|
|
369
412
|
if (plan.plan_state === "inconsistent") {
|
|
370
413
|
return {
|
|
414
|
+
kind: "plan-open",
|
|
371
415
|
detail: {
|
|
372
416
|
...base,
|
|
373
417
|
next: "el plan se declara done pero sus contadores no lo respaldan: reconciliar las tareas y fases acreditadas desde plan-exec",
|
|
@@ -377,10 +421,60 @@ export function planPresentation(plan, designs) {
|
|
|
377
421
|
};
|
|
378
422
|
}
|
|
379
423
|
return {
|
|
424
|
+
kind: "plan-open",
|
|
380
425
|
detail: { ...base, ...normalPlanNext(plan) },
|
|
381
426
|
action: { kind: "continue", command: `/w:plan-exec ${plan.file}`, mode: "normal" },
|
|
382
427
|
};
|
|
383
428
|
}
|
|
429
|
+
/** The caveat of a closure short of `verified`, or nothing to say. */
|
|
430
|
+
function unverifiedClosure(plan) {
|
|
431
|
+
const assurance = plan.assurance;
|
|
432
|
+
if (assurance === null || assurance === "verified")
|
|
433
|
+
return {};
|
|
434
|
+
return {
|
|
435
|
+
warning: {
|
|
436
|
+
code: "WORKLINE_PLAN_CLOSURE_UNVERIFIED",
|
|
437
|
+
message: `plan cerrado · no verificado (${assurance}): evidencia omitida o sustituta aceptada, no aprobada`,
|
|
438
|
+
},
|
|
439
|
+
};
|
|
440
|
+
}
|
|
441
|
+
/** How many handoffs of this plan are still in force. */
|
|
442
|
+
function liveHandoffs(plan) {
|
|
443
|
+
return plan.reconciliation?.handoffs.length ?? 0;
|
|
444
|
+
}
|
|
445
|
+
/**
|
|
446
|
+
* WHETHER A PLAN IS PENDING WORK AT ALL — the board's one membership rule.
|
|
447
|
+
*
|
|
448
|
+
* A closed plan is documentary history, except for a handoff still in force:
|
|
449
|
+
* that is live work somebody outside the run took on, no closure ever discharged
|
|
450
|
+
* it, and closing the plan was precisely what made it unfindable. So it comes
|
|
451
|
+
* back — last, and blocking nothing.
|
|
452
|
+
*
|
|
453
|
+
* Exported because `resume <plan>` asks the same question. It used to answer it
|
|
454
|
+
* on its own with `plan_state !== "done"`, which is how a direct resume could
|
|
455
|
+
* call a plan "histórico y sin deuda" while the board, one derivation away, was
|
|
456
|
+
* printing its live handoff.
|
|
457
|
+
*/
|
|
458
|
+
export function planIsPending(plan) {
|
|
459
|
+
return plan.plan_state !== "done" || liveHandoffs(plan) > 0;
|
|
460
|
+
}
|
|
461
|
+
/** The live facts the shared exit is named from, gathered where they are read. */
|
|
462
|
+
function exitContextOf(plan) {
|
|
463
|
+
return { plan: plan.file, current_point: plan.current_point, run: plan.holding_run };
|
|
464
|
+
}
|
|
465
|
+
/**
|
|
466
|
+
* What this plan owes and how somebody gets out of it, or `null` for nothing.
|
|
467
|
+
*
|
|
468
|
+
* The board says it, the pipeline row routes on it and `plan-exec.plan-done`
|
|
469
|
+
* refuses with it — one derivation, in the domain, so the three cannot drift
|
|
470
|
+
* apart again. And it names the plan's CURRENT point: the one the note recorded
|
|
471
|
+
* is history and is reported as history, never as somewhere to go back to.
|
|
472
|
+
*/
|
|
473
|
+
function exitOf(plan) {
|
|
474
|
+
return plan.reconciliation === null
|
|
475
|
+
? null
|
|
476
|
+
: obligationExit(plan.reconciliation, exitContextOf(plan));
|
|
477
|
+
}
|
|
384
478
|
/** The document's design references that are NOT valid, in graph order. */
|
|
385
479
|
export function unresolvedDesignRefs(designs, file) {
|
|
386
480
|
return designs.references.filter((r) => r.from === file && r.state !== "valid");
|
|
@@ -415,26 +509,6 @@ function describeMissingDesign(designs, file) {
|
|
|
415
509
|
return null;
|
|
416
510
|
return `DISEÑO IRRESOLUBLE ${first.baseline} — ${first.detail ?? "no resuelve"}`;
|
|
417
511
|
}
|
|
418
|
-
/**
|
|
419
|
-
* What a plan owes, when it owes anything — the one thing that must be said
|
|
420
|
-
* before offering to run or to close it.
|
|
421
|
-
*
|
|
422
|
-
* A plan with an open obligation is neither executable as it stands nor
|
|
423
|
-
* closable, and saying so with the obligation and its resume point is what keeps
|
|
424
|
-
* the refusal actionable instead of a wall.
|
|
425
|
-
*/
|
|
426
|
-
function describePendingReconciliation(plan) {
|
|
427
|
-
const reconciliation = plan.reconciliation;
|
|
428
|
-
if (reconciliation === null || reconciliation.closable)
|
|
429
|
-
return null;
|
|
430
|
-
const [first] = reconciliation.pending;
|
|
431
|
-
if (first === undefined) {
|
|
432
|
-
return "RECONCILIACIÓN PENDIENTE — el contrato efectivo no se puede componer: ni ejecutable ni cerrable";
|
|
433
|
-
}
|
|
434
|
-
const more = reconciliation.pending.length - 1;
|
|
435
|
-
const rest = more > 0 ? ` (+${more} más)` : "";
|
|
436
|
-
return `RECONCILIACIÓN PENDIENTE por ${first.by} — ${first.text}${rest}: retomá en ${first.resume_point}, ni ejecutable ni cerrable tal cual`;
|
|
437
|
-
}
|
|
438
512
|
/**
|
|
439
513
|
* A plan whose baseline nobody can prove, said as exactly that.
|
|
440
514
|
*
|
|
@@ -662,12 +736,15 @@ async function readPlans(fs, cwd, specs, docs, now, held = new Set()) {
|
|
|
662
736
|
if (cached !== undefined)
|
|
663
737
|
return cached;
|
|
664
738
|
const path = noteIndexPath(DEFAULT_DOCS_CANON.decision, spec.number, spec.slug);
|
|
739
|
+
// A chain that does not parse is NOT "no obligations", and until now the
|
|
740
|
+
// code said so in a comment while doing the opposite: it fell back to an
|
|
741
|
+
// empty list, so a corrupt index read as a clean slate and let a plan close
|
|
742
|
+
// over compensation nobody could read. The reader's own answer is what is
|
|
743
|
+
// cached, refusal included, and the reconciliation reports it the same way
|
|
744
|
+
// it reports a blocked composition.
|
|
665
745
|
const read = await readNoteIndex(fs, cwd, path, { path: spec.file, number: spec.number });
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
const notes = read.ok ? read.read.index.notes : [];
|
|
669
|
-
chains.set(spec.number, notes);
|
|
670
|
-
return notes;
|
|
746
|
+
chains.set(spec.number, read);
|
|
747
|
+
return read;
|
|
671
748
|
};
|
|
672
749
|
const out = [];
|
|
673
750
|
for (const f of files) {
|
|
@@ -681,7 +758,7 @@ async function readPlans(fs, cwd, specs, docs, now, held = new Set()) {
|
|
|
681
758
|
const p = parsePhases(text);
|
|
682
759
|
const sealedDigests = seal.status === "sealed" ? await specDigestsOf(seal.baseline.number) : null;
|
|
683
760
|
const alignment = alignSpecBaseline(seal, sealedDigests);
|
|
684
|
-
const lineage = await reconciliationFor(alignment, seal, sealedSpec, byNumber, chainOf, sealedDigests);
|
|
761
|
+
const lineage = await reconciliationFor(alignment, seal, sealedSpec, byNumber, chainOf, sealedDigests, text);
|
|
685
762
|
const status = parsePlanStatus(text);
|
|
686
763
|
const planState = derivePlanState(status.declared, t, p, lineage.reconciliation);
|
|
687
764
|
const ts = await resolveTimestamp(fs, f.path, undefined, now);
|
|
@@ -705,6 +782,10 @@ async function readPlans(fs, cwd, specs, docs, now, held = new Set()) {
|
|
|
705
782
|
baseline: alignment,
|
|
706
783
|
reconciliation: lineage.reconciliation,
|
|
707
784
|
contract: lineage.contract,
|
|
785
|
+
current_point: resumePointOf(p),
|
|
786
|
+
// Filled in `buildWorklineIndex`, once the live runs are read: a plan is
|
|
787
|
+
// held by a SESSION, and the plans are read before the sessions are.
|
|
788
|
+
holding_run: null,
|
|
708
789
|
date: ts.date,
|
|
709
790
|
relative: ts.relative,
|
|
710
791
|
});
|
|
@@ -836,7 +917,7 @@ function derivePlanState(declared, tasks, phases, reconciliation) {
|
|
|
836
917
|
* with the composition's own refusal as the work owed, so a plan whose chain
|
|
837
918
|
* cannot be read never slips through as closable.
|
|
838
919
|
*/
|
|
839
|
-
async function reconciliationFor(alignment, seal, specText, byNumber, chainOf, digests) {
|
|
920
|
+
async function reconciliationFor(alignment, seal, specText, byNumber, chainOf, digests, planText) {
|
|
840
921
|
const none = { reconciliation: null, contract: null };
|
|
841
922
|
if (alignment.status !== "aligned" || seal.status !== "sealed" || specText === null)
|
|
842
923
|
return none;
|
|
@@ -845,7 +926,12 @@ async function reconciliationFor(alignment, seal, specText, byNumber, chainOf, d
|
|
|
845
926
|
return none;
|
|
846
927
|
// An empty chain composes to a contract with no obligations, so it needs no
|
|
847
928
|
// special case: a plan nobody amended owes nothing and stays closable.
|
|
848
|
-
const
|
|
929
|
+
const reading = await chainOf(spec);
|
|
930
|
+
// An UNREADABLE chain is the opposite case and gets the same treatment as a
|
|
931
|
+
// blocked composition: not closable, and the refusal itself is what is owed.
|
|
932
|
+
if (!reading.ok)
|
|
933
|
+
return blockedBy(reading.failures);
|
|
934
|
+
const chain = reading.read.index.notes;
|
|
849
935
|
const composed = composeEffectiveContract({
|
|
850
936
|
path: spec.file,
|
|
851
937
|
number: spec.number,
|
|
@@ -856,23 +942,40 @@ async function reconciliationFor(alignment, seal, specText, byNumber, chainOf, d
|
|
|
856
942
|
legacy_digest: digests?.exact,
|
|
857
943
|
criteria: parseSpecCriteria(specText, spec.number),
|
|
858
944
|
}, chain);
|
|
859
|
-
if (composed.status === "blocked")
|
|
860
|
-
return
|
|
861
|
-
contract: null,
|
|
862
|
-
reconciliation: {
|
|
863
|
-
pending: composed.failures.map((failure) => ({
|
|
864
|
-
text: `${failure.code}: ${failure.message}`,
|
|
865
|
-
by: "composición",
|
|
866
|
-
resume_point: failure.action,
|
|
867
|
-
})),
|
|
868
|
-
resume_point: composed.failures[0]?.action ?? null,
|
|
869
|
-
closable: false,
|
|
870
|
-
},
|
|
871
|
-
};
|
|
872
|
-
}
|
|
945
|
+
if (composed.status === "blocked")
|
|
946
|
+
return blockedBy(composed.failures);
|
|
873
947
|
return {
|
|
874
948
|
contract: composed.contract,
|
|
875
|
-
reconciliation: reconciliationOf(composed.contract, chain),
|
|
949
|
+
reconciliation: reconciliationOf(composed.contract, chain, planText),
|
|
950
|
+
};
|
|
951
|
+
}
|
|
952
|
+
/**
|
|
953
|
+
* A lineage nobody can read, reported as what it is: work owed.
|
|
954
|
+
*
|
|
955
|
+
* The refusal becomes the pending item because it is the only honest answer —
|
|
956
|
+
* the plan may well owe nothing, and it may owe everything, and the one thing
|
|
957
|
+
* that is certain is that closing it now would be a guess. Its action is the
|
|
958
|
+
* resume point for the same reason: repairing the chain IS the work.
|
|
959
|
+
*/
|
|
960
|
+
function blockedBy(failures) {
|
|
961
|
+
return {
|
|
962
|
+
contract: null,
|
|
963
|
+
reconciliation: {
|
|
964
|
+
pending: failures.map((failure, index) => ({
|
|
965
|
+
text: `${failure.code}: ${failure.message}`,
|
|
966
|
+
by: "composición",
|
|
967
|
+
index,
|
|
968
|
+
// No hay nota, así que no hay punto que ninguna nota haya declarado. La
|
|
969
|
+
// reparación viaja en su propio campo, que es lo que la salida nombra:
|
|
970
|
+
// las fases del plan no son lo que está roto.
|
|
971
|
+
declared_point: "sin nota: la pendiente la fabrica la composición",
|
|
972
|
+
repair: failure.action,
|
|
973
|
+
kind: "compensation",
|
|
974
|
+
legacy: false,
|
|
975
|
+
})),
|
|
976
|
+
handoffs: [],
|
|
977
|
+
closable: false,
|
|
978
|
+
},
|
|
876
979
|
};
|
|
877
980
|
}
|
|
878
981
|
// ── sessions ─────────────────────────────────────────────────────────────────
|