@elevasis/core 0.7.1 → 0.8.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/package.json +1 -1
- package/src/README.md +41 -41
- package/src/__tests__/publish.test.ts +18 -18
- package/src/__tests__/{template-foundations-compatibility.test.ts → template-core-compatibility.test.ts} +99 -99
- package/src/_gen/__tests__/__snapshots__/contracts.md.snap +1135 -1131
- package/src/_gen/__tests__/scaffold-contracts.test.ts +53 -53
- package/src/_gen/scaffold-contracts.ts +45 -45
- package/src/auth/multi-tenancy/credentials/README.md +38 -38
- package/src/auth/multi-tenancy/credentials/index.ts +6 -6
- package/src/auth/multi-tenancy/credentials/server/encryption.ts +39 -39
- package/src/auth/multi-tenancy/credentials/server/service.ts +60 -60
- package/src/auth/multi-tenancy/index.ts +17 -17
- package/src/auth/multi-tenancy/invitations/api-schemas.ts +107 -107
- package/src/auth/multi-tenancy/invitations/index.ts +37 -37
- package/src/auth/multi-tenancy/invitations/invitation.ts +86 -86
- package/src/auth/multi-tenancy/invitations/server/index.ts +25 -25
- package/src/auth/multi-tenancy/invitations/server/transforms.ts +24 -24
- package/src/auth/multi-tenancy/invitations/server/workos.ts +24 -24
- package/src/auth/multi-tenancy/invitations/supabase.ts +50 -50
- package/src/auth/multi-tenancy/memberships/api-schemas.ts +126 -126
- package/src/auth/multi-tenancy/memberships/index.ts +21 -21
- package/src/auth/multi-tenancy/memberships/membership.ts +138 -138
- package/src/auth/multi-tenancy/memberships/server/index.ts +15 -15
- package/src/auth/multi-tenancy/memberships/server/transforms.ts +32 -32
- package/src/auth/multi-tenancy/memberships/server/workos.ts +21 -21
- package/src/auth/multi-tenancy/memberships/supabase.ts +46 -46
- package/src/auth/multi-tenancy/organizations/api-schemas.ts +128 -128
- package/src/auth/multi-tenancy/organizations/index.ts +23 -23
- package/src/auth/multi-tenancy/organizations/organization.ts +24 -24
- package/src/auth/multi-tenancy/organizations/server/index.ts +10 -10
- package/src/auth/multi-tenancy/organizations/server/transforms.ts +35 -35
- package/src/auth/multi-tenancy/organizations/server/workos.ts +20 -20
- package/src/auth/multi-tenancy/types.ts +83 -83
- package/src/auth/multi-tenancy/users/api-schemas.ts +194 -194
- package/src/auth/multi-tenancy/users/index.ts +27 -27
- package/src/auth/multi-tenancy/users/server/index.ts +19 -19
- package/src/auth/multi-tenancy/users/server/transforms.ts +21 -21
- package/src/auth/multi-tenancy/users/server/workos.ts +16 -16
- package/src/auth/multi-tenancy/users/user.ts +65 -65
- package/src/business/README.md +52 -52
- package/src/business/__tests__/entities-published.test.ts +33 -33
- package/src/business/acquisition/api-schemas.ts +759 -759
- package/src/business/acquisition/index.ts +109 -109
- package/src/business/acquisition/types.ts +402 -402
- package/src/business/base-entities.test.ts +481 -481
- package/src/business/base-entities.ts +241 -241
- package/src/business/entities-published.ts +24 -24
- package/src/business/index.ts +15 -15
- package/src/business/pdf/browser/pdfmake-browser.ts +229 -229
- package/src/business/pdf/index.ts +10 -10
- package/src/business/pdf/server/index.ts +21 -21
- package/src/business/pdf/server/themes/default.ts +8 -8
- package/src/business/pdf/server/themes/index.ts +9 -9
- package/src/business/pdf/server/themes/types.ts +8 -8
- package/src/business/pdf/types.ts +272 -272
- package/src/business/projects/index.ts +2 -2
- package/src/business/projects/sse-events.ts +21 -21
- package/src/business/projects/types.ts +89 -89
- package/src/business/sales/api-schemas.ts +75 -75
- package/src/business/seo/__tests__/linking.test.ts +549 -549
- package/src/business/seo/__tests__/types.test.ts +404 -404
- package/src/business/seo/index.ts +2 -2
- package/src/business/seo/linking.ts +281 -281
- package/src/business/seo/types.ts +199 -199
- package/src/commands/queue/index.ts +3 -3
- package/src/commands/queue/schemas.test.ts +593 -593
- package/src/commands/queue/schemas.ts +125 -125
- package/src/commands/queue/sse-events.ts +61 -61
- package/src/commands/queue/types/action.ts +52 -52
- package/src/commands/queue/types/checkpoint.ts +44 -44
- package/src/commands/queue/types/index.ts +7 -7
- package/src/commands/queue/types/task.ts +116 -116
- package/src/commands/queue/types.ts +14 -14
- package/src/content/distribution-metadata.ts +61 -61
- package/src/content/index.ts +10 -10
- package/src/deployments/index.ts +22 -22
- package/src/execution/core/__tests__/archived-logs.test.ts +72 -72
- package/src/execution/core/index.ts +11 -11
- package/src/execution/core/runner-types.ts +80 -80
- package/src/execution/core/server/environment.ts +31 -31
- package/src/execution/core/sse-executions.ts +119 -119
- package/src/execution/core/types.ts +29 -29
- package/src/execution/engine/__tests__/fixtures/test-agents.ts +4 -4
- package/src/execution/engine/__tests__/timeout.test.ts +565 -565
- package/src/execution/engine/agent/__tests__/errors.test.ts +508 -508
- package/src/execution/engine/agent/actions/__tests__/processor.test.ts +531 -531
- package/src/execution/engine/agent/actions/executor.ts +205 -205
- package/src/execution/engine/agent/actions/navigate-knowledge-executor.ts +230 -230
- package/src/execution/engine/agent/actions/processor.ts +116 -116
- package/src/execution/engine/agent/actions/types.ts +70 -70
- package/src/execution/engine/agent/core/agent.ts +810 -810
- package/src/execution/engine/agent/core/types.ts +155 -155
- package/src/execution/engine/agent/errors.ts +251 -251
- package/src/execution/engine/agent/index.ts +78 -78
- package/src/execution/engine/agent/knowledge-map/types.ts +106 -106
- package/src/execution/engine/agent/knowledge-map/utils.ts +101 -101
- package/src/execution/engine/agent/memory/__tests__/manager.test.ts +754 -754
- package/src/execution/engine/agent/memory/domains.ts +99 -99
- package/src/execution/engine/agent/memory/manager.ts +365 -365
- package/src/execution/engine/agent/memory/processor.ts +66 -66
- package/src/execution/engine/agent/memory/types.ts +90 -90
- package/src/execution/engine/agent/memory/utils.ts +134 -134
- package/src/execution/engine/agent/observability/logging.ts +467 -467
- package/src/execution/engine/agent/observability/types.ts +64 -64
- package/src/execution/engine/agent/reasoning/adapters/agent-adapter-helpers.ts +349 -349
- package/src/execution/engine/agent/reasoning/processor.ts +92 -92
- package/src/execution/engine/agent/reasoning/prompt-sections/base-actions.ts +134 -134
- package/src/execution/engine/agent/reasoning/prompt-sections/completion.ts +49 -49
- package/src/execution/engine/agent/reasoning/prompt-sections/knowledge-map.ts +93 -93
- package/src/execution/engine/agent/reasoning/prompt-sections/memory.ts +65 -65
- package/src/execution/engine/agent/reasoning/prompt-sections/tools.ts +44 -44
- package/src/execution/engine/agent/reasoning/request-builder.ts +169 -169
- package/src/execution/engine/agent/reasoning/types.ts +18 -18
- package/src/execution/engine/base/errors.ts +118 -118
- package/src/execution/engine/base/index.ts +2 -2
- package/src/execution/engine/base/logging.ts +31 -31
- package/src/execution/engine/base/serialization.ts +324 -324
- package/src/execution/engine/base/types.ts +126 -126
- package/src/execution/engine/base/utils.ts +41 -41
- package/src/execution/engine/index.ts +434 -434
- package/src/execution/engine/interface/index.ts +1 -1
- package/src/execution/engine/interface/types.ts +62 -62
- package/src/execution/engine/llm/__tests__/model-info.test.ts +50 -50
- package/src/execution/engine/llm/__tests__/model-validation.test.ts +321 -321
- package/src/execution/engine/llm/__tests__/response-schema-validator.test.ts +115 -115
- package/src/execution/engine/llm/adapters/__tests__/adapter-factory.test.ts +375 -375
- package/src/execution/engine/llm/adapters/__tests__/anthropic-adapter.test.ts +463 -463
- package/src/execution/engine/llm/adapters/__tests__/anthropic.integration.test.ts +177 -177
- package/src/execution/engine/llm/adapters/__tests__/google-adapter.test.ts +722 -722
- package/src/execution/engine/llm/adapters/__tests__/google.integration.test.ts +376 -376
- package/src/execution/engine/llm/adapters/__tests__/openai-adapter.test.ts +551 -551
- package/src/execution/engine/llm/adapters/__tests__/openrouter-adapter.test.ts +563 -563
- package/src/execution/engine/llm/adapters/__tests__/openrouter.integration.test.ts +105 -105
- package/src/execution/engine/llm/adapters/__tests__/universal-adapter.test.ts +537 -537
- package/src/execution/engine/llm/adapters/circuit-breaker.ts +147 -147
- package/src/execution/engine/llm/adapters/index.ts +17 -17
- package/src/execution/engine/llm/adapters/mock-adapter.ts +116 -116
- package/src/execution/engine/llm/adapters/server/adapter-factory.ts +130 -130
- package/src/execution/engine/llm/adapters/server/anthropic.ts +137 -137
- package/src/execution/engine/llm/adapters/server/google.ts +283 -283
- package/src/execution/engine/llm/adapters/server/index.ts +12 -12
- package/src/execution/engine/llm/adapters/server/openai.ts +206 -206
- package/src/execution/engine/llm/adapters/server/openrouter.ts +235 -235
- package/src/execution/engine/llm/adapters/universal-adapter.ts +230 -230
- package/src/execution/engine/llm/errors.ts +186 -186
- package/src/execution/engine/llm/model-info.ts +332 -332
- package/src/execution/engine/llm/response-schema-validator.ts +113 -113
- package/src/execution/engine/llm/types.ts +86 -86
- package/src/execution/engine/test-utils/index.ts +6 -6
- package/src/execution/engine/test-utils/mocks.ts +56 -56
- package/src/execution/engine/tools/integration/base-integration-adapter.ts +50 -50
- package/src/execution/engine/tools/integration/index.ts +53 -53
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/anymailfinder-adapter.ts +73 -73
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/anymailfinder-tools.ts +209 -209
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/fetch/find-company-email/index.ts +82 -82
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/fetch/find-decision-maker-email/index.ts +122 -122
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/fetch/find-person-email/index.ts +89 -89
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/fetch/verify-email/index.ts +84 -84
- package/src/execution/engine/tools/integration/server/adapters/anymailfinder/index.ts +16 -16
- package/src/execution/engine/tools/integration/server/adapters/apify/__tests__/apify-run-actor.integration.test.ts +293 -293
- package/src/execution/engine/tools/integration/server/adapters/apify/apify-adapter.ts +100 -100
- package/src/execution/engine/tools/integration/server/adapters/apify/apify-tools.ts +217 -217
- package/src/execution/engine/tools/integration/server/adapters/apify/fetch/get-dataset-items/index.ts +92 -92
- package/src/execution/engine/tools/integration/server/adapters/apify/fetch/run-actor/index.ts +218 -218
- package/src/execution/engine/tools/integration/server/adapters/apify/fetch/start-actor/index.ts +87 -87
- package/src/execution/engine/tools/integration/server/adapters/apify/index.ts +11 -11
- package/src/execution/engine/tools/integration/server/adapters/attio/__tests__/attio-crud.integration.test.ts +361 -361
- package/src/execution/engine/tools/integration/server/adapters/attio/attio-adapter.ts +162 -162
- package/src/execution/engine/tools/integration/server/adapters/attio/attio-tools.ts +594 -594
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/create-attribute/index.ts +214 -214
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/create-note/index.ts +152 -152
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/create-record/index.ts +141 -141
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/delete-note/index.ts +86 -86
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/delete-record/index.ts +105 -105
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/get-record/index.ts +118 -118
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/list-attributes/index.ts +165 -165
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/list-notes/index.ts +96 -96
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/list-objects/index.ts +104 -104
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/list-records/index.ts +156 -156
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/update-attribute/index.ts +220 -220
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/update-record/index.ts +140 -140
- package/src/execution/engine/tools/integration/server/adapters/attio/fetch/utils/types.ts +146 -146
- package/src/execution/engine/tools/integration/server/adapters/attio/index.ts +31 -31
- package/src/execution/engine/tools/integration/server/adapters/gmail/gmail-adapter.ts +210 -210
- package/src/execution/engine/tools/integration/server/adapters/gmail/gmail-tools.ts +104 -104
- package/src/execution/engine/tools/integration/server/adapters/google-sheets/__tests__/google-sheets.integration.test.ts +261 -261
- package/src/execution/engine/tools/integration/server/adapters/google-sheets/google-sheets-adapter.ts +1189 -1189
- package/src/execution/engine/tools/integration/server/adapters/google-sheets/google-sheets-tools.ts +641 -641
- package/src/execution/engine/tools/integration/server/adapters/google-sheets/index.ts +18 -18
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/activate-campaign/index.ts +86 -86
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/add-to-campaign/__tests__/index.test.ts +289 -289
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/add-to-campaign/index.ts +154 -154
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/bulk-add-leads/__tests__/index.test.ts +325 -325
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/bulk-add-leads/index.ts +153 -153
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/bulk-delete-leads/index.ts +84 -84
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/create-campaign/index.ts +125 -125
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/create-inbox-test/index.ts +107 -107
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/delete-campaign/index.ts +85 -85
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-account-health/index.ts +91 -91
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-campaign/index.ts +92 -92
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-campaign-analytics/__tests__/index.test.ts +195 -195
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-campaign-analytics/index.ts +113 -113
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-daily-campaign-analytics/index.ts +104 -104
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-emails/index.ts +155 -155
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-step-analytics/__tests__/index.test.ts +196 -196
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/get-step-analytics/index.ts +102 -102
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/list-campaigns/__tests__/index.test.ts +189 -189
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/list-campaigns/index.ts +87 -87
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/list-leads/index.ts +112 -112
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/patch-lead/index.ts +76 -76
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/pause-campaign/index.ts +86 -86
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/remove-from-subsequence/index.ts +98 -98
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/send-reply/index.ts +126 -126
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/update-campaign/__tests__/index.test.ts +193 -193
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/update-campaign/index.ts +99 -99
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/update-interest-status/__tests__/index.test.ts +621 -621
- package/src/execution/engine/tools/integration/server/adapters/instantly/fetch/update-interest-status/index.ts +125 -125
- package/src/execution/engine/tools/integration/server/adapters/instantly/index.ts +29 -29
- package/src/execution/engine/tools/integration/server/adapters/instantly/instantly-adapter.ts +178 -178
- package/src/execution/engine/tools/integration/server/adapters/instantly/instantly-tools.ts +1473 -1473
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/fetch/check-credits/index.ts +59 -59
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/fetch/verify-email/index.ts +102 -102
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/index.ts +17 -17
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/millionverifier-adapter.ts +80 -80
- package/src/execution/engine/tools/integration/server/adapters/millionverifier/millionverifier-tools.ts +102 -102
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/get-email/index.ts +102 -102
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/send-email/index.ts +134 -134
- package/src/execution/engine/tools/integration/server/adapters/resend/fetch/utils/types.ts +75 -75
- package/src/execution/engine/tools/integration/server/adapters/resend/index.ts +27 -27
- package/src/execution/engine/tools/integration/server/adapters/resend/resend-adapter.ts +108 -108
- package/src/execution/engine/tools/integration/server/adapters/resend/resend-tools.ts +132 -132
- package/src/execution/engine/tools/integration/server/adapters/signature-api/fetch/create-envelope/index.ts +274 -274
- package/src/execution/engine/tools/integration/server/adapters/signature-api/fetch/download-document/index.ts +230 -230
- package/src/execution/engine/tools/integration/server/adapters/signature-api/fetch/get-envelope/index.ts +133 -133
- package/src/execution/engine/tools/integration/server/adapters/signature-api/fetch/void-envelope/index.ts +90 -90
- package/src/execution/engine/tools/integration/server/adapters/stripe/fetch/utils/types.ts +210 -210
- package/src/execution/engine/tools/integration/server/adapters/stripe/stripe-adapter.ts +517 -517
- package/src/execution/engine/tools/integration/server/adapters/stripe/stripe-tools.ts +309 -309
- package/src/execution/engine/tools/integration/server/adapters/tomba/fetch/domain-search/index.ts +133 -133
- package/src/execution/engine/tools/integration/server/adapters/tomba/fetch/email-finder/index.ts +122 -122
- package/src/execution/engine/tools/integration/server/adapters/tomba/fetch/email-verifier/index.ts +111 -111
- package/src/execution/engine/tools/integration/server/adapters/tomba/index.ts +11 -11
- package/src/execution/engine/tools/integration/server/adapters/tomba/tomba-adapter.ts +78 -78
- package/src/execution/engine/tools/integration/server/adapters/tomba/tomba-tools.ts +222 -222
- package/src/execution/engine/tools/integration/server/index.ts +61 -61
- package/src/execution/engine/tools/integration/service.ts +161 -161
- package/src/execution/engine/tools/integration/tool.ts +253 -253
- package/src/execution/engine/tools/integration/types/anymailfinder.ts +74 -74
- package/src/execution/engine/tools/integration/types/apify.ts +92 -92
- package/src/execution/engine/tools/integration/types/index.ts +19 -19
- package/src/execution/engine/tools/integration/types/instantly.ts +557 -557
- package/src/execution/engine/tools/integration/types/millionverifier.ts +56 -56
- package/src/execution/engine/tools/integration/types/stripe.ts +162 -162
- package/src/execution/engine/tools/integration/types/tomba.ts +94 -94
- package/src/execution/engine/tools/lead-service-types.ts +884 -884
- package/src/execution/engine/tools/llm/index.ts +11 -11
- package/src/execution/engine/tools/llm/server/index.ts +8 -8
- package/src/execution/engine/tools/llm/server/llm-call-tool.ts +118 -118
- package/src/execution/engine/tools/platform/__tests__/pdf.test.ts +441 -441
- package/src/execution/engine/tools/platform/acquisition/company-tools.ts +248 -248
- package/src/execution/engine/tools/platform/acquisition/contact-tools.ts +319 -319
- package/src/execution/engine/tools/platform/acquisition/index.ts +43 -43
- package/src/execution/engine/tools/platform/acquisition/list-tools.ts +148 -148
- package/src/execution/engine/tools/platform/acquisition/types.ts +260 -260
- package/src/execution/engine/tools/platform/email/index.ts +122 -122
- package/src/execution/engine/tools/platform/email/types.ts +96 -96
- package/src/execution/engine/tools/platform/index.ts +157 -157
- package/src/execution/engine/tools/platform/notification.ts +81 -81
- package/src/execution/engine/tools/platform/pdf/index.ts +110 -110
- package/src/execution/engine/tools/platform/pdf/types.ts +77 -77
- package/src/execution/engine/tools/platform/scheduler.ts +87 -87
- package/src/execution/engine/tools/platform/storage/index.ts +370 -370
- package/src/execution/engine/tools/platform/types.ts +148 -148
- package/src/execution/engine/tools/registry.ts +700 -700
- package/src/execution/engine/tools/tool-maps.ts +786 -786
- package/src/execution/engine/tools/types.ts +233 -233
- package/src/execution/engine/workflow/__tests__/errors.test.ts +139 -139
- package/src/execution/engine/workflow/errors.ts +63 -63
- package/src/execution/engine/workflow/helpers/index.ts +11 -11
- package/src/execution/engine/workflow/helpers/server/index.ts +8 -8
- package/src/execution/engine/workflow/helpers/server/llm-call.ts +93 -93
- package/src/execution/engine/workflow/index.ts +19 -19
- package/src/execution/engine/workflow/log-truncate.ts +26 -26
- package/src/execution/engine/workflow/logging.ts +191 -191
- package/src/execution/engine/workflow/types.ts +182 -182
- package/src/execution/engine/workflow/utils.ts +280 -280
- package/src/execution/engine/workflow/workflow.ts +168 -168
- package/src/execution/index.ts +3 -3
- package/src/execution/scheduler/__tests__/api-schemas.test.ts +733 -733
- package/src/execution/scheduler/__tests__/utils.test.ts +1009 -1009
- package/src/execution/scheduler/api-schemas.ts +296 -296
- package/src/execution/scheduler/index.ts +50 -50
- package/src/execution/scheduler/schemas.ts +264 -264
- package/src/execution/scheduler/types.ts +111 -111
- package/src/execution/scheduler/utils.ts +364 -364
- package/src/forms/index.ts +7 -7
- package/src/forms/schemas.ts +69 -69
- package/src/forms/types.ts +70 -70
- package/src/index.ts +71 -60
- package/src/integrations/credentials/__tests__/schemas.test.ts +82 -82
- package/src/integrations/credentials/__tests__/utils.test.ts +144 -144
- package/src/integrations/credentials/api-schemas.ts +143 -143
- package/src/integrations/credentials/index.ts +32 -32
- package/src/integrations/credentials/schemas.ts +164 -164
- package/src/integrations/credentials/utils.ts +59 -59
- package/src/integrations/oauth/__tests__/provider-registry.test.ts +59 -59
- package/src/integrations/oauth/api-schemas.ts +92 -92
- package/src/integrations/oauth/index.ts +19 -19
- package/src/integrations/oauth/provider-registry.ts +61 -61
- package/src/integrations/oauth/server/__tests__/refresh-concurrent.test.ts +183 -183
- package/src/integrations/oauth/server/__tests__/refresh.test.ts +577 -577
- package/src/integrations/oauth/server/credentials.ts +39 -39
- package/src/integrations/oauth/server/refresh.ts +214 -214
- package/src/integrations/oauth/types.ts +34 -34
- package/src/integrations/webhook-endpoints/__tests__/api-schemas.test.ts +318 -318
- package/src/integrations/webhook-endpoints/api-schemas.ts +102 -102
- package/src/integrations/webhook-endpoints/index.ts +28 -28
- package/src/integrations/webhook-endpoints/types.ts +51 -51
- package/src/operations/activities/api-schemas.ts +79 -79
- package/src/operations/activities/index.ts +9 -9
- package/src/operations/activities/sse-events.ts +30 -30
- package/src/operations/activities/types.ts +63 -63
- package/src/operations/debug-logs/client.ts +60 -60
- package/src/operations/debug-logs/debug-logger.ts +83 -83
- package/src/operations/debug-logs/index.ts +8 -8
- package/src/operations/debug-logs/server.ts +19 -19
- package/src/operations/debug-logs/types.ts +33 -33
- package/src/operations/index.ts +50 -50
- package/src/operations/notifications/api-schemas.ts +91 -91
- package/src/operations/notifications/index.ts +3 -3
- package/src/operations/notifications/sse-events.ts +21 -21
- package/src/operations/notifications/types.ts +47 -47
- package/src/operations/observability/__tests__/openrouter-cost-flow.test.ts +297 -297
- package/src/operations/observability/__tests__/utils.test.ts +54 -54
- package/src/operations/observability/ai-usage-collector.ts +64 -64
- package/src/operations/observability/index.ts +13 -13
- package/src/operations/observability/metrics-collector.ts +49 -49
- package/src/operations/observability/schemas.ts +39 -39
- package/src/operations/observability/types.ts +463 -463
- package/src/operations/observability/utils.ts +77 -77
- package/src/operations/sessions/__tests__/manager.test.ts +821 -821
- package/src/operations/sessions/index.ts +26 -26
- package/src/operations/sessions/server/manager.ts +90 -90
- package/src/operations/sessions/server/session.ts +180 -180
- package/src/operations/sessions/types.ts +98 -98
- package/src/operations/triggers/index.ts +12 -12
- package/src/operations/triggers/webhook/definitions/instantly-account-error.ts +44 -44
- package/src/operations/triggers/webhook/definitions/instantly-auto-reply-received.ts +51 -51
- package/src/operations/triggers/webhook/definitions/instantly-campaign-completed.ts +45 -45
- package/src/operations/triggers/webhook/definitions/instantly-email-bounced.ts +49 -49
- package/src/operations/triggers/webhook/definitions/instantly-lead-unsubscribed.ts +45 -45
- package/src/operations/triggers/webhook/definitions/instantly-reply-received.ts +54 -54
- package/src/operations/triggers/webhook/index.ts +35 -35
- package/src/operations/triggers/webhook/types.ts +74 -74
- package/src/organization-model/README.md +97 -97
- package/src/organization-model/__tests__/defaults.test.ts +175 -175
- package/src/organization-model/__tests__/domains/customers.test.ts +295 -295
- package/src/organization-model/__tests__/domains/goals.test.ts +479 -479
- package/src/organization-model/__tests__/domains/identity.test.ts +279 -279
- package/src/organization-model/__tests__/domains/navigation.test.ts +212 -212
- package/src/organization-model/__tests__/domains/offerings.test.ts +419 -419
- package/src/organization-model/__tests__/domains/operations.test.ts +203 -203
- package/src/organization-model/__tests__/domains/resource-mappings.test.ts +362 -362
- package/src/organization-model/__tests__/domains/roles.test.ts +347 -347
- package/src/organization-model/__tests__/domains/statuses.test.ts +243 -243
- package/src/organization-model/__tests__/foundation.test.ts +105 -105
- package/src/organization-model/__tests__/graph.test.ts +894 -894
- package/src/organization-model/__tests__/resolve.test.ts +690 -690
- package/src/organization-model/__tests__/schema.test.ts +407 -407
- package/src/organization-model/contracts.ts +14 -14
- package/src/organization-model/defaults.ts +148 -148
- package/src/organization-model/domains/branding.ts +22 -22
- package/src/organization-model/domains/customers.ts +75 -75
- package/src/organization-model/domains/features.ts +22 -22
- package/src/organization-model/domains/goals.ts +80 -80
- package/src/organization-model/domains/identity.ts +94 -94
- package/src/organization-model/domains/navigation.ts +391 -391
- package/src/organization-model/domains/offerings.ts +66 -66
- package/src/organization-model/domains/operations.ts +85 -85
- package/src/organization-model/domains/projects.ts +48 -48
- package/src/organization-model/domains/prospecting.ts +33 -33
- package/src/organization-model/domains/roles.ts +55 -55
- package/src/organization-model/domains/sales.ts +94 -94
- package/src/organization-model/domains/shared.ts +62 -62
- package/src/organization-model/domains/statuses.ts +130 -130
- package/src/organization-model/foundation.ts +97 -97
- package/src/organization-model/graph/build.ts +399 -399
- package/src/organization-model/graph/index.ts +4 -4
- package/src/organization-model/graph/schema.ts +48 -48
- package/src/organization-model/graph/types.ts +40 -40
- package/src/organization-model/index.ts +13 -13
- package/src/organization-model/organization-graph.mdx +272 -272
- package/src/organization-model/organization-model.mdx +320 -320
- package/src/organization-model/published.ts +85 -85
- package/src/organization-model/resolve.ts +66 -66
- package/src/organization-model/schema.ts +287 -287
- package/src/organization-model/types.ts +46 -46
- package/src/platform/api/index.ts +1 -1
- package/src/platform/api/types.ts +35 -35
- package/src/platform/constants/http.ts +37 -37
- package/src/platform/constants/index.ts +5 -5
- package/src/platform/constants/limits.ts +32 -32
- package/src/platform/constants/resilience.ts +51 -51
- package/src/platform/constants/timeouts.ts +20 -20
- package/src/platform/constants/versions.ts +3 -3
- package/src/platform/registry/__tests__/resource-registry-static.test.ts +347 -347
- package/src/platform/registry/__tests__/resource-registry.integration.test.ts +1028 -1028
- package/src/platform/registry/__tests__/resource-registry.list-executable.test.ts +393 -393
- package/src/platform/registry/__tests__/resource-registry.test.ts +2005 -2005
- package/src/platform/registry/__tests__/serialization.test.ts +1127 -1127
- package/src/platform/registry/command-view.ts +180 -180
- package/src/platform/registry/domains.ts +165 -165
- package/src/platform/registry/index.ts +93 -93
- package/src/platform/registry/reserved.ts +24 -24
- package/src/platform/registry/resource-metadata.ts +59 -59
- package/src/platform/registry/resource-registry.command-queue-groups.test.ts +129 -129
- package/src/platform/registry/resource-registry.ts +876 -876
- package/src/platform/registry/serialization.ts +273 -273
- package/src/platform/registry/serialized-types.ts +231 -231
- package/src/platform/registry/stats-types.ts +66 -66
- package/src/platform/registry/types.ts +404 -404
- package/src/platform/registry/validation.ts +513 -513
- package/src/platform/resilience/__tests__/rate-limiter.test.ts +471 -471
- package/src/platform/resilience/circuit-breaker.ts +164 -164
- package/src/platform/resilience/errors.ts +68 -68
- package/src/platform/resilience/http-error-mapper.ts +129 -129
- package/src/platform/resilience/index.ts +93 -93
- package/src/platform/resilience/rate-limiter-types.ts +46 -46
- package/src/platform/resilience/rate-limiter.ts +140 -140
- package/src/platform/resilience/retry.ts +89 -89
- package/src/platform/resilience/timeout.ts +63 -63
- package/src/platform/sse/events.ts +37 -37
- package/src/platform/sse/index.ts +7 -7
- package/src/platform/utils/__tests__/validation.test.ts +1083 -1083
- package/src/platform/utils/currency.ts +96 -96
- package/src/platform/utils/debounce.ts +52 -52
- package/src/platform/utils/error.ts +41 -41
- package/src/platform/utils/hmac.test.ts +97 -97
- package/src/platform/utils/index.ts +32 -32
- package/src/platform/utils/server/betterstack-logger.ts +210 -210
- package/src/platform/utils/server/hmac.ts +44 -44
- package/src/platform/utils/server/unsubscribe.ts +111 -111
- package/src/platform/utils/token-counter.ts +96 -96
- package/src/platform/utils/validation.ts +425 -425
- package/src/projects/api-schemas.ts +268 -268
- package/src/published.ts +1 -1
- package/src/reference/_generated/contracts.md +607 -607
- package/src/reference/glossary.md +105 -105
- package/src/requests/__tests__/api-schemas.test.ts +277 -277
- package/src/requests/api-schemas.ts +83 -83
- package/src/requests/index.ts +1 -1
- package/src/scaffold-registry/__tests__/index.test.ts +17 -0
- package/src/scaffold-registry/__tests__/schema.test.ts +329 -230
- package/src/scaffold-registry/index.ts +205 -189
- package/src/scaffold-registry/schema.ts +196 -128
- package/src/server.ts +272 -272
- package/src/supabase/database.types.ts +2719 -2719
- package/src/supabase/helpers.ts +20 -20
- package/src/supabase/index.ts +52 -52
- package/src/supabase/server/client.ts +58 -58
- package/src/test-utils/README.md +38 -38
- package/src/test-utils/browser-mocks.ts +54 -54
- package/src/test-utils/fixtures/api-keys.ts +52 -52
- package/src/test-utils/fixtures/index.ts +4 -4
- package/src/test-utils/fixtures/memberships.ts +80 -80
- package/src/test-utils/fixtures/organizations.ts +69 -69
- package/src/test-utils/fixtures/users.ts +79 -79
- package/src/test-utils/index.ts +11 -11
- package/src/test-utils/mocks/index.ts +2 -2
- package/src/test-utils/mocks/supabase.ts +142 -142
- package/src/test-utils/mocks/workos.ts +108 -108
- package/src/test-utils/rls/RLSTestContext.ts +556 -556
- package/src/test-utils/rls/index.ts +1 -1
|
@@ -1,169 +1,169 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* LLM Request Builder
|
|
3
|
-
* Constructs universal LLMRequest from execution context using modular prompt system
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import type { z } from 'zod'
|
|
7
|
-
import type { IterationContext } from '../core/types'
|
|
8
|
-
import type { ToolDefinition } from '../../tools/types'
|
|
9
|
-
import type { KnowledgeMap } from '../knowledge-map/types'
|
|
10
|
-
import { zodToJsonSchema } from '@alcyone-labs/zod-to-json-schema'
|
|
11
|
-
import { buildSecurityPrompt } from './prompt-sections/security'
|
|
12
|
-
import { buildBaseActionsPrompt } from './prompt-sections/base-actions'
|
|
13
|
-
import { buildKnowledgeMapPrompt } from './prompt-sections/knowledge-map'
|
|
14
|
-
import { buildToolsPrompt } from './prompt-sections/tools'
|
|
15
|
-
import { buildMemoryPrompt, type MemoryStatus } from './prompt-sections/memory'
|
|
16
|
-
import { buildCompletionPrompt } from './prompt-sections/completion'
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Options for system prompt generation
|
|
20
|
-
*/
|
|
21
|
-
export interface SystemPromptOptions {
|
|
22
|
-
/** Security level for prompt injection defense */
|
|
23
|
-
securityLevel: 'standard' | 'hardened' | 'none'
|
|
24
|
-
/** Whether to include message action (session-based agents only) */
|
|
25
|
-
includeMessageAction: boolean
|
|
26
|
-
/** Whether to include navigate-knowledge action (knowledge map present) */
|
|
27
|
-
includeNavigateKnowledge: boolean
|
|
28
|
-
/** Knowledge map with nodes (optional) */
|
|
29
|
-
knowledgeMap?: KnowledgeMap
|
|
30
|
-
/** Available tools */
|
|
31
|
-
tools: ToolDefinition[]
|
|
32
|
-
/** Current memory status */
|
|
33
|
-
memoryStatus: MemoryStatus
|
|
34
|
-
/** Output schema for completion guidance (optional) */
|
|
35
|
-
outputSchema?: z.ZodSchema
|
|
36
|
-
/** Memory preferences for opt-in memory management (optional string) */
|
|
37
|
-
memoryPreferences?: string
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
/**
|
|
41
|
-
* Builds complete system prompt from modular sections
|
|
42
|
-
*
|
|
43
|
-
* Composition order:
|
|
44
|
-
* 0. Security rules (standard/hardened, or omitted if 'none')
|
|
45
|
-
* 1. Base actions (conditional message action based on session context)
|
|
46
|
-
* 2. Knowledge map (if present)
|
|
47
|
-
* 3. Tools (if present)
|
|
48
|
-
* 4. Memory management (CONDITIONAL - only if preferences provided)
|
|
49
|
-
* 5. Task completion
|
|
50
|
-
* 6. Agent-specific instructions
|
|
51
|
-
*
|
|
52
|
-
* @param agentPrompt - Agent-specific instructions
|
|
53
|
-
* @param options - Prompt configuration options
|
|
54
|
-
* @returns Complete system prompt string
|
|
55
|
-
*/
|
|
56
|
-
function buildSystemPrompt(agentPrompt: string, options: SystemPromptOptions): string {
|
|
57
|
-
const sections: string[] = []
|
|
58
|
-
|
|
59
|
-
// 0. Security rules (first position for maximum LLM attention)
|
|
60
|
-
const securitySection = buildSecurityPrompt(options.securityLevel)
|
|
61
|
-
if (securitySection) {
|
|
62
|
-
sections.push(securitySection)
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
// 1. Base actions (with conditional message and navigate-knowledge actions)
|
|
66
|
-
sections.push(buildBaseActionsPrompt(options.includeMessageAction, options.includeNavigateKnowledge))
|
|
67
|
-
|
|
68
|
-
// 2. Knowledge map (if present)
|
|
69
|
-
const knowledgeMapSection = buildKnowledgeMapPrompt(options.knowledgeMap)
|
|
70
|
-
if (knowledgeMapSection) {
|
|
71
|
-
sections.push(knowledgeMapSection)
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
// 3. Tools (if present)
|
|
75
|
-
const toolsSection = buildToolsPrompt(options.tools)
|
|
76
|
-
if (toolsSection) {
|
|
77
|
-
sections.push(toolsSection)
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
// 4. Memory management (CONDITIONAL - only if preferences provided)
|
|
81
|
-
// Conservative approach: Keep memoryOps in schema, but skip prompt if no preferences
|
|
82
|
-
if (options.memoryPreferences) {
|
|
83
|
-
sections.push(buildMemoryPrompt(options.memoryStatus, options.memoryPreferences))
|
|
84
|
-
}
|
|
85
|
-
|
|
86
|
-
// 5. Task completion guidance (always included)
|
|
87
|
-
sections.push(buildCompletionPrompt(options.outputSchema))
|
|
88
|
-
|
|
89
|
-
// 6. Agent-specific instructions (separator + prompt)
|
|
90
|
-
sections.push('---\n')
|
|
91
|
-
sections.push('# AGENT-SPECIFIC INSTRUCTIONS\n\n')
|
|
92
|
-
sections.push(agentPrompt)
|
|
93
|
-
|
|
94
|
-
return sections.join('\n')
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Build universal LLM iteration request from current state
|
|
99
|
-
* Combines system prompt, tools, constraints, and memory using modular prompt builder
|
|
100
|
-
*
|
|
101
|
-
* @param iterationContext - Agent execution context
|
|
102
|
-
* @returns Agent iteration request data
|
|
103
|
-
*/
|
|
104
|
-
export function buildReasoningRequest(iterationContext: IterationContext): {
|
|
105
|
-
systemPrompt: string
|
|
106
|
-
tools: ToolDefinition[]
|
|
107
|
-
constraints: { maxOutputTokens?: number; temperature?: number }
|
|
108
|
-
memoryContext: string
|
|
109
|
-
includeMessageAction: boolean
|
|
110
|
-
includeNavigateKnowledge: boolean
|
|
111
|
-
includeMemoryOps: boolean
|
|
112
|
-
} {
|
|
113
|
-
// Build tool definitions for system prompt from registry
|
|
114
|
-
const tools = Array.from(iterationContext.toolRegistry.values())
|
|
115
|
-
const toolDefinitions = tools.map((tool) => ({
|
|
116
|
-
name: tool.name,
|
|
117
|
-
description: tool.description,
|
|
118
|
-
inputSchema: zodToJsonSchema(tool.inputSchema as z.ZodSchema)
|
|
119
|
-
}))
|
|
120
|
-
|
|
121
|
-
// Get memory status for system prompt
|
|
122
|
-
const memoryStatus = iterationContext.memoryManager.getStatus()
|
|
123
|
-
|
|
124
|
-
// Agent capability: explicit session support declaration
|
|
125
|
-
// Controls whether message action is available in prompts
|
|
126
|
-
const isSessionCapable = !!iterationContext.config.sessionCapable
|
|
127
|
-
|
|
128
|
-
// Detect knowledge map availability
|
|
129
|
-
const hasKnowledgeMap = !!(
|
|
130
|
-
iterationContext.knowledgeMap && Object.keys(iterationContext.knowledgeMap.nodes).length > 0
|
|
131
|
-
)
|
|
132
|
-
|
|
133
|
-
// Detect if memory operations should be included
|
|
134
|
-
const includeMemoryOps = !!iterationContext.config.memoryPreferences
|
|
135
|
-
|
|
136
|
-
// Derive security level: explicit config > sessionCapable-based default
|
|
137
|
-
const securityLevel = iterationContext.config.securityLevel ?? (isSessionCapable ? 'hardened' : 'standard')
|
|
138
|
-
|
|
139
|
-
// Build complete system prompt using modular builder
|
|
140
|
-
const systemPrompt = buildSystemPrompt(iterationContext.config.systemPrompt, {
|
|
141
|
-
securityLevel,
|
|
142
|
-
includeMessageAction: isSessionCapable,
|
|
143
|
-
includeNavigateKnowledge: hasKnowledgeMap,
|
|
144
|
-
knowledgeMap: iterationContext.knowledgeMap,
|
|
145
|
-
tools: toolDefinitions,
|
|
146
|
-
memoryStatus,
|
|
147
|
-
outputSchema: iterationContext.contract.outputSchema,
|
|
148
|
-
memoryPreferences: iterationContext.config.memoryPreferences
|
|
149
|
-
})
|
|
150
|
-
|
|
151
|
-
// Enforce hard limits before building request
|
|
152
|
-
iterationContext.memoryManager.enforceHardLimits()
|
|
153
|
-
|
|
154
|
-
return {
|
|
155
|
-
systemPrompt,
|
|
156
|
-
tools: toolDefinitions,
|
|
157
|
-
constraints: {
|
|
158
|
-
maxOutputTokens: iterationContext.modelConfig.maxOutputTokens,
|
|
159
|
-
temperature: 1
|
|
160
|
-
},
|
|
161
|
-
memoryContext: iterationContext.memoryManager.toContext(
|
|
162
|
-
iterationContext.iteration,
|
|
163
|
-
iterationContext.executionContext.sessionTurnNumber
|
|
164
|
-
),
|
|
165
|
-
includeMessageAction: isSessionCapable,
|
|
166
|
-
includeNavigateKnowledge: hasKnowledgeMap,
|
|
167
|
-
includeMemoryOps
|
|
168
|
-
}
|
|
169
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* LLM Request Builder
|
|
3
|
+
* Constructs universal LLMRequest from execution context using modular prompt system
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { z } from 'zod'
|
|
7
|
+
import type { IterationContext } from '../core/types'
|
|
8
|
+
import type { ToolDefinition } from '../../tools/types'
|
|
9
|
+
import type { KnowledgeMap } from '../knowledge-map/types'
|
|
10
|
+
import { zodToJsonSchema } from '@alcyone-labs/zod-to-json-schema'
|
|
11
|
+
import { buildSecurityPrompt } from './prompt-sections/security'
|
|
12
|
+
import { buildBaseActionsPrompt } from './prompt-sections/base-actions'
|
|
13
|
+
import { buildKnowledgeMapPrompt } from './prompt-sections/knowledge-map'
|
|
14
|
+
import { buildToolsPrompt } from './prompt-sections/tools'
|
|
15
|
+
import { buildMemoryPrompt, type MemoryStatus } from './prompt-sections/memory'
|
|
16
|
+
import { buildCompletionPrompt } from './prompt-sections/completion'
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Options for system prompt generation
|
|
20
|
+
*/
|
|
21
|
+
export interface SystemPromptOptions {
|
|
22
|
+
/** Security level for prompt injection defense */
|
|
23
|
+
securityLevel: 'standard' | 'hardened' | 'none'
|
|
24
|
+
/** Whether to include message action (session-based agents only) */
|
|
25
|
+
includeMessageAction: boolean
|
|
26
|
+
/** Whether to include navigate-knowledge action (knowledge map present) */
|
|
27
|
+
includeNavigateKnowledge: boolean
|
|
28
|
+
/** Knowledge map with nodes (optional) */
|
|
29
|
+
knowledgeMap?: KnowledgeMap
|
|
30
|
+
/** Available tools */
|
|
31
|
+
tools: ToolDefinition[]
|
|
32
|
+
/** Current memory status */
|
|
33
|
+
memoryStatus: MemoryStatus
|
|
34
|
+
/** Output schema for completion guidance (optional) */
|
|
35
|
+
outputSchema?: z.ZodSchema
|
|
36
|
+
/** Memory preferences for opt-in memory management (optional string) */
|
|
37
|
+
memoryPreferences?: string
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Builds complete system prompt from modular sections
|
|
42
|
+
*
|
|
43
|
+
* Composition order:
|
|
44
|
+
* 0. Security rules (standard/hardened, or omitted if 'none')
|
|
45
|
+
* 1. Base actions (conditional message action based on session context)
|
|
46
|
+
* 2. Knowledge map (if present)
|
|
47
|
+
* 3. Tools (if present)
|
|
48
|
+
* 4. Memory management (CONDITIONAL - only if preferences provided)
|
|
49
|
+
* 5. Task completion
|
|
50
|
+
* 6. Agent-specific instructions
|
|
51
|
+
*
|
|
52
|
+
* @param agentPrompt - Agent-specific instructions
|
|
53
|
+
* @param options - Prompt configuration options
|
|
54
|
+
* @returns Complete system prompt string
|
|
55
|
+
*/
|
|
56
|
+
function buildSystemPrompt(agentPrompt: string, options: SystemPromptOptions): string {
|
|
57
|
+
const sections: string[] = []
|
|
58
|
+
|
|
59
|
+
// 0. Security rules (first position for maximum LLM attention)
|
|
60
|
+
const securitySection = buildSecurityPrompt(options.securityLevel)
|
|
61
|
+
if (securitySection) {
|
|
62
|
+
sections.push(securitySection)
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// 1. Base actions (with conditional message and navigate-knowledge actions)
|
|
66
|
+
sections.push(buildBaseActionsPrompt(options.includeMessageAction, options.includeNavigateKnowledge))
|
|
67
|
+
|
|
68
|
+
// 2. Knowledge map (if present)
|
|
69
|
+
const knowledgeMapSection = buildKnowledgeMapPrompt(options.knowledgeMap)
|
|
70
|
+
if (knowledgeMapSection) {
|
|
71
|
+
sections.push(knowledgeMapSection)
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
// 3. Tools (if present)
|
|
75
|
+
const toolsSection = buildToolsPrompt(options.tools)
|
|
76
|
+
if (toolsSection) {
|
|
77
|
+
sections.push(toolsSection)
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
// 4. Memory management (CONDITIONAL - only if preferences provided)
|
|
81
|
+
// Conservative approach: Keep memoryOps in schema, but skip prompt if no preferences
|
|
82
|
+
if (options.memoryPreferences) {
|
|
83
|
+
sections.push(buildMemoryPrompt(options.memoryStatus, options.memoryPreferences))
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// 5. Task completion guidance (always included)
|
|
87
|
+
sections.push(buildCompletionPrompt(options.outputSchema))
|
|
88
|
+
|
|
89
|
+
// 6. Agent-specific instructions (separator + prompt)
|
|
90
|
+
sections.push('---\n')
|
|
91
|
+
sections.push('# AGENT-SPECIFIC INSTRUCTIONS\n\n')
|
|
92
|
+
sections.push(agentPrompt)
|
|
93
|
+
|
|
94
|
+
return sections.join('\n')
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Build universal LLM iteration request from current state
|
|
99
|
+
* Combines system prompt, tools, constraints, and memory using modular prompt builder
|
|
100
|
+
*
|
|
101
|
+
* @param iterationContext - Agent execution context
|
|
102
|
+
* @returns Agent iteration request data
|
|
103
|
+
*/
|
|
104
|
+
export function buildReasoningRequest(iterationContext: IterationContext): {
|
|
105
|
+
systemPrompt: string
|
|
106
|
+
tools: ToolDefinition[]
|
|
107
|
+
constraints: { maxOutputTokens?: number; temperature?: number }
|
|
108
|
+
memoryContext: string
|
|
109
|
+
includeMessageAction: boolean
|
|
110
|
+
includeNavigateKnowledge: boolean
|
|
111
|
+
includeMemoryOps: boolean
|
|
112
|
+
} {
|
|
113
|
+
// Build tool definitions for system prompt from registry
|
|
114
|
+
const tools = Array.from(iterationContext.toolRegistry.values())
|
|
115
|
+
const toolDefinitions = tools.map((tool) => ({
|
|
116
|
+
name: tool.name,
|
|
117
|
+
description: tool.description,
|
|
118
|
+
inputSchema: zodToJsonSchema(tool.inputSchema as z.ZodSchema)
|
|
119
|
+
}))
|
|
120
|
+
|
|
121
|
+
// Get memory status for system prompt
|
|
122
|
+
const memoryStatus = iterationContext.memoryManager.getStatus()
|
|
123
|
+
|
|
124
|
+
// Agent capability: explicit session support declaration
|
|
125
|
+
// Controls whether message action is available in prompts
|
|
126
|
+
const isSessionCapable = !!iterationContext.config.sessionCapable
|
|
127
|
+
|
|
128
|
+
// Detect knowledge map availability
|
|
129
|
+
const hasKnowledgeMap = !!(
|
|
130
|
+
iterationContext.knowledgeMap && Object.keys(iterationContext.knowledgeMap.nodes).length > 0
|
|
131
|
+
)
|
|
132
|
+
|
|
133
|
+
// Detect if memory operations should be included
|
|
134
|
+
const includeMemoryOps = !!iterationContext.config.memoryPreferences
|
|
135
|
+
|
|
136
|
+
// Derive security level: explicit config > sessionCapable-based default
|
|
137
|
+
const securityLevel = iterationContext.config.securityLevel ?? (isSessionCapable ? 'hardened' : 'standard')
|
|
138
|
+
|
|
139
|
+
// Build complete system prompt using modular builder
|
|
140
|
+
const systemPrompt = buildSystemPrompt(iterationContext.config.systemPrompt, {
|
|
141
|
+
securityLevel,
|
|
142
|
+
includeMessageAction: isSessionCapable,
|
|
143
|
+
includeNavigateKnowledge: hasKnowledgeMap,
|
|
144
|
+
knowledgeMap: iterationContext.knowledgeMap,
|
|
145
|
+
tools: toolDefinitions,
|
|
146
|
+
memoryStatus,
|
|
147
|
+
outputSchema: iterationContext.contract.outputSchema,
|
|
148
|
+
memoryPreferences: iterationContext.config.memoryPreferences
|
|
149
|
+
})
|
|
150
|
+
|
|
151
|
+
// Enforce hard limits before building request
|
|
152
|
+
iterationContext.memoryManager.enforceHardLimits()
|
|
153
|
+
|
|
154
|
+
return {
|
|
155
|
+
systemPrompt,
|
|
156
|
+
tools: toolDefinitions,
|
|
157
|
+
constraints: {
|
|
158
|
+
maxOutputTokens: iterationContext.modelConfig.maxOutputTokens,
|
|
159
|
+
temperature: 1
|
|
160
|
+
},
|
|
161
|
+
memoryContext: iterationContext.memoryManager.toContext(
|
|
162
|
+
iterationContext.iteration,
|
|
163
|
+
iterationContext.executionContext.sessionTurnNumber
|
|
164
|
+
),
|
|
165
|
+
includeMessageAction: isSessionCapable,
|
|
166
|
+
includeNavigateKnowledge: hasKnowledgeMap,
|
|
167
|
+
includeMemoryOps
|
|
168
|
+
}
|
|
169
|
+
}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Reasoning Phase Types
|
|
3
|
-
* Agent-internal types for iteration responses
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
|
-
import type { MemoryOperations } from '../memory/types'
|
|
7
|
-
import type { AgentAction } from '../actions/types'
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Iteration response - task execution phase
|
|
11
|
-
* Returns reasoning, memory operations, and next actions
|
|
12
|
-
* Used internally by agent iteration processor
|
|
13
|
-
*/
|
|
14
|
-
export interface LLMIterationResponse {
|
|
15
|
-
reasoning: string
|
|
16
|
-
memoryOps?: MemoryOperations
|
|
17
|
-
nextActions: AgentAction[]
|
|
18
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Reasoning Phase Types
|
|
3
|
+
* Agent-internal types for iteration responses
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import type { MemoryOperations } from '../memory/types'
|
|
7
|
+
import type { AgentAction } from '../actions/types'
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Iteration response - task execution phase
|
|
11
|
+
* Returns reasoning, memory operations, and next actions
|
|
12
|
+
* Used internally by agent iteration processor
|
|
13
|
+
*/
|
|
14
|
+
export interface LLMIterationResponse {
|
|
15
|
+
reasoning: string
|
|
16
|
+
memoryOps?: MemoryOperations
|
|
17
|
+
nextActions: AgentAction[]
|
|
18
|
+
}
|
|
@@ -1,118 +1,118 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Error categories for observability grouping and classification.
|
|
3
|
-
* Used to categorize errors in the execution_errors table metadata.
|
|
4
|
-
*/
|
|
5
|
-
export type ExecutionErrorCategory = 'llm' | 'tool' | 'workflow' | 'agent' | 'validation' | 'system'
|
|
6
|
-
|
|
7
|
-
/**
|
|
8
|
-
* Abstract base class for all execution engine errors.
|
|
9
|
-
* Enforces contract for execution_errors table insertion with explicit type,
|
|
10
|
-
* severity, category, and context properties.
|
|
11
|
-
*
|
|
12
|
-
* All execution engine errors MUST extend this class to ensure proper error
|
|
13
|
-
* tracking and observability in the execution_errors table.
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```typescript
|
|
17
|
-
* export class MyExecutionError extends ExecutionError {
|
|
18
|
-
* readonly type = 'my_execution_error' as const
|
|
19
|
-
* readonly severity = 'warning' as const
|
|
20
|
-
* readonly category = 'workflow' as const
|
|
21
|
-
*
|
|
22
|
-
* constructor(message: string, context?: Record<string, unknown>) {
|
|
23
|
-
* super(message, context)
|
|
24
|
-
* }
|
|
25
|
-
* }
|
|
26
|
-
* ```
|
|
27
|
-
*/
|
|
28
|
-
export abstract class ExecutionError extends Error {
|
|
29
|
-
/**
|
|
30
|
-
* Error type identifier for execution_errors table.
|
|
31
|
-
* Should be a unique, snake_case string that identifies this specific error class.
|
|
32
|
-
* Used for filtering, aggregation, and error-specific handling in observability systems.
|
|
33
|
-
*/
|
|
34
|
-
abstract readonly type: string
|
|
35
|
-
|
|
36
|
-
/**
|
|
37
|
-
* Error severity level for execution_errors table.
|
|
38
|
-
* - critical: System failures, auth issues, resource exhaustion - execution cannot continue
|
|
39
|
-
* - warning: Transient failures, configuration errors - execution may retry or requires user correction
|
|
40
|
-
* - info: Validation failures, expected user errors - user/developer action needed
|
|
41
|
-
*/
|
|
42
|
-
abstract readonly severity: 'critical' | 'warning' | 'info'
|
|
43
|
-
|
|
44
|
-
/**
|
|
45
|
-
* Error category for observability grouping.
|
|
46
|
-
* Used to categorize errors in dashboards and analytics.
|
|
47
|
-
*/
|
|
48
|
-
abstract readonly category: ExecutionErrorCategory
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* Additional context/metadata for the error.
|
|
52
|
-
* Stored in execution_errors.metadata JSONB column.
|
|
53
|
-
*/
|
|
54
|
-
public readonly context?: Record<string, unknown>
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
* @param message - Human-readable error message
|
|
58
|
-
* @param context - Additional context/metadata for observability
|
|
59
|
-
*/
|
|
60
|
-
constructor(message: string, context?: Record<string, unknown>) {
|
|
61
|
-
super(message)
|
|
62
|
-
this.name = this.constructor.name
|
|
63
|
-
this.context = context
|
|
64
|
-
|
|
65
|
-
// Maintain proper stack trace for where our error was thrown
|
|
66
|
-
if (Error.captureStackTrace) {
|
|
67
|
-
Error.captureStackTrace(this, this.constructor)
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
/**
|
|
72
|
-
* Indicates whether this error type is retryable.
|
|
73
|
-
* Default: false (safe default - only retry when explicitly safe to do so)
|
|
74
|
-
*
|
|
75
|
-
* Subclasses should override to return true for retryable scenarios:
|
|
76
|
-
* - Network/infrastructure errors (exponential backoff)
|
|
77
|
-
* - Rate limiting (linear backoff)
|
|
78
|
-
* - Service availability (exponential backoff)
|
|
79
|
-
* - Circuit breaker (circuit breaker's own delay)
|
|
80
|
-
*
|
|
81
|
-
* DO NOT retry:
|
|
82
|
-
* - Authentication/authorization errors
|
|
83
|
-
* - Validation errors
|
|
84
|
-
* - Configuration errors
|
|
85
|
-
* - Resource exhaustion errors
|
|
86
|
-
*/
|
|
87
|
-
isRetryable(): boolean {
|
|
88
|
-
return false
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
/**
|
|
93
|
-
* Unknown execution error - fallback for untyped errors
|
|
94
|
-
*
|
|
95
|
-
* Used when catching errors that are not ExecutionError instances.
|
|
96
|
-
* Preserves original error context for debugging while ensuring
|
|
97
|
-
* consistent error tracking in the execution_errors table.
|
|
98
|
-
*
|
|
99
|
-
* Severity: critical (unknown errors should be treated seriously until investigated)
|
|
100
|
-
*/
|
|
101
|
-
export class UnknownExecutionError extends ExecutionError {
|
|
102
|
-
readonly type = 'unknown_execution_error' as const
|
|
103
|
-
readonly severity = 'critical' as const
|
|
104
|
-
readonly category = 'system' as const
|
|
105
|
-
|
|
106
|
-
constructor(
|
|
107
|
-
message: string,
|
|
108
|
-
public readonly originalError?: unknown
|
|
109
|
-
) {
|
|
110
|
-
super(message, {
|
|
111
|
-
originalError: originalError instanceof Error ? {
|
|
112
|
-
name: originalError.name,
|
|
113
|
-
message: originalError.message,
|
|
114
|
-
stack: originalError.stack
|
|
115
|
-
} : originalError
|
|
116
|
-
})
|
|
117
|
-
}
|
|
118
|
-
}
|
|
1
|
+
/**
|
|
2
|
+
* Error categories for observability grouping and classification.
|
|
3
|
+
* Used to categorize errors in the execution_errors table metadata.
|
|
4
|
+
*/
|
|
5
|
+
export type ExecutionErrorCategory = 'llm' | 'tool' | 'workflow' | 'agent' | 'validation' | 'system'
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Abstract base class for all execution engine errors.
|
|
9
|
+
* Enforces contract for execution_errors table insertion with explicit type,
|
|
10
|
+
* severity, category, and context properties.
|
|
11
|
+
*
|
|
12
|
+
* All execution engine errors MUST extend this class to ensure proper error
|
|
13
|
+
* tracking and observability in the execution_errors table.
|
|
14
|
+
*
|
|
15
|
+
* @example
|
|
16
|
+
* ```typescript
|
|
17
|
+
* export class MyExecutionError extends ExecutionError {
|
|
18
|
+
* readonly type = 'my_execution_error' as const
|
|
19
|
+
* readonly severity = 'warning' as const
|
|
20
|
+
* readonly category = 'workflow' as const
|
|
21
|
+
*
|
|
22
|
+
* constructor(message: string, context?: Record<string, unknown>) {
|
|
23
|
+
* super(message, context)
|
|
24
|
+
* }
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*/
|
|
28
|
+
export abstract class ExecutionError extends Error {
|
|
29
|
+
/**
|
|
30
|
+
* Error type identifier for execution_errors table.
|
|
31
|
+
* Should be a unique, snake_case string that identifies this specific error class.
|
|
32
|
+
* Used for filtering, aggregation, and error-specific handling in observability systems.
|
|
33
|
+
*/
|
|
34
|
+
abstract readonly type: string
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Error severity level for execution_errors table.
|
|
38
|
+
* - critical: System failures, auth issues, resource exhaustion - execution cannot continue
|
|
39
|
+
* - warning: Transient failures, configuration errors - execution may retry or requires user correction
|
|
40
|
+
* - info: Validation failures, expected user errors - user/developer action needed
|
|
41
|
+
*/
|
|
42
|
+
abstract readonly severity: 'critical' | 'warning' | 'info'
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Error category for observability grouping.
|
|
46
|
+
* Used to categorize errors in dashboards and analytics.
|
|
47
|
+
*/
|
|
48
|
+
abstract readonly category: ExecutionErrorCategory
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Additional context/metadata for the error.
|
|
52
|
+
* Stored in execution_errors.metadata JSONB column.
|
|
53
|
+
*/
|
|
54
|
+
public readonly context?: Record<string, unknown>
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* @param message - Human-readable error message
|
|
58
|
+
* @param context - Additional context/metadata for observability
|
|
59
|
+
*/
|
|
60
|
+
constructor(message: string, context?: Record<string, unknown>) {
|
|
61
|
+
super(message)
|
|
62
|
+
this.name = this.constructor.name
|
|
63
|
+
this.context = context
|
|
64
|
+
|
|
65
|
+
// Maintain proper stack trace for where our error was thrown
|
|
66
|
+
if (Error.captureStackTrace) {
|
|
67
|
+
Error.captureStackTrace(this, this.constructor)
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Indicates whether this error type is retryable.
|
|
73
|
+
* Default: false (safe default - only retry when explicitly safe to do so)
|
|
74
|
+
*
|
|
75
|
+
* Subclasses should override to return true for retryable scenarios:
|
|
76
|
+
* - Network/infrastructure errors (exponential backoff)
|
|
77
|
+
* - Rate limiting (linear backoff)
|
|
78
|
+
* - Service availability (exponential backoff)
|
|
79
|
+
* - Circuit breaker (circuit breaker's own delay)
|
|
80
|
+
*
|
|
81
|
+
* DO NOT retry:
|
|
82
|
+
* - Authentication/authorization errors
|
|
83
|
+
* - Validation errors
|
|
84
|
+
* - Configuration errors
|
|
85
|
+
* - Resource exhaustion errors
|
|
86
|
+
*/
|
|
87
|
+
isRetryable(): boolean {
|
|
88
|
+
return false
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Unknown execution error - fallback for untyped errors
|
|
94
|
+
*
|
|
95
|
+
* Used when catching errors that are not ExecutionError instances.
|
|
96
|
+
* Preserves original error context for debugging while ensuring
|
|
97
|
+
* consistent error tracking in the execution_errors table.
|
|
98
|
+
*
|
|
99
|
+
* Severity: critical (unknown errors should be treated seriously until investigated)
|
|
100
|
+
*/
|
|
101
|
+
export class UnknownExecutionError extends ExecutionError {
|
|
102
|
+
readonly type = 'unknown_execution_error' as const
|
|
103
|
+
readonly severity = 'critical' as const
|
|
104
|
+
readonly category = 'system' as const
|
|
105
|
+
|
|
106
|
+
constructor(
|
|
107
|
+
message: string,
|
|
108
|
+
public readonly originalError?: unknown
|
|
109
|
+
) {
|
|
110
|
+
super(message, {
|
|
111
|
+
originalError: originalError instanceof Error ? {
|
|
112
|
+
name: originalError.name,
|
|
113
|
+
message: originalError.message,
|
|
114
|
+
stack: originalError.stack
|
|
115
|
+
} : originalError
|
|
116
|
+
})
|
|
117
|
+
}
|
|
118
|
+
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { ExecutionError as ExecutionError, UnknownExecutionError, type ExecutionErrorCategory } from './errors'
|
|
2
|
-
export * from './types'
|
|
1
|
+
export { ExecutionError as ExecutionError, UnknownExecutionError, type ExecutionErrorCategory } from './errors'
|
|
2
|
+
export * from './types'
|