@penclipai/server 2026.704.0 → 2026.714.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/dist/adapters/index.d.ts +1 -1
- package/dist/adapters/index.d.ts.map +1 -1
- package/dist/adapters/index.js.map +1 -1
- package/dist/adapters/process/execute.d.ts.map +1 -1
- package/dist/adapters/process/execute.js +1 -0
- package/dist/adapters/process/execute.js.map +1 -1
- package/dist/adapters/registry.d.ts.map +1 -1
- package/dist/adapters/registry.js +79 -51
- package/dist/adapters/registry.js.map +1 -1
- package/dist/adapters/utils.d.ts +5 -0
- package/dist/adapters/utils.d.ts.map +1 -1
- package/dist/adapters/utils.js.map +1 -1
- package/dist/agent-auth-jwt.d.ts +5 -1
- package/dist/agent-auth-jwt.d.ts.map +1 -1
- package/dist/agent-auth-jwt.js +72 -20
- package/dist/agent-auth-jwt.js.map +1 -1
- package/dist/app.d.ts +2 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +10 -0
- package/dist/app.js.map +1 -1
- package/dist/built-ins/agents/reflection-coach/AGENTS.md +47 -0
- package/dist/built-ins/agents/reflection-coach/routines/recent-agent-reflection.md +77 -0
- package/dist/errors.d.ts +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +2 -2
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +208 -116
- package/dist/index.js.map +1 -1
- package/dist/middleware/api-compression.d.ts +8 -0
- package/dist/middleware/api-compression.d.ts.map +1 -0
- package/dist/middleware/api-compression.js +207 -0
- package/dist/middleware/api-compression.js.map +1 -0
- package/dist/middleware/auth.d.ts.map +1 -1
- package/dist/middleware/auth.js +130 -3
- package/dist/middleware/auth.js.map +1 -1
- package/dist/middleware/error-handler.d.ts.map +1 -1
- package/dist/middleware/error-handler.js +27 -0
- package/dist/middleware/error-handler.js.map +1 -1
- package/dist/onboarding-assets/default/AGENTS.md +1 -0
- package/dist/redaction.d.ts.map +1 -1
- package/dist/redaction.js +11 -0
- package/dist/redaction.js.map +1 -1
- package/dist/routes/access.d.ts.map +1 -1
- package/dist/routes/access.js +4 -3
- package/dist/routes/access.js.map +1 -1
- package/dist/routes/adapters.d.ts.map +1 -1
- package/dist/routes/adapters.js +2 -0
- package/dist/routes/adapters.js.map +1 -1
- package/dist/routes/agents.d.ts.map +1 -1
- package/dist/routes/agents.js +222 -87
- package/dist/routes/agents.js.map +1 -1
- package/dist/routes/attention.d.ts +3 -0
- package/dist/routes/attention.d.ts.map +1 -0
- package/dist/routes/attention.js +24 -0
- package/dist/routes/attention.js.map +1 -0
- package/dist/routes/authz.d.ts.map +1 -1
- package/dist/routes/authz.js +29 -1
- package/dist/routes/authz.js.map +1 -1
- package/dist/routes/board-chat.d.ts.map +1 -1
- package/dist/routes/board-chat.js +4 -1
- package/dist/routes/board-chat.js.map +1 -1
- package/dist/routes/built-in-agents.d.ts +3 -0
- package/dist/routes/built-in-agents.d.ts.map +1 -0
- package/dist/routes/built-in-agents.js +267 -0
- package/dist/routes/built-in-agents.js.map +1 -0
- package/dist/routes/cases.d.ts +46 -0
- package/dist/routes/cases.d.ts.map +1 -0
- package/dist/routes/cases.js +1395 -0
- package/dist/routes/cases.js.map +1 -0
- package/dist/routes/companies.d.ts.map +1 -1
- package/dist/routes/companies.js +4 -1
- package/dist/routes/companies.js.map +1 -1
- package/dist/routes/company-skills.d.ts.map +1 -1
- package/dist/routes/company-skills.js +453 -33
- package/dist/routes/company-skills.js.map +1 -1
- package/dist/routes/environments.d.ts.map +1 -1
- package/dist/routes/environments.js +71 -8
- package/dist/routes/environments.js.map +1 -1
- package/dist/routes/execution-workspaces.d.ts.map +1 -1
- package/dist/routes/execution-workspaces.js +89 -3
- package/dist/routes/execution-workspaces.js.map +1 -1
- package/dist/routes/health.d.ts +2 -0
- package/dist/routes/health.d.ts.map +1 -1
- package/dist/routes/health.js +30 -0
- package/dist/routes/health.js.map +1 -1
- package/dist/routes/inbox-dismissals.d.ts.map +1 -1
- package/dist/routes/inbox-dismissals.js +80 -19
- package/dist/routes/inbox-dismissals.js.map +1 -1
- package/dist/routes/index.d.ts +2 -0
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +2 -0
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/issues.d.ts +25 -0
- package/dist/routes/issues.d.ts.map +1 -1
- package/dist/routes/issues.js +1455 -46
- package/dist/routes/issues.js.map +1 -1
- package/dist/routes/openapi.d.ts.map +1 -1
- package/dist/routes/openapi.js +448 -11
- package/dist/routes/openapi.js.map +1 -1
- package/dist/routes/pipelines.js +2 -2
- package/dist/routes/pipelines.js.map +1 -1
- package/dist/routes/resource-memberships.d.ts.map +1 -1
- package/dist/routes/resource-memberships.js +13 -5
- package/dist/routes/resource-memberships.js.map +1 -1
- package/dist/routes/secrets.d.ts.map +1 -1
- package/dist/routes/secrets.js +261 -1
- package/dist/routes/secrets.js.map +1 -1
- package/dist/routes/sidebar-badges.d.ts.map +1 -1
- package/dist/routes/sidebar-badges.js +18 -2
- package/dist/routes/sidebar-badges.js.map +1 -1
- package/dist/routes/user-profiles.d.ts.map +1 -1
- package/dist/routes/user-profiles.js +5 -4
- package/dist/routes/user-profiles.js.map +1 -1
- package/dist/server-info.d.ts +2 -0
- package/dist/server-info.d.ts.map +1 -1
- package/dist/server-info.js +20 -5
- package/dist/server-info.js.map +1 -1
- package/dist/services/access.d.ts +4 -4
- package/dist/services/access.d.ts.map +1 -1
- package/dist/services/activity.d.ts +3 -3
- package/dist/services/activity.d.ts.map +1 -1
- package/dist/services/activity.js +5 -4
- package/dist/services/activity.js.map +1 -1
- package/dist/services/adapter-registry-bootstrap.reconcile.test.js +1 -0
- package/dist/services/adapter-registry-bootstrap.reconcile.test.js.map +1 -1
- package/dist/services/agent-secret-bindings.d.ts +15 -0
- package/dist/services/agent-secret-bindings.d.ts.map +1 -1
- package/dist/services/agent-secret-bindings.js +43 -0
- package/dist/services/agent-secret-bindings.js.map +1 -1
- package/dist/services/agents.d.ts +194 -133
- package/dist/services/agents.d.ts.map +1 -1
- package/dist/services/agents.js +107 -4
- package/dist/services/agents.js.map +1 -1
- package/dist/services/approvals.d.ts +10 -10
- package/dist/services/approvals.d.ts.map +1 -1
- package/dist/services/approvals.js +9 -1
- package/dist/services/approvals.js.map +1 -1
- package/dist/services/assets.d.ts +5 -5
- package/dist/services/attention.d.ts +11 -0
- package/dist/services/attention.d.ts.map +1 -0
- package/dist/services/attention.js +1024 -0
- package/dist/services/attention.js.map +1 -0
- package/dist/services/authorization.d.ts +15 -2
- package/dist/services/authorization.d.ts.map +1 -1
- package/dist/services/authorization.js +324 -8
- package/dist/services/authorization.js.map +1 -1
- package/dist/services/board-auth.d.ts +2 -2
- package/dist/services/budgets.d.ts.map +1 -1
- package/dist/services/budgets.js +8 -7
- package/dist/services/budgets.js.map +1 -1
- package/dist/services/built-in-agent-metadata.d.ts +9 -0
- package/dist/services/built-in-agent-metadata.d.ts.map +1 -0
- package/dist/services/built-in-agent-metadata.js +39 -0
- package/dist/services/built-in-agent-metadata.js.map +1 -0
- package/dist/services/built-in-agents.d.ts +394 -0
- package/dist/services/built-in-agents.d.ts.map +1 -0
- package/dist/services/built-in-agents.js +1426 -0
- package/dist/services/built-in-agents.js.map +1 -0
- package/dist/services/change-consent-gate.d.ts +18 -0
- package/dist/services/change-consent-gate.d.ts.map +1 -0
- package/dist/services/change-consent-gate.js +170 -0
- package/dist/services/change-consent-gate.js.map +1 -0
- package/dist/services/companies.d.ts +14 -8
- package/dist/services/companies.d.ts.map +1 -1
- package/dist/services/companies.js +6 -1
- package/dist/services/companies.js.map +1 -1
- package/dist/services/company-artifacts.d.ts +4 -1
- package/dist/services/company-artifacts.d.ts.map +1 -1
- package/dist/services/company-artifacts.js +9 -1
- package/dist/services/company-artifacts.js.map +1 -1
- package/dist/services/company-member-roles.d.ts.map +1 -1
- package/dist/services/company-member-roles.js +2 -0
- package/dist/services/company-member-roles.js.map +1 -1
- package/dist/services/company-portability.d.ts +1 -1
- package/dist/services/company-portability.d.ts.map +1 -1
- package/dist/services/company-portability.js +113 -8
- package/dist/services/company-portability.js.map +1 -1
- package/dist/services/company-search.d.ts.map +1 -1
- package/dist/services/company-search.js +843 -294
- package/dist/services/company-search.js.map +1 -1
- package/dist/services/company-skills.d.ts +64 -3
- package/dist/services/company-skills.d.ts.map +1 -1
- package/dist/services/company-skills.js +1205 -20
- package/dist/services/company-skills.js.map +1 -1
- package/dist/services/costs.d.ts +9 -8
- package/dist/services/costs.d.ts.map +1 -1
- package/dist/services/costs.js +9 -2
- package/dist/services/costs.js.map +1 -1
- package/dist/services/dashboard.d.ts +2 -0
- package/dist/services/dashboard.d.ts.map +1 -1
- package/dist/services/dashboard.js +60 -17
- package/dist/services/dashboard.js.map +1 -1
- package/dist/services/database-backup-health.d.ts +34 -0
- package/dist/services/database-backup-health.d.ts.map +1 -0
- package/dist/services/database-backup-health.js +104 -0
- package/dist/services/database-backup-health.js.map +1 -0
- package/dist/services/document-annotations.d.ts +169 -1
- package/dist/services/document-annotations.d.ts.map +1 -1
- package/dist/services/document-annotations.js +272 -1
- package/dist/services/document-annotations.js.map +1 -1
- package/dist/services/documents.d.ts +368 -0
- package/dist/services/documents.d.ts.map +1 -1
- package/dist/services/documents.js +2 -2
- package/dist/services/documents.js.map +1 -1
- package/dist/services/environment-config.d.ts.map +1 -1
- package/dist/services/environment-config.js +6 -0
- package/dist/services/environment-config.js.map +1 -1
- package/dist/services/environment-custom-image-runtime.d.ts +28 -0
- package/dist/services/environment-custom-image-runtime.d.ts.map +1 -1
- package/dist/services/environment-custom-image-runtime.js +106 -7
- package/dist/services/environment-custom-image-runtime.js.map +1 -1
- package/dist/services/environment-custom-images.d.ts +31 -1
- package/dist/services/environment-custom-images.d.ts.map +1 -1
- package/dist/services/environment-custom-images.js +110 -4
- package/dist/services/environment-custom-images.js.map +1 -1
- package/dist/services/environment-execution-target.d.ts.map +1 -1
- package/dist/services/environment-execution-target.js +1 -3
- package/dist/services/environment-execution-target.js.map +1 -1
- package/dist/services/environment-probe.d.ts +1 -0
- package/dist/services/environment-probe.d.ts.map +1 -1
- package/dist/services/environment-probe.js +99 -5
- package/dist/services/environment-probe.js.map +1 -1
- package/dist/services/environments.d.ts +3 -1
- package/dist/services/environments.d.ts.map +1 -1
- package/dist/services/environments.js +98 -3
- package/dist/services/environments.js.map +1 -1
- package/dist/services/execution-workspace-policy.d.ts +29 -3
- package/dist/services/execution-workspace-policy.d.ts.map +1 -1
- package/dist/services/execution-workspace-policy.js +44 -1
- package/dist/services/execution-workspace-policy.js.map +1 -1
- package/dist/services/execution-workspaces.d.ts +64 -1
- package/dist/services/execution-workspaces.d.ts.map +1 -1
- package/dist/services/execution-workspaces.js +634 -3
- package/dist/services/execution-workspaces.js.map +1 -1
- package/dist/services/external-objects.d.ts +26 -26
- package/dist/services/feedback.d.ts +2 -2
- package/dist/services/finance.d.ts +5 -5
- package/dist/services/goals.d.ts +8 -8
- package/dist/services/heartbeat-stop-metadata.d.ts +2 -2
- package/dist/services/heartbeat-stop-metadata.d.ts.map +1 -1
- package/dist/services/heartbeat-stop-metadata.js +4 -0
- package/dist/services/heartbeat-stop-metadata.js.map +1 -1
- package/dist/services/heartbeat-stop-metadata.test.js +9 -0
- package/dist/services/heartbeat-stop-metadata.test.js.map +1 -1
- package/dist/services/heartbeat.d.ts +133 -28
- package/dist/services/heartbeat.d.ts.map +1 -1
- package/dist/services/heartbeat.js +1963 -239
- package/dist/services/heartbeat.js.map +1 -1
- package/dist/services/inbox-dismissals.d.ts +26 -0
- package/dist/services/inbox-dismissals.d.ts.map +1 -1
- package/dist/services/inbox-dismissals.js +33 -18
- package/dist/services/inbox-dismissals.js.map +1 -1
- package/dist/services/index.d.ts +3 -1
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +3 -1
- package/dist/services/index.js.map +1 -1
- package/dist/services/instance-settings.d.ts +25 -1
- package/dist/services/instance-settings.d.ts.map +1 -1
- package/dist/services/instance-settings.js +103 -5
- package/dist/services/instance-settings.js.map +1 -1
- package/dist/services/issue-continuation-summary.js +1 -1
- package/dist/services/issue-continuation-summary.js.map +1 -1
- package/dist/services/issue-recovery-actions.d.ts +3 -0
- package/dist/services/issue-recovery-actions.d.ts.map +1 -1
- package/dist/services/issue-recovery-actions.js +9 -0
- package/dist/services/issue-recovery-actions.js.map +1 -1
- package/dist/services/issue-rewake-throttle.d.ts +92 -0
- package/dist/services/issue-rewake-throttle.d.ts.map +1 -0
- package/dist/services/issue-rewake-throttle.js +139 -0
- package/dist/services/issue-rewake-throttle.js.map +1 -0
- package/dist/services/issue-thread-interactions.d.ts +8 -1
- package/dist/services/issue-thread-interactions.d.ts.map +1 -1
- package/dist/services/issue-thread-interactions.js +231 -16
- package/dist/services/issue-thread-interactions.js.map +1 -1
- package/dist/services/issue-visibility.d.ts +4 -0
- package/dist/services/issue-visibility.d.ts.map +1 -0
- package/dist/services/issue-visibility.js +9 -0
- package/dist/services/issue-visibility.js.map +1 -0
- package/dist/services/issues.d.ts +225 -105
- package/dist/services/issues.d.ts.map +1 -1
- package/dist/services/issues.js +540 -18
- package/dist/services/issues.js.map +1 -1
- package/dist/services/local-service-supervisor.d.ts +3 -0
- package/dist/services/local-service-supervisor.d.ts.map +1 -1
- package/dist/services/local-service-supervisor.js +51 -0
- package/dist/services/local-service-supervisor.js.map +1 -1
- package/dist/services/pipeline-case-outputs.d.ts.map +1 -1
- package/dist/services/pipeline-case-outputs.js +2 -1
- package/dist/services/pipeline-case-outputs.js.map +1 -1
- package/dist/services/pipelines-aggregation.d.ts.map +1 -1
- package/dist/services/pipelines-aggregation.js +3 -2
- package/dist/services/pipelines-aggregation.js.map +1 -1
- package/dist/services/pipelines.d.ts +165 -165
- package/dist/services/pipelines.d.ts.map +1 -1
- package/dist/services/pipelines.js +6 -4
- package/dist/services/pipelines.js.map +1 -1
- package/dist/services/plugin-database.d.ts +2 -2
- package/dist/services/plugin-environment-driver.d.ts +1 -1
- package/dist/services/plugin-host-services.d.ts.map +1 -1
- package/dist/services/plugin-host-services.js +3 -1
- package/dist/services/plugin-host-services.js.map +1 -1
- package/dist/services/plugin-managed-routines.d.ts +1 -0
- package/dist/services/plugin-managed-routines.d.ts.map +1 -1
- package/dist/services/plugin-registry.d.ts +21 -21
- package/dist/services/productivity-review.d.ts +1 -0
- package/dist/services/productivity-review.d.ts.map +1 -1
- package/dist/services/productivity-review.js +6 -5
- package/dist/services/productivity-review.js.map +1 -1
- package/dist/services/projects.d.ts +9 -9
- package/dist/services/recovery/service.d.ts +82 -54
- package/dist/services/recovery/service.d.ts.map +1 -1
- package/dist/services/recovery/service.js +200 -35
- package/dist/services/recovery/service.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.d.ts +1 -0
- package/dist/services/recovery/successful-run-handoff.d.ts.map +1 -1
- package/dist/services/recovery/successful-run-handoff.js +2 -0
- package/dist/services/recovery/successful-run-handoff.js.map +1 -1
- package/dist/services/recovery/successful-run-handoff.test.js +20 -0
- package/dist/services/recovery/successful-run-handoff.test.js.map +1 -1
- package/dist/services/resource-memberships.d.ts +13 -10
- package/dist/services/resource-memberships.d.ts.map +1 -1
- package/dist/services/resource-memberships.js +89 -20
- package/dist/services/resource-memberships.js.map +1 -1
- package/dist/services/responsible-user-denial-run-outcomes.d.ts +60 -0
- package/dist/services/responsible-user-denial-run-outcomes.d.ts.map +1 -0
- package/dist/services/responsible-user-denial-run-outcomes.js +56 -0
- package/dist/services/responsible-user-denial-run-outcomes.js.map +1 -0
- package/dist/services/responsible-user-denial-run-outcomes.test.d.ts +2 -0
- package/dist/services/responsible-user-denial-run-outcomes.test.d.ts.map +1 -0
- package/dist/services/responsible-user-denial-run-outcomes.test.js +75 -0
- package/dist/services/responsible-user-denial-run-outcomes.test.js.map +1 -0
- package/dist/services/routines.d.ts +30 -8
- package/dist/services/routines.d.ts.map +1 -1
- package/dist/services/routines.js +241 -18
- package/dist/services/routines.js.map +1 -1
- package/dist/services/run-liveness.d.ts.map +1 -1
- package/dist/services/run-liveness.js +21 -0
- package/dist/services/run-liveness.js.map +1 -1
- package/dist/services/run-log-store.d.ts +1 -0
- package/dist/services/run-log-store.d.ts.map +1 -1
- package/dist/services/run-log-store.js +4 -0
- package/dist/services/run-log-store.js.map +1 -1
- package/dist/services/run-scratch.d.ts +42 -0
- package/dist/services/run-scratch.d.ts.map +1 -0
- package/dist/services/run-scratch.js +111 -0
- package/dist/services/run-scratch.js.map +1 -0
- package/dist/services/run-scratch.test.d.ts +2 -0
- package/dist/services/run-scratch.test.d.ts.map +1 -0
- package/dist/services/run-scratch.test.js +98 -0
- package/dist/services/run-scratch.test.js.map +1 -0
- package/dist/services/secrets.d.ts +1261 -64
- package/dist/services/secrets.d.ts.map +1 -1
- package/dist/services/secrets.js +1089 -96
- package/dist/services/secrets.js.map +1 -1
- package/dist/services/task-watchdogs.d.ts +1 -0
- package/dist/services/task-watchdogs.d.ts.map +1 -1
- package/dist/services/task-watchdogs.js +78 -9
- package/dist/services/task-watchdogs.js.map +1 -1
- package/dist/services/work-timeline.d.ts.map +1 -1
- package/dist/services/work-timeline.js +34 -2
- package/dist/services/work-timeline.js.map +1 -1
- package/dist/services/workspace-runtime-read-model.d.ts +30 -29
- package/dist/services/workspace-runtime-read-model.d.ts.map +1 -1
- package/dist/services/workspace-runtime-read-model.js.map +1 -1
- package/dist/services/workspace-runtime.d.ts +59 -13
- package/dist/services/workspace-runtime.d.ts.map +1 -1
- package/dist/services/workspace-runtime.js +1121 -102
- package/dist/services/workspace-runtime.js.map +1 -1
- package/dist/skills-catalog/catalog/bundled/paperclip-operations/reflection-coach/SKILL.md +202 -0
- package/dist/skills-catalog/catalog/bundled/product/paperclip-capsules/SKILL.md +1 -1
- package/dist/skills-catalog/catalog/bundled/product/wireframe/SKILL.md +1 -1
- package/dist/skills-catalog/catalog/optional/content/release-announcement/SKILL.md +90 -0
- package/dist/skills-catalog/catalog/optional/finance/ramp/SKILL.md +98 -0
- package/dist/skills-catalog/generated/catalog.json +84 -12
- package/dist/ui-branding.d.ts +7 -0
- package/dist/ui-branding.d.ts.map +1 -1
- package/dist/ui-branding.js +8 -2
- package/dist/ui-branding.js.map +1 -1
- package/dist/version.d.ts +14 -0
- package/dist/version.d.ts.map +1 -1
- package/dist/version.js +114 -3
- package/dist/version.js.map +1 -1
- package/package.json +19 -20
- package/skills/paperclip/SKILL.md +45 -10
- package/skills/paperclip/references/api-reference.md +246 -1
- package/skills/paperclip/references/cases.md +295 -0
- package/skills/paperclip/references/company-skills.md +1 -1
- package/skills/paperclip-board/SKILL.md +3 -4
- package/skills/paperclip-converting-plans-to-tasks/SKILL.md +3 -7
- package/skills/para-memory-files/SKILL.md +3 -7
- package/ui-dist/assets/{abnfDiagram-VRR7QNED-BsFz2IiG.js → abnfDiagram-VRR7QNED-Dtgfy1PK.js} +1 -1
- package/ui-dist/assets/{arc-HZhAwbOs.js → arc-BGdvNvs8.js} +1 -1
- package/ui-dist/assets/{architectureDiagram-ZJ3FMSHR-BteMjuOn.js → architectureDiagram-ZJ3FMSHR-CK19SQDx.js} +1 -1
- package/ui-dist/assets/{blockDiagram-677ZJIJ3-Iq66uZjf.js → blockDiagram-677ZJIJ3-Kh4N3XG4.js} +1 -1
- package/ui-dist/assets/{browser-ponyfill-BBsuyZJt.js → browser-ponyfill-B3hXtEFW.js} +1 -1
- package/ui-dist/assets/{c4Diagram-LMCZKHZV-_nlglj7I.js → c4Diagram-LMCZKHZV-CBHpGrgU.js} +1 -1
- package/ui-dist/assets/channel-4fjB8e8N.js +1 -0
- package/ui-dist/assets/{chunk-2Q5K7J3B-Cvz7WwSQ.js → chunk-2Q5K7J3B-BdHbqi7k.js} +1 -1
- package/ui-dist/assets/{chunk-32BRIVSS-LLubniCS.js → chunk-32BRIVSS-DxtzZzpt.js} +1 -1
- package/ui-dist/assets/{chunk-5VM5RSS4-BOst5hcr.js → chunk-5VM5RSS4-DMKxBbgu.js} +1 -1
- package/ui-dist/assets/{chunk-EX3LRPZG-D5WNShVm.js → chunk-EX3LRPZG-BaIOPi4v.js} +1 -1
- package/ui-dist/assets/{chunk-JWPE2WC7-CA07x4av.js → chunk-JWPE2WC7-DGo3MPmr.js} +1 -1
- package/ui-dist/assets/{chunk-MOJQB5TN-Clfi83rK.js → chunk-MOJQB5TN-BEhQg0uD.js} +1 -1
- package/ui-dist/assets/{chunk-RYQCIY6F-BhZ6p7YJ.js → chunk-RYQCIY6F-HPJ6zRpJ.js} +1 -1
- package/ui-dist/assets/{chunk-V7JOEXUC-CdexJGoV.js → chunk-V7JOEXUC-Bl_6cAJD.js} +1 -1
- package/ui-dist/assets/{chunk-VR4S4FIN-8vjmBhr1.js → chunk-VR4S4FIN-KMjgGCsw.js} +1 -1
- package/ui-dist/assets/{chunk-XXDRQBXY-CqmCaplj.js → chunk-XXDRQBXY-oWGAIKjr.js} +1 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-CTXxO5l9.js +1 -0
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CTXxO5l9.js +1 -0
- package/ui-dist/assets/{cose-bilkent-JH36ORCC-CY-zAygY.js → cose-bilkent-JH36ORCC-Ckqse1pH.js} +1 -1
- package/ui-dist/assets/{cynefin-VYW2F7L2-BQSQ1HKr.js → cynefin-VYW2F7L2-DfZ8Hzqi.js} +1 -1
- package/ui-dist/assets/{cynefinDiagram-TSTJHNR4-NJCuFrZL.js → cynefinDiagram-TSTJHNR4-BkDQo9oi.js} +1 -1
- package/ui-dist/assets/{dagre-VKFMJZFB-DAUPIc8g.js → dagre-VKFMJZFB-ClghXQ6E.js} +1 -1
- package/ui-dist/assets/{diagram-FQU43EPY-DvMwJlCi.js → diagram-FQU43EPY-D5a0CwpV.js} +1 -1
- package/ui-dist/assets/{diagram-G47NLZAW-DPY0Jz_y.js → diagram-G47NLZAW-hVjYR_xl.js} +1 -1
- package/ui-dist/assets/{diagram-NH7WQ7WH-BpopeEhp.js → diagram-NH7WQ7WH-BlDPgD5Z.js} +1 -1
- package/ui-dist/assets/{diagram-OA4YK3LP-Qpu05z9X.js → diagram-OA4YK3LP-D0iZKIS3.js} +1 -1
- package/ui-dist/assets/{diagram-WEI45ONY-DHnvw9XU.js → diagram-WEI45ONY-m6hrfD0J.js} +1 -1
- package/ui-dist/assets/{ebnfDiagram-CCIWWBDH-D61S54_7.js → ebnfDiagram-CCIWWBDH-D4SQYLod.js} +1 -1
- package/ui-dist/assets/{erDiagram-Q63AITRT-pplAN_x2.js → erDiagram-Q63AITRT-Byzb6-I5.js} +1 -1
- package/ui-dist/assets/{flowDiagram-23GEKE2U-BaBcbyDq.js → flowDiagram-23GEKE2U-CaTUkFO6.js} +1 -1
- package/ui-dist/assets/{ganttDiagram-NO4QXBWP-BOJSII2b.js → ganttDiagram-NO4QXBWP-DmdMQ3ES.js} +1 -1
- package/ui-dist/assets/{gitGraphDiagram-IHSO6WYX-aYAaO4a2.js → gitGraphDiagram-IHSO6WYX-Bt-1g2CS.js} +1 -1
- package/ui-dist/assets/{index-CZxYajxF.js → index-2Dk9yO0W.js} +1 -1
- package/ui-dist/assets/{index-B8H0SHw1.js → index-8jLpgFNU.js} +1 -1
- package/ui-dist/assets/{index-3EKATXgc.js → index-AP_iimxs.js} +1 -1
- package/ui-dist/assets/{index-C2JgdjPa.js → index-BNJasQY9.js} +1 -1
- package/ui-dist/assets/{index-BaiskB3o.js → index-BO-aNmyX.js} +1 -1
- package/ui-dist/assets/{index-B5YenxAQ.js → index-BPCzCn1Y.js} +1 -1
- package/ui-dist/assets/{index-Da2kqT1M.js → index-BSLnLTb2.js} +1 -1
- package/ui-dist/assets/{index-By0oeEvz.js → index-CCZ2qgHN.js} +1 -1
- package/ui-dist/assets/{index-bUFCSEgv.js → index-CLZXR1k9.js} +1 -1
- package/ui-dist/assets/{index-CJlw4l9L.js → index-CTNfrE1s.js} +1 -1
- package/ui-dist/assets/{index-TmpY6Xh_.js → index-ChNd25s7.js} +1 -1
- package/ui-dist/assets/{index-BRgdHUNR.js → index-CjHiMOEO.js} +1 -1
- package/ui-dist/assets/{index-DrL6pHSJ.js → index-CmeJQpXZ.js} +1 -1
- package/ui-dist/assets/index-CyuYtn7U.css +1 -0
- package/ui-dist/assets/{index-CKKytnOd.js → index-CzZjM8eh.js} +1 -1
- package/ui-dist/assets/{index-Dceamza_.js → index-D-6T0Aft.js} +1 -1
- package/ui-dist/assets/{index-CjDqB1SX.js → index-DG_7V1pG.js} +1 -1
- package/ui-dist/assets/index-DIKcgxCt.js +676 -0
- package/ui-dist/assets/{index-BKVeJ3Jh.js → index-DiUerHmi.js} +1 -1
- package/ui-dist/assets/{index-C-nKjFZh.js → index-NZ7v5Fc2.js} +1 -1
- package/ui-dist/assets/{index-CvPPuNs1.js → index-Py70EvBg.js} +1 -1
- package/ui-dist/assets/{index-LHkZdu0h.js → index-R3aYn0qM.js} +1 -1
- package/ui-dist/assets/{index-BT8b79Bd.js → index-YXpm7gW-.js} +1 -1
- package/ui-dist/assets/{index-CemenVOf.js → index-n4q3gzki.js} +1 -1
- package/ui-dist/assets/{index-D3ODiUup.js → index-vlZ3GoYY.js} +1 -1
- package/ui-dist/assets/{infoDiagram-FWYZ7A6U-C7_90qGq.js → infoDiagram-FWYZ7A6U-jdi5ciVg.js} +1 -1
- package/ui-dist/assets/{ishikawaDiagram-FXEZZL3T-T-nPPdTt.js → ishikawaDiagram-FXEZZL3T-CMz5VvYp.js} +1 -1
- package/ui-dist/assets/{journeyDiagram-5HDEW3XC-C3hqQN0R.js → journeyDiagram-5HDEW3XC-DK6dk2R-.js} +1 -1
- package/ui-dist/assets/{kanban-definition-HUTT4EX6-CPoD9DUm.js → kanban-definition-HUTT4EX6-DX5cZL-D.js} +1 -1
- package/ui-dist/assets/{linear-D-S8yr3Z.js → linear-CI96ABKp.js} +1 -1
- package/ui-dist/assets/{mermaid.core-DhvH8shK.js → mermaid.core-DnsEVfbd.js} +4 -4
- package/ui-dist/assets/{mindmap-definition-LN4V7U3C-CxCIKrKo.js → mindmap-definition-LN4V7U3C-BdDCY7hf.js} +1 -1
- package/ui-dist/assets/{pegDiagram-2B236MQR-D4G-PC6N.js → pegDiagram-2B236MQR-DuY4TF-f.js} +1 -1
- package/ui-dist/assets/{pieDiagram-ENE6RG2P-N4X8UvqY.js → pieDiagram-ENE6RG2P-bgFw7dm3.js} +1 -1
- package/ui-dist/assets/{quadrantDiagram-ABIIQ3AL-CZohoDln.js → quadrantDiagram-ABIIQ3AL-BCZVWyWS.js} +1 -1
- package/ui-dist/assets/{railroadDiagram-RFXS5EU6-fMGQVhwF.js → railroadDiagram-RFXS5EU6-D9V5_Cgc.js} +1 -1
- package/ui-dist/assets/{requirementDiagram-TGXJPOKE-CK0IuUmk.js → requirementDiagram-TGXJPOKE-CItsya2r.js} +1 -1
- package/ui-dist/assets/{sankeyDiagram-HTMAVEWB-pSfb3CqG.js → sankeyDiagram-HTMAVEWB-Cz9IHsZO.js} +1 -1
- package/ui-dist/assets/{sequenceDiagram-DBY2YBRQ-CbhkqIeq.js → sequenceDiagram-DBY2YBRQ-hMSqTiwK.js} +1 -1
- package/ui-dist/assets/{sizeCapture-X5ZJPWSS-B6vqqPx-.js → sizeCapture-X5ZJPWSS-0g9M5wMf.js} +1 -1
- package/ui-dist/assets/{stateDiagram-2N3HPSRC-DIJf9h5C.js → stateDiagram-2N3HPSRC-F8_YhgWl.js} +1 -1
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-fZImUBtq.js +1 -0
- package/ui-dist/assets/{swimlanes-5IMT3BWC-DIX_LV8O.js → swimlanes-5IMT3BWC-CCZqPbpE.js} +2 -2
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-9C1UT51R.js +8 -0
- package/ui-dist/assets/{timeline-definition-FHXFAJF6-CD-Pxb_g.js → timeline-definition-FHXFAJF6-BeUIr18x.js} +1 -1
- package/ui-dist/assets/{vennDiagram-L72KCM5P-BAZsWL0R.js → vennDiagram-L72KCM5P-D3d5h_G4.js} +1 -1
- package/ui-dist/assets/{wardleyDiagram-EHGQE667-CnNyfwX5.js → wardleyDiagram-EHGQE667-Bzt-As9A.js} +1 -1
- package/ui-dist/assets/{xychartDiagram-FW5EYKEG-j9YgsD3Y.js → xychartDiagram-FW5EYKEG-C2mly0xf.js} +1 -1
- package/ui-dist/fonts/InterVariable-Italic.woff2 +0 -0
- package/ui-dist/fonts/InterVariable.woff2 +0 -0
- package/ui-dist/fonts/NOTICE.md +17 -0
- package/ui-dist/index.html +2 -2
- package/ui-dist/locales/en/common.json +1142 -5
- package/ui-dist/locales/zh-CN/common.json +1140 -3
- package/ui-dist/assets/channel-CsiI2LYw.js +0 -1
- package/ui-dist/assets/classDiagram-OUVF2IWQ-CBn1Jqo8.js +0 -1
- package/ui-dist/assets/classDiagram-v2-EOCWNBFH-CBn1Jqo8.js +0 -1
- package/ui-dist/assets/index-BsL8K1vL.css +0 -1
- package/ui-dist/assets/index-D__fTsb2.js +0 -643
- package/ui-dist/assets/stateDiagram-v2-6OUMAXLB-DpwLD7YL.js +0 -1
- package/ui-dist/assets/swimlanesDiagram-G3AALYLV-Cklauutg.js +0 -8
package/dist/index.js
CHANGED
|
@@ -18,7 +18,8 @@ import { loadConfig } from "./config.js";
|
|
|
18
18
|
import { logger } from "./middleware/logger.js";
|
|
19
19
|
import { setupEnvironmentCustomImageTerminalWebSocketServer } from "./realtime/environment-custom-image-terminal-ws.js";
|
|
20
20
|
import { setupLiveEventsWebSocketServer } from "./realtime/live-events-ws.js";
|
|
21
|
-
import { feedbackService, backfillPrincipalAccessCompatibility, bootstrapExecutionPolicyFromEnv, environmentCustomImageService, heartbeatService, instanceSettingsService, reconcileCloudUpstreamRunsOnStartup, reconcileCodexLocalManagedHomesOnStartup, reconcilePersistedRuntimeServicesOnStartup, routineService, } from "./services/index.js";
|
|
21
|
+
import { feedbackService, backfillPrincipalAccessCompatibility, bootstrapExecutionPolicyFromEnv, environmentCustomImageService, heartbeatService, instanceSettingsService, reconcileBuiltInAgentsOnStartup, reconcileCloudUpstreamRunsOnStartup, reconcileCodexLocalManagedHomesOnStartup, reconcilePersistedRuntimeServicesOnStartup, routineService, } from "./services/index.js";
|
|
22
|
+
import { resolveWorktreeRunExecutionActivationState } from "./services/instance-settings.js";
|
|
22
23
|
import { parseAdapterRegistryEnv, reconcileAdapterAvailability, } from "./services/adapter-registry-bootstrap.js";
|
|
23
24
|
import { createFeedbackTraceShareClientFromConfig } from "./services/feedback-share-client.js";
|
|
24
25
|
import { buildRuntimeApiCandidateUrls, choosePrimaryRuntimeApiUrl } from "./runtime-api.js";
|
|
@@ -464,6 +465,15 @@ export async function startServer() {
|
|
|
464
465
|
shareClient: createFeedbackTraceShareClientFromConfig(config),
|
|
465
466
|
});
|
|
466
467
|
const backupSettingsSvc = instanceSettingsService(db);
|
|
468
|
+
const databaseBackupMaxAgeHours = Math.max(1, Number(process.env.PAPERCLIP_DB_BACKUP_MAX_AGE_HOURS) ||
|
|
469
|
+
Math.max(26, Math.ceil((config.databaseBackupIntervalMinutes / 60) * 2)));
|
|
470
|
+
const databaseBackupAlertFile = process.env.PAPERCLIP_DB_BACKUP_ALERT_FILE ||
|
|
471
|
+
resolve(config.databaseBackupDir, "..", "health", "db-backup-to-s3.failure");
|
|
472
|
+
const databaseBackupAlertFiles = [
|
|
473
|
+
databaseBackupAlertFile,
|
|
474
|
+
resolve(config.databaseBackupDir, "db-backup-to-s3.failure"),
|
|
475
|
+
resolve(config.databaseBackupDir, "..", "db-backup-to-s3.failure"),
|
|
476
|
+
];
|
|
467
477
|
let databaseBackupInFlight = false;
|
|
468
478
|
const runServerDatabaseBackup = async (trigger) => {
|
|
469
479
|
if (databaseBackupInFlight) {
|
|
@@ -533,6 +543,15 @@ export async function startServer() {
|
|
|
533
543
|
return result;
|
|
534
544
|
},
|
|
535
545
|
},
|
|
546
|
+
databaseBackupHealth: config.databaseBackupEnabled
|
|
547
|
+
? {
|
|
548
|
+
enabled: config.databaseBackupEnabled,
|
|
549
|
+
backupDir: config.databaseBackupDir,
|
|
550
|
+
maxAgeHours: databaseBackupMaxAgeHours,
|
|
551
|
+
alertFile: databaseBackupAlertFile,
|
|
552
|
+
alertFiles: databaseBackupAlertFiles,
|
|
553
|
+
}
|
|
554
|
+
: undefined,
|
|
536
555
|
deploymentMode: config.deploymentMode,
|
|
537
556
|
deploymentExposure: config.deploymentExposure,
|
|
538
557
|
allowedHostnames: config.allowedHostnames,
|
|
@@ -613,6 +632,15 @@ export async function startServer() {
|
|
|
613
632
|
.catch((err) => {
|
|
614
633
|
logger.error({ err }, "startup reconciliation of codex_local managed homes failed");
|
|
615
634
|
});
|
|
635
|
+
void reconcileBuiltInAgentsOnStartup(db)
|
|
636
|
+
.then((result) => {
|
|
637
|
+
if (result.reconciled > 0 || result.unknown > 0 || result.duplicates > 0 || result.autoEnsured > 0) {
|
|
638
|
+
logger.warn(result, "startup reconciliation of built-in agents complete");
|
|
639
|
+
}
|
|
640
|
+
})
|
|
641
|
+
.catch((err) => {
|
|
642
|
+
logger.error({ err }, "startup reconciliation of built-in agents failed");
|
|
643
|
+
});
|
|
616
644
|
// Force the instance onto the Kubernetes sandbox provider when configured via
|
|
617
645
|
// env (PAPERCLIP_EXECUTION_MODE=kubernetes). Runs BEFORE the heartbeat resumes
|
|
618
646
|
// queued runs so the policy + managed k8s environments are in place. A bad
|
|
@@ -631,107 +659,60 @@ export async function startServer() {
|
|
|
631
659
|
logger.error({ err }, "failed to apply forced execution policy from environment");
|
|
632
660
|
throw err;
|
|
633
661
|
}
|
|
662
|
+
let drainHeartbeatRunsForShutdown = null;
|
|
663
|
+
let heartbeatSchedulerStopped = false;
|
|
664
|
+
let heartbeatSchedulerInterval = null;
|
|
665
|
+
const heartbeatSchedulerInFlight = new Set();
|
|
666
|
+
const trackHeartbeatSchedulerWork = (work) => {
|
|
667
|
+
let tracked;
|
|
668
|
+
tracked = Promise.resolve(work)
|
|
669
|
+
.then(() => undefined, () => undefined)
|
|
670
|
+
.finally(() => {
|
|
671
|
+
heartbeatSchedulerInFlight.delete(tracked);
|
|
672
|
+
});
|
|
673
|
+
heartbeatSchedulerInFlight.add(tracked);
|
|
674
|
+
};
|
|
675
|
+
const waitForHeartbeatSchedulerIdle = async () => {
|
|
676
|
+
while (heartbeatSchedulerInFlight.size > 0) {
|
|
677
|
+
await Promise.allSettled([...heartbeatSchedulerInFlight]);
|
|
678
|
+
}
|
|
679
|
+
};
|
|
634
680
|
if (config.heartbeatSchedulerEnabled) {
|
|
635
681
|
const heartbeat = heartbeatService(db, { pluginWorkerManager });
|
|
682
|
+
drainHeartbeatRunsForShutdown = heartbeat.drainRunningRunsForShutdown;
|
|
636
683
|
const environmentCustomImages = environmentCustomImageService(db, { pluginWorkerManager });
|
|
637
684
|
const routines = routineService(db, { pluginWorkerManager });
|
|
685
|
+
const worktreeRunExecutionActivation = await resolveWorktreeRunExecutionActivationState({
|
|
686
|
+
getExperimental: () => instanceSettingsService(db).getExperimental(),
|
|
687
|
+
});
|
|
688
|
+
logger.info({
|
|
689
|
+
state: worktreeRunExecutionActivation.armed ? "armed" : "disarmed",
|
|
690
|
+
cutoff: worktreeRunExecutionActivation.cutoff,
|
|
691
|
+
}, "worktree run-execution cutoff state");
|
|
692
|
+
const heartbeatSchedulingSuppression = await heartbeat.resolveSchedulingSuppression();
|
|
638
693
|
// Reap orphaned runs before timer ticks start so wakeups cannot coalesce
|
|
639
694
|
// into a dead "running" row during startup recovery.
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
649
|
-
|
|
695
|
+
if (heartbeatSchedulingSuppression.suppressed) {
|
|
696
|
+
logger.warn({ reason: heartbeatSchedulingSuppression.reason }, "heartbeat scheduling suppressed for this runtime instance");
|
|
697
|
+
}
|
|
698
|
+
else {
|
|
699
|
+
const startupHeartbeatRecovery = (async () => {
|
|
700
|
+
for (let attempt = 1; attempt <= 2; attempt++) {
|
|
701
|
+
try {
|
|
702
|
+
const result = await heartbeat.reapOrphanedRuns();
|
|
703
|
+
logger.info({ reaped: result.reaped, runIds: result.runIds }, "startup reap of orphaned heartbeat runs complete");
|
|
704
|
+
break;
|
|
650
705
|
}
|
|
651
|
-
|
|
652
|
-
|
|
706
|
+
catch (err) {
|
|
707
|
+
if (attempt < 2) {
|
|
708
|
+
logger.warn({ err, attempt }, "startup reap failed, retrying");
|
|
709
|
+
}
|
|
710
|
+
else {
|
|
711
|
+
logger.error({ err }, "startup reap of orphaned heartbeat runs failed after retry — periodic reaper will serve as degraded backstop");
|
|
712
|
+
}
|
|
653
713
|
}
|
|
654
714
|
}
|
|
655
|
-
|
|
656
|
-
const promotion = await heartbeat.promoteDueScheduledRetries();
|
|
657
|
-
await heartbeat.resumeQueuedRuns();
|
|
658
|
-
const reconciled = await heartbeat.reconcileStrandedAssignedIssues();
|
|
659
|
-
if (promotion.promoted > 0 ||
|
|
660
|
-
reconciled.assignmentDispatched > 0 ||
|
|
661
|
-
reconciled.dispatchRequeued > 0 ||
|
|
662
|
-
reconciled.continuationRequeued > 0 ||
|
|
663
|
-
reconciled.successfulRunHandoffEscalated > 0 ||
|
|
664
|
-
reconciled.escalated > 0) {
|
|
665
|
-
logger.warn({ promotedScheduledRetries: promotion.promoted, promotedScheduledRetryRunIds: promotion.runIds, ...reconciled }, "startup heartbeat recovery changed assigned issue state");
|
|
666
|
-
}
|
|
667
|
-
const issueGraphReconciled = await heartbeat.reconcileIssueGraphLiveness();
|
|
668
|
-
if (issueGraphReconciled.escalationsCreated > 0 || issueGraphReconciled.dependencyWakesHealed > 0) {
|
|
669
|
-
logger.warn({ ...issueGraphReconciled }, "startup issue-graph liveness reconciliation changed issue graph state");
|
|
670
|
-
}
|
|
671
|
-
const taskWatchdogsReconciled = await heartbeat.reconcileTaskWatchdogs();
|
|
672
|
-
if (taskWatchdogsReconciled.triggered > 0) {
|
|
673
|
-
logger.warn({ ...taskWatchdogsReconciled }, "startup task-watchdog reconciliation triggered watchdog work");
|
|
674
|
-
}
|
|
675
|
-
const scanned = await heartbeat.scanSilentActiveRuns();
|
|
676
|
-
if (scanned.created > 0 || scanned.escalated > 0) {
|
|
677
|
-
logger.warn({ ...scanned }, "startup active-run output watchdog created review work");
|
|
678
|
-
}
|
|
679
|
-
const swept = await heartbeat.sweepStaleIssueLocks();
|
|
680
|
-
if (swept.cleared > 0) {
|
|
681
|
-
logger.warn({ ...swept }, "startup stale-lock sweeper cleared issue locks");
|
|
682
|
-
}
|
|
683
|
-
const reviewed = await heartbeat.reconcileProductivityReviews();
|
|
684
|
-
if (reviewed.created > 0 || reviewed.updated > 0 || reviewed.failed > 0) {
|
|
685
|
-
logger.warn({ ...reviewed }, "startup productivity reconciliation created or updated review work");
|
|
686
|
-
}
|
|
687
|
-
const setupCleanup = await environmentCustomImages.cleanupExpiredSetupSessions();
|
|
688
|
-
if (setupCleanup.timedOut > 0 || setupCleanup.failed > 0) {
|
|
689
|
-
logger.warn({ ...setupCleanup }, "startup environment customImage setup cleanup changed sessions");
|
|
690
|
-
}
|
|
691
|
-
})().catch((err) => {
|
|
692
|
-
logger.error({ err }, "startup heartbeat recovery failed");
|
|
693
|
-
});
|
|
694
|
-
setInterval(() => {
|
|
695
|
-
const sweptRuntimeStatuses = heartbeat.sweepExpiredRuntimeStatuses();
|
|
696
|
-
if (sweptRuntimeStatuses > 0) {
|
|
697
|
-
logger.info({ swept: sweptRuntimeStatuses }, "heartbeat runtime-status sweeper cleared expired entries");
|
|
698
|
-
}
|
|
699
|
-
void heartbeat
|
|
700
|
-
.tickTimers(new Date())
|
|
701
|
-
.then((result) => {
|
|
702
|
-
if (result.enqueued > 0) {
|
|
703
|
-
logger.info({ ...result }, "heartbeat timer tick enqueued runs");
|
|
704
|
-
}
|
|
705
|
-
})
|
|
706
|
-
.catch((err) => {
|
|
707
|
-
logger.error({ err }, "heartbeat timer tick failed");
|
|
708
|
-
});
|
|
709
|
-
void routines
|
|
710
|
-
.tickScheduledTriggers(new Date())
|
|
711
|
-
.then((result) => {
|
|
712
|
-
if (result.triggered > 0) {
|
|
713
|
-
logger.info({ ...result }, "routine scheduler tick enqueued runs");
|
|
714
|
-
}
|
|
715
|
-
})
|
|
716
|
-
.catch((err) => {
|
|
717
|
-
logger.error({ err }, "routine scheduler tick failed");
|
|
718
|
-
});
|
|
719
|
-
void environmentCustomImages
|
|
720
|
-
.cleanupExpiredSetupSessions()
|
|
721
|
-
.then((result) => {
|
|
722
|
-
if (result.timedOut > 0 || result.failed > 0) {
|
|
723
|
-
logger.warn({ ...result }, "environment customImage setup cleanup changed sessions");
|
|
724
|
-
}
|
|
725
|
-
})
|
|
726
|
-
.catch((err) => {
|
|
727
|
-
logger.error({ err }, "environment customImage setup cleanup failed");
|
|
728
|
-
});
|
|
729
|
-
// Periodically reap orphaned runs (5-min staleness threshold) and make sure
|
|
730
|
-
// persisted queued work is still being driven forward.
|
|
731
|
-
void heartbeat
|
|
732
|
-
.reapOrphanedRuns({ staleThresholdMs: 5 * 60 * 1000 })
|
|
733
|
-
.then(() => heartbeat.promoteDueScheduledRetries())
|
|
734
|
-
.then(async (promotion) => {
|
|
715
|
+
const promotion = await heartbeat.promoteDueScheduledRetries();
|
|
735
716
|
await heartbeat.resumeQueuedRuns();
|
|
736
717
|
const reconciled = await heartbeat.reconcileStrandedAssignedIssues();
|
|
737
718
|
if (promotion.promoted > 0 ||
|
|
@@ -740,42 +721,138 @@ export async function startServer() {
|
|
|
740
721
|
reconciled.continuationRequeued > 0 ||
|
|
741
722
|
reconciled.successfulRunHandoffEscalated > 0 ||
|
|
742
723
|
reconciled.escalated > 0) {
|
|
743
|
-
logger.warn({ promotedScheduledRetries: promotion.promoted, promotedScheduledRetryRunIds: promotion.runIds, ...reconciled }, "
|
|
724
|
+
logger.warn({ promotedScheduledRetries: promotion.promoted, promotedScheduledRetryRunIds: promotion.runIds, ...reconciled }, "startup heartbeat recovery changed assigned issue state");
|
|
744
725
|
}
|
|
745
|
-
|
|
746
|
-
.
|
|
747
|
-
|
|
748
|
-
if (reconciled.escalationsCreated > 0 || reconciled.dependencyWakesHealed > 0) {
|
|
749
|
-
logger.warn({ ...reconciled }, "periodic issue-graph liveness reconciliation changed issue graph state");
|
|
726
|
+
const issueGraphReconciled = await heartbeat.reconcileIssueGraphLiveness();
|
|
727
|
+
if (issueGraphReconciled.escalationsCreated > 0 || issueGraphReconciled.dependencyWakesHealed > 0) {
|
|
728
|
+
logger.warn({ ...issueGraphReconciled }, "startup issue-graph liveness reconciliation changed issue graph state");
|
|
750
729
|
}
|
|
751
|
-
|
|
752
|
-
.
|
|
753
|
-
|
|
754
|
-
if (reconciled.triggered > 0) {
|
|
755
|
-
logger.warn({ ...reconciled }, "periodic task-watchdog reconciliation triggered watchdog work");
|
|
730
|
+
const taskWatchdogsReconciled = await heartbeat.reconcileTaskWatchdogs();
|
|
731
|
+
if (taskWatchdogsReconciled.triggered > 0) {
|
|
732
|
+
logger.warn({ ...taskWatchdogsReconciled }, "startup task-watchdog reconciliation triggered watchdog work");
|
|
756
733
|
}
|
|
757
|
-
})
|
|
758
|
-
.then(async () => {
|
|
759
734
|
const scanned = await heartbeat.scanSilentActiveRuns();
|
|
760
735
|
if (scanned.created > 0 || scanned.escalated > 0) {
|
|
761
|
-
logger.warn({ ...scanned }, "
|
|
736
|
+
logger.warn({ ...scanned }, "startup active-run output watchdog created review work");
|
|
762
737
|
}
|
|
763
|
-
})
|
|
764
|
-
.then(async () => {
|
|
765
738
|
const swept = await heartbeat.sweepStaleIssueLocks();
|
|
766
739
|
if (swept.cleared > 0) {
|
|
767
|
-
logger.warn({ ...swept }, "
|
|
740
|
+
logger.warn({ ...swept }, "startup stale-lock sweeper cleared issue locks");
|
|
768
741
|
}
|
|
769
|
-
})
|
|
770
|
-
.then(async () => {
|
|
771
742
|
const reviewed = await heartbeat.reconcileProductivityReviews();
|
|
772
743
|
if (reviewed.created > 0 || reviewed.updated > 0 || reviewed.failed > 0) {
|
|
773
|
-
logger.warn({ ...reviewed }, "
|
|
744
|
+
logger.warn({ ...reviewed }, "startup productivity reconciliation created or updated review work");
|
|
774
745
|
}
|
|
775
|
-
})
|
|
776
|
-
.
|
|
777
|
-
logger.error({ err }, "periodic heartbeat recovery failed");
|
|
746
|
+
})().catch((err) => {
|
|
747
|
+
logger.error({ err }, "startup heartbeat recovery failed");
|
|
778
748
|
});
|
|
749
|
+
trackHeartbeatSchedulerWork(startupHeartbeatRecovery);
|
|
750
|
+
await startupHeartbeatRecovery;
|
|
751
|
+
}
|
|
752
|
+
const setupCleanup = await environmentCustomImages.cleanupExpiredSetupSessions();
|
|
753
|
+
if (setupCleanup.timedOut > 0 || setupCleanup.failed > 0) {
|
|
754
|
+
logger.warn({ ...setupCleanup }, "startup environment customImage setup cleanup changed sessions");
|
|
755
|
+
}
|
|
756
|
+
heartbeatSchedulerInterval = setInterval(() => {
|
|
757
|
+
// Async so the suppression checks below can honor the override-aware
|
|
758
|
+
// resolver (e.g. worktree run-execution opt-in). The gated work is still
|
|
759
|
+
// wrapped in trackHeartbeatSchedulerWork with its own error handling.
|
|
760
|
+
void (async () => {
|
|
761
|
+
if (heartbeatSchedulerStopped)
|
|
762
|
+
return;
|
|
763
|
+
const sweptRuntimeStatuses = heartbeat.sweepExpiredRuntimeStatuses();
|
|
764
|
+
if (sweptRuntimeStatuses > 0) {
|
|
765
|
+
logger.info({ swept: sweptRuntimeStatuses }, "heartbeat runtime-status sweeper cleared expired entries");
|
|
766
|
+
}
|
|
767
|
+
if (!(await heartbeat.resolveSchedulingSuppression()).suppressed) {
|
|
768
|
+
trackHeartbeatSchedulerWork(heartbeat
|
|
769
|
+
.tickTimers(new Date())
|
|
770
|
+
.then((result) => {
|
|
771
|
+
if (result.enqueued > 0) {
|
|
772
|
+
logger.info({ ...result }, "heartbeat timer tick enqueued runs");
|
|
773
|
+
}
|
|
774
|
+
})
|
|
775
|
+
.catch((err) => {
|
|
776
|
+
logger.error({ err }, "heartbeat timer tick failed");
|
|
777
|
+
}));
|
|
778
|
+
}
|
|
779
|
+
if (heartbeatSchedulerStopped)
|
|
780
|
+
return;
|
|
781
|
+
trackHeartbeatSchedulerWork(routines
|
|
782
|
+
.tickScheduledTriggers(new Date())
|
|
783
|
+
.then((result) => {
|
|
784
|
+
if (result.triggered > 0) {
|
|
785
|
+
logger.info({ ...result }, "routine scheduler tick enqueued runs");
|
|
786
|
+
}
|
|
787
|
+
})
|
|
788
|
+
.catch((err) => {
|
|
789
|
+
logger.error({ err }, "routine scheduler tick failed");
|
|
790
|
+
}));
|
|
791
|
+
trackHeartbeatSchedulerWork(environmentCustomImages
|
|
792
|
+
.cleanupExpiredSetupSessions()
|
|
793
|
+
.then((result) => {
|
|
794
|
+
if (result.timedOut > 0 || result.failed > 0) {
|
|
795
|
+
logger.warn({ ...result }, "environment customImage setup cleanup changed sessions");
|
|
796
|
+
}
|
|
797
|
+
})
|
|
798
|
+
.catch((err) => {
|
|
799
|
+
logger.error({ err }, "environment customImage setup cleanup failed");
|
|
800
|
+
}));
|
|
801
|
+
if (heartbeatSchedulerStopped)
|
|
802
|
+
return;
|
|
803
|
+
if (!(await heartbeat.resolveSchedulingSuppression()).suppressed) {
|
|
804
|
+
// Periodically reap orphaned runs (5-min staleness threshold) and make sure
|
|
805
|
+
// persisted queued work is still being driven forward.
|
|
806
|
+
trackHeartbeatSchedulerWork(heartbeat
|
|
807
|
+
.reapOrphanedRuns({ staleThresholdMs: 5 * 60 * 1000 })
|
|
808
|
+
.then(() => heartbeat.promoteDueScheduledRetries())
|
|
809
|
+
.then(async (promotion) => {
|
|
810
|
+
await heartbeat.resumeQueuedRuns();
|
|
811
|
+
const reconciled = await heartbeat.reconcileStrandedAssignedIssues();
|
|
812
|
+
if (promotion.promoted > 0 ||
|
|
813
|
+
reconciled.assignmentDispatched > 0 ||
|
|
814
|
+
reconciled.dispatchRequeued > 0 ||
|
|
815
|
+
reconciled.continuationRequeued > 0 ||
|
|
816
|
+
reconciled.successfulRunHandoffEscalated > 0 ||
|
|
817
|
+
reconciled.escalated > 0) {
|
|
818
|
+
logger.warn({ promotedScheduledRetries: promotion.promoted, promotedScheduledRetryRunIds: promotion.runIds, ...reconciled }, "periodic heartbeat recovery changed assigned issue state");
|
|
819
|
+
}
|
|
820
|
+
})
|
|
821
|
+
.then(async () => {
|
|
822
|
+
const reconciled = await heartbeat.reconcileIssueGraphLiveness();
|
|
823
|
+
if (reconciled.escalationsCreated > 0 || reconciled.dependencyWakesHealed > 0) {
|
|
824
|
+
logger.warn({ ...reconciled }, "periodic issue-graph liveness reconciliation changed issue graph state");
|
|
825
|
+
}
|
|
826
|
+
})
|
|
827
|
+
.then(async () => {
|
|
828
|
+
const reconciled = await heartbeat.reconcileTaskWatchdogs();
|
|
829
|
+
if (reconciled.triggered > 0) {
|
|
830
|
+
logger.warn({ ...reconciled }, "periodic task-watchdog reconciliation triggered watchdog work");
|
|
831
|
+
}
|
|
832
|
+
})
|
|
833
|
+
.then(async () => {
|
|
834
|
+
const scanned = await heartbeat.scanSilentActiveRuns();
|
|
835
|
+
if (scanned.created > 0 || scanned.escalated > 0) {
|
|
836
|
+
logger.warn({ ...scanned }, "periodic active-run output watchdog created review work");
|
|
837
|
+
}
|
|
838
|
+
})
|
|
839
|
+
.then(async () => {
|
|
840
|
+
const swept = await heartbeat.sweepStaleIssueLocks();
|
|
841
|
+
if (swept.cleared > 0) {
|
|
842
|
+
logger.warn({ ...swept }, "periodic stale-lock sweeper cleared issue locks");
|
|
843
|
+
}
|
|
844
|
+
})
|
|
845
|
+
.then(async () => {
|
|
846
|
+
const reviewed = await heartbeat.reconcileProductivityReviews();
|
|
847
|
+
if (reviewed.created > 0 || reviewed.updated > 0 || reviewed.failed > 0) {
|
|
848
|
+
logger.warn({ ...reviewed }, "periodic productivity reconciliation created or updated review work");
|
|
849
|
+
}
|
|
850
|
+
})
|
|
851
|
+
.catch((err) => {
|
|
852
|
+
logger.error({ err }, "periodic heartbeat recovery failed");
|
|
853
|
+
}));
|
|
854
|
+
}
|
|
855
|
+
})();
|
|
779
856
|
}, config.heartbeatSchedulerIntervalMs);
|
|
780
857
|
}
|
|
781
858
|
if (config.databaseBackupEnabled) {
|
|
@@ -865,11 +942,26 @@ export async function startServer() {
|
|
|
865
942
|
});
|
|
866
943
|
{
|
|
867
944
|
const shutdown = async (signal) => {
|
|
945
|
+
heartbeatSchedulerStopped = true;
|
|
946
|
+
if (heartbeatSchedulerInterval) {
|
|
947
|
+
clearInterval(heartbeatSchedulerInterval);
|
|
948
|
+
heartbeatSchedulerInterval = null;
|
|
949
|
+
}
|
|
950
|
+
await waitForHeartbeatSchedulerIdle();
|
|
868
951
|
const telemetryClient = getTelemetryClient();
|
|
869
952
|
if (telemetryClient) {
|
|
870
953
|
telemetryClient.stop();
|
|
871
954
|
await telemetryClient.flush();
|
|
872
955
|
}
|
|
956
|
+
if (drainHeartbeatRunsForShutdown) {
|
|
957
|
+
try {
|
|
958
|
+
const drain = await drainHeartbeatRunsForShutdown(signal);
|
|
959
|
+
logger.info({ signal, drain }, "graceful heartbeat run drain complete");
|
|
960
|
+
}
|
|
961
|
+
catch (err) {
|
|
962
|
+
logger.error({ err, signal }, "graceful heartbeat run drain failed");
|
|
963
|
+
}
|
|
964
|
+
}
|
|
873
965
|
const appShutdown = app.locals?.paperclipShutdown;
|
|
874
966
|
appShutdown?.();
|
|
875
967
|
if (embeddedPostgres && embeddedPostgresStartedByThisProcess) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,kEAAkE;AAClE,4DAA4D;AAC5D,yEAAyE;AACzE,uEAAuE;AACvE,OAAO,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EACL,QAAQ,EACR,sBAAsB,EACtB,2BAA2B,EAC3B,wBAAwB,EACxB,iBAAiB,EACjB,sBAAsB,EACtB,+BAA+B,EAC/B,2CAA2C,EAC3C,oCAAoC,EACpC,4BAA4B,EAC5B,gCAAgC,EAChC,sCAAsC,EACtC,gCAAgC,EAChC,0BAA0B,EAC1B,iBAAiB,EACjB,SAAS,EACT,SAAS,EACT,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,kDAAkD,EAAE,MAAM,oDAAoD,CAAC;AACxH,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EACL,eAAe,EACf,oCAAoC,EACpC,+BAA+B,EAC/B,6BAA6B,EAC7B,gBAAgB,EAChB,uBAAuB,EACvB,mCAAmC,EACnC,wCAAwC,EACxC,0CAA0C,EAC1C,cAAc,GACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,uBAAuB,EACvB,4BAA4B,GAC7B,MAAM,0CAA0C,CAAC;AAClD,OAAO,EAAE,wCAAwC,EAAE,MAAM,qCAAqC,CAAC;AAC/F,OAAO,EAAE,4BAA4B,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,yBAAyB,EAAE,MAAM,qCAAqC,CAAC;AAChF,OAAO,EAAE,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,6BAA6B,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,gCAAgC,EAAE,MAAM,sBAAsB,CAAC;AACxE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA2CvC,MAAM,CAAC,KAAK,UAAU,WAAW;IAC/B,yEAAyE;IACzE,iEAAiE;IACjE,MAAM,oBAAoB,CAAC;IAC3B,IAAI,MAAM,GAAG,UAAU,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACpD,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,SAAS,EAAE,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,0BAA0B,GAAG,MAAM,CAAC,eAAe,CAAC;IAClE,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,6BAA6B,KAAK,SAAS,EAAE,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,6BAA6B,GAAG,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;IAC1F,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,iCAAiC,GAAG,MAAM,CAAC,wBAAwB,CAAC;IAClF,CAAC;IAQD,SAAS,6BAA6B,CAAC,UAAoB;QACzD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,MAAM,CAAC;QAC3C,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,UAAU,CAAC,MAAM,GAAG,CAAC,QAAQ;YACzE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,UAAU,qBAAqB,CAAC,UAAoB;QACvD,IAAI,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,MAAM;YAAE,OAAO,IAAI,CAAC;QACvE,IAAI,OAAO,CAAC,GAAG,CAAC,0BAA0B,KAAK,OAAO;YAAE,OAAO,KAAK,CAAC;QACrE,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC;QAE/C,MAAM,MAAM,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,QAAQ,CACnC,6BAA6B,6BAA6B,CAAC,UAAU,CAAC,gBAAgB,CACvF,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACxB,OAAO,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,KAAK,CAAC;QAC5C,CAAC;gBAAS,CAAC;YACT,MAAM,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACH,CAAC;IAMD,KAAK,UAAU,gBAAgB,CAC7B,gBAAwB,EACxB,KAAa,EACb,IAA8B;QAE9B,MAAM,SAAS,GAAG,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;QAC3C,IAAI,KAAK,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;QACtD,IAAI,KAAK,CAAC,MAAM,KAAK,iBAAiB,IAAI,KAAK,CAAC,MAAM,KAAK,oBAAoB,EAAE,CAAC;YAChF,MAAM,MAAM,GAAG,MAAM,gCAAgC,CAAC,gBAAgB,CAAC,CAAC;YACxE,IAAI,MAAM,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CACT,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,EACjD,GAAG,KAAK,gGAAgG,CACzG,CAAC;gBACF,KAAK,GAAG,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;gBAClD,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;oBAAE,OAAO,iBAAiB,CAAC;YAC5D,CAAC;QACH,CAAC;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,UAAU;YAAE,OAAO,iBAAiB,CAAC;QAC1D,IAAI,KAAK,CAAC,MAAM,KAAK,iBAAiB,IAAI,KAAK,CAAC,MAAM,KAAK,mCAAmC,EAAE,CAAC;YAC/F,MAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,EAChC,GAAG,KAAK,wFAAwF,CACjG,CAAC;YACF,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;YACtF,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,4BAA4B,6BAA6B,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK;oBAC7F,2GAA2G,CAC9G,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,EAAE,YAAY,KAAK,CAAC,iBAAiB,CAAC,MAAM,2BAA2B,KAAK,EAAE,CAAC,CAAC;YAC1I,MAAM,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;YAC/C,OAAO,8BAA8B,CAAC;QACxC,CAAC;QAED,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACtF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,IAAI,KAAK,CACb,GAAG,KAAK,4BAA4B,6BAA6B,CAAC,KAAK,CAAC,iBAAiB,CAAC,KAAK;gBAC7F,2GAA2G,CAC9G,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,EAAE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB,EAAE,EAAE,YAAY,KAAK,CAAC,iBAAiB,CAAC,MAAM,2BAA2B,KAAK,EAAE,CAAC,CAAC;QAC1I,MAAM,sBAAsB,CAAC,gBAAgB,CAAC,CAAC;QAC/C,OAAO,8BAA8B,CAAC;IACxC,CAAC;IAED,SAAS,cAAc,CAAC,IAAY;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,OAAO,UAAU,KAAK,WAAW,IAAI,UAAU,KAAK,WAAW,IAAI,UAAU,KAAK,KAAK,CAAC;IAC1F,CAAC;IAED,SAAS,0BAA0B,CAAC,gBAAwB;QAC1D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;YACzC,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,IAAI,MAAM,CAAC,QAAQ,KAAK,aAAa,CAAC;QAC9E,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,SAAS,2BAA2B;QAClC,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,IAAI,MAAM,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;YACxF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,kIAAkI,CACnI,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CACb,qGAAqG,CACtG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,SAAS,mBAAmB,CAAC,MAA0B,EAAE,IAAY;QACnE,IAAI,CAAC,MAAM;YAAE,OAAO,SAAS,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;YAC/B,0FAA0F;YAC1F,IAAI,CAAC,MAAM,CAAC,IAAI;gBAAE,OAAO,MAAM,CAAC;YAChC,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC;QAChB,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,aAAa,CAAC;IAC1C,MAAM,sBAAsB,GAAG,uBAAuB,CAAC;IACvD,MAAM,qBAAqB,GAAG,OAAO,CAAC;IAEtC,KAAK,UAAU,gCAAgC,CAAC,EAAO;QACrD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,MAAM,EAAE;aAC1B,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;aAC5B,IAAI,CAAC,SAAS,CAAC;aACf,KAAK,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,mBAAmB,CAAC,CAAC;aAC5C,IAAI,CAAC,CAAC,IAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAE1D,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC;gBAChC,EAAE,EAAE,mBAAmB;gBACvB,IAAI,EAAE,qBAAqB;gBAC3B,KAAK,EAAE,sBAAsB;gBAC7B,aAAa,EAAE,IAAI;gBACnB,KAAK,EAAE,IAAI;gBACX,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,GAAG;aACf,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,CAAC,EAAE,EAAE,EAAE,iBAAiB,CAAC,EAAE,EAAE,CAAC;aACpC,IAAI,CAAC,iBAAiB,CAAC;aACvB,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAC;aAC3G,IAAI,CAAC,CAAC,IAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC;gBACxC,MAAM,EAAE,mBAAmB;gBAC3B,IAAI,EAAE,gBAAgB;aACvB,CAAC,CAAC;QACL,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1E,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,MAAM,EAAE;iBACxB,MAAM,CAAC,EAAE,EAAE,EAAE,kBAAkB,CAAC,EAAE,EAAE,CAAC;iBACrC,IAAI,CAAC,kBAAkB,CAAC;iBACxB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC,EAC5C,EAAE,CAAC,kBAAkB,CAAC,aAAa,EAAE,MAAM,CAAC,EAC5C,EAAE,CAAC,kBAAkB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CACxD,CACF;iBACA,IAAI,CAAC,CAAC,IAA2B,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;YAC1D,IAAI,UAAU;gBAAE,SAAS;YACzB,MAAM,EAAE,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC;gBACzC,SAAS,EAAE,OAAO,CAAC,EAAE;gBACrB,aAAa,EAAE,MAAM;gBACrB,WAAW,EAAE,mBAAmB;gBAChC,MAAM,EAAE,QAAQ;gBAChB,cAAc,EAAE,OAAO;aACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,EAAE,CAAC;IACP,IAAI,iBAAiB,CAAC;IACtB,IAAI,gBAAgB,GAAoC,IAAI,CAAC;IAC7D,IAAI,oCAAoC,GAAG,KAAK,CAAC;IACjD,IAAI,gBAAgB,GAAqB,SAAS,CAAC;IACnD,IAAI,8BAAsC,CAAC;IAC3C,IAAI,4BAA4B,GAAkB,IAAI,CAAC;IACvD,IAAI,aAE4D,CAAC;IACjE,2BAA2B,EAAE,CAAC;IAC9B,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACvB,MAAM,YAAY,GAAG,MAAM,CAAC,oBAAoB,IAAI,MAAM,CAAC,WAAW,CAAC;QACvE,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEtE,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAClC,iBAAiB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7F,MAAM,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;QACjE,8BAA8B,GAAG,MAAM,CAAC,WAAW,CAAC;QACpD,aAAa,GAAG,EAAE,IAAI,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;IACtF,CAAC;SAAM,CAAC;QACN,MAAM,UAAU,GAAG,mBAAmB,CAAC;QACvC,IAAI,gBAAsC,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;YACrC,gBAAgB,GAAG,GAAG,CAAC,OAA+B,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CACb,2KAA2K,CAC5K,CAAC;QACJ,CAAC;QACD,MAAM,oCAAoC,EAAE,CAAC;QAE7C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACxD,MAAM,cAAc,GAAG,MAAM,CAAC,oBAAoB,CAAC;QACnD,IAAI,IAAI,GAAG,cAAc,CAAC;QAC1B,MAAM,SAAS,GAAG,+BAA+B,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,2BAA2B,GAAG,OAAO,CAAC,GAAG,CAAC,mCAAmC,KAAK,MAAM,CAAC;QAC/F,MAAM,yBAAyB,GAAG,CAAC,OAAgB,EAAE,EAAE;YACrD,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,2BAA2B,EAAE,CAAC;gBACjC,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG,OAAO,OAAO,KAAK,QAAQ;gBACvC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;gBACxB,CAAC,CAAC,OAAO,YAAY,KAAK;oBACxB,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACnB,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9B,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE,CAAC;gBAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,CAAC,IAAI;oBAAE,SAAS;gBACpB,MAAM,CAAC,IAAI,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,EAAE,mBAAmB,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC;QACF,MAAM,0BAA0B,GAAG,CAAC,KAA6B,EAAE,GAAY,EAAE,EAAE;YACjF,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,KAAK,CACV;oBACE,KAAK;oBACL,UAAU;oBACV,GAAG;iBACJ,EACD,2DAA2D,CAC5D,CAAC;YACJ,CAAC;QACH,CAAC,CAAC;QAEF,IAAI,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;YACvC,MAAM,CAAC,IAAI,CAAC,iGAAiG,CAAC,CAAC;QACjH,CAAC;QAED,MAAM,mBAAmB,GAAG,MAAM,2CAA2C,EAAE,CAAC;QAChF,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,CAAC,IAAI,CACT,cAAc,mBAAmB,CAAC,MAAM,+DAA+D,CACxG,CAAC;QACJ,CAAC;QAED,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QAC1D,IAAI,sCAAsC,CAAC,OAAO,CAAC,EAAE,CAAC;YACpD,MAAM,CAAC,IAAI,CACT,gCAAgC,OAAO,mEAAmE,CAC3G,CAAC;QACJ,CAAC;QACD,MAAM,yBAAyB,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAC;QACjE,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC7D,MAAM,YAAY,GAAG,CAAC,GAAW,EAAW,EAAE;YAC5C,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBACrB,OAAO,IAAI,CAAC;YACd,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,aAAa,GAAG,GAAkB,EAAE;YACxC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBAAE,OAAO,IAAI,CAAC;YAChD,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBAC/E,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACpD,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC;oBAAE,OAAO,IAAI,CAAC;gBACpC,OAAO,GAAG,CAAC;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QACnC,IAAI,UAAU,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,sEAAsE,UAAU,UAAU,IAAI,GAAG,CAAC,CAAC;QACjH,CAAC;aAAM,CAAC;YACN,MAAM,+BAA+B,GAAG,4CAA4C,cAAc,WAAW,CAAC;YAC9G,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,MAAM,wBAAwB,CAAC,+BAA+B,CAAC,CAAC;gBACtF,IACE,OAAO,aAAa,KAAK,QAAQ;oBACjC,OAAO,CAAC,aAAa,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,EAC3C,CAAC;oBACD,MAAM,IAAI,KAAK,CAAC,sEAAsE,CAAC,CAAC;gBAC1F,CAAC;gBACD,MAAM,sBAAsB,CAAC,+BAA+B,EAAE,WAAW,CAAC,CAAC;gBAC3E,MAAM,CAAC,IAAI,CACT,sHAAsH,cAAc,EAAE,CACvI,CAAC;YACJ,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,CAAC;gBACtD,IAAI,YAAY,KAAK,cAAc,EAAE,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,2EAA2E,cAAc,kBAAkB,YAAY,GAAG,CAAC,CAAC;gBAC1I,CAAC;gBACD,IAAI,GAAG,YAAY,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,kEAAkE,OAAO,UAAU,IAAI,GAAG,CAAC,CAAC;gBACxG,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;oBACtC,WAAW,EAAE,OAAO;oBACpB,IAAI,EAAE,WAAW;oBACjB,QAAQ,EAAE,WAAW;oBACrB,IAAI;oBACJ,UAAU,EAAE,IAAI;oBAChB,WAAW,EAAE,CAAC,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,CAAC;oBACjE,KAAK,EAAE,yBAAyB;oBAChC,OAAO,EAAE,yBAAyB;iBACnC,CAAC,CAAC;gBAEH,IAAI,CAAC,yBAAyB,EAAE,CAAC;oBAC/B,IAAI,CAAC;wBACH,MAAM,gBAAgB,CAAC,UAAU,EAAE,CAAC;oBACtC,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,0BAA0B,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC;wBAC9C,MAAM,2BAA2B,CAAC,GAAG,EAAE;4BACrC,eAAe,EAAE,uDAAuD,OAAO,YAAY,IAAI,EAAE;4BACjG,UAAU,EAAE,SAAS,CAAC,aAAa,EAAE;yBACtC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,+CAA+C,kBAAkB,kBAAkB,CAAC,CAAC;gBACnG,CAAC;gBAED,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBAClC,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;oBAC5D,MAAM,CAAC,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7C,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,gBAAgB,CAAC,KAAK,EAAE,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,0BAA0B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBACzC,MAAM,UAAU,GAAG,SAAS,CAAC,aAAa,EAAE,CAAC;oBAC7C,IAAI,gCAAgC,CAAC,UAAU,CAAC,EAAE,CAAC;wBACjD,MAAM,CAAC,IAAI,CACT,iHAAiH,CAClH,CAAC;wBACF,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;wBAC5C,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;4BACtC,WAAW,EAAE,OAAO;4BACpB,IAAI,EAAE,WAAW;4BACjB,QAAQ,EAAE,WAAW;4BACrB,IAAI;4BACJ,UAAU,EAAE,IAAI;4BAChB,WAAW,EAAE,CAAC,iBAAiB,EAAE,YAAY,EAAE,iBAAiB,CAAC;4BACjE,KAAK,EAAE,yBAAyB;4BAChC,OAAO,EAAE,yBAAyB;yBACnC,CAAC,CAAC;wBACH,MAAM,gBAAgB,CAAC,KAAK,EAAE,CAAC;oBACjC,CAAC;yBAAM,CAAC;wBACR,MAAM,2BAA2B,CAAC,GAAG,EAAE;4BACrC,eAAe,EAAE,+CAA+C,IAAI,EAAE;4BACtE,UAAU;yBACX,CAAC,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,oCAAoC,GAAG,IAAI,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,MAAM,6BAA6B,GAAG,4CAA4C,IAAI,WAAW,CAAC;QAClG,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,6BAA6B,EAAE,WAAW,CAAC,CAAC;QAC1F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QACjE,CAAC;QAED,MAAM,wBAAwB,GAAG,4CAA4C,IAAI,YAAY,CAAC;QAC9F,MAAM,iCAAiC,GAAG,CAAC,yBAAyB,IAAI,QAAQ,KAAK,SAAS,CAAC;QAC/F,IAAI,iCAAiC,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,yFAAyF,CAAC,CAAC;QACzG,CAAC;QACD,gBAAgB,GAAG,MAAM,gBAAgB,CAAC,wBAAwB,EAAE,qBAAqB,EAAE;YACzF,SAAS,EAAE,iCAAiC;SAC7C,CAAC,CAAC;QAEH,EAAE,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAC;QACxC,iBAAiB,GAAG,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QACzC,8BAA8B,GAAG,wBAAwB,CAAC;QAC1D,4BAA4B,GAAG,IAAI,CAAC;QACpC,aAAa,GAAG,EAAE,IAAI,EAAE,mBAAmB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC;IAED,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,KAAK,CACb,gEAAgE,MAAM,CAAC,IAAI,KAAK;YAC9E,sDAAsD,CACzD,CAAC;IACJ,CAAC;IAED,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,IAAI,MAAM,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QACzF,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,EAAE,CAAC;QAC9C,IAAI,MAAM,CAAC,eAAe,KAAK,UAAU,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,MAAM,CAAC,kBAAkB,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,MAAM,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;YACtF,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;YAC/E,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,mBAAmB,GAAG,MAAM,CAAC,IAAI,CAAC;IACxC,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACzD,IAAI,MAAM,CAAC,eAAe,KAAK,UAAU,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACtE,MAAM,CAAC,iBAAiB,GAAG,mBAAmB,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;IACvF,CAAC;IAED,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,KAAK,eAAe,CAAC;IAC1D,IAAI,iBAA6C,CAAC;IAClD,IAAI,cAES,CAAC;IACd,IAAI,yBAES,CAAC;IACd,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,EAAE,CAAC;QAC9C,MAAM,gCAAgC,CAAC,EAAS,CAAC,CAAC;IACpD,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,oCAAoC,CAAC,EAAS,CAAC,CAAC;IAC7E,IAAI,cAAc,CAAC,wBAAwB,GAAG,CAAC,IAAI,cAAc,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;QAC1F,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,mDAAmD,CAAC,CAAC;IACnF,CAAC;IACD,IAAI,MAAM,CAAC,cAAc,KAAK,eAAe,EAAE,CAAC;QAC9C,MAAM,EACJ,uBAAuB,EACvB,wBAAwB,EACxB,wBAAwB,EACxB,wBAAwB,EACxB,mCAAmC,GACpC,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QAC1C,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;QAC/E,MAAM,iBAAiB,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,IAAI,EAAE,CAAC;aACtE,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;aAC5B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,qBAAqB,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACtG,MAAM,CAAC,IAAI,CACT;YACE,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,IAAI;YACnD,cAAc,EAAE,uBAAuB;YACvC,oBAAoB,EAAE;gBACpB,OAAO,EAAE,qBAAqB,CAAC,MAAM;gBACrC,GAAG,EAAE,iBAAiB,CAAC,MAAM;aAC9B;SACF,EACD,8CAA8C,CAC/C,CAAC;QACF,MAAM,IAAI,GAAG,wBAAwB,CAAC,EAAS,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAClF,iBAAiB,GAAG,uBAAuB,CAAC,IAAI,CAAC,CAAC;QAClD,cAAc,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,yBAAyB,GAAG,CAAC,OAAO,EAAE,EAAE,CAAC,mCAAmC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC5F,MAAM,6BAA6B,CAAC,EAAS,EAAE,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;QAC1F,SAAS,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,4BAA4B,KAAK,IAAI,IAAI,4BAA4B,KAAK,MAAM,CAAC,oBAAoB,EAAE,CAAC;QAC1G,MAAM,CAAC,oBAAoB,GAAG,4BAA4B,CAAC;IAC7D,CAAC;IACD,gCAAgC,CAAC;QAC/B,UAAU,EAAE,UAAU;QACtB,YAAY,EAAE,4BAA4B;KAC3C,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IACxF,MAAM,cAAc,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,eAAe,CAAC,EAAS,EAAE;QAC1C,WAAW,EAAE,wCAAwC,CAAC,MAAM,CAAC;KAC9D,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACtD,IAAI,sBAAsB,GAAG,KAAK,CAAC;IACnC,MAAM,uBAAuB,GAAG,KAAK,EACnC,OAAsC,EACW,EAAE;QACnD,IAAI,sBAAsB,EAAE,CAAC;YAC3B,MAAM,OAAO,GAAG,qCAAqC,CAAC;YACtD,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;gBAC5B,MAAM,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;gBAC7F,OAAO,IAAI,CAAC;YACd,CAAC;YACD,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;QAED,sBAAsB,GAAG,IAAI,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,OAAO,KAAK,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC/D,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAE,GAAG,KAAK,2BAA2B,CAAC,CAAC;YACnG,qFAAqF;YACrF,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,CAAC;YAC7D,MAAM,SAAS,GAAG,eAAe,CAAC,eAAe,CAAC;YAElD,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;gBACrC,gBAAgB,EAAE,8BAA8B;gBAChD,SAAS,EAAE,MAAM,CAAC,iBAAiB;gBACnC,SAAS;gBACT,cAAc,EAAE,WAAW;aAC5B,CAAC,CAAC;YACH,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAoC;gBAChD,GAAG,MAAM;gBACT,OAAO;gBACP,SAAS,EAAE,MAAM,CAAC,iBAAiB;gBACnC,SAAS;gBACT,SAAS,EAAE,SAAS,CAAC,WAAW,EAAE;gBAClC,UAAU,EAAE,UAAU,CAAC,WAAW,EAAE;gBACpC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,WAAW;aACrC,CAAC;YACF,MAAM,CAAC,IAAI,CACT;gBACE,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,SAAS,EAAE,MAAM,CAAC,iBAAiB;gBACnC,SAAS;gBACT,OAAO;gBACP,UAAU,EAAE,QAAQ,CAAC,UAAU;aAChC,EACD,GAAG,KAAK,8BAA8B,0BAA0B,CAAC,MAAM,CAAC,EAAE,CAC3E,CAAC;YACF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAAE,OAAO,EAAE,EAAE,GAAG,KAAK,yBAAyB,CAAC,CAAC;YACvG,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,sBAAsB,GAAG,KAAK,CAAC;QACjC,CAAC;IACH,CAAC,CAAC;IACF,MAAM,mBAAmB,GAAG,yBAAyB,EAAE,CAAC;IACxD,MAAM,GAAG,GAAG,MAAM,SAAS,CAAC,EAAS,EAAE;QACrC,MAAM;QACN,UAAU,EAAE,UAAU;QACtB,cAAc;QACd,qBAAqB,EAAE,QAAQ;QAC/B,qBAAqB,EAAE;YACrB,eAAe,EAAE,KAAK,IAAI,EAAE;gBAC1B,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,QAAQ,CAAC,CAAC;gBACvD,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,QAAQ,CAAC,qCAAqC,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,MAAM,CAAC;YAChB,CAAC;SACF;QACD,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;QAC7C,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,QAAQ,EAAE,MAAM,CAAC,IAAI;QACrB,SAAS;QACT,sBAAsB,EAAE,MAAM,CAAC,sBAAsB;QACrD,iBAAiB,EAAE,iBAAwB;QAC3C,iBAAiB;QACjB,cAAc;QACd,mBAAmB;KACpB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,YAAY,CAAC,GAAoD,CAAC,CAAC;IAElF,uEAAuE;IACvE,kFAAkF;IAClF,gFAAgF;IAChF,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC;IACjC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC;IAE/B,IAAI,UAAU,KAAK,mBAAmB,EAAE,CAAC;QACvC,MAAM,CAAC,IAAI,CAAC,+DAA+D,mBAAmB,kBAAkB,UAAU,GAAG,CAAC,CAAC;IACjI,CAAC;IAED,MAAM,iBAAiB,GAAG,MAAM,CAAC,IAAI,CAAC;IACtC,MAAM,aAAa,GAAG,0BAA0B,CAAC;QAC/C,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,IAAI;QACnD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,QAAQ,EAAE,iBAAiB;QAC3B,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;IACH,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,EAAE,IAAI,aAAa,CAAC;IAChF,MAAM,oBAAoB,GAAG,4BAA4B,CAAC;QACxD,eAAe,EAAE,gBAAgB;QACjC,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,IAAI,IAAI;QACnD,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,QAAQ,EAAE,iBAAiB;QAC3B,IAAI,EAAE,UAAU;KACjB,CAAC,CAAC;IACH,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,iBAAiB,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,qBAAqB,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IACvD,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,aAAa,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,qCAAqC,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;IAEjD,kDAAkD,CAAC,MAAM,EAAE,EAAS,EAAE;QACpE,mBAAmB;KACpB,CAAC,CAAC;IACH,8BAA8B,CAAC,MAAM,EAAE,EAAS,EAAE;QAChD,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,yBAAyB;KAC1B,CAAC,CAAC;IAEH,KAAK,0CAA0C,CAAC,EAAS,CAAC;SACvD,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EACjC,sEAAsE,CACvE,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,6DAA6D,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;IAEL,KAAK,mCAAmC,CAAC,EAAS,CAAC;SAChD,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CACT,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,EACjC,+DAA+D,CAChE,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,sDAAsD,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEL,6EAA6E;IAC7E,2EAA2E;IAC3E,sEAAsE;IACtE,KAAK,wCAAwC,CAAC,EAAE,CAAC;SAC9C,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;QACf,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EACzE,gEAAgE,CACjE,CAAC;QACJ,CAAC;QACD,IAAI,MAAM,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;YACjC,MAAM,CAAC,IAAI,CACT,EAAE,iBAAiB,EAAE,MAAM,CAAC,iBAAiB,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,EACxE,mFAAmF,CACpF,CAAC;QACJ,CAAC;IACH,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,4DAA4D,CAAC,CAAC;IACtF,CAAC,CAAC,CAAC;IAEL,8EAA8E;IAC9E,+EAA+E;IAC/E,2EAA2E;IAC3E,4EAA4E;IAC5E,6DAA6D;IAC7D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,+BAA+B,CAAC,EAAS,CAAC,CAAC;QACtE,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,CACT;gBACE,aAAa,EAAE,YAAY,CAAC,aAAa;gBACzC,mBAAmB,EAAE,YAAY,CAAC,mBAAmB;aACtD,EACD,4CAA4C,CAC7C,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,0DAA0D,CAAC,CAAC;QAClF,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;QACrC,MAAM,SAAS,GAAG,gBAAgB,CAAC,EAAS,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACvE,MAAM,uBAAuB,GAAG,6BAA6B,CAAC,EAAS,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAClG,MAAM,QAAQ,GAAG,cAAc,CAAC,EAAS,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC;QAEpE,yEAAyE;QACzE,qDAAqD;QACrD,MAAM,CAAC,KAAK,IAAI,EAAE;YAChB,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC;gBAC9C,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;oBAClD,MAAM,CAAC,IAAI,CACT,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAChD,kDAAkD,CACnD,CAAC;oBACF,MAAM;gBACR,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;wBAChB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,+BAA+B,CAAC,CAAC;oBACjE,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,KAAK,CACV,EAAE,GAAG,EAAE,EACP,8GAA8G,CAC/G,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,0BAA0B,EAAE,CAAC;YAC/D,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,+BAA+B,EAAE,CAAC;YACrE,IACE,SAAS,CAAC,QAAQ,GAAG,CAAC;gBACtB,UAAU,CAAC,oBAAoB,GAAG,CAAC;gBACnC,UAAU,CAAC,gBAAgB,GAAG,CAAC;gBAC/B,UAAU,CAAC,oBAAoB,GAAG,CAAC;gBACnC,UAAU,CAAC,6BAA6B,GAAG,CAAC;gBAC5C,UAAU,CAAC,SAAS,GAAG,CAAC,EACxB,CAAC;gBACD,MAAM,CAAC,IAAI,CACT,EAAE,wBAAwB,EAAE,SAAS,CAAC,QAAQ,EAAE,4BAA4B,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,UAAU,EAAE,EAC/G,yDAAyD,CAC1D,CAAC;YACJ,CAAC;YAED,MAAM,oBAAoB,GAAG,MAAM,SAAS,CAAC,2BAA2B,EAAE,CAAC;YAC3E,IAAI,oBAAoB,CAAC,kBAAkB,GAAG,CAAC,IAAI,oBAAoB,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;gBAClG,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,oBAAoB,EAAE,EAC3B,uEAAuE,CACxE,CAAC;YACJ,CAAC;YAED,MAAM,uBAAuB,GAAG,MAAM,SAAS,CAAC,sBAAsB,EAAE,CAAC;YACzE,IAAI,uBAAuB,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,uBAAuB,EAAE,EAC9B,8DAA8D,CAC/D,CAAC;YACJ,CAAC;YAED,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;YACvD,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;gBACjD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,wDAAwD,CAAC,CAAC;YACxF,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;YACrD,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,gDAAgD,CAAC,CAAC;YAC9E,CAAC;YAED,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,4BAA4B,EAAE,CAAC;YAChE,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,EAAE,oEAAoE,CAAC,CAAC;YACrG,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,2BAA2B,EAAE,CAAC;YACjF,IAAI,YAAY,CAAC,QAAQ,GAAG,CAAC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,YAAY,EAAE,EAAE,gEAAgE,CAAC,CAAC;YACrG,CAAC;QACH,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACjB,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,mCAAmC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,WAAW,CAAC,GAAG,EAAE;YACf,MAAM,oBAAoB,GAAG,SAAS,CAAC,2BAA2B,EAAE,CAAC;YACrE,IAAI,oBAAoB,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CACT,EAAE,KAAK,EAAE,oBAAoB,EAAE,EAC/B,0DAA0D,CAC3D,CAAC;YACJ,CAAC;YAED,KAAK,SAAS;iBACX,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;iBACtB,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;oBACxB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,oCAAoC,CAAC,CAAC;gBACnE,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,6BAA6B,CAAC,CAAC;YACvD,CAAC,CAAC,CAAC;YAEL,KAAK,QAAQ;iBACV,qBAAqB,CAAC,IAAI,IAAI,EAAE,CAAC;iBACjC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,MAAM,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;oBACzB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,sCAAsC,CAAC,CAAC;gBACrE,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,+BAA+B,CAAC,CAAC;YACzD,CAAC,CAAC,CAAC;YAEL,KAAK,uBAAuB;iBACzB,2BAA2B,EAAE;iBAC7B,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7C,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,wDAAwD,CAAC,CAAC;gBACvF,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,8CAA8C,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YAEL,4EAA4E;YAC5E,uDAAuD;YACvD,KAAK,SAAS;iBACX,gBAAgB,CAAC,EAAE,gBAAgB,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;iBACrD,IAAI,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,0BAA0B,EAAE,CAAC;iBAClD,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;gBACxB,MAAM,SAAS,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,+BAA+B,EAAE,CAAC;gBACrE,IACE,SAAS,CAAC,QAAQ,GAAG,CAAC;oBACtB,UAAU,CAAC,oBAAoB,GAAG,CAAC;oBACnC,UAAU,CAAC,gBAAgB,GAAG,CAAC;oBAC/B,UAAU,CAAC,oBAAoB,GAAG,CAAC;oBACnC,UAAU,CAAC,6BAA6B,GAAG,CAAC;oBAC5C,UAAU,CAAC,SAAS,GAAG,CAAC,EACxB,CAAC;oBACD,MAAM,CAAC,IAAI,CACT,EAAE,wBAAwB,EAAE,SAAS,CAAC,QAAQ,EAAE,4BAA4B,EAAE,SAAS,CAAC,MAAM,EAAE,GAAG,UAAU,EAAE,EAC/G,0DAA0D,CAC3D,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,2BAA2B,EAAE,CAAC;gBACjE,IAAI,UAAU,CAAC,kBAAkB,GAAG,CAAC,IAAI,UAAU,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;oBAC9E,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,wEAAwE,CAAC,CAAC;gBAC3G,CAAC;YACH,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,sBAAsB,EAAE,CAAC;gBAC5D,IAAI,UAAU,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,EAAE,+DAA+D,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;gBACvD,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,IAAI,OAAO,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC;oBACjD,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,EAAE,yDAAyD,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,oBAAoB,EAAE,CAAC;gBACrD,IAAI,KAAK,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,iDAAiD,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC,CAAC;iBACD,IAAI,CAAC,KAAK,IAAI,EAAE;gBACf,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,4BAA4B,EAAE,CAAC;gBAChE,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxE,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,EAAE,qEAAqE,CAAC,CAAC;gBACtG,CAAC;YACH,CAAC,CAAC;iBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;gBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,oCAAoC,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;QACP,CAAC,EAAE,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;QACjC,MAAM,gBAAgB,GAAG,MAAM,CAAC,6BAA6B,GAAG,EAAE,GAAG,IAAI,CAAC;QAE1E,MAAM,CAAC,IAAI,CACT;YACE,eAAe,EAAE,MAAM,CAAC,6BAA6B;YACrD,eAAe,EAAE,sBAAsB;YACvC,SAAS,EAAE,MAAM,CAAC,iBAAiB;SACpC,EACD,oCAAoC,CACrC,CAAC;QACF,WAAW,CAAC,GAAG,EAAE;YACf,KAAK,uBAAuB,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;gBACnD,iEAAiE;YACnE,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,gBAAgB,CAAC,CAAC;IACvB,CAAC;IAED,0EAA0E;IAC1E,uEAAuE;IACvE,yEAAyE;IACzE,MAAM,EAAE,uBAAuB,EAAE,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,CAAC;IAC3E,MAAM,uBAAuB,EAAE,CAAC;IAEhC,8EAA8E;IAC9E,+EAA+E;IAC/E,6EAA6E;IAC7E,2EAA2E;IAC3E,0DAA0D;IAC1D,IAAI,CAAC;QACH,4BAA4B,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC1D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,kEAAkE,CAAC,CAAC;QAC1F,MAAM,GAAG,CAAC;IACZ,CAAC;IAED,MAAM,IAAI,OAAO,CAAO,CAAC,aAAa,EAAE,YAAY,EAAE,EAAE;QACtD,MAAM,OAAO,GAAG,CAAC,GAAU,EAAE,EAAE;YAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7B,YAAY,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC,CAAC;QAEF,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC9B,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;YAC1C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC,CAAC;YAChE,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,EAAE,CAAC;gBACpD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC/F,MAAM,GAAG,GAAG,UAAU,QAAQ,IAAI,UAAU,EAAE,CAAC;gBAC/C,KAAK,MAAM,CAAC,MAAM,CAAC;qBAChB,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;qBAC/B,IAAI,CAAC,GAAG,EAAE;oBACT,MAAM,CAAC,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;gBAC1C,CAAC,CAAC;qBACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACb,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,mCAAmC,CAAC,CAAC;gBACjE,CAAC,CAAC,CAAC;YACP,CAAC;YACC,kBAAkB,CAAC;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,cAAc,EAAE,MAAM,CAAC,cAAc;gBACvC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB;gBAC7C,SAAS;gBACT,aAAa,EAAE,mBAAmB;gBAClC,UAAU;gBACV,MAAM;gBACN,EAAE,EAAE,aAAa;gBACjB,gBAAgB;gBAChB,yBAAyB,EAAE,MAAM,CAAC,yBAAyB;gBAC3D,4BAA4B,EAAE,MAAM,CAAC,4BAA4B;gBACjE,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;gBACnD,6BAA6B,EAAE,MAAM,CAAC,6BAA6B;gBACnE,2BAA2B,EAAE,MAAM,CAAC,2BAA2B;gBAC/D,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;aAC5C,CAAC,CAAC;YAEH,MAAM,aAAa,GAAG,uBAAuB,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;YACvE,IAAI,aAAa,EAAE,CAAC;gBAClB,MAAM,GAAG,GAAG,kBAAkB,CAAC;gBAC/B,MAAM,MAAM,GAAG,UAAU,CAAC;gBAC1B,MAAM,KAAK,GAAG,SAAS,CAAC;gBACxB,OAAO,CAAC,GAAG,CACT;oBACE,GAAG,GAAG,2BAA2B,KAAK,EAAE;oBACxC,GAAG,MAAM,0FAA0F,KAAK,EAAE;oBAC1G,GAAG,MAAM,0EAA0E,KAAK,EAAE;oBAC1F,GAAG,MAAM,GAAG,aAAa,GAAG,KAAK,EAAE;oBACnC,GAAG,MAAM,2GAA2G,KAAK,EAAE;iBAC5H,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACJ,CAAC;YAED,aAAa,EAAE,CAAC;QAClB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,CAAC;QACC,MAAM,QAAQ,GAAG,KAAK,EAAE,MAA4B,EAAE,EAAE;YACtD,MAAM,eAAe,GAAG,kBAAkB,EAAE,CAAC;YAC7C,IAAI,eAAe,EAAE,CAAC;gBACpB,eAAe,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,eAAe,CAAC,KAAK,EAAE,CAAC;YAChC,CAAC;YAED,MAAM,WAAW,GAAI,GAAuD,CAAC,MAAM,EAAE,iBAAiB,CAAC;YACvG,WAAW,EAAE,EAAE,CAAC;YAEhB,IAAI,gBAAgB,IAAI,oCAAoC,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,8BAA8B,CAAC,CAAC;gBACxD,IAAI,CAAC;oBACH,MAAM,gBAAgB,EAAE,IAAI,EAAE,CAAC;gBACjC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,4CAA4C,CAAC,CAAC;gBACtE,CAAC;YACH,CAAC;YAED,uEAAuE;YACvE,uDAAuD;YACvD,MAAM,uBAAuB,EAAE,CAAC;YAEhC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QAEF,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,EAAE;YAC1B,KAAK,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE;YAC3B,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,MAAM;QACN,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,UAAU;QACV,MAAM,EAAE,gBAAgB;QACxB,WAAW,EAAE,8BAA8B;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,OAAe;IACnC,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IACzB,IAAI,CAAC;QACH,OAAO,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,IAAI,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;IAClC,KAAK,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QAC/B,MAAM,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,EAAE,kCAAkC,CAAC,CAAC;QAC1D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { RequestHandler } from "express";
|
|
2
|
+
export declare const API_COMPRESSION_THRESHOLD_BYTES = 1024;
|
|
3
|
+
type ApiCompressionOptions = {
|
|
4
|
+
thresholdBytes?: number;
|
|
5
|
+
};
|
|
6
|
+
export declare function apiCompression(options?: ApiCompressionOptions): RequestHandler;
|
|
7
|
+
export {};
|
|
8
|
+
//# sourceMappingURL=api-compression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-compression.d.ts","sourceRoot":"","sources":["../../src/middleware/api-compression.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAI9C,eAAO,MAAM,+BAA+B,OAAO,CAAC;AAOpD,KAAK,qBAAqB,GAAG;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAqHF,wBAAgB,cAAc,CAAC,OAAO,GAAE,qBAA0B,GAAG,cAAc,CAiHlF"}
|