@opengeni/contracts 5.5.0 → 5.5.2-canary.40656248492001
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-authored-durable-text.d.ts +9 -9
- package/dist/agent-config.d.ts +148 -37
- package/dist/api-key-presets.d.ts +19 -0
- package/dist/app-action-catalog-types.d.ts +32 -0
- package/dist/app-action-catalog.gen.d.ts +2 -0
- package/dist/app-actions.d.ts +91 -0
- package/dist/app-actions.js +10130 -0
- package/dist/app-actions.js.map +1 -0
- package/dist/app-shot.d.ts +55 -0
- package/dist/artifact-catalog.d.ts +33 -0
- package/dist/artifacts.d.ts +166 -0
- package/dist/atlassian-native-retirement.d.ts +16 -0
- package/dist/atlassian-native-retirement.js +30 -0
- package/dist/atlassian-native-retirement.js.map +1 -0
- package/dist/atlassian.js +48 -23
- package/dist/automation-templates.d.ts +434 -0
- package/dist/automation-templates.js +31 -0
- package/dist/automation-templates.js.map +1 -0
- package/dist/billing-subscriptions.d.ts +61 -0
- package/dist/bots.d.ts +583 -0
- package/dist/bundled-skills.d.ts +58 -2
- package/dist/canonical-human-identities.js +3 -1
- package/dist/child-lifecycle-notice-protocol.d.ts +45 -0
- package/dist/chunk-2QKIEAGY.js +396 -0
- package/dist/chunk-2QKIEAGY.js.map +1 -0
- package/dist/chunk-2WOWEWXV.js +426 -0
- package/dist/chunk-2WOWEWXV.js.map +1 -0
- package/dist/chunk-2ZIHHL72.js +153 -0
- package/dist/chunk-2ZIHHL72.js.map +1 -0
- package/dist/chunk-32U6NKQQ.js +389 -0
- package/dist/chunk-32U6NKQQ.js.map +1 -0
- package/dist/chunk-4YDDHSO2.js +799 -0
- package/dist/chunk-4YDDHSO2.js.map +1 -0
- package/dist/chunk-56SNIMDO.js +9 -0
- package/dist/chunk-56SNIMDO.js.map +1 -0
- package/dist/chunk-5RWB6QVL.js +101 -0
- package/dist/chunk-5RWB6QVL.js.map +1 -0
- package/dist/chunk-5UGUOT3L.js +243 -0
- package/dist/chunk-5UGUOT3L.js.map +1 -0
- package/dist/chunk-6LAT33BH.js +130 -0
- package/dist/chunk-6LAT33BH.js.map +1 -0
- package/dist/chunk-7272KVWZ.js +60 -0
- package/dist/chunk-7272KVWZ.js.map +1 -0
- package/dist/chunk-72QC2GTL.js +36 -0
- package/dist/chunk-72QC2GTL.js.map +1 -0
- package/dist/chunk-7EQGGZBY.js +105 -0
- package/dist/chunk-7EQGGZBY.js.map +1 -0
- package/dist/chunk-A3LXWVYU.js +382 -0
- package/dist/chunk-A3LXWVYU.js.map +1 -0
- package/dist/chunk-AQYDZUJV.js +34 -0
- package/dist/chunk-AQYDZUJV.js.map +1 -0
- package/dist/chunk-BHCEVVUP.js +93 -0
- package/dist/chunk-BHCEVVUP.js.map +1 -0
- package/dist/chunk-BMUTAZX5.js +486 -0
- package/dist/chunk-BMUTAZX5.js.map +1 -0
- package/dist/chunk-DGG6IBBK.js +150 -0
- package/dist/chunk-DGG6IBBK.js.map +1 -0
- package/dist/{chunk-YBW5JSA3.js → chunk-FBCTUMHI.js} +123 -102
- package/dist/chunk-FBCTUMHI.js.map +1 -0
- package/dist/chunk-G2KJTFIC.js +97 -0
- package/dist/chunk-G2KJTFIC.js.map +1 -0
- package/dist/chunk-G4RKARXZ.js +1167 -0
- package/dist/chunk-G4RKARXZ.js.map +1 -0
- package/dist/chunk-H6UJJIUM.js +350 -0
- package/dist/chunk-H6UJJIUM.js.map +1 -0
- package/dist/chunk-JOTHDW4H.js +18 -0
- package/dist/chunk-JOTHDW4H.js.map +1 -0
- package/dist/chunk-L4GUEP7K.js +56480 -0
- package/dist/chunk-L4GUEP7K.js.map +1 -0
- package/dist/{chunk-SIOU2K4U.js → chunk-LJH2EYGT.js} +23 -23
- package/dist/chunk-MTJKSIGA.js +161 -0
- package/dist/chunk-MTJKSIGA.js.map +1 -0
- package/dist/chunk-MYHMB6GZ.js +202 -0
- package/dist/chunk-MYHMB6GZ.js.map +1 -0
- package/dist/chunk-PI5VIKJY.js +660 -0
- package/dist/chunk-PI5VIKJY.js.map +1 -0
- package/dist/{chunk-RIY7GYQS.js → chunk-PTSROVDG.js} +2 -2
- package/dist/chunk-PUIUXIOL.js +189 -0
- package/dist/chunk-PUIUXIOL.js.map +1 -0
- package/dist/chunk-R6VXJIMB.js +19 -0
- package/dist/chunk-R6VXJIMB.js.map +1 -0
- package/dist/chunk-RLJUNVAM.js +15 -0
- package/dist/chunk-RLJUNVAM.js.map +1 -0
- package/dist/chunk-RR6APCBK.js +213 -0
- package/dist/chunk-RR6APCBK.js.map +1 -0
- package/dist/{chunk-TXTQIYCV.js → chunk-RUQ4I6DO.js} +59 -13
- package/dist/chunk-RUQ4I6DO.js.map +1 -0
- package/dist/{chunk-WYBDERIY.js → chunk-RWEEUDHD.js} +53 -42
- package/dist/chunk-RWEEUDHD.js.map +1 -0
- package/dist/chunk-S7MSQQL6.js +158 -0
- package/dist/chunk-S7MSQQL6.js.map +1 -0
- package/dist/{chunk-5Q54VCCH.js → chunk-SHO4YO4B.js} +20 -36
- package/dist/chunk-SHO4YO4B.js.map +1 -0
- package/dist/{chunk-HHZSZYYF.js → chunk-T3HSWMA5.js} +20 -4
- package/dist/chunk-T3HSWMA5.js.map +1 -0
- package/dist/{chunk-YRKRZ6OF.js → chunk-TOOJIBJC.js} +2 -2
- package/dist/chunk-UCUOTRS6.js +431 -0
- package/dist/chunk-UCUOTRS6.js.map +1 -0
- package/dist/chunk-UH4K7GP7.js +424 -0
- package/dist/chunk-UH4K7GP7.js.map +1 -0
- package/dist/chunk-UIZWGPHV.js +120 -0
- package/dist/chunk-UIZWGPHV.js.map +1 -0
- package/dist/chunk-VLUKBV6Y.js +1170 -0
- package/dist/chunk-VLUKBV6Y.js.map +1 -0
- package/dist/chunk-W2QQ5Y6K.js +55 -0
- package/dist/chunk-W2QQ5Y6K.js.map +1 -0
- package/dist/{chunk-Y3KNXVTD.js → chunk-W3NBPR4E.js} +131 -31
- package/dist/chunk-W3NBPR4E.js.map +1 -0
- package/dist/{chunk-NRMCVHAU.js → chunk-WMGO4HJU.js} +11 -9
- package/dist/chunk-WMGO4HJU.js.map +1 -0
- package/dist/{chunk-MYBZRDTY.js → chunk-WQI7VNN4.js} +19 -9
- package/dist/chunk-WQI7VNN4.js.map +1 -0
- package/dist/{chunk-PX3VCKAU.js → chunk-WVCFSOUZ.js} +1 -1
- package/dist/{chunk-PX3VCKAU.js.map → chunk-WVCFSOUZ.js.map} +1 -1
- package/dist/chunk-XB6GQLBH.js +76 -0
- package/dist/chunk-XB6GQLBH.js.map +1 -0
- package/dist/{chunk-D2HKF2EF.js → chunk-XP5M3IKT.js} +2 -2
- package/dist/{chunk-O77VSFYZ.js → chunk-ZMPU5BWE.js} +12 -2
- package/dist/chunk-ZMPU5BWE.js.map +1 -0
- package/dist/{chunk-3SIZGL3O.js → chunk-ZYVEJFNU.js} +22 -18
- package/dist/chunk-ZYVEJFNU.js.map +1 -0
- package/dist/claude-provider-account-authority.d.ts +18 -0
- package/dist/claude-subscription-oauth.d.ts +25 -0
- package/dist/claude-subscription-usage.d.ts +95 -1
- package/dist/client-error-report.d.ts +154 -8
- package/dist/client-error-report.js +157 -2
- package/dist/client-error-report.js.map +1 -1
- package/dist/code-search.d.ts +1 -1
- package/dist/code-search.js.map +1 -1
- package/dist/codex-provider-account-authority.js +23 -12
- package/dist/codex-provider-account-authority.js.map +1 -1
- package/dist/company-profile.d.ts +144 -0
- package/dist/connect.d.ts +38 -0
- package/dist/connect.js +244 -164
- package/dist/connect.js.map +1 -1
- package/dist/connection-account-label.d.ts +2 -0
- package/dist/connection-account-label.js +34 -0
- package/dist/connection-account-label.js.map +1 -0
- package/dist/connection-authority.js +49 -24
- package/dist/connector-attachments.js +3 -1
- package/dist/connector-destinations.js +3 -1
- package/dist/connector-tool-permissions.d.ts +68 -4
- package/dist/credential-profiles.d.ts +166 -0
- package/dist/cua-desktop-tools.d.ts +19 -0
- package/dist/define-schema.d.ts +8 -0
- package/dist/desktop-app.d.ts +28 -0
- package/dist/direct-model-provider.d.ts +38 -0
- package/dist/document-artifact-commands.js +2 -2
- package/dist/document-artifact-query.js +2 -2
- package/dist/editable-artifact-binary.d.ts +7 -0
- package/dist/editable-artifact-causal-frontier.js +2 -2
- package/dist/editable-artifact-codec-registry.js +7 -7
- package/dist/editable-artifact-committed-transaction.js +4 -2
- package/dist/editable-artifact-live.js +8 -8
- package/dist/editable-artifact-serialized-commit.js +9 -9
- package/dist/editable-artifact-versions.d.ts +7 -1
- package/dist/editable-artifact-versions.js +1 -1
- package/dist/editable-artifacts.js +49 -43
- package/dist/event-preview.d.ts +22 -0
- package/dist/event-triggers.d.ts +1253 -0
- package/dist/event-triggers.js +148 -0
- package/dist/event-triggers.js.map +1 -0
- package/dist/external-identities.d.ts +34 -0
- package/dist/external-identities.js +4 -2
- package/dist/feedback.d.ts +181 -0
- package/dist/file-access.d.ts +23 -0
- package/dist/first-party-tool-authorization.d.ts +852 -0
- package/dist/github-repository-contracts.js +64 -43
- package/dist/github-repository-contracts.js.map +1 -1
- package/dist/google-drive-native-retirement.d.ts +12 -0
- package/dist/google-drive-native-retirement.js +20 -0
- package/dist/google-drive-native-retirement.js.map +1 -0
- package/dist/google-drive.d.ts +1 -1
- package/dist/google-drive.js +323 -239
- package/dist/google-drive.js.map +1 -1
- package/dist/host-mcp-bindings.js +250 -198
- package/dist/host-mcp-bindings.js.map +1 -1
- package/dist/index.d.ts +29072 -20593
- package/dist/index.js +2432 -366
- package/dist/inference-residency.d.ts +22 -0
- package/dist/insights-usage.d.ts +948 -0
- package/dist/insights-usage.js +608 -0
- package/dist/insights-usage.js.map +1 -0
- package/dist/integration-capability-id.d.ts +8 -0
- package/dist/interaction-action-deadline.d.ts +48 -0
- package/dist/interaction-driver-diagnostic.d.ts +28 -0
- package/dist/interaction.d.ts +2126 -881
- package/dist/knowledge-entries.d.ts +38 -0
- package/dist/knowledge-preparation.d.ts +4 -0
- package/dist/learning-refusal.d.ts +43 -0
- package/dist/learning-refusal.js +49 -0
- package/dist/learning-refusal.js.map +1 -0
- package/dist/managed-auth-session-sets.d.ts +1 -0
- package/dist/managed-auth-session-sets.js +207 -146
- package/dist/managed-auth-session-sets.js.map +1 -1
- package/dist/managed-sign-in-methods.d.ts +96 -0
- package/dist/managed-sign-in-methods.js +157 -35
- package/dist/managed-sign-in-methods.js.map +1 -1
- package/dist/mcp-structured-content.d.ts +25 -0
- package/dist/message-time-zone.d.ts +38 -0
- package/dist/message-time-zone.js +19 -0
- package/dist/message-time-zone.js.map +1 -0
- package/dist/modal-native-proof-v2.d.ts +587 -0
- package/dist/modal-native-proof-v2.js +39 -0
- package/dist/modal-native-proof-v2.js.map +1 -0
- package/dist/model-account-choice.d.ts +237 -0
- package/dist/model-account-settings.d.ts +422 -0
- package/dist/model-availability.d.ts +15 -0
- package/dist/model-connection-access.d.ts +13 -0
- package/dist/model-context-inspector.d.ts +8 -0
- package/dist/model-display.d.ts +43 -0
- package/dist/model-display.js +17 -0
- package/dist/model-display.js.map +1 -0
- package/dist/model-picker-order.js.map +1 -1
- package/dist/model-residency.d.ts +304 -0
- package/dist/organization-access.d.ts +416 -0
- package/dist/organization-access.js +40 -0
- package/dist/organization-access.js.map +1 -0
- package/dist/organization-integration-policy.d.ts +18 -0
- package/dist/organization-membership-lifecycle.d.ts +66 -0
- package/dist/organization-model-usage.d.ts +146 -0
- package/dist/organization-model-usage.js +87 -0
- package/dist/organization-model-usage.js.map +1 -0
- package/dist/organization-recovery.js +3 -1
- package/dist/organization-usage.d.ts +12 -0
- package/dist/passkey-only-account.d.ts +14 -0
- package/dist/passkey-only-account.js +13 -0
- package/dist/passkey-only-account.js.map +1 -0
- package/dist/permissions.d.ts +19 -0
- package/dist/personal-github.js +220 -148
- package/dist/personal-github.js.map +1 -1
- package/dist/personal-integration-setup.d.ts +81 -0
- package/dist/personal-integration-setup.js +42 -0
- package/dist/personal-integration-setup.js.map +1 -0
- package/dist/prepared-mcp-setup.d.ts +54 -0
- package/dist/prepared-mcp-setup.js +13 -0
- package/dist/prepared-mcp-setup.js.map +1 -0
- package/dist/presentation-artifact-commands.js +2 -2
- package/dist/presentation-artifact-query.js +2 -2
- package/dist/primitives.d.ts +18 -0
- package/dist/product-analytics.d.ts +27 -10
- package/dist/product-lifecycle-facts.d.ts +26 -3
- package/dist/prompt-cache-diagnostics.d.ts +92 -0
- package/dist/recordings.d.ts +1371 -0
- package/dist/remember.d.ts +98 -2
- package/dist/retained-output.d.ts +4 -2
- package/dist/sandbox-file-artifacts.d.ts +19 -2
- package/dist/sandbox-provider-command.d.ts +5 -44
- package/dist/sandbox-recovery.d.ts +139 -8
- package/dist/secret-generator.d.ts +44 -0
- package/dist/secret-mask-strings.d.ts +32 -0
- package/dist/secret-references.d.ts +90 -0
- package/dist/secret-resolution.d.ts +143 -0
- package/dist/secret-shape-masking.d.ts +52 -0
- package/dist/secret-shape-masking.js +19 -0
- package/dist/secret-shape-masking.js.map +1 -0
- package/dist/secret-totp.d.ts +41 -0
- package/dist/secret-use-approval-question.d.ts +11 -0
- package/dist/secret-use-approval-question.js +11 -0
- package/dist/secret-use-approval-question.js.map +1 -0
- package/dist/secret-use-approvals.d.ts +106 -0
- package/dist/secret-value-masking.d.ts +299 -0
- package/dist/secret-value-masking.js +62 -0
- package/dist/secret-value-masking.js.map +1 -0
- package/dist/secret-value.d.ts +19 -0
- package/dist/session-history-import.d.ts +444 -8
- package/dist/session-history.d.ts +111 -0
- package/dist/session-history.js +35 -0
- package/dist/session-history.js.map +1 -0
- package/dist/session-list-entries.d.ts +8 -0
- package/dist/session-list-entries.js +61 -0
- package/dist/session-list-entries.js.map +1 -0
- package/dist/session-mcp-projections.d.ts +13 -1
- package/dist/session-mcp-tool-permissions.d.ts +62 -0
- package/dist/session-target.d.ts +18 -0
- package/dist/session-titles.d.ts +8 -0
- package/dist/session-titles.js +5 -1
- package/dist/session-usage-limit-refusal.d.ts +34 -0
- package/dist/session-usage-limit-refusal.js +15 -0
- package/dist/session-usage-limit-refusal.js.map +1 -0
- package/dist/session-usage-limits.d.ts +127 -0
- package/dist/session-usage-limits.js +43 -0
- package/dist/session-usage-limits.js.map +1 -0
- package/dist/site-data.d.ts +286 -0
- package/dist/site-operations.d.ts +39 -0
- package/dist/site-publishing.d.ts +813 -0
- package/dist/site-session-http.d.ts +103 -4
- package/dist/site-session-http.js +27 -1
- package/dist/site-sql.d.ts +425 -0
- package/dist/skills.d.ts +38 -0
- package/dist/slack-bot-scopes.d.ts +9 -7
- package/dist/slack-bot-scopes.js +6 -3
- package/dist/slack-rest-mcp.d.ts +36 -0
- package/dist/slack-rest-mcp.js +25 -0
- package/dist/slack-rest-mcp.js.map +1 -0
- package/dist/spreadsheet-artifact-commands.d.ts +14 -1
- package/dist/spreadsheet-artifact-commands.js +9 -2
- package/dist/spreadsheet-artifact-query.d.ts +13 -6
- package/dist/spreadsheet-artifact-query.js +4 -3
- package/dist/subscription-account-actions.d.ts +83 -0
- package/dist/subscription-account-pools.d.ts +326 -0
- package/dist/subscription-personal-authority-v2.d.ts +28 -0
- package/dist/subscription-personal-authority-v2.js +13 -0
- package/dist/subscription-personal-authority-v2.js.map +1 -0
- package/dist/subscription-plans.d.ts +38 -0
- package/dist/subscription-usage-pool.d.ts +89 -0
- package/dist/tool-action-review.d.ts +141 -0
- package/dist/tool-catalog.d.ts +479 -0
- package/dist/tool-policy.d.ts +5 -0
- package/dist/tool-review-presentation.d.ts +29 -0
- package/dist/tool-review-presentation.js +21 -0
- package/dist/tool-review-presentation.js.map +1 -0
- package/dist/turn-serving-policy.d.ts +223 -0
- package/dist/usage-allowances.d.ts +30 -0
- package/dist/usage-allowances.js +5 -1
- package/dist/values.d.ts +11 -0
- package/dist/values.js +19 -0
- package/dist/values.js.map +1 -0
- package/dist/vault-provider-wire.d.ts +907 -0
- package/dist/vault-provider-wire.js +74 -0
- package/dist/vault-provider-wire.js.map +1 -0
- package/dist/vaults.d.ts +2185 -0
- package/dist/video-generation.d.ts +75 -0
- package/dist/video-generation.js +8 -1
- package/dist/workspace-control-event.d.ts +18 -0
- package/dist/workspace-control-event.js +18 -0
- package/dist/workspace-control-event.js.map +1 -0
- package/dist/workspace-governance-context.d.ts +18 -0
- package/dist/workspace-integration-wire.d.ts +1 -1
- package/dist/workspace-integration-wire.js +1 -1
- package/dist/workspace-integrations.d.ts +212 -12
- package/dist/xai-provider-account-authority.js +3 -1
- package/package.json +121 -4
- package/src/agent-authored-durable-text.ts +14 -11
- package/src/agent-config.ts +382 -203
- package/src/agent-instruction-changes.ts +94 -74
- package/src/agent-learning.ts +94 -66
- package/src/agent-topology.ts +58 -52
- package/src/api-key-presets.ts +28 -0
- package/src/app-action-catalog-types.ts +32 -0
- package/src/app-action-catalog.gen.ts +9905 -0
- package/src/app-actions.ts +365 -0
- package/src/app-shot.ts +176 -0
- package/src/artifact-catalog.ts +81 -46
- package/src/artifacts.ts +360 -227
- package/src/atlassian-native-retirement.ts +33 -0
- package/src/atlassian.ts +136 -108
- package/src/automation-templates.ts +201 -0
- package/src/billing-subscriptions.ts +48 -0
- package/src/bots.ts +238 -0
- package/src/bundled-skills.ts +79 -22
- package/src/canonical-human-identities.ts +65 -62
- package/src/child-lifecycle-notice-protocol.gen.json +1310 -0
- package/src/child-lifecycle-notice-protocol.ts +224 -0
- package/src/claude-provider-account-authority.ts +12 -0
- package/src/claude-subscription-oauth.ts +61 -19
- package/src/claude-subscription-usage.ts +64 -35
- package/src/client-error-report.ts +344 -9
- package/src/code-search.ts +1 -1
- package/src/codex-provider-account-authority.ts +22 -16
- package/src/company-brain-governed-writes.ts +265 -244
- package/src/company-brain.ts +165 -154
- package/src/company-profile.ts +362 -297
- package/src/connect.ts +222 -173
- package/src/connection-account-label.ts +45 -0
- package/src/connection-authority.ts +172 -152
- package/src/connector-attachments.ts +139 -123
- package/src/connector-destinations.ts +48 -43
- package/src/connector-tool-permissions.ts +104 -46
- package/src/credential-profiles.ts +161 -0
- package/src/cua-desktop-tools.gen.json +6722 -0
- package/src/cua-desktop-tools.linux.gen.json +6798 -0
- package/src/cua-desktop-tools.ts +42 -0
- package/src/cua-desktop-tools.windows.gen.json +6739 -0
- package/src/define-schema.ts +10 -0
- package/src/desktop-app.ts +50 -0
- package/src/direct-model-provider.ts +112 -0
- package/src/editable-artifact-binary.ts +29 -8
- package/src/editable-artifact-committed-transaction.ts +19 -18
- package/src/editable-artifact-serialized-commit.ts +8 -2
- package/src/editable-artifact-versions.ts +7 -1
- package/src/event-preview.ts +53 -3
- package/src/event-triggers.ts +891 -0
- package/src/external-identities.ts +239 -195
- package/src/feedback.ts +125 -30
- package/src/file-access.ts +26 -0
- package/src/first-party-tool-authorization.ts +383 -0
- package/src/github-repository-contracts.ts +78 -64
- package/src/google-drive-native-retirement.ts +20 -0
- package/src/google-drive.ts +286 -234
- package/src/governed-learning-activation.ts +159 -137
- package/src/governed-learning-evaluator.ts +141 -133
- package/src/host-mcp-bindings.ts +244 -221
- package/src/image-generation.ts +105 -95
- package/src/index.ts +13928 -9899
- package/src/inference-residency.ts +36 -0
- package/src/insights-usage.ts +774 -0
- package/src/integration-capability-id.ts +16 -0
- package/src/interaction-action-deadline.ts +143 -0
- package/src/interaction-driver-diagnostic.ts +89 -0
- package/src/interaction.ts +3527 -2427
- package/src/knowledge-entries.ts +386 -299
- package/src/knowledge-preparation.ts +49 -41
- package/src/knowledge.ts +242 -213
- package/src/learning-refusal.ts +90 -0
- package/src/managed-auth-session-sets.ts +180 -133
- package/src/managed-sign-in-methods.ts +156 -34
- package/src/mcp-oauth.ts +58 -46
- package/src/mcp-receipts.ts +199 -194
- package/src/mcp-structured-content.ts +81 -0
- package/src/memory-slack-delivery.ts +172 -142
- package/src/message-time-zone.ts +109 -0
- package/src/modal-native-proof-v2.ts +430 -0
- package/src/model-account-choice.ts +178 -0
- package/src/model-account-settings.ts +210 -0
- package/src/model-availability.ts +22 -0
- package/src/model-connection-access.ts +62 -14
- package/src/model-context-inspector.ts +130 -109
- package/src/model-display.ts +221 -0
- package/src/model-picker-order.ts +1 -1
- package/src/model-residency.ts +535 -0
- package/src/organization-access.ts +216 -0
- package/src/organization-integration-policy.ts +47 -28
- package/src/organization-membership-lifecycle.ts +558 -384
- package/src/organization-model-usage.ts +82 -0
- package/src/organization-recovery.ts +148 -135
- package/src/organization-usage.ts +84 -52
- package/src/passkey-only-account.ts +29 -0
- package/src/permissions.ts +94 -52
- package/src/personal-github.ts +211 -171
- package/src/personal-integration-setup.ts +150 -0
- package/src/preference-registry.ts +319 -263
- package/src/prepared-mcp-setup.ts +190 -0
- package/src/primitives.ts +22 -0
- package/src/product-analytics.ts +40 -15
- package/src/product-lifecycle-facts.ts +50 -20
- package/src/prompt-cache-diagnostics.ts +212 -0
- package/src/recordings.ts +1153 -0
- package/src/remember.ts +184 -172
- package/src/retained-output.ts +181 -168
- package/src/sandbox-file-artifacts.ts +78 -57
- package/src/sandbox-provider-command.ts +55 -72
- package/src/sandbox-recovery.ts +163 -77
- package/src/scoped-knowledge.ts +62 -43
- package/src/secret-generator.ts +156 -0
- package/src/secret-mask-strings.ts +175 -0
- package/src/secret-references.ts +414 -0
- package/src/secret-resolution.ts +322 -0
- package/src/secret-shape-masking.ts +573 -0
- package/src/secret-totp.ts +188 -0
- package/src/secret-use-approval-question.ts +22 -0
- package/src/secret-use-approvals.ts +219 -0
- package/src/secret-value-masking.ts +1283 -0
- package/src/secret-value.ts +22 -0
- package/src/session-goal-reports.ts +55 -49
- package/src/session-history-import.ts +84 -68
- package/src/session-history.ts +197 -0
- package/src/session-list-entries.ts +106 -0
- package/src/session-mcp-projections.ts +21 -3
- package/src/session-mcp-tool-permissions.ts +109 -0
- package/src/session-message-search.ts +46 -38
- package/src/session-target.ts +58 -0
- package/src/session-titles.ts +40 -4
- package/src/session-topology-primitives.ts +20 -12
- package/src/session-usage-limit-refusal.ts +101 -0
- package/src/session-usage-limits.ts +169 -0
- package/src/signup-attribution.ts +20 -15
- package/src/site-data.ts +337 -0
- package/src/site-operations.ts +154 -0
- package/src/site-publishing.ts +903 -0
- package/src/site-session-http.ts +344 -16
- package/src/site-sql.ts +1120 -0
- package/src/skill-use.ts +18 -17
- package/src/skills.ts +105 -50
- package/src/slack-bot-scopes.ts +18 -35
- package/src/slack-rest-mcp.ts +222 -0
- package/src/slack-task-policy.ts +97 -73
- package/src/spreadsheet-artifact-commands.ts +74 -13
- package/src/spreadsheet-artifact-query.ts +188 -50
- package/src/subscription-account-actions.ts +103 -0
- package/src/subscription-account-pools.ts +74 -0
- package/src/subscription-personal-authority-v2.ts +69 -0
- package/src/subscription-plans.ts +51 -0
- package/src/subscription-usage-pool.ts +44 -0
- package/src/task-notes.ts +70 -68
- package/src/tool-action-review.ts +271 -0
- package/src/tool-catalog.ts +694 -379
- package/src/tool-policy.ts +82 -0
- package/src/tool-result-spill.ts +13 -9
- package/src/tool-review-presentation.ts +643 -0
- package/src/turn-serving-policy.ts +167 -0
- package/src/usage-allowances.ts +212 -136
- package/src/values.ts +25 -0
- package/src/vault-provider-wire.ts +580 -0
- package/src/vaults.ts +1296 -0
- package/src/video-generation.ts +430 -361
- package/src/work-claims.ts +183 -166
- package/src/workspace-control-event.ts +134 -0
- package/src/workspace-governance-context.ts +63 -0
- package/src/workspace-instruction-policies.ts +346 -279
- package/src/workspace-integration-wire.ts +10 -0
- package/src/workspace-integrations.ts +488 -398
- package/src/workspace-learning-administration.ts +58 -44
- package/src/workspace-learning-policy.ts +126 -99
- package/src/workspace-state.ts +239 -220
- package/src/xai-provider-account-authority.ts +23 -17
- package/dist/chunk-3SIZGL3O.js.map +0 -1
- package/dist/chunk-566IFOVP.js +0 -26133
- package/dist/chunk-566IFOVP.js.map +0 -1
- package/dist/chunk-5IXYF6XN.js +0 -728
- package/dist/chunk-5IXYF6XN.js.map +0 -1
- package/dist/chunk-5Q54VCCH.js.map +0 -1
- package/dist/chunk-BCS7WHCK.js +0 -139
- package/dist/chunk-BCS7WHCK.js.map +0 -1
- package/dist/chunk-EK7NDGFR.js +0 -128
- package/dist/chunk-EK7NDGFR.js.map +0 -1
- package/dist/chunk-GRG7PHWQ.js +0 -25
- package/dist/chunk-GRG7PHWQ.js.map +0 -1
- package/dist/chunk-HHZSZYYF.js.map +0 -1
- package/dist/chunk-ICDZGUX2.js +0 -186
- package/dist/chunk-ICDZGUX2.js.map +0 -1
- package/dist/chunk-JUFK3T4Q.js +0 -80
- package/dist/chunk-JUFK3T4Q.js.map +0 -1
- package/dist/chunk-MYBZRDTY.js.map +0 -1
- package/dist/chunk-NRMCVHAU.js.map +0 -1
- package/dist/chunk-O77VSFYZ.js.map +0 -1
- package/dist/chunk-P3HLDT77.js +0 -59
- package/dist/chunk-P3HLDT77.js.map +0 -1
- package/dist/chunk-TXTQIYCV.js.map +0 -1
- package/dist/chunk-WYBDERIY.js.map +0 -1
- package/dist/chunk-Y3KNXVTD.js.map +0 -1
- package/dist/chunk-YBW5JSA3.js.map +0 -1
- package/dist/chunk-YRXAWWCU.js +0 -45
- package/dist/chunk-YRXAWWCU.js.map +0 -1
- package/dist/chunk-YWMOIZ6A.js +0 -185
- package/dist/chunk-YWMOIZ6A.js.map +0 -1
- package/dist/site-request-headers.test.d.ts +0 -1
- package/dist/transcription-recordings.d.ts +0 -300
- package/src/transcription-recordings.ts +0 -169
- /package/dist/{chunk-SIOU2K4U.js.map → chunk-LJH2EYGT.js.map} +0 -0
- /package/dist/{chunk-RIY7GYQS.js.map → chunk-PTSROVDG.js.map} +0 -0
- /package/dist/{chunk-YRKRZ6OF.js.map → chunk-TOOJIBJC.js.map} +0 -0
- /package/dist/{chunk-D2HKF2EF.js.map → chunk-XP5M3IKT.js.map} +0 -0
package/src/work-claims.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import * as primitives from "./primitives";
|
|
2
|
+
import { defineSchema } from "./define-schema";
|
|
1
3
|
import { z } from "zod";
|
|
2
4
|
import { normalizeAutomaticSessionTitle } from "./session-titles";
|
|
3
5
|
|
|
@@ -16,35 +18,32 @@ const CONTROL_CHARACTERS = /[\u0000-\u001f\u007f-\u009f]/u;
|
|
|
16
18
|
const NAMESPACE_PATTERN = /^[a-z0-9](?:[a-z0-9._:-]{0,62}[a-z0-9])?$/u;
|
|
17
19
|
|
|
18
20
|
function boundedCanonicalText(maxBytes: number, label: string) {
|
|
19
|
-
return
|
|
20
|
-
.
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
});
|
|
21
|
+
return primitives.nonEmptyString.superRefine((value, context) => {
|
|
22
|
+
if (value !== value.trim()) {
|
|
23
|
+
context.addIssue({
|
|
24
|
+
code: z.ZodIssueCode.custom,
|
|
25
|
+
message: `${label} must not have leading or trailing whitespace`,
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
if (value !== value.normalize("NFKC")) {
|
|
29
|
+
context.addIssue({
|
|
30
|
+
code: z.ZodIssueCode.custom,
|
|
31
|
+
message: `${label} must use canonical Unicode normalization`,
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
if (CONTROL_CHARACTERS.test(value)) {
|
|
35
|
+
context.addIssue({
|
|
36
|
+
code: z.ZodIssueCode.custom,
|
|
37
|
+
message: `${label} must not contain control characters`,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
if (utf8Bytes(value) > maxBytes) {
|
|
41
|
+
context.addIssue({
|
|
42
|
+
code: z.ZodIssueCode.custom,
|
|
43
|
+
message: `${label} must be at most ${maxBytes} UTF-8 bytes`,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
});
|
|
48
47
|
}
|
|
49
48
|
|
|
50
49
|
export function normalizeWorkClaimNamespace(value: string): string {
|
|
@@ -61,26 +60,23 @@ export function normalizeWorkClaimDisplayLabel(value: string): string | null {
|
|
|
61
60
|
return normalized;
|
|
62
61
|
}
|
|
63
62
|
|
|
64
|
-
export const WorkClaimNamespace =
|
|
65
|
-
.
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
63
|
+
export const WorkClaimNamespace = /* @__PURE__ */ defineSchema(() =>
|
|
64
|
+
primitives.nonEmptyString
|
|
65
|
+
.max(WORK_CLAIM_NAMESPACE_MAX_BYTES)
|
|
66
|
+
.regex(NAMESPACE_PATTERN)
|
|
67
|
+
.refine((value) => value === normalizeWorkClaimNamespace(value), {
|
|
68
|
+
message: "work claim namespace must already be canonical lowercase text",
|
|
69
|
+
}),
|
|
70
|
+
);
|
|
72
71
|
export type WorkClaimNamespace = z.infer<typeof WorkClaimNamespace>;
|
|
73
72
|
|
|
74
|
-
export const WorkClaimCanonicalKey =
|
|
75
|
-
WORK_CLAIM_CANONICAL_KEY_MAX_BYTES,
|
|
76
|
-
"work claim canonical key",
|
|
73
|
+
export const WorkClaimCanonicalKey = /* @__PURE__ */ defineSchema(() =>
|
|
74
|
+
boundedCanonicalText(WORK_CLAIM_CANONICAL_KEY_MAX_BYTES, "work claim canonical key"),
|
|
77
75
|
);
|
|
78
76
|
export type WorkClaimCanonicalKey = z.infer<typeof WorkClaimCanonicalKey>;
|
|
79
77
|
|
|
80
|
-
export const WorkClaimDisplayLabel =
|
|
81
|
-
.
|
|
82
|
-
.min(1)
|
|
83
|
-
.superRefine((value, context) => {
|
|
78
|
+
export const WorkClaimDisplayLabel = /* @__PURE__ */ defineSchema(() =>
|
|
79
|
+
primitives.nonEmptyString.superRefine((value, context) => {
|
|
84
80
|
if (utf8Bytes(value) > WORK_CLAIM_DISPLAY_LABEL_MAX_BYTES) {
|
|
85
81
|
context.addIssue({
|
|
86
82
|
code: z.ZodIssueCode.custom,
|
|
@@ -93,45 +89,56 @@ export const WorkClaimDisplayLabel = z
|
|
|
93
89
|
message: "work claim display label must be a safe concise semantic label",
|
|
94
90
|
});
|
|
95
91
|
}
|
|
96
|
-
})
|
|
92
|
+
}),
|
|
93
|
+
);
|
|
97
94
|
export type WorkClaimDisplayLabel = z.infer<typeof WorkClaimDisplayLabel>;
|
|
98
95
|
|
|
99
|
-
export const WorkClaimSubjectType =
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
96
|
+
export const WorkClaimSubjectType = /* @__PURE__ */ defineSchema(() =>
|
|
97
|
+
z.enum([
|
|
98
|
+
"repository",
|
|
99
|
+
"branch",
|
|
100
|
+
"pull_request",
|
|
101
|
+
"issue",
|
|
102
|
+
"artifact",
|
|
103
|
+
"release",
|
|
104
|
+
"ci_run",
|
|
105
|
+
"other",
|
|
106
|
+
]),
|
|
107
|
+
);
|
|
109
108
|
export type WorkClaimSubjectType = z.infer<typeof WorkClaimSubjectType>;
|
|
110
109
|
|
|
111
|
-
export const WorkClaimRole =
|
|
110
|
+
export const WorkClaimRole = /* @__PURE__ */ defineSchema(() =>
|
|
111
|
+
z.enum(["working", "reviewing", "monitoring", "delivering"]),
|
|
112
|
+
);
|
|
112
113
|
export type WorkClaimRole = z.infer<typeof WorkClaimRole>;
|
|
113
114
|
|
|
114
|
-
export const WorkClaimState =
|
|
115
|
+
export const WorkClaimState = /* @__PURE__ */ defineSchema(() =>
|
|
116
|
+
z.enum(["active", "released", "superseded", "stale"]),
|
|
117
|
+
);
|
|
115
118
|
export type WorkClaimState = z.infer<typeof WorkClaimState>;
|
|
116
119
|
|
|
117
|
-
export const WorkClaimProvenance =
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
120
|
+
export const WorkClaimProvenance = /* @__PURE__ */ defineSchema(() =>
|
|
121
|
+
z.enum([
|
|
122
|
+
"explicit_agent",
|
|
123
|
+
"user_api",
|
|
124
|
+
"trusted_integration",
|
|
125
|
+
"session_resource",
|
|
126
|
+
"system_lifecycle",
|
|
127
|
+
]),
|
|
128
|
+
);
|
|
124
129
|
export type WorkClaimProvenance = z.infer<typeof WorkClaimProvenance>;
|
|
125
130
|
|
|
126
|
-
export const WorkClaimVersionKind =
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
131
|
+
export const WorkClaimVersionKind = /* @__PURE__ */ defineSchema(() =>
|
|
132
|
+
z.enum([
|
|
133
|
+
"git_commit",
|
|
134
|
+
"branch_head",
|
|
135
|
+
"pull_request_head",
|
|
136
|
+
"artifact_version",
|
|
137
|
+
"release_version",
|
|
138
|
+
"ci_run",
|
|
139
|
+
"other",
|
|
140
|
+
]),
|
|
141
|
+
);
|
|
135
142
|
export type WorkClaimVersionKind = z.infer<typeof WorkClaimVersionKind>;
|
|
136
143
|
|
|
137
144
|
export const WorkClaimVersionValue = boundedCanonicalText(
|
|
@@ -140,112 +147,120 @@ export const WorkClaimVersionValue = boundedCanonicalText(
|
|
|
140
147
|
);
|
|
141
148
|
export type WorkClaimVersionValue = z.infer<typeof WorkClaimVersionValue>;
|
|
142
149
|
|
|
143
|
-
export const WorkClaimReleaseReason =
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
150
|
+
export const WorkClaimReleaseReason = /* @__PURE__ */ defineSchema(() =>
|
|
151
|
+
z.enum([
|
|
152
|
+
"completed",
|
|
153
|
+
"cancelled",
|
|
154
|
+
"failed",
|
|
155
|
+
"superseded",
|
|
156
|
+
"no_longer_active",
|
|
157
|
+
"corrected",
|
|
158
|
+
"external_state_changed",
|
|
159
|
+
"other",
|
|
160
|
+
]),
|
|
161
|
+
);
|
|
153
162
|
export type WorkClaimReleaseReason = z.infer<typeof WorkClaimReleaseReason>;
|
|
154
163
|
|
|
155
|
-
export const WorkClaimMutationKind =
|
|
156
|
-
"created",
|
|
157
|
-
|
|
158
|
-
"released",
|
|
159
|
-
"superseded",
|
|
160
|
-
"stale",
|
|
161
|
-
]);
|
|
164
|
+
export const WorkClaimMutationKind = /* @__PURE__ */ defineSchema(() =>
|
|
165
|
+
z.enum(["created", "updated", "released", "superseded", "stale"]),
|
|
166
|
+
);
|
|
162
167
|
export type WorkClaimMutationKind = z.infer<typeof WorkClaimMutationKind>;
|
|
163
168
|
|
|
164
|
-
export const WorkClaim =
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
169
|
+
export const WorkClaim = /* @__PURE__ */ defineSchema(() =>
|
|
170
|
+
z.object({
|
|
171
|
+
id: primitives.uuid,
|
|
172
|
+
sessionId: primitives.uuid,
|
|
173
|
+
rootSessionId: primitives.uuid,
|
|
174
|
+
subject: z.object({
|
|
175
|
+
namespace: WorkClaimNamespace,
|
|
176
|
+
type: WorkClaimSubjectType,
|
|
177
|
+
canonicalKey: WorkClaimCanonicalKey,
|
|
178
|
+
displayLabel: WorkClaimDisplayLabel.nullable(),
|
|
179
|
+
}),
|
|
180
|
+
role: WorkClaimRole,
|
|
181
|
+
state: WorkClaimState,
|
|
182
|
+
revision: primitives.positiveInteger,
|
|
183
|
+
provenance: WorkClaimProvenance,
|
|
184
|
+
version: z
|
|
185
|
+
.object({
|
|
186
|
+
kind: WorkClaimVersionKind,
|
|
187
|
+
value: WorkClaimVersionValue,
|
|
188
|
+
})
|
|
189
|
+
.nullable(),
|
|
190
|
+
observedAt: primitives.string.datetime({ offset: true }),
|
|
191
|
+
createdAt: primitives.string.datetime({ offset: true }),
|
|
192
|
+
updatedAt: primitives.string.datetime({ offset: true }),
|
|
193
|
+
settledAt: primitives.string.datetime({ offset: true }).nullable(),
|
|
173
194
|
}),
|
|
174
|
-
|
|
175
|
-
state: WorkClaimState,
|
|
176
|
-
revision: z.number().int().positive(),
|
|
177
|
-
provenance: WorkClaimProvenance,
|
|
178
|
-
version: z
|
|
179
|
-
.object({
|
|
180
|
-
kind: WorkClaimVersionKind,
|
|
181
|
-
value: WorkClaimVersionValue,
|
|
182
|
-
})
|
|
183
|
-
.nullable(),
|
|
184
|
-
observedAt: z.string().datetime({ offset: true }),
|
|
185
|
-
createdAt: z.string().datetime({ offset: true }),
|
|
186
|
-
updatedAt: z.string().datetime({ offset: true }),
|
|
187
|
-
settledAt: z.string().datetime({ offset: true }).nullable(),
|
|
188
|
-
});
|
|
195
|
+
);
|
|
189
196
|
export type WorkClaim = z.infer<typeof WorkClaim>;
|
|
190
197
|
|
|
191
|
-
export const WorkClaimMutationResult =
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
198
|
+
export const WorkClaimMutationResult = /* @__PURE__ */ defineSchema(() =>
|
|
199
|
+
z.object({
|
|
200
|
+
claim: WorkClaim,
|
|
201
|
+
mutation: WorkClaimMutationKind,
|
|
202
|
+
replayed: primitives.boolean,
|
|
203
|
+
}),
|
|
204
|
+
);
|
|
196
205
|
export type WorkClaimMutationResult = z.infer<typeof WorkClaimMutationResult>;
|
|
197
206
|
|
|
198
|
-
export const WorkClaimDiscoverySummary =
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
207
|
+
export const WorkClaimDiscoverySummary = /* @__PURE__ */ defineSchema(() =>
|
|
208
|
+
WorkClaim.pick({
|
|
209
|
+
id: true,
|
|
210
|
+
sessionId: true,
|
|
211
|
+
subject: true,
|
|
212
|
+
role: true,
|
|
213
|
+
state: true,
|
|
214
|
+
revision: true,
|
|
215
|
+
provenance: true,
|
|
216
|
+
version: true,
|
|
217
|
+
observedAt: true,
|
|
218
|
+
updatedAt: true,
|
|
219
|
+
settledAt: true,
|
|
220
|
+
}),
|
|
221
|
+
);
|
|
211
222
|
export type WorkClaimDiscoverySummary = z.infer<typeof WorkClaimDiscoverySummary>;
|
|
212
223
|
|
|
213
|
-
export const WorkClaimSubjectFilter =
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
224
|
+
export const WorkClaimSubjectFilter = /* @__PURE__ */ defineSchema(() =>
|
|
225
|
+
z
|
|
226
|
+
.object({
|
|
227
|
+
namespace: WorkClaimNamespace,
|
|
228
|
+
type: WorkClaimSubjectType,
|
|
229
|
+
canonicalKey: WorkClaimCanonicalKey,
|
|
230
|
+
})
|
|
231
|
+
.strict(),
|
|
232
|
+
);
|
|
220
233
|
export type WorkClaimSubjectFilter = z.infer<typeof WorkClaimSubjectFilter>;
|
|
221
234
|
|
|
222
|
-
export const WorkDiscoveryMatchClass =
|
|
235
|
+
export const WorkDiscoveryMatchClass = /* @__PURE__ */ defineSchema(() =>
|
|
236
|
+
z.enum(["exact_subject", "title", "goal", "fuzzy"]),
|
|
237
|
+
);
|
|
223
238
|
export type WorkDiscoveryMatchClass = z.infer<typeof WorkDiscoveryMatchClass>;
|
|
224
239
|
|
|
225
|
-
export const WorkDiscoveryMatchedField =
|
|
226
|
-
"subject",
|
|
227
|
-
|
|
228
|
-
"goal",
|
|
229
|
-
"claim_key",
|
|
230
|
-
"claim_label",
|
|
231
|
-
]);
|
|
240
|
+
export const WorkDiscoveryMatchedField = /* @__PURE__ */ defineSchema(() =>
|
|
241
|
+
z.enum(["subject", "title", "goal", "claim_key", "claim_label"]),
|
|
242
|
+
);
|
|
232
243
|
export type WorkDiscoveryMatchedField = z.infer<typeof WorkDiscoveryMatchedField>;
|
|
233
244
|
|
|
234
245
|
/**
|
|
235
246
|
* Deliberately stable bands rather than a raw ranking score. Raw full-text or
|
|
236
247
|
* trigram values are query-relative and become a misleading cross-query API.
|
|
237
248
|
*/
|
|
238
|
-
export const WorkDiscoveryScoreBand =
|
|
249
|
+
export const WorkDiscoveryScoreBand = /* @__PURE__ */ defineSchema(() =>
|
|
250
|
+
z.enum(["exact", "strong", "related"]),
|
|
251
|
+
);
|
|
239
252
|
export type WorkDiscoveryScoreBand = z.infer<typeof WorkDiscoveryScoreBand>;
|
|
240
253
|
|
|
241
|
-
export const WorkDiscoveryMatch =
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
254
|
+
export const WorkDiscoveryMatch = /* @__PURE__ */ defineSchema(() =>
|
|
255
|
+
z
|
|
256
|
+
.object({
|
|
257
|
+
class: WorkDiscoveryMatchClass,
|
|
258
|
+
field: WorkDiscoveryMatchedField,
|
|
259
|
+
scoreBand: WorkDiscoveryScoreBand,
|
|
260
|
+
claimId: primitives.nullableUuid,
|
|
261
|
+
})
|
|
262
|
+
.strict(),
|
|
263
|
+
);
|
|
249
264
|
export type WorkDiscoveryMatch = z.infer<typeof WorkDiscoveryMatch>;
|
|
250
265
|
|
|
251
266
|
/**
|
|
@@ -253,14 +268,16 @@ export type WorkDiscoveryMatch = z.infer<typeof WorkDiscoveryMatch>;
|
|
|
253
268
|
* the wire contract so a consumer cannot accidentally present a claim as a
|
|
254
269
|
* lock, authorization grant, ownership transfer, or mandatory instruction.
|
|
255
270
|
*/
|
|
256
|
-
export const WorkDiscoveryProjection =
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
271
|
+
export const WorkDiscoveryProjection = /* @__PURE__ */ defineSchema(() =>
|
|
272
|
+
z
|
|
273
|
+
.object({
|
|
274
|
+
claims: z.array(WorkClaimDiscoverySummary).max(WORK_CLAIM_DISCOVERY_LIMIT),
|
|
275
|
+
claimsTruncated: primitives.boolean,
|
|
276
|
+
match: WorkDiscoveryMatch.nullable(),
|
|
277
|
+
possibleOverlap: primitives.boolean,
|
|
278
|
+
advisoryOnly: z.literal(true),
|
|
279
|
+
noAdditionalAccess: z.literal(true),
|
|
280
|
+
})
|
|
281
|
+
.strict(),
|
|
282
|
+
);
|
|
266
283
|
export type WorkDiscoveryProjection = z.infer<typeof WorkDiscoveryProjection>;
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import type { WorkspaceControlEvent, WorkspaceControlEventTruncation } from "./index";
|
|
2
|
+
import { sessionEventJsonBytes } from "./event-preview";
|
|
3
|
+
export const WORKSPACE_CONTROL_REASON_MAX_BYTES = 8 * 1024;
|
|
4
|
+
|
|
5
|
+
export const WORKSPACE_CONTROL_ACTOR_MAX_BYTES = 1024;
|
|
6
|
+
|
|
7
|
+
export const WORKSPACE_CONTROL_EVENT_MAX_BYTES = 16 * 1024;
|
|
8
|
+
|
|
9
|
+
export type WorkspaceControlBoundarySurface = WorkspaceControlEventTruncation["surface"];
|
|
10
|
+
|
|
11
|
+
export type BoundWorkspaceControlEventOptions = {
|
|
12
|
+
surface?: WorkspaceControlBoundarySurface;
|
|
13
|
+
reasonOriginalBytes?: number | null;
|
|
14
|
+
actorOriginalBytes?: number | null;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
/** UTF-8 byte count used by workspace-control storage and transport guards. */
|
|
18
|
+
export function workspaceControlUtf8Bytes(value: string): number {
|
|
19
|
+
return new TextEncoder().encode(value).byteLength;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Canonical bounded invalidation event. The event is not a full evidence store:
|
|
24
|
+
* when a producer or legacy row exceeds a field cap, the retained head carries
|
|
25
|
+
* a visible marker and structured exact byte-loss facts.
|
|
26
|
+
*/
|
|
27
|
+
export function boundWorkspaceControlEvent(
|
|
28
|
+
event: WorkspaceControlEvent,
|
|
29
|
+
options: BoundWorkspaceControlEventOptions = {},
|
|
30
|
+
): WorkspaceControlEvent {
|
|
31
|
+
const existingFields = new Map(
|
|
32
|
+
(event.truncation?.fields ?? []).map((field) => [field.field, field] as const),
|
|
33
|
+
);
|
|
34
|
+
const reason =
|
|
35
|
+
event.reason === null
|
|
36
|
+
? null
|
|
37
|
+
: boundWorkspaceControlText(event.reason, WORKSPACE_CONTROL_REASON_MAX_BYTES);
|
|
38
|
+
const actor = boundWorkspaceControlText(event.actor, WORKSPACE_CONTROL_ACTOR_MAX_BYTES);
|
|
39
|
+
const reasonBytes = reason === null ? 0 : workspaceControlUtf8Bytes(reason);
|
|
40
|
+
const actorBytes = workspaceControlUtf8Bytes(actor);
|
|
41
|
+
const reasonOriginalBytes =
|
|
42
|
+
event.reason === null
|
|
43
|
+
? null
|
|
44
|
+
: Math.max(
|
|
45
|
+
workspaceControlUtf8Bytes(event.reason),
|
|
46
|
+
normalizedWorkspaceControlOriginalBytes(options.reasonOriginalBytes),
|
|
47
|
+
existingFields.get("reason")?.originalBytes ?? 0,
|
|
48
|
+
);
|
|
49
|
+
const actorOriginalBytes = Math.max(
|
|
50
|
+
workspaceControlUtf8Bytes(event.actor),
|
|
51
|
+
normalizedWorkspaceControlOriginalBytes(options.actorOriginalBytes),
|
|
52
|
+
existingFields.get("actor")?.originalBytes ?? 0,
|
|
53
|
+
);
|
|
54
|
+
const fields: WorkspaceControlEventTruncation["fields"] = [];
|
|
55
|
+
if (reasonOriginalBytes !== null && reasonOriginalBytes > reasonBytes) {
|
|
56
|
+
fields.push({
|
|
57
|
+
field: "reason",
|
|
58
|
+
originalBytes: reasonOriginalBytes,
|
|
59
|
+
deliveredBytes: reasonBytes,
|
|
60
|
+
omittedBytes: reasonOriginalBytes - reasonBytes,
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
if (actorOriginalBytes > actorBytes) {
|
|
64
|
+
fields.push({
|
|
65
|
+
field: "actor",
|
|
66
|
+
originalBytes: actorOriginalBytes,
|
|
67
|
+
deliveredBytes: actorBytes,
|
|
68
|
+
omittedBytes: actorOriginalBytes - actorBytes,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
if (fields.length === 0 && event.truncation == null) {
|
|
72
|
+
if (sessionEventJsonBytes(event) > WORKSPACE_CONTROL_EVENT_MAX_BYTES) {
|
|
73
|
+
throw new RangeError("Workspace control event exceeds its bounded envelope");
|
|
74
|
+
}
|
|
75
|
+
return event;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
const truncation: WorkspaceControlEventTruncation = {
|
|
79
|
+
truncated: true,
|
|
80
|
+
surface: event.truncation?.surface ?? options.surface ?? "durable_control",
|
|
81
|
+
deliveredBytes: 0,
|
|
82
|
+
fields,
|
|
83
|
+
fullEvidence: { available: false, reason: "not_retained" },
|
|
84
|
+
};
|
|
85
|
+
const bounded: WorkspaceControlEvent = {
|
|
86
|
+
...event,
|
|
87
|
+
reason,
|
|
88
|
+
actor,
|
|
89
|
+
truncation,
|
|
90
|
+
};
|
|
91
|
+
settleWorkspaceControlDeliveredBytes(bounded, truncation);
|
|
92
|
+
const deliveredBytes = sessionEventJsonBytes(bounded);
|
|
93
|
+
if (deliveredBytes > WORKSPACE_CONTROL_EVENT_MAX_BYTES) {
|
|
94
|
+
throw new RangeError(
|
|
95
|
+
`Bounded workspace control event exceeds its final envelope (${deliveredBytes} > ${WORKSPACE_CONTROL_EVENT_MAX_BYTES} bytes)`,
|
|
96
|
+
);
|
|
97
|
+
}
|
|
98
|
+
return bounded;
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
function boundWorkspaceControlText(value: string, maxBytes: number): string {
|
|
102
|
+
const encoder = new TextEncoder();
|
|
103
|
+
const decoder = new TextDecoder();
|
|
104
|
+
const bytes = encoder.encode(value);
|
|
105
|
+
if (bytes.byteLength <= maxBytes) return value;
|
|
106
|
+
const marker = "…[truncated]";
|
|
107
|
+
const prefixBudget = Math.max(0, maxBytes - encoder.encode(marker).byteLength);
|
|
108
|
+
let prefixEnd = Math.min(prefixBudget, bytes.byteLength);
|
|
109
|
+
while (prefixEnd > 0 && prefixEnd < bytes.byteLength && (bytes[prefixEnd]! & 0xc0) === 0x80) {
|
|
110
|
+
prefixEnd -= 1;
|
|
111
|
+
}
|
|
112
|
+
return `${decoder.decode(bytes.subarray(0, prefixEnd))}${marker}`;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
function normalizedWorkspaceControlOriginalBytes(value: number | null | undefined): number {
|
|
116
|
+
return value === null || value === undefined || !Number.isFinite(value)
|
|
117
|
+
? 0
|
|
118
|
+
: Math.max(0, Math.floor(value));
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
function settleWorkspaceControlDeliveredBytes(
|
|
122
|
+
event: WorkspaceControlEvent,
|
|
123
|
+
truncation: WorkspaceControlEventTruncation,
|
|
124
|
+
): void {
|
|
125
|
+
for (let attempt = 0; attempt < 16; attempt += 1) {
|
|
126
|
+
const deliveredBytes = sessionEventJsonBytes(event);
|
|
127
|
+
if (truncation.deliveredBytes === deliveredBytes) return;
|
|
128
|
+
truncation.deliveredBytes = deliveredBytes;
|
|
129
|
+
}
|
|
130
|
+
const deliveredBytes = sessionEventJsonBytes(event);
|
|
131
|
+
if (truncation.deliveredBytes !== deliveredBytes) {
|
|
132
|
+
throw new RangeError("Workspace control event byte accounting did not converge");
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Durable, model-visible workspace governance context.
|
|
3
|
+
*
|
|
4
|
+
* Governance (instruction policies, learning settings, organization profile)
|
|
5
|
+
* can change between turns and differs by who starts a turn. In the system
|
|
6
|
+
* prompt, every such change rewrote text that earlier requests had already sent
|
|
7
|
+
* and invalidated the whole cached history. It is therefore delivered as a
|
|
8
|
+
* history item inserted before the turn that first sees a new value; earlier
|
|
9
|
+
* items stay byte-identical, and the newest item replaces older ones.
|
|
10
|
+
*/
|
|
11
|
+
export const WORKSPACE_GOVERNANCE_CONTEXT_PREFIX = "<opengeni_workspace_governance>\n";
|
|
12
|
+
export const WORKSPACE_GOVERNANCE_CONTEXT_SUFFIX = "\n</opengeni_workspace_governance>";
|
|
13
|
+
const GUIDANCE =
|
|
14
|
+
"This is the current workspace governance and replaces earlier workspace governance blocks.\n\n";
|
|
15
|
+
/** Recorded when governance that applied earlier no longer does. */
|
|
16
|
+
export const WORKSPACE_GOVERNANCE_NONE = "No workspace governance is active.";
|
|
17
|
+
|
|
18
|
+
export function workspaceGovernanceContextItem(governance: string): Record<string, unknown> {
|
|
19
|
+
return {
|
|
20
|
+
type: "message",
|
|
21
|
+
role: "developer",
|
|
22
|
+
content:
|
|
23
|
+
WORKSPACE_GOVERNANCE_CONTEXT_PREFIX +
|
|
24
|
+
GUIDANCE +
|
|
25
|
+
governance +
|
|
26
|
+
WORKSPACE_GOVERNANCE_CONTEXT_SUFFIX,
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/** Accept the Chat Completions projection and SDK text-part normalization too. */
|
|
31
|
+
export function readWorkspaceGovernanceContext(item: Record<string, unknown>): string | null {
|
|
32
|
+
if (item.type === "unknown" && item.providerData && typeof item.providerData === "object") {
|
|
33
|
+
const data = item.providerData as Record<string, unknown>;
|
|
34
|
+
if (data.type === "message") return readWorkspaceGovernanceContext(data);
|
|
35
|
+
}
|
|
36
|
+
if (item.type !== "message" || (item.role !== "developer" && item.role !== "system")) return null;
|
|
37
|
+
const content =
|
|
38
|
+
typeof item.content === "string"
|
|
39
|
+
? item.content
|
|
40
|
+
: Array.isArray(item.content) &&
|
|
41
|
+
item.content.every(
|
|
42
|
+
(part) =>
|
|
43
|
+
part &&
|
|
44
|
+
(part.type === "input_text" || part.type === "output_text" || part.type === "text") &&
|
|
45
|
+
typeof part.text === "string",
|
|
46
|
+
)
|
|
47
|
+
? item.content.map((part) => part.text).join("")
|
|
48
|
+
: null;
|
|
49
|
+
const prefix = WORKSPACE_GOVERNANCE_CONTEXT_PREFIX + GUIDANCE;
|
|
50
|
+
return content?.startsWith(prefix) && content.endsWith(WORKSPACE_GOVERNANCE_CONTEXT_SUFFIX)
|
|
51
|
+
? content.slice(prefix.length, -WORKSPACE_GOVERNANCE_CONTEXT_SUFFIX.length)
|
|
52
|
+
: null;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export function latestWorkspaceGovernanceContext(
|
|
56
|
+
items: readonly Record<string, unknown>[],
|
|
57
|
+
): Record<string, unknown> | undefined {
|
|
58
|
+
for (let index = items.length - 1; index >= 0; index--) {
|
|
59
|
+
const governance = readWorkspaceGovernanceContext(items[index]!);
|
|
60
|
+
if (governance !== null) return workspaceGovernanceContextItem(governance);
|
|
61
|
+
}
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|