deepline 0.3.460 → 0.3.462
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/bundling-sources/sdk/src/client-core.ts +7593 -0
- package/dist/bundling-sources/sdk/src/client.ts +8 -7366
- package/dist/bundling-sources/sdk/src/http-core.ts +1239 -0
- package/dist/bundling-sources/sdk/src/http.ts +6 -1231
- package/dist/bundling-sources/sdk/src/index.ts +4 -1
- package/dist/bundling-sources/sdk/src/play.ts +5 -5
- package/dist/bundling-sources/sdk/src/plays/client-core.ts +437 -0
- package/dist/bundling-sources/sdk/src/plays/client.ts +4 -421
- package/dist/bundling-sources/sdk/src/plays/input-example.ts +3 -4
- package/dist/bundling-sources/sdk/src/plays/play-description.ts +1 -1
- package/dist/bundling-sources/sdk/src/plays/run-request.ts +1 -1
- package/dist/bundling-sources/sdk/src/release.ts +1 -1
- package/dist/bundling-sources/sdk/src/server.ts +43 -0
- package/dist/bundling-sources/sdk/src/types.ts +15 -5
- package/dist/bundling-sources/shared_libs/integration-contracts/billing-entitlements.ts +15 -0
- package/dist/bundling-sources/shared_libs/monitors/billing/state.ts +28 -0
- package/dist/bundling-sources/shared_libs/monitors/callback-security.ts +0 -307
- package/dist/bundling-sources/shared_libs/monitors/http-error-response.ts +3 -0
- package/dist/bundling-sources/shared_libs/monitors/lifecycle-notifications.ts +3 -2
- package/dist/bundling-sources/shared_libs/monitors/package.json +2 -0
- package/dist/bundling-sources/shared_libs/monitors/provider-callback-verification.ts +34 -0
- package/dist/bundling-sources/shared_libs/monitors/provider-monitor-batch-operation.ts +59 -0
- package/dist/bundling-sources/shared_libs/monitors/provider-monitor-upstream-identity.ts +94 -1
- package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-dead-letter.ts +35 -1
- package/dist/bundling-sources/shared_libs/monitors/signal-radars/inbound-failure-codes.ts +24 -0
- package/dist/bundling-sources/shared_libs/observability/dlq.ts +32 -0
- package/dist/bundling-sources/shared_libs/observability/scheduled-jobs.json +57 -3
- package/dist/bundling-sources/shared_libs/observability/scheduled-work.ts +1 -0
- package/dist/bundling-sources/shared_libs/play-data-plane/r2.ts +66 -1
- package/dist/bundling-sources/shared_libs/play-data-plane/sheet-column-storage.ts +36 -7
- package/dist/bundling-sources/shared_libs/play-runtime/app-runtime-api.ts +250 -11
- package/dist/bundling-sources/shared_libs/play-runtime/array-input-store.ts +319 -0
- package/dist/bundling-sources/shared_libs/play-runtime/context.ts +991 -359
- package/dist/bundling-sources/shared_libs/play-runtime/ctx-types.ts +17 -0
- package/dist/bundling-sources/shared_libs/play-runtime/daytona-sandbox-janitor.ts +13 -0
- package/dist/bundling-sources/shared_libs/play-runtime/daytona-sandbox-reaper.ts +110 -0
- package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-machines.ts +155 -6
- package/dist/bundling-sources/shared_libs/play-runtime/deployment/fly-registry.ts +110 -6
- package/dist/bundling-sources/shared_libs/play-runtime/durable-receipt-execution.ts +127 -13
- package/dist/bundling-sources/shared_libs/play-runtime/execution-capabilities.ts +14 -1
- package/dist/bundling-sources/shared_libs/play-runtime/fixture-behavior.ts +57 -1
- package/dist/bundling-sources/shared_libs/play-runtime/free-company-lookup-batching.ts +218 -0
- package/dist/bundling-sources/shared_libs/play-runtime/gateway-postgres-admission.ts +42 -5
- package/dist/bundling-sources/shared_libs/play-runtime/governor/app-runtime-budget-state-backend.ts +6 -1
- package/dist/bundling-sources/shared_libs/play-runtime/governor/app-runtime-rate-state-backend.ts +92 -31
- package/dist/bundling-sources/shared_libs/play-runtime/governor/block-reserving-budget-state-backend.ts +69 -14
- package/dist/bundling-sources/shared_libs/play-runtime/governor/governor.ts +93 -23
- package/dist/bundling-sources/shared_libs/play-runtime/governor/in-memory-rate-state-backend.ts +15 -4
- package/dist/bundling-sources/shared_libs/play-runtime/governor/policy.ts +22 -18
- package/dist/bundling-sources/shared_libs/play-runtime/governor/rate-state-backend.ts +5 -0
- package/dist/bundling-sources/shared_libs/play-runtime/launch-identity.ts +2 -0
- package/dist/bundling-sources/shared_libs/play-runtime/map-memory-limits.ts +190 -14
- package/dist/bundling-sources/shared_libs/play-runtime/memory-ledger.ts +131 -0
- package/dist/bundling-sources/shared_libs/play-runtime/modal-runtime-config.ts +77 -2
- package/dist/bundling-sources/shared_libs/play-runtime/output-size-limits.ts +271 -2
- package/dist/bundling-sources/shared_libs/play-runtime/play-run-recovery-policy.ts +51 -0
- package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/contracts.ts +2 -0
- package/dist/bundling-sources/shared_libs/play-runtime/play-runs/sandbox-cleanup/job.ts +27 -1
- package/dist/bundling-sources/shared_libs/play-runtime/play-runtime-batching-registry.ts +2 -0
- package/dist/bundling-sources/shared_libs/play-runtime/protocol.ts +3 -0
- package/dist/bundling-sources/shared_libs/play-runtime/provider-text-for-log.ts +63 -0
- package/dist/bundling-sources/shared_libs/play-runtime/resource-governor.ts +19 -0
- package/dist/bundling-sources/shared_libs/play-runtime/run-ledger-event-transport.ts +112 -16
- package/dist/bundling-sources/shared_libs/play-runtime/run-ledger.ts +104 -2
- package/dist/bundling-sources/shared_libs/play-runtime/runner-app/index.ts +265 -151
- package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-gateway-transport.ts +17 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-progress-push.ts +35 -14
- package/dist/bundling-sources/shared_libs/play-runtime/runner-app/runtime-sheet-persistence-retry.ts +12 -1
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-control-transport.ts +4 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-labels.ts +36 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-launch-transport.ts +136 -70
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-lifecycle.ts +237 -36
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-runtime-watchdog.ts +148 -4
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona-session-execution.ts +6 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/daytona.ts +285 -32
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/backends/modal.ts +251 -56
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/runtime-sandbox-reconciliation.ts +29 -4
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/sandbox-create-outcome.ts +27 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runner-backends/types.ts +22 -1
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-api.ts +1397 -382
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-array-input-receipts.ts +920 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-constants.ts +16 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-environment.ts +38 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-flow.ts +6 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-incident-drills.ts +26 -1
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-operation-contract.ts +30 -0
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-receipt-store-adapter.ts +14 -3
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-receipt-writer.ts +31 -4
- package/dist/bundling-sources/shared_libs/play-runtime/runtime-sheet-row-transition.ts +47 -0
- package/dist/bundling-sources/shared_libs/play-runtime/sandbox-compute-usage.ts +20 -7
- package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/contract.ts +12 -0
- package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/index.ts +9 -0
- package/dist/bundling-sources/shared_libs/play-runtime/sandbox-runs/runner-backend-adapter.ts +10 -0
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backend.ts +4 -0
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-runtime-worker.ts +1496 -320
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/absurd-worker-required-env.ts +31 -1
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/postgres.ts +1389 -129
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/receipt-gateway.ts +36 -0
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-ledger-dispatch-authority.ts +4 -0
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/run-ledger-outbox-recovery.ts +162 -23
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-event-search.ts +499 -115
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-sandbox-capacity.ts +377 -9
- package/dist/bundling-sources/shared_libs/play-runtime/scheduler-backends/runtime-sandbox-ledger-reconciliation.ts +117 -8
- package/dist/bundling-sources/shared_libs/play-runtime/secret-resolution-retry-policy.ts +25 -0
- package/dist/bundling-sources/shared_libs/play-runtime/terminal-runtime-performance.ts +391 -0
- package/dist/bundling-sources/shared_libs/play-runtime/test-runtime-seams.ts +40 -0
- package/dist/bundling-sources/shared_libs/play-runtime/tool-call/index.ts +6 -0
- package/dist/bundling-sources/shared_libs/play-runtime/tool-call/mapped-calls.ts +171 -0
- package/dist/bundling-sources/shared_libs/play-runtime/tool-call/receipt-cohort.ts +16 -1
- package/dist/bundling-sources/shared_libs/play-runtime/tool-execute-retry-policy.ts +26 -3
- package/dist/bundling-sources/shared_libs/play-runtime/tool-result.ts +16 -2
- package/dist/bundling-sources/shared_libs/play-runtime/transport-error-diagnostics.ts +28 -0
- package/dist/bundling-sources/shared_libs/play-runtime/work-receipt-storage-contract.ts +55 -5
- package/dist/bundling-sources/shared_libs/plays/authoring-contract.ts +41 -1
- package/dist/bundling-sources/shared_libs/plays/contracts.ts +4 -0
- package/dist/bundling-sources/shared_libs/plays/dataset.ts +9 -3
- package/dist/bundling-sources/shared_libs/plays/deploy/manifest-contract.ts +2 -0
- package/dist/bundling-sources/shared_libs/plays/deploy/manifest.ts +3 -2
- package/dist/bundling-sources/shared_libs/plays/deploy/project-serializer.ts +2 -2
- package/dist/bundling-sources/shared_libs/plays/run-output-summary.ts +66 -0
- package/dist/bundling-sources/shared_libs/plays/script-entry.ts +1 -1
- package/dist/bundling-sources/shared_libs/product-notifications/catalog.ts +43 -1
- package/dist/bundling-sources/shared_libs/product-notifications/content.ts +9 -0
- package/dist/bundling-sources/shared_libs/product-notifications/email.ts +91 -13
- package/dist/bundling-sources/shared_libs/product-notifications/events.ts +3 -0
- package/dist/bundling-sources/shared_libs/product-notifications/slack-delivery.ts +41 -24
- package/dist/bundling-sources/shared_libs/security/attested-client-ip.ts +91 -0
- package/dist/bundling-sources/shared_libs/security/internal-actor.ts +0 -11
- package/dist/cli/{auth-HKA6ZVHQ.mjs → auth-JDLEY7VU.mjs} +5 -4
- package/dist/cli/auth-UXKY6TCC.js +41 -0
- package/dist/cli/{billing-MTO2ZZ3G.js → billing-HXAXB3XZ.js} +152 -78
- package/dist/cli/{billing-26G44S5N.mjs → billing-SDHLBLMV.mjs} +84 -10
- package/dist/cli/{chunk-BHGII2D6.js → chunk-3ACMRZRV.js} +8 -6
- package/dist/cli/{chunk-S4Q2XCGM.mjs → chunk-3KZCFOZ6.mjs} +1 -1
- package/dist/cli/chunk-4KQ6SIBC.mjs +1038 -0
- package/dist/cli/{chunk-Z2GUFYT6.js → chunk-5LEAXRHV.js} +11 -11
- package/dist/cli/{chunk-XAYO3Q2X.mjs → chunk-6NNVJDVR.mjs} +7 -5
- package/dist/cli/{chunk-NMJ4D2WO.js → chunk-6PMCRYDA.js} +216 -91
- package/dist/cli/{chunk-OMM54B3X.mjs → chunk-6RNQGWFD.mjs} +16 -806
- package/dist/cli/{chunk-EBU7LQ64.js → chunk-6V7KVRR5.js} +3 -3
- package/dist/cli/{chunk-RDPTDDKX.js → chunk-7LFIMWMW.js} +2 -2
- package/dist/cli/chunk-7MJ6VI2T.mjs +19 -0
- package/dist/cli/chunk-7SWNPNML.js +1039 -0
- package/dist/cli/{chunk-CTRPCARW.mjs → chunk-7U3XNPOA.mjs} +267 -38
- package/dist/cli/{chunk-RBTTUYZZ.js → chunk-7VZHXVOQ.js} +1 -1
- package/dist/cli/{chunk-YVBWO647.mjs → chunk-AT636LLU.mjs} +2 -2
- package/dist/cli/{chunk-VTODQWQA.js → chunk-BGTPIMSM.js} +392 -261
- package/dist/cli/{chunk-KADIT5NV.mjs → chunk-CKSOY47X.mjs} +2 -2
- package/dist/cli/{chunk-7DH2FD7Y.mjs → chunk-D464JW3N.mjs} +5 -85
- package/dist/cli/chunk-D6DXOUTO.mjs +827 -0
- package/dist/cli/{describe-QW54QQNB.js → chunk-EM4TXCCI.js} +27 -44
- package/dist/cli/chunk-F6QV42MC.mjs +91 -0
- package/dist/cli/chunk-FKVYR3QA.mjs +1039 -0
- package/dist/cli/{chunk-LMAULZLF.js → chunk-GEGW5HPZ.js} +29 -27
- package/dist/cli/{chunk-M52JQSLK.js → chunk-HUB3CCM2.js} +13 -4
- package/dist/cli/{chunk-YHTQM5XI.js → chunk-I6VHOU5O.js} +27 -27
- package/dist/cli/{chunk-Z2XUZC34.js → chunk-IAYSWZDJ.js} +188 -76
- package/dist/cli/chunk-JF3TLIMQ.js +19 -0
- package/dist/cli/{chunk-HDFRJ4IT.mjs → chunk-JVHOS3K3.mjs} +177 -65
- package/dist/cli/{chunk-LAWEURCT.mjs → chunk-LFXLQEZN.mjs} +1 -1
- package/dist/cli/{chunk-2PBN4SZE.js → chunk-LROWFPGN.js} +16 -16
- package/dist/cli/{chunk-SLEUWLJE.mjs → chunk-MSY22NQW.mjs} +5 -5
- package/dist/cli/{chunk-LVJOFUU7.mjs → chunk-MUUQZIOF.mjs} +23 -49
- package/dist/cli/{chunk-2XHWOQF4.js → chunk-NBLSCHKK.js} +52 -50
- package/dist/cli/{chunk-526R2HON.mjs → chunk-NHRWZPWZ.mjs} +4 -2
- package/dist/cli/{chunk-KXMNM4AQ.js → chunk-NMU3VR5U.js} +4 -5
- package/dist/cli/{chunk-W3BE3CHK.mjs → chunk-O2RX5A66.mjs} +14 -12
- package/dist/cli/{chunk-UKFZT7RF.js → chunk-OMQ23IXL.js} +2 -2
- package/dist/cli/{chunk-LJTFZOHU.js → chunk-OPJAJBD4.js} +28 -54
- package/dist/cli/{chunk-MLFR6DVF.mjs → chunk-PHSEINNH.mjs} +5 -5
- package/dist/cli/{chunk-3DNKFH2G.mjs → chunk-PKHVSIJG.mjs} +19 -1
- package/dist/cli/{chunk-WIYWSYDS.mjs → chunk-Q2EIZKVX.mjs} +3 -3
- package/dist/cli/{chunk-VJAEA4CS.js → chunk-QJZ6WNWD.js} +8 -8
- package/dist/cli/{chunk-EIMG75BT.mjs → chunk-S3A4IXBQ.mjs} +4 -5
- package/dist/cli/{chunk-RZSTT45F.mjs → chunk-S42YIQNE.mjs} +13 -8
- package/dist/cli/{chunk-YULBYKAK.mjs → chunk-S6UAJR6V.mjs} +3 -3
- package/dist/cli/{chunk-G7L27KZB.mjs → chunk-TKAQR3IB.mjs} +31 -21
- package/dist/cli/{chunk-QWRHGGUH.js → chunk-UAJFWWZE.js} +20 -2
- package/dist/cli/{chunk-ZR2RLI4O.mjs → chunk-UDRPEZ5F.mjs} +223 -92
- package/dist/cli/{chunk-QGAWTBIR.js → chunk-ULK7JGGI.js} +511 -282
- package/dist/cli/chunk-V335HGX5.js +1038 -0
- package/dist/cli/{chunk-NH6JSJW6.mjs → chunk-V3MEA7NB.mjs} +7 -5
- package/dist/cli/{chunk-NRGGFVVB.js → chunk-VFGVXXZP.js} +37 -35
- package/dist/cli/chunk-VLEVVDWG.js +91 -0
- package/dist/cli/{chunk-R2GLGLDR.mjs → chunk-VPHN2HAL.mjs} +216 -91
- package/dist/cli/{chunk-CFUTOWE4.js → chunk-WG3KGAII.js} +8 -88
- package/dist/cli/{describe-TOMIAT37.mjs → chunk-WIY6U6GD.mjs} +19 -36
- package/dist/cli/{chunk-YS2YBSJB.js → chunk-XANRM3QA.js} +6 -6
- package/dist/cli/{chunk-KGQNIA37.js → chunk-XQCTG5OO.js} +44 -34
- package/dist/cli/{chunk-EJGBLXDZ.mjs → chunk-XZAFIOUQ.mjs} +1 -1
- package/dist/cli/chunk-Y4DPU4OM.js +827 -0
- package/dist/cli/chunk-YT5EODJO.js +920 -0
- package/dist/cli/{chunk-2WRO2UJ5.js → chunk-ZGQSFYD2.js} +56 -51
- package/dist/cli/{chunk-OJ6RUKVT.mjs → chunk-ZUK6LIJB.mjs} +10 -1
- package/dist/cli/command-docs.d.mts +5 -0
- package/dist/cli/command-docs.d.ts +5 -0
- package/dist/cli/command-docs.js +2 -2
- package/dist/cli/command-docs.mjs +1 -1
- package/dist/cli/{csv-6FNFYJUC.js → csv-C56GSCEU.js} +13 -12
- package/dist/cli/{csv-MDHT4BKK.mjs → csv-L54JS7TF.mjs} +4 -3
- package/dist/cli/{db-D6AMVOEW.js → db-MOGRMZTA.js} +30 -27
- package/dist/cli/{db-74O3RFWY.mjs → db-YVBUW2DX.mjs} +10 -7
- package/dist/cli/describe-KYEULWPG.js +48 -0
- package/dist/cli/describe-NLZKKT7C.mjs +48 -0
- package/dist/cli/describe-core.d.mts +153 -5
- package/dist/cli/describe-core.d.ts +153 -5
- package/dist/cli/describe-core.js +9 -5
- package/dist/cli/describe-core.mjs +10 -6
- package/dist/cli/{executions-N4FMGVSC.js → executions-A7L4ULPP.js} +9 -7
- package/dist/cli/{executions-PVSF4HUF.mjs → executions-ZBGSTT37.mjs} +7 -5
- package/dist/cli/{feedback-OB7NANZW.mjs → feedback-G6GU37FD.mjs} +6 -5
- package/dist/cli/{feedback-WFSPCAI2.js → feedback-OHLY7RYD.js} +10 -9
- package/dist/cli/getting-started.d.mts +6 -6
- package/dist/cli/getting-started.d.ts +6 -6
- package/dist/cli/getting-started.js +2 -2
- package/dist/cli/getting-started.mjs +1 -1
- package/dist/cli/git-P76N4NDQ.js +25 -0
- package/dist/cli/{git-FHUSPAEU.mjs → git-PKZW3QD5.mjs} +5 -4
- package/dist/cli/index.js +152 -142
- package/dist/cli/index.mjs +56 -46
- package/dist/cli/{legacy-noops-ECHNA5HN.js → legacy-noops-5LM3D724.js} +8 -7
- package/dist/cli/{legacy-noops-HMK4BSCI.mjs → legacy-noops-LJJYG6YA.mjs} +5 -4
- package/dist/cli/{monitors-U7VQ3EZM.mjs → monitors-72QV4ALO.mjs} +19 -6
- package/dist/cli/{monitors-XLLFNENH.js → monitors-UX3H5DC2.js} +103 -90
- package/dist/cli/{org-6H3USO5M.mjs → org-6RRRKOCP.mjs} +9 -6
- package/dist/cli/{org-QX6ER2HN.js → org-IF7ISUVB.js} +70 -67
- package/dist/cli/pages-3SU3HKL7.js +252 -0
- package/dist/cli/pages-DXDYYKEK.mjs +252 -0
- package/dist/cli/{play-MOB2WYOR.mjs → play-AHASKRLA.mjs} +512 -1508
- package/dist/cli/{play-WNB7HBZK.js → play-EUIUVLUH.js} +1090 -2086
- package/dist/cli/{providers-CXEZ23E2.mjs → providers-GWGE3WY3.mjs} +7 -5
- package/dist/cli/{providers-7M3DISKX.js → providers-V5WU4VXJ.js} +10 -8
- package/dist/cli/{quickstart-ZFCHKHF6.mjs → quickstart-OXKQ5ZST.mjs} +5 -4
- package/dist/cli/{quickstart-CLJT4AZL.js → quickstart-QP65I5PF.js} +13 -12
- package/dist/cli/run-6MM72IGL.mjs +443 -0
- package/dist/cli/run-F3FTYS56.js +443 -0
- package/dist/cli/search-OYKOOI7A.js +32 -0
- package/dist/cli/{search-FVYWYIC3.mjs → search-ZMEBVJZB.mjs} +8 -6
- package/dist/cli/{secrets-YRLKZQS5.js → secrets-ACND5N6A.js} +16 -14
- package/dist/cli/{secrets-WAMPTQFC.mjs → secrets-XRCJFF3L.mjs} +7 -5
- package/dist/cli/{sessions-IQ332BJH.mjs → sessions-RTK3CEW6.mjs} +5 -4
- package/dist/cli/{sessions-44J6WIVU.js → sessions-ZGRJPCFF.js} +6 -5
- package/dist/cli/{settings-4IJR2I2T.js → settings-PD5KWQQZ.js} +80 -77
- package/dist/cli/{settings-22S6NIFQ.mjs → settings-XDRBPRDE.mjs} +14 -11
- package/dist/cli/{setup-OZUPKKPW.mjs → setup-3HPYAOCC.mjs} +12 -10
- package/dist/cli/{setup-3FWSRNOX.js → setup-E2Q6PXHC.js} +53 -51
- package/dist/cli/{skills-5CW3NFP3.mjs → skills-OOQFMPOV.mjs} +7 -6
- package/dist/cli/skills-XYWV52KB.js +31 -0
- package/dist/cli/tools-ASCDZJCK.js +55 -0
- package/dist/cli/tools-C5ZT3UIC.mjs +55 -0
- package/dist/cli/update-5RQSEIFM.js +33 -0
- package/dist/cli/{update-IBULOV7P.mjs → update-ZWJTADIW.mjs} +9 -8
- package/dist/cli/{workflow-MVZT7MWT.mjs → workflow-23NMPAJ7.mjs} +10 -8
- package/dist/cli/{workflow-Z7FW6GT2.js → workflow-TCXU5YJV.js} +20 -18
- package/dist/client-DS2IWYZF.d.ts +10 -0
- package/dist/client-DTwnz_AW.d.mts +10 -0
- package/dist/{client-CYqG23K1.d.ts → client-core-B_6HAIBy.d.ts} +385 -12
- package/dist/{client-BbU5_j7n.d.mts → client-core-DzBSlY1U.d.mts} +385 -12
- package/dist/{compiler-manifest-CWz_sNOQ.d.mts → compiler-manifest-Dcyd3-Zd.d.mts} +43 -1
- package/dist/{compiler-manifest-CWz_sNOQ.d.ts → compiler-manifest-Dcyd3-Zd.d.ts} +43 -1
- package/dist/errors-d-sTrZhe.d.mts +142 -0
- package/dist/errors-yQwfgrcX.d.ts +142 -0
- package/dist/{index-BF2JB_Ug.d.mts → index-C6oXchjN.d.mts} +1 -1
- package/dist/{index-4NPXDzlD.d.ts → index-P56zy_z5.d.ts} +1 -1
- package/dist/index.d.mts +11 -147
- package/dist/index.d.ts +11 -147
- package/dist/index.js +15 -11
- package/dist/index.mjs +14 -10
- package/dist/install-integrity.json +141 -104
- package/dist/plays/bundle-play-file.d.mts +3 -3
- package/dist/plays/bundle-play-file.d.ts +3 -3
- package/dist/plays/bundle-play-file.mjs +2 -1
- package/dist/plays/play-description.d.mts +2 -2
- package/dist/plays/play-description.d.ts +2 -2
- package/dist/plays/play-description.js +2 -2
- package/dist/plays/play-description.mjs +1 -1
- package/dist/plays/run-request.d.mts +2 -2
- package/dist/plays/run-request.d.ts +2 -2
- package/dist/release.d.mts +1 -1
- package/dist/release.d.ts +1 -1
- package/dist/release.js +2 -2
- package/dist/release.mjs +1 -1
- package/dist/server.d.mts +17 -0
- package/dist/server.d.ts +17 -0
- package/dist/server.js +76 -0
- package/dist/server.mjs +76 -0
- package/package.json +6 -1
- package/dist/cli/auth-VDOCNR7H.js +0 -40
- package/dist/cli/chunk-PQUUWFXY.js +0 -95
- package/dist/cli/chunk-QJLKYYPX.js +0 -1710
- package/dist/cli/chunk-YBWAG72P.mjs +0 -95
- package/dist/cli/git-4PMBJSH5.js +0 -24
- package/dist/cli/search-4CCQCTVD.js +0 -30
- package/dist/cli/skills-LMNM6B5F.js +0 -30
- package/dist/cli/tools-AGBBDJ7P.js +0 -45
- package/dist/cli/tools-NOPBDRGW.mjs +0 -45
- package/dist/cli/update-U3W6USVD.js +0 -32
|
@@ -281,6 +281,26 @@ export type FieldDefinition = QueueItemFieldDefinition;
|
|
|
281
281
|
/** A normalized item returned by an owner connector. `nativeState` is always
|
|
282
282
|
* retained so an operator can distinguish a connector mapping from the
|
|
283
283
|
* backend's actual state. */
|
|
284
|
+
/**
|
|
285
|
+
* What one retained monitor callback is, without its content: enough for an
|
|
286
|
+
* operator to pair rows, choose what to redrive and see which monitor a row
|
|
287
|
+
* belongs to. Never carries the callback token, headers, body or raw error.
|
|
288
|
+
*/
|
|
289
|
+
export type QueueItemMonitorEvent = {
|
|
290
|
+
readonly version: 1;
|
|
291
|
+
readonly eventClass: 'finding' | 'notice' | 'failure' | 'unknown';
|
|
292
|
+
/** The provider's `update_type`, when it is a plain identifier. */
|
|
293
|
+
readonly updateType: string | null;
|
|
294
|
+
/** Hash of the provider's update id: equal across one finding's rows. */
|
|
295
|
+
readonly findingGroup: string | null;
|
|
296
|
+
/** Null on the shared bulk route, whose row is not bound to one monitor. */
|
|
297
|
+
readonly monitorKey: string | null;
|
|
298
|
+
readonly route: 'monitor' | 'shared' | 'unknown';
|
|
299
|
+
readonly bindingVersion: number | null;
|
|
300
|
+
/** What the inbound worker answered for this row's last redrive, if any. */
|
|
301
|
+
readonly lastRedriveStatus: string | null;
|
|
302
|
+
};
|
|
303
|
+
|
|
284
304
|
export type QueueItem = {
|
|
285
305
|
readonly queueId: string;
|
|
286
306
|
readonly id: string;
|
|
@@ -301,6 +321,8 @@ export type QueueItem = {
|
|
|
301
321
|
readonly summary?: string;
|
|
302
322
|
/** Bounded, owner-projected explanation for a queue item. */
|
|
303
323
|
readonly diagnosis?: QueueItemDiagnosis;
|
|
324
|
+
/** Additive; only monitor inbound dead letters carry it. */
|
|
325
|
+
readonly monitorEvent?: QueueItemMonitorEvent;
|
|
304
326
|
readonly retiredAt?: string;
|
|
305
327
|
readonly retirementReason?: string;
|
|
306
328
|
};
|
|
@@ -1530,3 +1552,13 @@ export function readOnlyDlqAdapter(input: {
|
|
|
1530
1552
|
},
|
|
1531
1553
|
};
|
|
1532
1554
|
}
|
|
1555
|
+
|
|
1556
|
+
/**
|
|
1557
|
+
* Whether a retained failure is `ChargeAuthorizationNotOpenError`. The error
|
|
1558
|
+
* names the charge's status, so match the sentence around it, not one status.
|
|
1559
|
+
*/
|
|
1560
|
+
export function isChargeAuthorizationNotOpenFailure(text: string): boolean {
|
|
1561
|
+
return /Charge authorization is [a-z_]+; provider work requires an open charge\./.test(
|
|
1562
|
+
text,
|
|
1563
|
+
);
|
|
1564
|
+
}
|
|
@@ -219,6 +219,24 @@
|
|
|
219
219
|
"failureAlert": "github_workflow_run",
|
|
220
220
|
"domainReportRequired": true
|
|
221
221
|
},
|
|
222
|
+
{
|
|
223
|
+
"id": "github.session-health-digest",
|
|
224
|
+
"name": "Session Health Digest",
|
|
225
|
+
"scheduler": "github_actions",
|
|
226
|
+
"cadence": "0 12 * * *",
|
|
227
|
+
"timezone": "UTC",
|
|
228
|
+
"source": ".github/workflows/session-health-digest.yml",
|
|
229
|
+
"locator": "schedule:",
|
|
230
|
+
"owner": "product",
|
|
231
|
+
"criticality": "reporting",
|
|
232
|
+
"purpose": "Score the last 24 hours of customer agent sessions from production Axiom telemetry and post the sessions predicted to be going poorly to the reporting Slack channel.",
|
|
233
|
+
"successDefinition": "All four Axiom reads return complete results, the scored report is retained as an artifact, and Slack accepts the digest; a day with no poor sessions still posts its counts.",
|
|
234
|
+
"failureDefinition": "Axiom returns an error, a partial result or a row-limit-sized result, or Slack rejects the digest.",
|
|
235
|
+
"startGraceMs": 600000,
|
|
236
|
+
"runTimeoutMs": 900000,
|
|
237
|
+
"failureAlert": "github_workflow_run",
|
|
238
|
+
"domainReportRequired": true
|
|
239
|
+
},
|
|
222
240
|
{
|
|
223
241
|
"id": "github.eval-agent-cli-matrix",
|
|
224
242
|
"name": "Eval Agent CLI Matrix",
|
|
@@ -532,6 +550,24 @@
|
|
|
532
550
|
"failureAlert": "vercel_route_wrapper",
|
|
533
551
|
"domainReportRequired": true
|
|
534
552
|
},
|
|
553
|
+
{
|
|
554
|
+
"id": "vercel.finalized-usage-cycle-reconcile",
|
|
555
|
+
"name": "Finalized usage-cycle reconciliation",
|
|
556
|
+
"scheduler": "vercel_cron",
|
|
557
|
+
"cadence": "*/5 * * * *",
|
|
558
|
+
"timezone": "UTC",
|
|
559
|
+
"source": "apps/deepline-api/vercel.json",
|
|
560
|
+
"locator": "/api/v2/cron/finalized-usage-cycle-reconcile",
|
|
561
|
+
"owner": "billing",
|
|
562
|
+
"criticality": "critical",
|
|
563
|
+
"purpose": "Compare finalized Metronome usage invoices with local terminal and delivered usage receipts.",
|
|
564
|
+
"successDefinition": "Scanned invoices are durably reconciled and parity mismatches are recorded for review.",
|
|
565
|
+
"failureDefinition": "Provider, local usage, cursor, or persistence failures prevent the scan from advancing safely.",
|
|
566
|
+
"startGraceMs": 300000,
|
|
567
|
+
"runTimeoutMs": 300000,
|
|
568
|
+
"failureAlert": "vercel_route_wrapper",
|
|
569
|
+
"domainReportRequired": true
|
|
570
|
+
},
|
|
535
571
|
{
|
|
536
572
|
"id": "vercel.metronome-usage-export",
|
|
537
573
|
"name": "Metronome usage export",
|
|
@@ -1352,9 +1388,9 @@
|
|
|
1352
1388
|
"locator": "deepline-play-execution-heartbeat",
|
|
1353
1389
|
"owner": "runtime",
|
|
1354
1390
|
"criticality": "critical",
|
|
1355
|
-
"purpose": "
|
|
1356
|
-
"successDefinition": "
|
|
1357
|
-
"failureDefinition": "
|
|
1391
|
+
"purpose": "Run provider-free API, webhook and Modal-pinned canary Plays, then ping Better Stack: heartbeat 473888 for the public Play execution row and the internal heartbeat Deepline Play execution on Modal.",
|
|
1392
|
+
"successDefinition": "The API and webhook canaries complete and heartbeat 473888 is pinged; the canary pinned to modal_only@1 completes and its Modal heartbeat is pinged.",
|
|
1393
|
+
"failureDefinition": "Cron metadata is stale, a canary fails or times out, or a Better Stack call fails. A Modal-leg failure is reported in checks.modal and withholds only the Modal heartbeat.",
|
|
1358
1394
|
"startGraceMs": 120000,
|
|
1359
1395
|
"runTimeoutMs": 1800000,
|
|
1360
1396
|
"failureAlert": "better_stack_heartbeat",
|
|
@@ -1593,5 +1629,23 @@
|
|
|
1593
1629
|
"runTimeoutMs": 60000,
|
|
1594
1630
|
"failureAlert": "convex_action_wrapper",
|
|
1595
1631
|
"domainReportRequired": true
|
|
1632
|
+
},
|
|
1633
|
+
{
|
|
1634
|
+
"id": "fly.runtime-detached-runner-liveness-sweep",
|
|
1635
|
+
"name": "Runtime detached-runner liveness sweep",
|
|
1636
|
+
"scheduler": "fly_controller",
|
|
1637
|
+
"cadence": "runAfter each fixed runtime controller reconcile, about every 15 seconds",
|
|
1638
|
+
"timezone": "UTC",
|
|
1639
|
+
"source": "apps/absurd-release-scaler/index.ts",
|
|
1640
|
+
"locator": "recoverConfiguredAbsurdRuntimeStaleDetachedRunners",
|
|
1641
|
+
"owner": "runtime",
|
|
1642
|
+
"criticality": "critical",
|
|
1643
|
+
"purpose": "Read each parked detached runner whose heartbeat is stale, outside org-ranked claims, and report the ones whose sandbox the provider proves ended. It settles nothing until it moves to enforce.",
|
|
1644
|
+
"successDefinition": "Each pass finishes inside its budget, logs every proven runner it reached as would_settle, names any provider it could not read, and leaves every sandbox parked.",
|
|
1645
|
+
"failureDefinition": "Discovery or a terminal settlement fails. A provider outage is not a failure: its runs stay parked and the hard ceiling still bounds them.",
|
|
1646
|
+
"startGraceMs": 60000,
|
|
1647
|
+
"runTimeoutMs": 12000,
|
|
1648
|
+
"failureAlert": "fly_scaler_lifecycle_metric",
|
|
1649
|
+
"domainReportRequired": true
|
|
1596
1650
|
}
|
|
1597
1651
|
]
|
|
@@ -4,7 +4,9 @@ import {
|
|
|
4
4
|
GetObjectCommand,
|
|
5
5
|
HeadObjectCommand,
|
|
6
6
|
DeleteObjectCommand,
|
|
7
|
+
ListObjectsV2Command,
|
|
7
8
|
} from '@aws-sdk/client-s3';
|
|
9
|
+
import { createHash } from 'node:crypto';
|
|
8
10
|
import { NodeHttpHandler } from '@smithy/node-http-handler';
|
|
9
11
|
import { getSignedUrl } from '@aws-sdk/s3-request-presigner';
|
|
10
12
|
import { Agent as HttpsAgent } from 'node:https';
|
|
@@ -56,9 +58,23 @@ function getRuntimeEnv(): keyof typeof PLAY_ARTIFACT_BUCKETS {
|
|
|
56
58
|
return 'dev';
|
|
57
59
|
}
|
|
58
60
|
|
|
61
|
+
function resolvePlayArtifactStorage() {
|
|
62
|
+
const environment = getRuntimeEnv();
|
|
63
|
+
return { environment, bucket: PLAY_ARTIFACT_BUCKETS[environment] };
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
/** Nonsecret identity only: does not resolve credentials or access storage. */
|
|
67
|
+
export function getPlayArtifactStorageIdentity() {
|
|
68
|
+
const { environment, bucket } = resolvePlayArtifactStorage();
|
|
69
|
+
return {
|
|
70
|
+
environment,
|
|
71
|
+
bucketSha256: createHash('sha256').update(bucket).digest('hex'),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
|
|
59
75
|
function resolveBucket(kind: R2BucketKind): string {
|
|
60
76
|
if (kind === 'playArtifacts') {
|
|
61
|
-
return
|
|
77
|
+
return resolvePlayArtifactStorage().bucket;
|
|
62
78
|
}
|
|
63
79
|
return requireEnv('CLOUDFLARE_R2_BUCKET_NAME');
|
|
64
80
|
}
|
|
@@ -73,9 +89,28 @@ export function getR2Config(kind: R2BucketKind = 'default') {
|
|
|
73
89
|
};
|
|
74
90
|
}
|
|
75
91
|
|
|
92
|
+
export type R2TransportPolicy = {
|
|
93
|
+
connectionTimeoutMs: number;
|
|
94
|
+
socketIdleTimeoutMs: number;
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
const DEFAULT_R2_TRANSPORT_POLICY: Readonly<R2TransportPolicy> = {
|
|
98
|
+
connectionTimeoutMs: 10_000,
|
|
99
|
+
socketIdleTimeoutMs: 30_000,
|
|
100
|
+
};
|
|
101
|
+
|
|
76
102
|
export function createR2Client(
|
|
77
103
|
config: ReturnType<typeof getR2Config>,
|
|
104
|
+
transportPolicy: Readonly<R2TransportPolicy> = DEFAULT_R2_TRANSPORT_POLICY,
|
|
78
105
|
): S3Client {
|
|
106
|
+
for (const timeout of [
|
|
107
|
+
transportPolicy.connectionTimeoutMs,
|
|
108
|
+
transportPolicy.socketIdleTimeoutMs,
|
|
109
|
+
]) {
|
|
110
|
+
if (!Number.isSafeInteger(timeout) || timeout <= 0) {
|
|
111
|
+
throw new Error('R2 transport timeouts must be positive milliseconds');
|
|
112
|
+
}
|
|
113
|
+
}
|
|
79
114
|
return new S3Client({
|
|
80
115
|
region: 'auto',
|
|
81
116
|
endpoint: config.endpoint,
|
|
@@ -84,6 +119,11 @@ export function createR2Client(
|
|
|
84
119
|
secretAccessKey: config.secretAccessKey,
|
|
85
120
|
},
|
|
86
121
|
requestHandler: new NodeHttpHandler({
|
|
122
|
+
// Bound connection acquisition/connect and stalled I/O separately. A
|
|
123
|
+
// large upload that keeps moving must not hit a small total deadline.
|
|
124
|
+
// The SDK can retry an interrupted PUT with the same object key/body.
|
|
125
|
+
connectionTimeout: transportPolicy.connectionTimeoutMs,
|
|
126
|
+
socketTimeout: transportPolicy.socketIdleTimeoutMs,
|
|
87
127
|
httpsAgent: new HttpsAgent({
|
|
88
128
|
keepAlive: true,
|
|
89
129
|
maxSockets: 64,
|
|
@@ -239,6 +279,31 @@ export async function getBufferFromR2(
|
|
|
239
279
|
return Buffer.from(bytes);
|
|
240
280
|
}
|
|
241
281
|
|
|
282
|
+
/** Every key under a prefix, across as many listing pages as it takes. */
|
|
283
|
+
export async function listR2Keys(
|
|
284
|
+
prefix: string,
|
|
285
|
+
kind: R2BucketKind = 'default',
|
|
286
|
+
): Promise<string[]> {
|
|
287
|
+
const config = getR2Config(kind);
|
|
288
|
+
const client = getR2Client(config);
|
|
289
|
+
const keys: string[] = [];
|
|
290
|
+
let continuationToken: string | undefined;
|
|
291
|
+
do {
|
|
292
|
+
const response = await client.send(
|
|
293
|
+
new ListObjectsV2Command({
|
|
294
|
+
Bucket: config.bucket,
|
|
295
|
+
Prefix: prefix,
|
|
296
|
+
ContinuationToken: continuationToken,
|
|
297
|
+
}),
|
|
298
|
+
);
|
|
299
|
+
for (const object of response.Contents ?? []) {
|
|
300
|
+
if (object.Key) keys.push(object.Key);
|
|
301
|
+
}
|
|
302
|
+
continuationToken = response.NextContinuationToken;
|
|
303
|
+
} while (continuationToken);
|
|
304
|
+
return keys;
|
|
305
|
+
}
|
|
306
|
+
|
|
242
307
|
/**
|
|
243
308
|
* Delete one immutable runtime object. Callers must retain their own durable
|
|
244
309
|
* deletion intent and confirm absence with HEAD before they acknowledge this
|
|
@@ -10,6 +10,15 @@ type QueryClient = {
|
|
|
10
10
|
type SheetIdentity = { schema: string; table: string };
|
|
11
11
|
type StorageType = 'boolean' | 'double precision' | 'text' | 'jsonb';
|
|
12
12
|
type ColumnState = { name: string; type: string; marker: string | null };
|
|
13
|
+
type WriteLockMode = 'shared' | 'exclusive';
|
|
14
|
+
|
|
15
|
+
/** Restart the whole transaction exclusively before changing a type or marker. */
|
|
16
|
+
export class RuntimeSheetColumnSchemaChangeRequired extends Error {
|
|
17
|
+
constructor() {
|
|
18
|
+
super('Runtime Sheet column preparation requires an exclusive transaction');
|
|
19
|
+
this.name = 'RuntimeSheetColumnSchemaChangeRequired';
|
|
20
|
+
}
|
|
21
|
+
}
|
|
13
22
|
export type RuntimeSheetColumnTypes = ReadonlyMap<string, string>;
|
|
14
23
|
|
|
15
24
|
const MARKER = 'deepline:runtime-sheet-column:';
|
|
@@ -38,12 +47,19 @@ function valueType(value: unknown): StorageType | null {
|
|
|
38
47
|
return 'jsonb';
|
|
39
48
|
}
|
|
40
49
|
|
|
41
|
-
async function lock(
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
50
|
+
async function lock(
|
|
51
|
+
client: QueryClient,
|
|
52
|
+
sheet: SheetIdentity,
|
|
53
|
+
mode: WriteLockMode = 'exclusive',
|
|
54
|
+
): Promise<void> {
|
|
55
|
+
// Stable writers may share the type fence. Schema mutations and all existing
|
|
56
|
+
// callers keep the exclusive fence; either mode is held through row DML.
|
|
57
|
+
await client.query(
|
|
58
|
+
mode === 'shared'
|
|
59
|
+
? 'SELECT pg_advisory_xact_lock_shared(hashtextextended($1, 0))'
|
|
60
|
+
: 'SELECT pg_advisory_xact_lock(hashtextextended($1, 0))',
|
|
61
|
+
[`runtime-sheet-columns:${relation(sheet)}`],
|
|
62
|
+
);
|
|
47
63
|
}
|
|
48
64
|
|
|
49
65
|
async function inspect(
|
|
@@ -160,9 +176,11 @@ export const RuntimeSheetColumns = {
|
|
|
160
176
|
| readonly Record<string, unknown>[]
|
|
161
177
|
| (() => Promise<readonly Record<string, unknown>[]>);
|
|
162
178
|
columns: readonly PhysicalSheetColumnProjection[];
|
|
179
|
+
/** Opt in only when the caller can roll back and restart the whole transaction. */
|
|
180
|
+
lockMode?: WriteLockMode;
|
|
163
181
|
},
|
|
164
182
|
): Promise<RuntimeSheetColumnTypes> {
|
|
165
|
-
await lock(client, input);
|
|
183
|
+
await lock(client, input, input.lockMode);
|
|
166
184
|
const rows =
|
|
167
185
|
typeof input.rows === 'function' ? await input.rows() : input.rows;
|
|
168
186
|
const columns = new Map(
|
|
@@ -178,6 +196,17 @@ export const RuntimeSheetColumns = {
|
|
|
178
196
|
projection.typeEvidence?.valueType === 'json' ? 'jsonb' : null;
|
|
179
197
|
for (const row of rows)
|
|
180
198
|
desired = combine(desired, valueType(row[projection.fieldName]));
|
|
199
|
+
if (
|
|
200
|
+
input.lockMode === 'shared' &&
|
|
201
|
+
desired !== null &&
|
|
202
|
+
(column.marker === UNDECIDED ||
|
|
203
|
+
(column.marker === NATIVE &&
|
|
204
|
+
combine(column.type as StorageType, desired) !== column.type))
|
|
205
|
+
) {
|
|
206
|
+
// Even an unchanged SQL type can need a new enrollment marker. Never
|
|
207
|
+
// upgrade the shared lock or perform partial schema changes here.
|
|
208
|
+
throw new RuntimeSheetColumnSchemaChangeRequired();
|
|
209
|
+
}
|
|
181
210
|
await changeType(client, input, column, desired);
|
|
182
211
|
}
|
|
183
212
|
return new Map([...columns].map(([name, column]) => [name, column.type]));
|