@jungjaehoon/mama-os 0.28.5 → 0.29.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/agent/agent-loop.d.ts +0 -4
- package/dist/agent/agent-loop.d.ts.map +1 -1
- package/dist/agent/agent-loop.js +44 -12
- package/dist/agent/agent-loop.js.map +1 -1
- package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
- package/dist/agent/code-act/host-bridge.js +53 -3
- package/dist/agent/code-act/host-bridge.js.map +1 -1
- package/dist/agent/code-act/tool-policy.d.ts.map +1 -1
- package/dist/agent/code-act/tool-policy.js +5 -0
- package/dist/agent/code-act/tool-policy.js.map +1 -1
- package/dist/agent/codex-auth.d.ts +0 -1
- package/dist/agent/codex-auth.d.ts.map +1 -1
- package/dist/agent/codex-auth.js +0 -4
- package/dist/agent/codex-auth.js.map +1 -1
- package/dist/agent/codex-home.d.ts +0 -2
- package/dist/agent/codex-home.d.ts.map +1 -1
- package/dist/agent/codex-home.js +0 -66
- package/dist/agent/codex-home.js.map +1 -1
- package/dist/agent/context-compile-service.d.ts +9 -0
- package/dist/agent/context-compile-service.d.ts.map +1 -1
- package/dist/agent/context-compile-service.js +6 -0
- package/dist/agent/context-compile-service.js.map +1 -1
- package/dist/agent/context-prompt-builder.d.ts +0 -6
- package/dist/agent/context-prompt-builder.d.ts.map +1 -1
- package/dist/agent/context-prompt-builder.js +0 -131
- package/dist/agent/context-prompt-builder.js.map +1 -1
- package/dist/agent/contract-extractor.d.ts +0 -4
- package/dist/agent/contract-extractor.d.ts.map +1 -1
- package/dist/agent/contract-extractor.js +0 -68
- package/dist/agent/contract-extractor.js.map +1 -1
- package/dist/agent/gateway-tool-executor.d.ts +20 -15
- package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
- package/dist/agent/gateway-tool-executor.js +236 -90
- package/dist/agent/gateway-tool-executor.js.map +1 -1
- package/dist/agent/gateway-tools.md +7 -4
- package/dist/agent/skill-loader.d.ts +0 -7
- package/dist/agent/skill-loader.d.ts.map +1 -1
- package/dist/agent/skill-loader.js +0 -86
- package/dist/agent/skill-loader.js.map +1 -1
- package/dist/agent/token-estimator.d.ts +0 -8
- package/dist/agent/token-estimator.d.ts.map +1 -1
- package/dist/agent/token-estimator.js +0 -14
- package/dist/agent/token-estimator.js.map +1 -1
- package/dist/agent/tool-registry.d.ts.map +1 -1
- package/dist/agent/tool-registry.js +23 -5
- package/dist/agent/tool-registry.js.map +1 -1
- package/dist/agent/types.d.ts +27 -1
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/agent-graph-handler.d.ts +9 -0
- package/dist/api/agent-graph-handler.d.ts.map +1 -1
- package/dist/api/agent-graph-handler.js +27 -1
- package/dist/api/agent-graph-handler.js.map +1 -1
- package/dist/api/entity-audit-handler.d.ts +1 -2
- package/dist/api/entity-audit-handler.d.ts.map +1 -1
- package/dist/api/entity-audit-handler.js +0 -5
- package/dist/api/entity-audit-handler.js.map +1 -1
- package/dist/api/index.d.ts +1 -9
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +4 -17
- package/dist/api/index.js.map +1 -1
- package/dist/api/intelligence-handler.d.ts +0 -5
- package/dist/api/intelligence-handler.d.ts.map +1 -1
- package/dist/api/intelligence-handler.js +0 -15
- package/dist/api/intelligence-handler.js.map +1 -1
- package/dist/api/types.d.ts +1 -5
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js +0 -14
- package/dist/api/types.js.map +1 -1
- package/dist/cli/commands/start.d.ts +117 -3
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +223 -62
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/config/config-manager.d.ts +0 -5
- package/dist/cli/config/config-manager.d.ts.map +1 -1
- package/dist/cli/config/config-manager.js +0 -29
- package/dist/cli/config/config-manager.js.map +1 -1
- package/dist/cli/config/types.d.ts.map +1 -1
- package/dist/cli/config/types.js +3 -0
- package/dist/cli/config/types.js.map +1 -1
- package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
- package/dist/cli/runtime/agent-loop-init.js +9 -1
- package/dist/cli/runtime/agent-loop-init.js.map +1 -1
- package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-routes-init.js +32 -5
- package/dist/cli/runtime/api-routes-init.js.map +1 -1
- package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-server-init.js +2 -0
- package/dist/cli/runtime/api-server-init.js.map +1 -1
- package/dist/cli/runtime/gateway-init.d.ts +1 -1
- package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
- package/dist/cli/runtime/gateway-init.js +11 -38
- package/dist/cli/runtime/gateway-init.js.map +1 -1
- package/dist/cli/runtime/gateway-wiring.d.ts.map +1 -1
- package/dist/cli/runtime/gateway-wiring.js +6 -120
- package/dist/cli/runtime/gateway-wiring.js.map +1 -1
- package/dist/cli/utils/pid-manager.d.ts +0 -10
- package/dist/cli/utils/pid-manager.d.ts.map +1 -1
- package/dist/cli/utils/pid-manager.js +0 -26
- package/dist/cli/utils/pid-manager.js.map +1 -1
- package/dist/connectors/framework/polling-scheduler.d.ts +33 -1
- package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
- package/dist/connectors/framework/polling-scheduler.js +46 -40
- package/dist/connectors/framework/polling-scheduler.js.map +1 -1
- package/dist/connectors/trello/query-tools.d.ts +32 -5
- package/dist/connectors/trello/query-tools.d.ts.map +1 -1
- package/dist/connectors/trello/query-tools.js +56 -17
- package/dist/connectors/trello/query-tools.js.map +1 -1
- package/dist/db/agent-store.d.ts +0 -4
- package/dist/db/agent-store.d.ts.map +1 -1
- package/dist/db/agent-store.js +0 -65
- package/dist/db/agent-store.js.map +1 -1
- package/dist/envelope/enforcer.d.ts.map +1 -1
- package/dist/envelope/enforcer.js +10 -1
- package/dist/envelope/enforcer.js.map +1 -1
- package/dist/envelope/index.d.ts +0 -1
- package/dist/envelope/index.d.ts.map +1 -1
- package/dist/envelope/index.js +0 -1
- package/dist/envelope/index.js.map +1 -1
- package/dist/envelope/signature.d.ts +0 -1
- package/dist/envelope/signature.d.ts.map +1 -1
- package/dist/envelope/signature.js +0 -7
- package/dist/envelope/signature.js.map +1 -1
- package/dist/envelope/tool-connector-scope.d.ts +35 -0
- package/dist/envelope/tool-connector-scope.d.ts.map +1 -0
- package/dist/envelope/tool-connector-scope.js +57 -0
- package/dist/envelope/tool-connector-scope.js.map +1 -0
- package/dist/evidence/effects.d.ts +107 -0
- package/dist/evidence/effects.d.ts.map +1 -0
- package/dist/evidence/effects.js +281 -0
- package/dist/evidence/effects.js.map +1 -0
- package/dist/evidence/read.d.ts +75 -0
- package/dist/evidence/read.d.ts.map +1 -0
- package/dist/evidence/read.js +105 -0
- package/dist/evidence/read.js.map +1 -0
- package/dist/gateways/base-gateway.d.ts +23 -3
- package/dist/gateways/base-gateway.d.ts.map +1 -1
- package/dist/gateways/base-gateway.js +15 -2
- package/dist/gateways/base-gateway.js.map +1 -1
- package/dist/gateways/discord.d.ts +4 -16
- package/dist/gateways/discord.d.ts.map +1 -1
- package/dist/gateways/discord.js +22 -189
- package/dist/gateways/discord.js.map +1 -1
- package/dist/gateways/index.d.ts +2 -1
- package/dist/gateways/index.d.ts.map +1 -1
- package/dist/gateways/message-router.d.ts +13 -20
- package/dist/gateways/message-router.d.ts.map +1 -1
- package/dist/gateways/message-router.js +32 -3
- package/dist/gateways/message-router.js.map +1 -1
- package/dist/gateways/slack.d.ts +2 -12
- package/dist/gateways/slack.d.ts.map +1 -1
- package/dist/gateways/slack.js +6 -220
- package/dist/gateways/slack.js.map +1 -1
- package/dist/gateways/telegram.d.ts +2 -2
- package/dist/gateways/telegram.d.ts.map +1 -1
- package/dist/gateways/telegram.js +3 -2
- package/dist/gateways/telegram.js.map +1 -1
- package/dist/gateways/turn-contract.d.ts +104 -0
- package/dist/gateways/turn-contract.d.ts.map +1 -0
- package/dist/{memory/consult-contract.js → gateways/turn-contract.js} +1 -1
- package/dist/gateways/turn-contract.js.map +1 -0
- package/dist/memory/provenance-live.d.ts +111 -0
- package/dist/memory/provenance-live.d.ts.map +1 -0
- package/dist/memory/provenance-live.js +381 -0
- package/dist/memory/provenance-live.js.map +1 -0
- package/dist/memory/provenance-resolver.d.ts +184 -0
- package/dist/memory/provenance-resolver.d.ts.map +1 -0
- package/dist/memory/provenance-resolver.js +152 -0
- package/dist/memory/provenance-resolver.js.map +1 -0
- package/dist/multi-agent/agent-event-bus.d.ts +1 -0
- package/dist/multi-agent/agent-event-bus.d.ts.map +1 -1
- package/dist/multi-agent/bmad-templates.d.ts +0 -18
- package/dist/multi-agent/bmad-templates.d.ts.map +1 -1
- package/dist/multi-agent/bmad-templates.js +0 -127
- package/dist/multi-agent/bmad-templates.js.map +1 -1
- package/dist/multi-agent/dashboard-agent-persona.js +3 -3
- package/dist/operator/board-reconcile.d.ts +2 -3
- package/dist/operator/board-reconcile.d.ts.map +1 -1
- package/dist/operator/board-reconcile.js +18 -32
- package/dist/operator/board-reconcile.js.map +1 -1
- package/dist/operator/changes-projection.d.ts +70 -0
- package/dist/operator/changes-projection.d.ts.map +1 -0
- package/dist/operator/changes-projection.js +109 -0
- package/dist/operator/changes-projection.js.map +1 -0
- package/dist/operator/external-correlation.d.ts +94 -0
- package/dist/operator/external-correlation.d.ts.map +1 -0
- package/dist/operator/external-correlation.js +177 -0
- package/dist/operator/external-correlation.js.map +1 -0
- package/dist/operator/operator-trigger-loop.d.ts +9 -1
- package/dist/operator/operator-trigger-loop.d.ts.map +1 -1
- package/dist/operator/operator-trigger-loop.js +8 -4
- package/dist/operator/operator-trigger-loop.js.map +1 -1
- package/dist/operator/provenance-lookup.d.ts +18 -0
- package/dist/operator/provenance-lookup.d.ts.map +1 -0
- package/dist/operator/provenance-lookup.js +54 -0
- package/dist/operator/provenance-lookup.js.map +1 -0
- package/dist/operator/report-carry.d.ts +18 -1
- package/dist/operator/report-carry.d.ts.map +1 -1
- package/dist/operator/report-carry.js +22 -3
- package/dist/operator/report-carry.js.map +1 -1
- package/dist/operator/report-run.d.ts +35 -0
- package/dist/operator/report-run.d.ts.map +1 -1
- package/dist/operator/report-run.js +184 -24
- package/dist/operator/report-run.js.map +1 -1
- package/dist/operator/situation-report.d.ts.map +1 -1
- package/dist/operator/situation-report.js +9 -2
- package/dist/operator/situation-report.js.map +1 -1
- package/dist/operator/task-ledger.d.ts +84 -2
- package/dist/operator/task-ledger.d.ts.map +1 -1
- package/dist/operator/task-ledger.js +274 -31
- package/dist/operator/task-ledger.js.map +1 -1
- package/dist/operator/worker-run.js +1 -1
- package/dist/operator/worker-run.js.map +1 -1
- package/dist/operator/workorder-hooks.d.ts +79 -4
- package/dist/operator/workorder-hooks.d.ts.map +1 -1
- package/dist/operator/workorder-hooks.js +152 -20
- package/dist/operator/workorder-hooks.js.map +1 -1
- package/dist/operator/workorder-publishers.d.ts +2 -0
- package/dist/operator/workorder-publishers.d.ts.map +1 -1
- package/dist/operator/workorder-publishers.js +8 -1
- package/dist/operator/workorder-publishers.js.map +1 -1
- package/dist/utils/untrusted-content.d.ts +11 -0
- package/dist/utils/untrusted-content.d.ts.map +1 -1
- package/dist/utils/untrusted-content.js +20 -0
- package/dist/utils/untrusted-content.js.map +1 -1
- package/package.json +4 -3
- package/scripts/backfill-channel-keys.ts +451 -0
- package/dist/agent/auto-recall.d.ts +0 -48
- package/dist/agent/auto-recall.d.ts.map +0 -1
- package/dist/agent/auto-recall.js +0 -192
- package/dist/agent/auto-recall.js.map +0 -1
- package/dist/agent/claude-client.d.ts +0 -50
- package/dist/agent/claude-client.d.ts.map +0 -1
- package/dist/agent/claude-client.js +0 -219
- package/dist/agent/claude-client.js.map +0 -1
- package/dist/agent/delegation-executor.d.ts +0 -49
- package/dist/agent/delegation-executor.d.ts.map +0 -1
- package/dist/agent/delegation-executor.js +0 -692
- package/dist/agent/delegation-executor.js.map +0 -1
- package/dist/agent/mcp-executor.d.ts +0 -60
- package/dist/agent/mcp-executor.d.ts.map +0 -1
- package/dist/agent/mcp-executor.js +0 -190
- package/dist/agent/mcp-executor.js.map +0 -1
- package/dist/agent/process-tree.d.ts +0 -6
- package/dist/agent/process-tree.d.ts.map +0 -1
- package/dist/agent/process-tree.js +0 -21
- package/dist/agent/process-tree.js.map +0 -1
- package/dist/agent/streaming-callback-manager.d.ts +0 -85
- package/dist/agent/streaming-callback-manager.d.ts.map +0 -1
- package/dist/agent/streaming-callback-manager.js +0 -103
- package/dist/agent/streaming-callback-manager.js.map +0 -1
- package/dist/agent/token-budget.d.ts +0 -49
- package/dist/agent/token-budget.d.ts.map +0 -1
- package/dist/agent/token-budget.js +0 -92
- package/dist/agent/token-budget.js.map +0 -1
- package/dist/connectors/kagemusha/history-compiler.d.ts +0 -18
- package/dist/connectors/kagemusha/history-compiler.d.ts.map +0 -1
- package/dist/connectors/kagemusha/history-compiler.js +0 -35
- package/dist/connectors/kagemusha/history-compiler.js.map +0 -1
- package/dist/db/migrations/wiki-artifacts.d.ts +0 -3
- package/dist/db/migrations/wiki-artifacts.d.ts.map +0 -1
- package/dist/db/migrations/wiki-artifacts.js +0 -24
- package/dist/db/migrations/wiki-artifacts.js.map +0 -1
- package/dist/envelope/subset.d.ts +0 -9
- package/dist/envelope/subset.d.ts.map +0 -1
- package/dist/envelope/subset.js +0 -67
- package/dist/envelope/subset.js.map +0 -1
- package/dist/memory/consult-contract.d.ts +0 -8
- package/dist/memory/consult-contract.d.ts.map +0 -1
- package/dist/memory/consult-contract.js.map +0 -1
- package/dist/multi-agent/agent-message-queue.d.ts +0 -104
- package/dist/multi-agent/agent-message-queue.d.ts.map +0 -1
- package/dist/multi-agent/agent-message-queue.js +0 -227
- package/dist/multi-agent/agent-message-queue.js.map +0 -1
- package/dist/multi-agent/background-task-manager.d.ts +0 -248
- package/dist/multi-agent/background-task-manager.d.ts.map +0 -1
- package/dist/multi-agent/background-task-manager.js +0 -415
- package/dist/multi-agent/background-task-manager.js.map +0 -1
- package/dist/multi-agent/category-router.d.ts +0 -56
- package/dist/multi-agent/category-router.d.ts.map +0 -1
- package/dist/multi-agent/category-router.js +0 -99
- package/dist/multi-agent/category-router.js.map +0 -1
- package/dist/multi-agent/council-engine.d.ts +0 -60
- package/dist/multi-agent/council-engine.d.ts.map +0 -1
- package/dist/multi-agent/council-engine.js +0 -284
- package/dist/multi-agent/council-engine.js.map +0 -1
- package/dist/multi-agent/delegation-format-validator.d.ts +0 -22
- package/dist/multi-agent/delegation-format-validator.d.ts.map +0 -1
- package/dist/multi-agent/delegation-format-validator.js +0 -31
- package/dist/multi-agent/delegation-format-validator.js.map +0 -1
- package/dist/multi-agent/delegation-manager.d.ts +0 -128
- package/dist/multi-agent/delegation-manager.d.ts.map +0 -1
- package/dist/multi-agent/delegation-manager.js +0 -276
- package/dist/multi-agent/delegation-manager.js.map +0 -1
- package/dist/multi-agent/i18n-messages.d.ts +0 -35
- package/dist/multi-agent/i18n-messages.d.ts.map +0 -1
- package/dist/multi-agent/i18n-messages.js +0 -54
- package/dist/multi-agent/i18n-messages.js.map +0 -1
- package/dist/multi-agent/index.d.ts +0 -31
- package/dist/multi-agent/index.d.ts.map +0 -1
- package/dist/multi-agent/index.js +0 -46
- package/dist/multi-agent/index.js.map +0 -1
- package/dist/multi-agent/multi-agent-base.d.ts +0 -223
- package/dist/multi-agent/multi-agent-base.d.ts.map +0 -1
- package/dist/multi-agent/multi-agent-base.js +0 -592
- package/dist/multi-agent/multi-agent-base.js.map +0 -1
- package/dist/multi-agent/multi-agent-discord.d.ts +0 -142
- package/dist/multi-agent/multi-agent-discord.d.ts.map +0 -1
- package/dist/multi-agent/multi-agent-discord.js +0 -1235
- package/dist/multi-agent/multi-agent-discord.js.map +0 -1
- package/dist/multi-agent/multi-agent-slack.d.ts +0 -146
- package/dist/multi-agent/multi-agent-slack.d.ts.map +0 -1
- package/dist/multi-agent/multi-agent-slack.js +0 -953
- package/dist/multi-agent/multi-agent-slack.js.map +0 -1
- package/dist/multi-agent/multi-bot-manager.d.ts +0 -119
- package/dist/multi-agent/multi-bot-manager.d.ts.map +0 -1
- package/dist/multi-agent/multi-bot-manager.js +0 -449
- package/dist/multi-agent/multi-bot-manager.js.map +0 -1
- package/dist/multi-agent/orchestrator.d.ts +0 -110
- package/dist/multi-agent/orchestrator.d.ts.map +0 -1
- package/dist/multi-agent/orchestrator.js +0 -436
- package/dist/multi-agent/orchestrator.js.map +0 -1
- package/dist/multi-agent/rate-limiter.d.ts +0 -76
- package/dist/multi-agent/rate-limiter.d.ts.map +0 -1
- package/dist/multi-agent/rate-limiter.js +0 -128
- package/dist/multi-agent/rate-limiter.js.map +0 -1
- package/dist/multi-agent/shared-context.d.ts +0 -127
- package/dist/multi-agent/shared-context.d.ts.map +0 -1
- package/dist/multi-agent/shared-context.js +0 -239
- package/dist/multi-agent/shared-context.js.map +0 -1
- package/dist/multi-agent/slack-config-validator.d.ts +0 -42
- package/dist/multi-agent/slack-config-validator.d.ts.map +0 -1
- package/dist/multi-agent/slack-config-validator.js +0 -194
- package/dist/multi-agent/slack-config-validator.js.map +0 -1
- package/dist/multi-agent/slack-multi-bot-manager.d.ts +0 -143
- package/dist/multi-agent/slack-multi-bot-manager.d.ts.map +0 -1
- package/dist/multi-agent/slack-multi-bot-manager.js +0 -413
- package/dist/multi-agent/slack-multi-bot-manager.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts +0 -98
- package/dist/multi-agent/swarm/swarm-anti-pattern-detector.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js +0 -225
- package/dist/multi-agent/swarm/swarm-anti-pattern-detector.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-db.d.ts +0 -175
- package/dist/multi-agent/swarm/swarm-db.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-db.js +0 -313
- package/dist/multi-agent/swarm/swarm-db.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-event-reporter.d.ts +0 -116
- package/dist/multi-agent/swarm/swarm-event-reporter.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-event-reporter.js +0 -243
- package/dist/multi-agent/swarm/swarm-event-reporter.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts +0 -57
- package/dist/multi-agent/swarm/swarm-mama-adapter.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-mama-adapter.js +0 -87
- package/dist/multi-agent/swarm/swarm-mama-adapter.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-manager.d.ts +0 -122
- package/dist/multi-agent/swarm/swarm-manager.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-manager.js +0 -199
- package/dist/multi-agent/swarm/swarm-manager.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-task-learner.d.ts +0 -104
- package/dist/multi-agent/swarm/swarm-task-learner.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-task-learner.js +0 -211
- package/dist/multi-agent/swarm/swarm-task-learner.js.map +0 -1
- package/dist/multi-agent/swarm/swarm-task-runner.d.ts +0 -155
- package/dist/multi-agent/swarm/swarm-task-runner.d.ts.map +0 -1
- package/dist/multi-agent/swarm/swarm-task-runner.js +0 -615
- package/dist/multi-agent/swarm/swarm-task-runner.js.map +0 -1
- package/dist/multi-agent/swarm/wave-engine.d.ts +0 -96
- package/dist/multi-agent/swarm/wave-engine.d.ts.map +0 -1
- package/dist/multi-agent/swarm/wave-engine.js +0 -123
- package/dist/multi-agent/swarm/wave-engine.js.map +0 -1
- package/dist/multi-agent/system-reminder.d.ts +0 -206
- package/dist/multi-agent/system-reminder.d.ts.map +0 -1
- package/dist/multi-agent/system-reminder.js +0 -455
- package/dist/multi-agent/system-reminder.js.map +0 -1
- package/dist/multi-agent/task-continuation.d.ts +0 -74
- package/dist/multi-agent/task-continuation.d.ts.map +0 -1
- package/dist/multi-agent/task-continuation.js +0 -172
- package/dist/multi-agent/task-continuation.js.map +0 -1
- package/dist/multi-agent/ultrawork-state.d.ts +0 -57
- package/dist/multi-agent/ultrawork-state.d.ts.map +0 -1
- package/dist/multi-agent/ultrawork-state.js +0 -191
- package/dist/multi-agent/ultrawork-state.js.map +0 -1
- package/dist/multi-agent/ultrawork.d.ts +0 -152
- package/dist/multi-agent/ultrawork.d.ts.map +0 -1
- package/dist/multi-agent/ultrawork.js +0 -879
- package/dist/multi-agent/ultrawork.js.map +0 -1
- package/dist/multi-agent/work-tracker.d.ts +0 -22
- package/dist/multi-agent/work-tracker.d.ts.map +0 -1
- package/dist/multi-agent/work-tracker.js +0 -45
- package/dist/multi-agent/work-tracker.js.map +0 -1
- package/dist/multi-agent/workflow-engine.d.ts +0 -87
- package/dist/multi-agent/workflow-engine.d.ts.map +0 -1
- package/dist/multi-agent/workflow-engine.js +0 -604
- package/dist/multi-agent/workflow-engine.js.map +0 -1
- package/dist/onboarding/all-tools.d.ts +0 -18
- package/dist/onboarding/all-tools.d.ts.map +0 -1
- package/dist/onboarding/all-tools.js +0 -149
- package/dist/onboarding/all-tools.js.map +0 -1
- package/dist/onboarding/autonomous-discovery-tools.d.ts +0 -23
- package/dist/onboarding/autonomous-discovery-tools.d.ts.map +0 -1
- package/dist/onboarding/autonomous-discovery-tools.js +0 -268
- package/dist/onboarding/autonomous-discovery-tools.js.map +0 -1
- package/dist/onboarding/onboarding-state.d.ts +0 -70
- package/dist/onboarding/onboarding-state.d.ts.map +0 -1
- package/dist/onboarding/onboarding-state.js +0 -183
- package/dist/onboarding/onboarding-state.js.map +0 -1
- package/dist/onboarding/personality-quiz.d.ts +0 -35
- package/dist/onboarding/personality-quiz.d.ts.map +0 -1
- package/dist/onboarding/personality-quiz.js +0 -219
- package/dist/onboarding/personality-quiz.js.map +0 -1
- package/dist/onboarding/phase-5-summary.d.ts +0 -26
- package/dist/onboarding/phase-5-summary.d.ts.map +0 -1
- package/dist/onboarding/phase-5-summary.js +0 -153
- package/dist/onboarding/phase-5-summary.js.map +0 -1
- package/dist/onboarding/phase-6-security.d.ts +0 -33
- package/dist/onboarding/phase-6-security.d.ts.map +0 -1
- package/dist/onboarding/phase-6-security.js +0 -473
- package/dist/onboarding/phase-6-security.js.map +0 -1
- package/dist/onboarding/phase-7-integrations.d.ts +0 -91
- package/dist/onboarding/phase-7-integrations.d.ts.map +0 -1
- package/dist/onboarding/phase-7-integrations.js +0 -725
- package/dist/onboarding/phase-7-integrations.js.map +0 -1
- package/dist/onboarding/phase-8-demo.d.ts +0 -43
- package/dist/onboarding/phase-8-demo.d.ts.map +0 -1
- package/dist/onboarding/phase-8-demo.js +0 -346
- package/dist/onboarding/phase-8-demo.js.map +0 -1
- package/dist/onboarding/phase-9-finalization.d.ts +0 -27
- package/dist/onboarding/phase-9-finalization.d.ts.map +0 -1
- package/dist/onboarding/phase-9-finalization.js +0 -417
- package/dist/onboarding/phase-9-finalization.js.map +0 -1
- package/dist/onboarding/ritual-prompt.d.ts +0 -2
- package/dist/onboarding/ritual-prompt.d.ts.map +0 -1
- package/dist/onboarding/ritual-prompt.js +0 -285
- package/dist/onboarding/ritual-prompt.js.map +0 -1
- package/dist/onboarding/ritual-tools.d.ts +0 -17
- package/dist/onboarding/ritual-tools.d.ts.map +0 -1
- package/dist/onboarding/ritual-tools.js +0 -93
- package/dist/onboarding/ritual-tools.js.map +0 -1
- package/dist/setup/setup-tools.d.ts +0 -13
- package/dist/setup/setup-tools.d.ts.map +0 -1
- package/dist/setup/setup-tools.js +0 -106
- package/dist/setup/setup-tools.js.map +0 -1
- package/dist/utils/slack-input-validator.d.ts +0 -74
- package/dist/utils/slack-input-validator.d.ts.map +0 -1
- package/dist/utils/slack-input-validator.js +0 -275
- package/dist/utils/slack-input-validator.js.map +0 -1
- package/dist/utils/slack-rate-limiter.d.ts +0 -139
- package/dist/utils/slack-rate-limiter.d.ts.map +0 -1
- package/dist/utils/slack-rate-limiter.js +0 -324
- package/dist/utils/slack-rate-limiter.js.map +0 -1
- package/dist/wiki/wiki-compiler.d.ts +0 -13
- package/dist/wiki/wiki-compiler.d.ts.map +0 -1
- package/dist/wiki/wiki-compiler.js +0 -82
- package/dist/wiki/wiki-compiler.js.map +0 -1
|
@@ -64,7 +64,9 @@ const wiringLogger = new DebugLogger('gateway-wiring');
|
|
|
64
64
|
* Populates graphHandlerOptions in place (mutable object, matching current pattern).
|
|
65
65
|
*/
|
|
66
66
|
async function wireGateways(params) {
|
|
67
|
-
const { config, messageRouter, healthCheckService,
|
|
67
|
+
const { config, messageRouter, healthCheckService,
|
|
68
|
+
// graphHandlerOptions and db were only read by the multi-agent hookups above.
|
|
69
|
+
graphHandlerOptions: _graphHandlerOptions, db: _db, discordGateway, slackGateway, telegramGateway, gateways, agentLoop, cronEmitter, } = params;
|
|
68
70
|
// Wire gateway registry for memory save confirmations
|
|
69
71
|
messageRouter.setGatewayRegistry({
|
|
70
72
|
async sendMessage(source, channelId, text) {
|
|
@@ -144,125 +146,9 @@ async function wireGateways(params) {
|
|
|
144
146
|
telegram: telegramGateway ?? undefined,
|
|
145
147
|
},
|
|
146
148
|
});
|
|
147
|
-
//
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
const slackHandler = slackGateway?.getMultiAgentHandler();
|
|
151
|
-
const multiAgentHandler = discordHandler || slackHandler;
|
|
152
|
-
if (multiAgentHandler) {
|
|
153
|
-
// getAgentStates: merge real-time process states from ALL gateways
|
|
154
|
-
graphHandlerOptions.getAgentStates = () => {
|
|
155
|
-
try {
|
|
156
|
-
const merged = new Map();
|
|
157
|
-
const priority = {
|
|
158
|
-
busy: 3,
|
|
159
|
-
starting: 2,
|
|
160
|
-
idle: 1,
|
|
161
|
-
online: 0,
|
|
162
|
-
dead: -1,
|
|
163
|
-
};
|
|
164
|
-
// Collect from Discord
|
|
165
|
-
if (discordHandler) {
|
|
166
|
-
for (const [id, state] of discordHandler.getProcessManager().getAgentStates()) {
|
|
167
|
-
const existing = merged.get(id);
|
|
168
|
-
if (!existing || (priority[state] ?? 0) > (priority[existing] ?? 0)) {
|
|
169
|
-
merged.set(id, state);
|
|
170
|
-
}
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
// Collect from Slack
|
|
174
|
-
if (slackHandler) {
|
|
175
|
-
for (const [id, state] of slackHandler.getProcessManager().getAgentStates()) {
|
|
176
|
-
const existing = merged.get(id);
|
|
177
|
-
if (!existing || (priority[state] ?? 0) > (priority[existing] ?? 0)) {
|
|
178
|
-
merged.set(id, state);
|
|
179
|
-
}
|
|
180
|
-
}
|
|
181
|
-
}
|
|
182
|
-
return merged;
|
|
183
|
-
}
|
|
184
|
-
catch (err) {
|
|
185
|
-
console.error('[GraphAPI] Failed to get agent states:', err);
|
|
186
|
-
return new Map();
|
|
187
|
-
}
|
|
188
|
-
};
|
|
189
|
-
// Share getAgentStates with health check service
|
|
190
|
-
healthCheckService.setGetAgentStates(graphHandlerOptions.getAgentStates);
|
|
191
|
-
// getSwarmTasks: recent delegations from swarm-db
|
|
192
|
-
graphHandlerOptions.getSwarmTasks = (limit = 20) => {
|
|
193
|
-
try {
|
|
194
|
-
// Query swarm_tasks table directly from mama-sessions.db
|
|
195
|
-
const stmt = db.prepare(`
|
|
196
|
-
SELECT
|
|
197
|
-
id, description, category, wave, status,
|
|
198
|
-
claimed_by, claimed_at, completed_at, result
|
|
199
|
-
FROM swarm_tasks
|
|
200
|
-
WHERE status IN ('completed', 'claimed')
|
|
201
|
-
ORDER BY completed_at DESC, claimed_at DESC
|
|
202
|
-
LIMIT ?
|
|
203
|
-
`);
|
|
204
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
205
|
-
return stmt.all(limit);
|
|
206
|
-
}
|
|
207
|
-
catch (err) {
|
|
208
|
-
console.error('[GraphAPI] Failed to fetch swarm tasks:', err);
|
|
209
|
-
return [];
|
|
210
|
-
}
|
|
211
|
-
};
|
|
212
|
-
// getRecentDelegations: in-memory delegation history from DelegationManager
|
|
213
|
-
graphHandlerOptions.getRecentDelegations = (limit = 20) => {
|
|
214
|
-
try {
|
|
215
|
-
const delegationManager = multiAgentHandler.getDelegationManager();
|
|
216
|
-
if (!delegationManager) {
|
|
217
|
-
const logger = new DebugLogger('GraphAPI');
|
|
218
|
-
logger.warn('[GraphAPI] DelegationManager not available');
|
|
219
|
-
return [];
|
|
220
|
-
}
|
|
221
|
-
return delegationManager.getRecentDelegations(limit);
|
|
222
|
-
}
|
|
223
|
-
catch (err) {
|
|
224
|
-
const logger = new DebugLogger('GraphAPI');
|
|
225
|
-
logger.error('[GraphAPI] Failed to fetch recent delegations:', err);
|
|
226
|
-
throw new Error(`Failed to fetch recent delegations: ${err instanceof Error ? err.message : String(err)}`);
|
|
227
|
-
}
|
|
228
|
-
};
|
|
229
|
-
// Wire delegation chain count into health check
|
|
230
|
-
healthCheckService.setGetActiveDelegationCount(() => {
|
|
231
|
-
try {
|
|
232
|
-
const dm = multiAgentHandler.getDelegationManager();
|
|
233
|
-
return dm ? dm.getActiveDelegationCount() : 0;
|
|
234
|
-
}
|
|
235
|
-
catch {
|
|
236
|
-
return 0;
|
|
237
|
-
}
|
|
238
|
-
});
|
|
239
|
-
// Apply updated multi-agent config at runtime without full daemon restart.
|
|
240
|
-
graphHandlerOptions.applyMultiAgentConfig = async (rawConfig) => {
|
|
241
|
-
// Type assertion to MultiAgentConfig (rawConfig comes from validated YAML)
|
|
242
|
-
const nextConfig = rawConfig;
|
|
243
|
-
if (discordGateway) {
|
|
244
|
-
await discordGateway.setMultiAgentConfig(nextConfig);
|
|
245
|
-
}
|
|
246
|
-
if (slackGateway) {
|
|
247
|
-
await slackGateway.setMultiAgentConfig(nextConfig);
|
|
248
|
-
}
|
|
249
|
-
};
|
|
250
|
-
// Restart a single agent runtime (rolling restart) after per-agent config updates.
|
|
251
|
-
graphHandlerOptions.restartMultiAgentAgent = async (agentId) => {
|
|
252
|
-
const discordHandler = discordGateway?.getMultiAgentHandler();
|
|
253
|
-
const slackHandler = slackGateway?.getMultiAgentHandler();
|
|
254
|
-
discordHandler?.getProcessManager().reloadPersona(agentId);
|
|
255
|
-
slackHandler?.getProcessManager().reloadPersona(agentId);
|
|
256
|
-
};
|
|
257
|
-
// Stop a single agent's processes without restart.
|
|
258
|
-
graphHandlerOptions.stopMultiAgentAgent = async (agentId) => {
|
|
259
|
-
const discordHandler = discordGateway?.getMultiAgentHandler();
|
|
260
|
-
const slackHandler = slackGateway?.getMultiAgentHandler();
|
|
261
|
-
discordHandler?.getProcessManager().stopAgentProcesses(agentId);
|
|
262
|
-
slackHandler?.getProcessManager().stopAgentProcesses(agentId);
|
|
263
|
-
};
|
|
264
|
-
}
|
|
265
|
-
}
|
|
149
|
+
// The graph handler's multi-agent runtime hookups were here: per-agent process states,
|
|
150
|
+
// runtime config apply, and per-agent restart/stop. All of them reached through the
|
|
151
|
+
// multi-bot handlers, which were never constructed on this install.
|
|
266
152
|
// Initialize gateway plugin loader (for additional gateways like Chatwork)
|
|
267
153
|
const pluginLoader = new index_js_1.PluginLoader({
|
|
268
154
|
gatewayConfigs: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gateway-wiring.js","sourceRoot":"","sources":["../../../src/cli/runtime/gateway-wiring.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4CH,
|
|
1
|
+
{"version":3,"file":"gateway-wiring.js","sourceRoot":"","sources":["../../../src/cli/runtime/gateway-wiring.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,10 +16,6 @@ export interface ProcessInfo {
|
|
|
16
16
|
* Get the full path to PID file
|
|
17
17
|
*/
|
|
18
18
|
export declare function getPidPath(): string;
|
|
19
|
-
/**
|
|
20
|
-
* Check if PID file exists
|
|
21
|
-
*/
|
|
22
|
-
export declare function pidFileExists(): boolean;
|
|
23
19
|
/**
|
|
24
20
|
* Write PID file with process information
|
|
25
21
|
*
|
|
@@ -56,11 +52,5 @@ export declare function isDaemonRunning(): Promise<ProcessInfo | null>;
|
|
|
56
52
|
* @returns Human-readable uptime string
|
|
57
53
|
*/
|
|
58
54
|
export declare function getUptime(startedAt: number): string;
|
|
59
|
-
/**
|
|
60
|
-
* Get PID file modification time (for last activity tracking)
|
|
61
|
-
*
|
|
62
|
-
* @returns Modification timestamp or null
|
|
63
|
-
*/
|
|
64
|
-
export declare function getPidFileModTime(): Promise<number | null>;
|
|
65
55
|
export { expandPath } from '../config/config-manager.js';
|
|
66
56
|
//# sourceMappingURL=pid-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pid-manager.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/pid-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED
|
|
1
|
+
{"version":3,"file":"pid-manager.d.ts","sourceRoot":"","sources":["../../../src/cli/utils/pid-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iBAAiB;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAEnC;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAezD;AAED;;;;GAIG;AACH,wBAAsB,OAAO,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAyB3D;AAED;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAM/C;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAQrD;AAED;;;;GAIG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,CAcnE;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAiBnD;AAGD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAC"}
|
|
@@ -7,14 +7,12 @@
|
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.expandPath = void 0;
|
|
9
9
|
exports.getPidPath = getPidPath;
|
|
10
|
-
exports.pidFileExists = pidFileExists;
|
|
11
10
|
exports.writePid = writePid;
|
|
12
11
|
exports.readPid = readPid;
|
|
13
12
|
exports.deletePid = deletePid;
|
|
14
13
|
exports.isProcessRunning = isProcessRunning;
|
|
15
14
|
exports.isDaemonRunning = isDaemonRunning;
|
|
16
15
|
exports.getUptime = getUptime;
|
|
17
|
-
exports.getPidFileModTime = getPidFileModTime;
|
|
18
16
|
const promises_1 = require("node:fs/promises");
|
|
19
17
|
const node_fs_1 = require("node:fs");
|
|
20
18
|
const node_path_1 = require("node:path");
|
|
@@ -26,12 +24,6 @@ const config_manager_js_1 = require("../config/config-manager.js");
|
|
|
26
24
|
function getPidPath() {
|
|
27
25
|
return (0, config_manager_js_1.expandPath)(types_js_1.MAMA_PATHS.PID);
|
|
28
26
|
}
|
|
29
|
-
/**
|
|
30
|
-
* Check if PID file exists
|
|
31
|
-
*/
|
|
32
|
-
function pidFileExists() {
|
|
33
|
-
return (0, node_fs_1.existsSync)(getPidPath());
|
|
34
|
-
}
|
|
35
27
|
/**
|
|
36
28
|
* Write PID file with process information
|
|
37
29
|
*
|
|
@@ -143,24 +135,6 @@ function getUptime(startedAt) {
|
|
|
143
135
|
}
|
|
144
136
|
return `${seconds}s`;
|
|
145
137
|
}
|
|
146
|
-
/**
|
|
147
|
-
* Get PID file modification time (for last activity tracking)
|
|
148
|
-
*
|
|
149
|
-
* @returns Modification timestamp or null
|
|
150
|
-
*/
|
|
151
|
-
async function getPidFileModTime() {
|
|
152
|
-
const pidPath = getPidPath();
|
|
153
|
-
if (!(0, node_fs_1.existsSync)(pidPath)) {
|
|
154
|
-
return null;
|
|
155
|
-
}
|
|
156
|
-
try {
|
|
157
|
-
const stats = await (0, promises_1.stat)(pidPath);
|
|
158
|
-
return stats.mtimeMs;
|
|
159
|
-
}
|
|
160
|
-
catch {
|
|
161
|
-
return null;
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
138
|
// Re-export expandPath for convenience
|
|
165
139
|
var config_manager_js_2 = require("../config/config-manager.js");
|
|
166
140
|
Object.defineProperty(exports, "expandPath", { enumerable: true, get: function () { return config_manager_js_2.expandPath; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pid-manager.js","sourceRoot":"","sources":["../../../src/cli/utils/pid-manager.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAsBH,gCAEC;
|
|
1
|
+
{"version":3,"file":"pid-manager.js","sourceRoot":"","sources":["../../../src/cli/utils/pid-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,10 +3,42 @@
|
|
|
3
3
|
* Persists lastPollTime to basePath/poll-state.json for crash recovery.
|
|
4
4
|
*/
|
|
5
5
|
import type { ConnectorRegistry } from './connector-registry.js';
|
|
6
|
-
import type { ChannelConfig } from './types.js';
|
|
6
|
+
import type { ChannelConfig, NormalizedItem } from './types.js';
|
|
7
7
|
import type { RawIndexSink, RawStore } from './raw-store.js';
|
|
8
8
|
import type { ClassifiedItems } from '../../memory/history-extractor.js';
|
|
9
9
|
type BatchExtractCallback = (classified: ClassifiedItems) => void | Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* The canonical key for a channel: the key the connector config declares it under.
|
|
12
|
+
*
|
|
13
|
+
* Connectors emit `item.channel` in whatever shape their upstream hands them, and measured
|
|
14
|
+
* across the live index that is usually a DISPLAY NAME - Trello board names against a
|
|
15
|
+
* config keyed by 24-character board ids, Slack channel names against a config keyed by
|
|
16
|
+
* channel ids, and so on for six of seven connectors. `findChannelConfig` already absorbs
|
|
17
|
+
* that by falling back to a name match, which is why nothing ever appeared broken: the
|
|
18
|
+
* binding succeeded, and then the un-canonicalised name was written to the event index,
|
|
19
|
+
* where every downstream reader compared it against the config KEY and matched nothing.
|
|
20
|
+
* Zero of 30,671 rows were readable in production.
|
|
21
|
+
*
|
|
22
|
+
* So the accommodation moves to one place and produces one answer. Names are for people;
|
|
23
|
+
* identity is the upstream's stable id, and this is where a name becomes one.
|
|
24
|
+
*
|
|
25
|
+
* Returns null when the channel is not configured at all - the honest answer, and the one
|
|
26
|
+
* that keeps an unconfigured channel out of the index rather than inventing a key for it.
|
|
27
|
+
*/
|
|
28
|
+
export declare function canonicalChannelKey(item: Pick<NormalizedItem, 'source' | 'channel'>, channelConfigs: Record<string, Record<string, ChannelConfig>>): string | null;
|
|
29
|
+
/**
|
|
30
|
+
* `bindConfiguredScope` was here, and it never bound anything.
|
|
31
|
+
*
|
|
32
|
+
* It required `project_entity_id` on a channel config and produced a `project` scope. Zero
|
|
33
|
+
* of the 39 configured channels on the live install declare that field, so it returned
|
|
34
|
+
* every item unchanged for its whole life. What made this invisible was a one-off backfill
|
|
35
|
+
* that had written `channel` scopes into the index: April is 100% scoped, the backfill
|
|
36
|
+
* stopped on 2026-05-20, and from 05-21 onward every single event is unscoped. The live
|
|
37
|
+
* write path had never bound a scope at all - the data only looked otherwise.
|
|
38
|
+
*
|
|
39
|
+
* Raw visibility is decided by the (connector, channel) grant now, which reads the key the
|
|
40
|
+
* row already carries instead of a parallel namespace that had to be populated.
|
|
41
|
+
*/
|
|
10
42
|
export declare class PollingScheduler {
|
|
11
43
|
private readonly rawStore;
|
|
12
44
|
private readonly rawIndexSink?;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polling-scheduler.d.ts","sourceRoot":"","sources":["../../../src/connectors/framework/polling-scheduler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"polling-scheduler.d.ts","sourceRoot":"","sources":["../../../src/connectors/framework/polling-scheduler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAEzE,KAAK,oBAAoB,GAAG,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;AA4ClF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,GAAG,SAAS,CAAC,EAChD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,GAC5D,MAAM,GAAG,IAAI,CAUf;AAED;;;;;;;;;;;;GAYG;AAEH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAe;IAC7C,OAAO,CAAC,aAAa,CAA2B;IAChD,OAAO,CAAC,MAAM,CAAqD;IACnE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,cAAc,CAAS;IAC/B,oGAAoG;IACpG,iBAAiB,EAAE,MAAM,CAAC;gBAGxB,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,YAAY,CAAA;KAAE;IASvE,OAAO,CAAC,YAAY;IAsBpB,YAAY,IAAI,IAAI;IAYd,OAAO,CACX,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,EAC7D,cAAc,EAAE,oBAAoB,GACnC,OAAO,CAAC,IAAI,CAAC;IAwDhB,UAAU,CACR,QAAQ,EAAE,iBAAiB,EAC3B,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,EAC7D,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,oBAAoB,GACnC,IAAI;IAkBP,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAI/C,wEAAwE;IACxE,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,IAAI;IAehD,IAAI,IAAI,IAAI;CAOb"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
7
|
exports.PollingScheduler = void 0;
|
|
8
|
+
exports.canonicalChannelKey = canonicalChannelKey;
|
|
8
9
|
const fs_1 = require("fs");
|
|
9
10
|
const path_1 = require("path");
|
|
10
11
|
const history_extractor_js_1 = require("../../memory/history-extractor.js");
|
|
@@ -45,50 +46,48 @@ function parsePollStateEntry(value) {
|
|
|
45
46
|
}
|
|
46
47
|
return date;
|
|
47
48
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
49
|
+
/**
|
|
50
|
+
* The canonical key for a channel: the key the connector config declares it under.
|
|
51
|
+
*
|
|
52
|
+
* Connectors emit `item.channel` in whatever shape their upstream hands them, and measured
|
|
53
|
+
* across the live index that is usually a DISPLAY NAME - Trello board names against a
|
|
54
|
+
* config keyed by 24-character board ids, Slack channel names against a config keyed by
|
|
55
|
+
* channel ids, and so on for six of seven connectors. `findChannelConfig` already absorbs
|
|
56
|
+
* that by falling back to a name match, which is why nothing ever appeared broken: the
|
|
57
|
+
* binding succeeded, and then the un-canonicalised name was written to the event index,
|
|
58
|
+
* where every downstream reader compared it against the config KEY and matched nothing.
|
|
59
|
+
* Zero of 30,671 rows were readable in production.
|
|
60
|
+
*
|
|
61
|
+
* So the accommodation moves to one place and produces one answer. Names are for people;
|
|
62
|
+
* identity is the upstream's stable id, and this is where a name becomes one.
|
|
63
|
+
*
|
|
64
|
+
* Returns null when the channel is not configured at all - the honest answer, and the one
|
|
65
|
+
* that keeps an unconfigured channel out of the index rather than inventing a key for it.
|
|
66
|
+
*/
|
|
67
|
+
function canonicalChannelKey(item, channelConfigs) {
|
|
56
68
|
const sourceConfigs = channelConfigs[item.source];
|
|
57
|
-
const direct = sourceConfigs?.[item.channel];
|
|
58
|
-
if (direct) {
|
|
59
|
-
return direct;
|
|
60
|
-
}
|
|
61
69
|
if (!sourceConfigs) {
|
|
62
|
-
return
|
|
63
|
-
}
|
|
64
|
-
return Object.values(sourceConfigs).find((cfg) => cfg.name === item.channel);
|
|
65
|
-
}
|
|
66
|
-
function bindConfiguredScope(item, channelConfigs) {
|
|
67
|
-
if (stringField(item.memoryScopeKind) && stringField(item.memoryScopeId)) {
|
|
68
|
-
return item;
|
|
70
|
+
return null;
|
|
69
71
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
// fall back to metadata then item.projectId only when no config exists. The
|
|
73
|
-
// resolved id is then used for both projectId and memoryScopeId so the
|
|
74
|
-
// stored record carries one consistent tenant reference.
|
|
75
|
-
const canonicalProjectId = stringField(channelConfig?.project_entity_id) ??
|
|
76
|
-
stringField(item.metadata?.project_entity_id) ??
|
|
77
|
-
stringField(item.projectId);
|
|
78
|
-
if (!canonicalProjectId) {
|
|
79
|
-
return item;
|
|
72
|
+
if (sourceConfigs[item.channel]) {
|
|
73
|
+
return item.channel;
|
|
80
74
|
}
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
// context_compile envelopes default tenant_id to 'default' and raw reads
|
|
84
|
-
// filter on it; without an explicit tenant on the saved row, project-
|
|
85
|
-
// scoped connector evidence would be filtered out of context packets.
|
|
86
|
-
tenantId: stringField(item.tenantId) ?? 'default',
|
|
87
|
-
projectId: canonicalProjectId,
|
|
88
|
-
memoryScopeKind: 'project',
|
|
89
|
-
memoryScopeId: canonicalProjectId,
|
|
90
|
-
};
|
|
75
|
+
const matched = Object.entries(sourceConfigs).find(([, cfg]) => cfg.name === item.channel);
|
|
76
|
+
return matched ? matched[0] : null;
|
|
91
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* `bindConfiguredScope` was here, and it never bound anything.
|
|
80
|
+
*
|
|
81
|
+
* It required `project_entity_id` on a channel config and produced a `project` scope. Zero
|
|
82
|
+
* of the 39 configured channels on the live install declare that field, so it returned
|
|
83
|
+
* every item unchanged for its whole life. What made this invisible was a one-off backfill
|
|
84
|
+
* that had written `channel` scopes into the index: April is 100% scoped, the backfill
|
|
85
|
+
* stopped on 2026-05-20, and from 05-21 onward every single event is unscoped. The live
|
|
86
|
+
* write path had never bound a scope at all - the data only looked otherwise.
|
|
87
|
+
*
|
|
88
|
+
* Raw visibility is decided by the (connector, channel) grant now, which reads the key the
|
|
89
|
+
* row already carries instead of a parallel namespace that had to be populated.
|
|
90
|
+
*/
|
|
92
91
|
class PollingScheduler {
|
|
93
92
|
rawStore;
|
|
94
93
|
rawIndexSink;
|
|
@@ -153,7 +152,14 @@ class PollingScheduler {
|
|
|
153
152
|
const items = await connector.poll(since);
|
|
154
153
|
console.log(`[connector:${name}] polled ${items.length} items (since: ${since.toISOString()})`);
|
|
155
154
|
if (items.length > 0) {
|
|
156
|
-
const scopedItems = items.map((item) =>
|
|
155
|
+
const scopedItems = items.map((item) => {
|
|
156
|
+
// Canonicalise BEFORE anything durable is written. Storing the display name
|
|
157
|
+
// is what made the index unreadable; a name that reached storage was never
|
|
158
|
+
// going to be reconciled afterwards, because nothing downstream could tell
|
|
159
|
+
// it apart from an id.
|
|
160
|
+
const canonical = canonicalChannelKey(item, channelConfigs);
|
|
161
|
+
return canonical === null ? item : { ...item, channel: canonical };
|
|
162
|
+
});
|
|
157
163
|
this.rawStore.save(name, scopedItems);
|
|
158
164
|
if (this.rawIndexSink) {
|
|
159
165
|
await this.rawIndexSink(name, scopedItems);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"polling-scheduler.js","sourceRoot":"","sources":["../../../src/connectors/framework/polling-scheduler.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;
|
|
1
|
+
{"version":3,"file":"polling-scheduler.js","sourceRoot":"","sources":["../../../src/connectors/framework/polling-scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,18 +44,45 @@ export declare function clearTrelloSnapshotCache(): void;
|
|
|
44
44
|
export interface TrelloKanbanColumn {
|
|
45
45
|
board: string;
|
|
46
46
|
list: string;
|
|
47
|
+
/** Open cards in the list. */
|
|
47
48
|
count: number;
|
|
49
|
+
/** Cards actually returned; `returned < count` means this column is truncated. */
|
|
50
|
+
returned: number;
|
|
48
51
|
cards: TrelloCardSummary[];
|
|
49
52
|
}
|
|
53
|
+
export interface TrelloBoardCoverage {
|
|
54
|
+
boardId: string;
|
|
55
|
+
board: string;
|
|
56
|
+
/** 'failed' contributed NO cards - absence of cards is not evidence of an empty board. */
|
|
57
|
+
status: 'ok' | 'failed';
|
|
58
|
+
/** Card data intact, member names unresolved. */
|
|
59
|
+
rosterDegraded: boolean;
|
|
60
|
+
}
|
|
61
|
+
export interface TrelloKanbanSnapshot {
|
|
62
|
+
/** When the underlying read happened - NOT when this call was made. */
|
|
63
|
+
observedAt: string;
|
|
64
|
+
/** 0 for a fresh read; >0 means this is a reused snapshot of that age. */
|
|
65
|
+
cacheAgeMs: number;
|
|
66
|
+
/** Every configured board read successfully AND no column truncated. */
|
|
67
|
+
complete: boolean;
|
|
68
|
+
truncated: boolean;
|
|
69
|
+
boards: TrelloBoardCoverage[];
|
|
70
|
+
columns: TrelloKanbanColumn[];
|
|
71
|
+
}
|
|
50
72
|
/**
|
|
51
|
-
* Full LIVE kanban snapshot across the configured boards -
|
|
52
|
-
*
|
|
53
|
-
*
|
|
54
|
-
*
|
|
73
|
+
* Full LIVE kanban snapshot across the configured boards - the primary answer tool
|
|
74
|
+
* for whole-project status. ONE call replaces a search per card: every open card
|
|
75
|
+
* with its list, labels (revision round / artist), and assignee names, grouped by
|
|
76
|
+
* board+list.
|
|
77
|
+
*
|
|
78
|
+
* The result carries its own coverage because both ways this read can be partial are
|
|
79
|
+
* invisible in the data itself: a board whose fetch failed yields no cards, and a
|
|
80
|
+
* column longer than maxCardsPerList is silently sliced. A caller that asserts a
|
|
81
|
+
* whole-situation claim must check `complete` first.
|
|
55
82
|
*/
|
|
56
83
|
export declare function getTrelloKanban(input?: {
|
|
57
84
|
maxCardsPerList?: number;
|
|
58
|
-
}, deps?: TrelloQueryDeps): Promise<
|
|
85
|
+
}, deps?: TrelloQueryDeps): Promise<TrelloKanbanSnapshot>;
|
|
59
86
|
/**
|
|
60
87
|
* Search cards across the configured boards, LIVE. Returns current list,
|
|
61
88
|
* labels (revision round / artist), and assignee names per card. Tries
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"query-tools.d.ts","sourceRoot":"","sources":["../../../src/connectors/trello/query-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;6EAC6E;AAC7E,wBAAgB,sBAAsB,CAAC,IAAI,GAAE,eAAoB,GAAG,UAAU,CAqC7E;AAkCD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"query-tools.d.ts","sourceRoot":"","sources":["../../../src/connectors/trello/query-tools.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAOH,MAAM,WAAW,eAAe;IAC9B,oDAAoD;IACpD,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,+DAA+D;IAC/D,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,UAAU,UAAU;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,0EAA0E;IAC1E,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED;6EAC6E;AAC7E,wBAAgB,sBAAsB,CAAC,IAAI,GAAE,eAAoB,GAAG,UAAU,CAqC7E;AAkCD,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;CACtB;AA8CD,0CAA0C;AAC1C,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAmGD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,0FAA0F;IAC1F,MAAM,EAAE,IAAI,GAAG,QAAQ,CAAC;IACxB,iDAAiD;IACjD,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACnC,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,UAAU,EAAE,MAAM,CAAC;IACnB,wEAAwE;IACxE,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,mBAAmB,EAAE,CAAC;IAC9B,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,KAAK,GAAE;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAO,EACxC,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAqC/B;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,EACxC,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAgC9B;AAED,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB;IACzD,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;CACxF;AAED,6EAA6E;AAC7E,wBAAsB,aAAa,CACjC,KAAK,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,EACzB,IAAI,GAAE,eAAoB,GACzB,OAAO,CAAC,gBAAgB,CAAC,CAuC3B"}
|