@cursor/july 0.1.107 → 0.1.109
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/AGENTS.md +2 -6
- package/README.md +13 -11
- package/dist/bin/agent-serve.js +30 -8
- package/dist/channels/bitbucket/api.d.ts +41 -0
- package/dist/channels/bitbucket/api.d.ts.map +1 -1
- package/dist/channels/bitbucket/api.js +260 -0
- package/dist/channels/bitbucket/binding.d.ts +4 -0
- package/dist/channels/bitbucket/binding.d.ts.map +1 -1
- package/dist/channels/bitbucket/binding.js +16 -0
- package/dist/channels/bitbucket/index.d.ts +1 -1
- package/dist/channels/bitbucket/index.d.ts.map +1 -1
- package/dist/channels/bitbucket/index.js +1 -1
- package/dist/channels/github/github-channel.js +8 -5
- package/dist/channels/github/types.d.ts +5 -1
- package/dist/channels/github/types.d.ts.map +1 -1
- package/dist/channels/gitlab/api.d.ts +27 -0
- package/dist/channels/gitlab/api.d.ts.map +1 -1
- package/dist/channels/gitlab/api.js +88 -0
- package/dist/channels/gitlab/binding.d.ts +5 -0
- package/dist/channels/gitlab/binding.d.ts.map +1 -1
- package/dist/channels/gitlab/binding.js +10 -0
- package/dist/channels/gitlab/index.d.ts +1 -1
- package/dist/channels/gitlab/index.d.ts.map +1 -1
- package/dist/channels/gitlab/index.js +1 -1
- package/dist/channels/origin/origin-channel.d.ts.map +1 -1
- package/dist/channels/origin/origin-channel.js +27 -13
- package/dist/channels/origin/types.d.ts +5 -1
- package/dist/channels/origin/types.d.ts.map +1 -1
- package/dist/channels/slack/dispatch.d.ts +10 -0
- package/dist/channels/slack/dispatch.d.ts.map +1 -1
- package/dist/channels/slack/dispatch.js +20 -3
- package/dist/channels/slack/slack-channel.d.ts +12 -5
- package/dist/channels/slack/slack-channel.d.ts.map +1 -1
- package/dist/channels/slack/slack-channel.js +59 -8
- package/dist/channels.d.ts +45 -0
- package/dist/channels.d.ts.map +1 -1
- package/dist/channels.js +106 -7
- package/dist/connections.d.ts +2 -1
- package/dist/connections.d.ts.map +1 -1
- package/dist/connections.js +2 -1
- package/dist/docs/404.html +2 -2
- package/dist/docs/assets/{app.CtuckIiL.js → app.Cr-wVbnB.js} +1 -1
- package/dist/docs/assets/{building-with-agents.md.CUSWxlP_.js → building-with-agents.md.D0KbSkJn.js} +2 -2
- package/dist/docs/assets/{building-with-agents.md.CUSWxlP_.lean.js → building-with-agents.md.D0KbSkJn.lean.js} +1 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.CFVQ4S17.js +1 -0
- package/dist/docs/assets/chunks/{VPLocalSearchBox.Bkkhnu8K.js → VPLocalSearchBox.CVQERt56.js} +1 -1
- package/dist/docs/assets/chunks/{theme.DhpIe0Pa.js → theme.Dnsd3XOn.js} +2 -2
- package/dist/docs/assets/concepts.md.B4o63Gul.js +1 -0
- package/dist/docs/assets/{deployment.md.MFPKqsqI.js → deployment.md.JenwuCCB.js} +4 -4
- package/dist/docs/assets/{deployment.md.MFPKqsqI.lean.js → deployment.md.JenwuCCB.lean.js} +1 -1
- package/dist/docs/assets/evals.md.C7JLjoEP.js +211 -0
- package/dist/docs/assets/evals.md.C7JLjoEP.lean.js +1 -0
- package/dist/docs/assets/guides_bitbucket.md.DZPzmUjU.js +10 -0
- package/dist/docs/assets/guides_bitbucket.md.DZPzmUjU.lean.js +1 -0
- package/dist/docs/assets/guides_cloud-agents.md.BsloyHdY.js +9 -0
- package/dist/docs/assets/{guides_cloud-agents.md.DS8RIjwx.lean.js → guides_cloud-agents.md.BsloyHdY.lean.js} +1 -1
- package/dist/docs/assets/{guides_github.md.c0gdGJ-D.js → guides_github.md.TZaTZlfz.js} +13 -3
- package/dist/docs/assets/{guides_github.md.c0gdGJ-D.lean.js → guides_github.md.TZaTZlfz.lean.js} +1 -1
- package/dist/docs/assets/guides_gitlab.md.BmqwQfdG.js +14 -0
- package/dist/docs/assets/guides_gitlab.md.BmqwQfdG.lean.js +1 -0
- package/dist/docs/assets/{guides_grokbot-agents.md.DVqdhBKb.js → guides_grokbot-agents.md.DyV-WArv.js} +1 -1
- package/dist/docs/assets/guides_improve.md.BGVk32bK.js +14 -0
- package/dist/docs/assets/guides_improve.md.BGVk32bK.lean.js +1 -0
- package/dist/docs/assets/{guides_slack.md.9oHPye9o.js → guides_slack.md.D4RVMM4G.js} +3 -3
- package/dist/docs/assets/{guides_slack.md.9oHPye9o.lean.js → guides_slack.md.D4RVMM4G.lean.js} +1 -1
- package/dist/docs/assets/{guides_webhooks.md.DKdA43Qm.js → guides_webhooks.md.CJK484ex.js} +2 -2
- package/dist/docs/assets/{hillclimbing.md.CpTGTCle.js → hillclimbing.md.BOiVo1tf.js} +1 -1
- package/dist/docs/assets/index.md.DD9Q2XuJ.js +5 -0
- package/dist/docs/assets/{index.md.BW_6tOgR.lean.js → index.md.DD9Q2XuJ.lean.js} +1 -1
- package/dist/docs/assets/{reference_agent-config.md.CHNpiyp4.js → reference_agent-config.md.CvoL6pof.js} +1 -1
- package/dist/docs/assets/{reference_channels.md.D-qTqwcq.js → reference_channels.md.CAo-iK4j.js} +2 -2
- package/dist/docs/assets/{reference_channels.md.D-qTqwcq.lean.js → reference_channels.md.CAo-iK4j.lean.js} +1 -1
- package/dist/docs/assets/{reference_cli.md.Dm67hd2D.js → reference_cli.md.Deg7849l.js} +7 -7
- package/dist/docs/assets/{reference_cli.md.Dm67hd2D.lean.js → reference_cli.md.Deg7849l.lean.js} +1 -1
- package/dist/docs/assets/{reference_connections.md.Di6jJAXF.js → reference_connections.md.BojkC6c5.js} +1 -1
- package/dist/docs/assets/{reference_extensions.md.CGmMLblt.js → reference_extensions.md.ZAVUyuEX.js} +3 -3
- package/dist/docs/assets/{reference_hooks.md.Ddt5DdgJ.js → reference_hooks.md.BlM_bOg6.js} +3 -3
- package/dist/docs/assets/{reference_hooks.md.Ddt5DdgJ.lean.js → reference_hooks.md.BlM_bOg6.lean.js} +1 -1
- package/dist/docs/assets/{reference_http-api.md.oySXBO8o.js → reference_http-api.md.BwaCo-VO.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.4myJPxrf.js → reference_playground.md.DLnoaczX.js} +1 -1
- package/dist/docs/assets/{reference_playground.md.4myJPxrf.lean.js → reference_playground.md.DLnoaczX.lean.js} +1 -1
- package/dist/docs/assets/{reference_project-layout.md.DuBu9a96.js → reference_project-layout.md.BEU8MtQV.js} +3 -3
- package/dist/docs/assets/{reference_project-layout.md.DuBu9a96.lean.js → reference_project-layout.md.BEU8MtQV.lean.js} +1 -1
- package/dist/docs/assets/reference_sessions.md.CyXV1MUw.js +1 -0
- package/dist/docs/assets/{scaffolding-agents.md.em43xlY1.js → scaffolding-agents.md.Kctn3OVb.js} +1 -1
- package/dist/docs/assets/{skills_create-agent.md.BVoWPcan.js → skills_create-agent.md.Q3h6Je-e.js} +1 -1
- package/dist/docs/assets/{skills_debug.md.CDbPhHfg.js → skills_debug.md.CVjCXMFF.js} +1 -1
- package/dist/docs/assets/{skills_debug.md.CDbPhHfg.lean.js → skills_debug.md.CVjCXMFF.lean.js} +1 -1
- package/dist/docs/assets/skills_deploy.md.CWqi_ZxW.js +35 -0
- package/dist/docs/assets/skills_deploy.md.CWqi_ZxW.lean.js +1 -0
- package/dist/docs/assets/skills_evals.md.DFxYPErF.js +25 -0
- package/dist/docs/assets/skills_evals.md.DFxYPErF.lean.js +1 -0
- package/dist/docs/assets/skills_framework-map.md.BxLSOhSY.js +1 -0
- package/dist/docs/assets/{skills_framework-map.md.haibFyoB.lean.js → skills_framework-map.md.BxLSOhSY.lean.js} +1 -1
- package/dist/docs/assets/{skills_github.md.D0JahM8c.js → skills_github.md.hgFX_oKY.js} +1 -1
- package/dist/docs/assets/skills_index.md.DL7EHaQ-.js +1 -0
- package/dist/docs/assets/skills_index.md.DL7EHaQ-.lean.js +1 -0
- package/dist/docs/assets/{storage.md.BOHeqk2M.js → storage.md.BUrhJ-Zz.js} +4 -4
- package/dist/docs/assets/{storage.md.BOHeqk2M.lean.js → storage.md.BUrhJ-Zz.lean.js} +1 -1
- package/dist/docs/assets/troubleshooting.md.CYEAO9bM.js +1 -0
- package/dist/docs/building-with-agents.html +5 -5
- package/dist/docs/building-with-agents.md +3 -2
- package/dist/docs/concepts.html +5 -5
- package/dist/docs/concepts.md +2 -4
- package/dist/docs/deployment.html +7 -7
- package/dist/docs/deployment.md +7 -2
- package/dist/docs/evals.html +161 -35
- package/dist/docs/evals.md +612 -296
- package/dist/docs/guides/agent-to-agent.html +4 -4
- package/dist/docs/guides/bitbucket.html +36 -0
- package/dist/docs/guides/bitbucket.md +84 -0
- package/dist/docs/guides/cloud-agents.html +6 -6
- package/dist/docs/guides/cloud-agents.md +4 -3
- package/dist/docs/guides/convert-automation.html +4 -4
- package/dist/docs/guides/github.html +17 -7
- package/dist/docs/guides/github.md +33 -1
- package/dist/docs/guides/gitlab.html +40 -0
- package/dist/docs/guides/gitlab.md +92 -0
- package/dist/docs/guides/grokbot-agents.html +6 -6
- package/dist/docs/guides/grokbot-agents.md +2 -2
- package/dist/docs/guides/human-in-the-loop.html +4 -4
- package/dist/docs/guides/improve.html +40 -0
- package/dist/docs/guides/improve.md +91 -0
- package/dist/docs/guides/mcp-oauth.html +4 -4
- package/dist/docs/guides/opentelemetry.html +5 -5
- package/dist/docs/guides/slack.html +7 -7
- package/dist/docs/guides/slack.md +2 -1
- package/dist/docs/guides/webhooks.html +6 -6
- package/dist/docs/guides/webhooks.md +4 -2
- package/dist/docs/hashmap.json +1 -1
- package/dist/docs/hillclimbing.html +6 -6
- package/dist/docs/hillclimbing.md +2 -2
- package/dist/docs/index.html +6 -6
- package/dist/docs/index.md +14 -6
- package/dist/docs/llms-full.txt +1274 -814
- package/dist/docs/llms.txt +7 -5
- package/dist/docs/quickstart.html +4 -4
- package/dist/docs/reference/agent-config.html +6 -6
- package/dist/docs/reference/agent-config.md +5 -2
- package/dist/docs/reference/artifacts.html +4 -4
- package/dist/docs/reference/channels.html +6 -6
- package/dist/docs/reference/channels.md +16 -3
- package/dist/docs/reference/cli.html +11 -11
- package/dist/docs/reference/cli.md +24 -15
- package/dist/docs/reference/connections.html +6 -6
- package/dist/docs/reference/connections.md +2 -1
- package/dist/docs/reference/extensions.html +8 -8
- package/dist/docs/reference/extensions.md +2 -3
- package/dist/docs/reference/hooks.html +7 -7
- package/dist/docs/reference/hooks.md +9 -12
- package/dist/docs/reference/http-api.html +6 -6
- package/dist/docs/reference/http-api.md +2 -3
- package/dist/docs/reference/instructions.html +4 -4
- package/dist/docs/reference/playground.html +5 -5
- package/dist/docs/reference/playground.md +0 -4
- package/dist/docs/reference/project-layout.html +7 -7
- package/dist/docs/reference/project-layout.md +1 -8
- package/dist/docs/reference/prompt.html +4 -4
- package/dist/docs/reference/result.html +4 -4
- package/dist/docs/reference/schedules.html +4 -4
- package/dist/docs/reference/sessions.html +5 -5
- package/dist/docs/reference/sessions.md +1 -2
- package/dist/docs/reference/skills.html +4 -4
- package/dist/docs/reference/subagents.html +4 -4
- package/dist/docs/reference/tools.html +4 -4
- package/dist/docs/scaffolding-agents.html +5 -5
- package/dist/docs/scaffolding-agents.md +2 -1
- package/dist/docs/skills/create-agent.html +6 -6
- package/dist/docs/skills/create-agent.md +1 -1
- package/dist/docs/skills/debug.html +5 -5
- package/dist/docs/skills/debug.md +1 -1
- package/dist/docs/skills/deploy.html +61 -0
- package/dist/docs/skills/deploy.md +161 -0
- package/dist/docs/skills/evals.html +8 -8
- package/dist/docs/skills/evals.md +44 -6
- package/dist/docs/skills/framework-map.html +5 -5
- package/dist/docs/skills/framework-map.md +5 -4
- package/dist/docs/skills/github.html +6 -6
- package/dist/docs/skills/github.md +1 -1
- package/dist/docs/skills/hillclimb.html +4 -4
- package/dist/docs/skills/index.html +6 -6
- package/dist/docs/skills/index.md +1 -1
- package/dist/docs/skills/mcp-auth.html +4 -4
- package/dist/docs/skills/otel.html +4 -4
- package/dist/docs/skills/setup-slack.html +4 -4
- package/dist/docs/storage.html +8 -8
- package/dist/docs/storage.md +15 -24
- package/dist/docs/templates/agentic-owners.html +4 -4
- package/dist/docs/templates/agents-md.html +4 -4
- package/dist/docs/templates/code-wiki.html +4 -4
- package/dist/docs/templates/demo.html +4 -4
- package/dist/docs/templates/grokbot-agents.html +4 -4
- package/dist/docs/templates/pr-autofixer.html +4 -4
- package/dist/docs/templates/security-help.html +4 -4
- package/dist/docs/templates/security-reviewer.html +4 -4
- package/dist/docs/templates/triage.html +4 -4
- package/dist/docs/troubleshooting.html +5 -5
- package/dist/docs/troubleshooting.md +1 -1
- package/dist/extensions/improve/extension.d.ts +46 -0
- package/dist/extensions/improve/extension.d.ts.map +1 -0
- package/dist/extensions/improve/extension.js +41 -0
- package/dist/extensions/improve/skills/yourself.d.ts +4 -0
- package/dist/extensions/improve/skills/yourself.d.ts.map +1 -0
- package/dist/extensions/improve/skills/yourself.js +43 -0
- package/dist/extensions.d.ts +2 -3
- package/dist/extensions.d.ts.map +1 -1
- package/dist/extensions.js +2 -5
- package/dist/index.d.ts +2 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -2
- package/dist/internal/authored-alias-hooks.d.ts +5 -0
- package/dist/internal/authored-alias-hooks.d.ts.map +1 -1
- package/dist/internal/authored-alias-hooks.js +17 -0
- package/dist/internal/authored-loaders.d.ts +4 -0
- package/dist/internal/authored-loaders.d.ts.map +1 -1
- package/dist/internal/authored-loaders.js +21 -2
- package/dist/internal/builtin-tools/artifacts.d.ts.map +1 -1
- package/dist/internal/builtin-tools/artifacts.js +2 -3
- package/dist/internal/channel-route-dispatch.d.ts +13 -0
- package/dist/internal/channel-route-dispatch.d.ts.map +1 -0
- package/dist/internal/channel-route-dispatch.js +62 -0
- package/dist/internal/channel-state.d.ts +17 -0
- package/dist/internal/channel-state.d.ts.map +1 -0
- package/dist/internal/channel-state.js +78 -0
- package/dist/internal/cli-ax.d.ts +8 -2
- package/dist/internal/cli-ax.d.ts.map +1 -1
- package/dist/internal/cli-ax.js +100 -3
- package/dist/internal/cli-cursor.d.ts.map +1 -1
- package/dist/internal/cli-cursor.js +2 -0
- package/dist/internal/cli-deploy.d.ts.map +1 -1
- package/dist/internal/cli-deploy.js +38 -14
- package/dist/internal/cli-mcp-oauth.d.ts.map +1 -1
- package/dist/internal/cli-mcp-oauth.js +15 -0
- package/dist/internal/cli-mcp.d.ts.map +1 -1
- package/dist/internal/cli-mcp.js +12 -0
- package/dist/internal/cli-slack.d.ts.map +1 -1
- package/dist/internal/cli-slack.js +8 -2
- package/dist/internal/continuation-channel.d.ts.map +1 -1
- package/dist/internal/continuation-channel.js +2 -2
- package/dist/internal/continuation-identity.js +8 -3
- package/dist/internal/cursor/credentials.d.ts +8 -2
- package/dist/internal/cursor/credentials.d.ts.map +1 -1
- package/dist/internal/cursor/credentials.js +27 -5
- package/dist/internal/deploy-client.d.ts +27 -0
- package/dist/internal/deploy-client.d.ts.map +1 -1
- package/dist/internal/deploy-client.js +32 -0
- package/dist/internal/deploy-manifest.d.ts +23 -0
- package/dist/internal/deploy-manifest.d.ts.map +1 -1
- package/dist/internal/deploy-manifest.js +84 -1
- package/dist/internal/describe-error.d.ts +1 -0
- package/dist/internal/describe-error.d.ts.map +1 -1
- package/dist/internal/describe-error.js +25 -0
- package/dist/internal/discovery/agent.d.ts +1 -1
- package/dist/internal/discovery/agent.d.ts.map +1 -1
- package/dist/internal/discovery/agent.js +0 -5
- package/dist/internal/discovery/extension-overlay.d.ts +1 -2
- package/dist/internal/discovery/extension-overlay.d.ts.map +1 -1
- package/dist/internal/discovery/extension-overlay.js +0 -14
- package/dist/internal/discovery/extensions.d.ts +1 -2
- package/dist/internal/discovery/extensions.d.ts.map +1 -1
- package/dist/internal/discovery/extensions.js +4 -22
- package/dist/internal/discovery/info.d.ts.map +1 -1
- package/dist/internal/discovery/info.js +42 -24
- package/dist/internal/discovery/modules.js +0 -1
- package/dist/internal/discovery/project.d.ts.map +1 -1
- package/dist/internal/discovery/project.js +0 -16
- package/dist/internal/eval-runner.js +0 -1
- package/dist/internal/framework-file-storage.d.ts +4 -5
- package/dist/internal/framework-file-storage.d.ts.map +1 -1
- package/dist/internal/framework-file-storage.js +4 -5
- package/dist/internal/framework-storage-selection.d.ts +2 -2
- package/dist/internal/framework-storage-selection.js +2 -2
- package/dist/internal/guest-network.d.ts +4 -10
- package/dist/internal/guest-network.d.ts.map +1 -1
- package/dist/internal/guest-network.js +42 -26
- package/dist/internal/hosted-admission-adapter.d.ts +2 -0
- package/dist/internal/hosted-admission-adapter.d.ts.map +1 -1
- package/dist/internal/hosted-catch-protocol.d.ts +51 -0
- package/dist/internal/hosted-catch-protocol.d.ts.map +1 -0
- package/dist/internal/hosted-catch-protocol.js +103 -0
- package/dist/internal/hosted-catch.d.ts +40 -0
- package/dist/internal/hosted-catch.d.ts.map +1 -0
- package/dist/internal/hosted-catch.js +149 -0
- package/dist/internal/hosted-delivery-protocol.d.ts +41 -0
- package/dist/internal/hosted-delivery-protocol.d.ts.map +1 -1
- package/dist/internal/hosted-delivery-protocol.js +249 -0
- package/dist/internal/hosted-delivery.d.ts +10 -1
- package/dist/internal/hosted-delivery.d.ts.map +1 -1
- package/dist/internal/hosted-delivery.js +100 -22
- package/dist/internal/hosted-execution-diag.d.ts +4 -1
- package/dist/internal/hosted-execution-diag.d.ts.map +1 -1
- package/dist/internal/hosted-execution-diag.js +13 -4
- package/dist/internal/hosted-execution-flush.d.ts +3 -0
- package/dist/internal/hosted-execution-flush.d.ts.map +1 -1
- package/dist/internal/hosted-execution-flush.js +2 -4
- package/dist/internal/http-control-plane-session.d.ts +30 -0
- package/dist/internal/http-control-plane-session.d.ts.map +1 -0
- package/dist/internal/http-control-plane-session.js +83 -0
- package/dist/internal/init-scaffold.d.ts.map +1 -1
- package/dist/internal/init-scaffold.js +1 -2
- package/dist/internal/install-cursor-skills.d.ts +5 -2
- package/dist/internal/install-cursor-skills.d.ts.map +1 -1
- package/dist/internal/install-cursor-skills.js +25 -5
- package/dist/internal/legacy-command-guard.d.ts +22 -0
- package/dist/internal/legacy-command-guard.d.ts.map +1 -0
- package/dist/internal/legacy-command-guard.js +51 -0
- package/dist/internal/platform-timers.d.ts +7 -0
- package/dist/internal/platform-timers.d.ts.map +1 -1
- package/dist/internal/platform-timers.js +139 -0
- package/dist/internal/reminder-control-plane-protocol.d.ts +2 -0
- package/dist/internal/reminder-control-plane-protocol.d.ts.map +1 -1
- package/dist/internal/reminder-control-plane-protocol.js +9 -2
- package/dist/internal/reminder-runner.d.ts +8 -0
- package/dist/internal/reminder-runner.d.ts.map +1 -1
- package/dist/internal/reminder-runner.js +36 -9
- package/dist/internal/resolve-prod-target.d.ts +2 -0
- package/dist/internal/resolve-prod-target.d.ts.map +1 -1
- package/dist/internal/resolve-prod-target.js +13 -0
- package/dist/internal/run-client.d.ts +1 -1
- package/dist/internal/sdk-runner.d.ts.map +1 -1
- package/dist/internal/sdk-runner.js +5 -4
- package/dist/internal/server.d.ts.map +1 -1
- package/dist/internal/server.js +57 -70
- package/dist/internal/session-engine.d.ts +7 -41
- package/dist/internal/session-engine.d.ts.map +1 -1
- package/dist/internal/session-engine.js +110 -227
- package/dist/internal/storage-coordinator.d.ts +5 -19
- package/dist/internal/storage-coordinator.d.ts.map +1 -1
- package/dist/internal/storage-coordinator.js +3 -62
- package/dist/internal/storage-roles.d.ts +4 -9
- package/dist/internal/storage-roles.d.ts.map +1 -1
- package/dist/internal/storage-roles.js +2 -2
- package/dist/playground/assets/index-Bhxzrcf6.css +1 -0
- package/dist/playground/assets/index-CqLX5uF3.js +67 -0
- package/dist/playground/index.html +2 -2
- package/dist/storage-backends/cursor-hosted-v2.d.ts +4 -5
- package/dist/storage-backends/cursor-hosted-v2.d.ts.map +1 -1
- package/dist/storage-backends/cursor-hosted-v2.js +4 -5
- package/dist/storage-backends/cursor-hosted.d.ts +7 -2
- package/dist/storage-backends/cursor-hosted.d.ts.map +1 -1
- package/dist/storage-backends/cursor-hosted.js +29 -31
- package/dist/storage-backends/file-kv.d.ts +9 -12
- package/dist/storage-backends/file-kv.d.ts.map +1 -1
- package/dist/storage-backends/file-kv.js +11 -47
- package/dist/storage-protocol.d.ts +3 -11
- package/dist/storage-protocol.d.ts.map +1 -1
- package/dist/storage-protocol.js +3 -11
- package/dist/storage.d.ts +8 -36
- package/dist/storage.d.ts.map +1 -1
- package/dist/storage.js +8 -44
- package/dist/types.d.ts +53 -62
- package/dist/types.d.ts.map +1 -1
- package/docs/README.md +14 -6
- package/docs/building-with-agents.md +3 -2
- package/docs/concepts.md +2 -4
- package/docs/deployment.md +7 -2
- package/docs/evals.md +613 -297
- package/docs/guides/bitbucket.md +89 -0
- package/docs/guides/cloud-agents.md +4 -3
- package/docs/guides/github.md +33 -1
- package/docs/guides/gitlab.md +97 -0
- package/docs/guides/grokbot-agents.md +2 -2
- package/docs/guides/improve.md +96 -0
- package/docs/guides/slack.md +2 -1
- package/docs/guides/webhooks.md +4 -2
- package/docs/hillclimbing.md +2 -2
- package/docs/reference/agent-config.md +5 -2
- package/docs/reference/channels.md +16 -3
- package/docs/reference/cli.md +24 -15
- package/docs/reference/connections.md +2 -1
- package/docs/reference/extensions.md +2 -3
- package/docs/reference/hooks.md +9 -12
- package/docs/reference/http-api.md +2 -3
- package/docs/reference/playground.md +0 -4
- package/docs/reference/project-layout.md +1 -8
- package/docs/reference/sessions.md +1 -2
- package/docs/scaffolding-agents.md +2 -1
- package/docs/skills/index.md +2 -2
- package/docs/storage.md +15 -24
- package/docs/troubleshooting.md +1 -1
- package/package.json +8 -7
- package/skills/create-agent/SKILL.md +1 -1
- package/skills/debug/SKILL.md +1 -1
- package/skills/deploy/SKILL.md +169 -0
- package/skills/evals/SKILL.md +45 -8
- package/skills/framework-map/SKILL.md +5 -4
- package/skills/github/SKILL.md +1 -1
- package/src/bin/agent-serve.ts +27 -2
- package/src/channels/bitbucket/api.ts +341 -0
- package/src/channels/bitbucket/binding.ts +25 -0
- package/src/channels/bitbucket/index.ts +2 -0
- package/src/channels/github/github-channel.ts +8 -8
- package/src/channels/github/types.ts +5 -0
- package/src/channels/gitlab/api.ts +123 -0
- package/src/channels/gitlab/binding.ts +12 -0
- package/src/channels/gitlab/index.ts +1 -0
- package/src/channels/origin/origin-channel.ts +29 -13
- package/src/channels/origin/types.ts +5 -0
- package/src/channels/slack/dispatch.ts +30 -0
- package/src/channels/slack/slack-channel.ts +69 -7
- package/src/channels.ts +157 -10
- package/src/connections.ts +2 -1
- package/src/extensions/improve/extension.ts +70 -0
- package/src/extensions/improve/skills/yourself.ts +50 -0
- package/src/extensions.ts +2 -6
- package/src/index.ts +0 -3
- package/src/internal/authored-alias-hooks.ts +32 -0
- package/src/internal/authored-loaders.ts +26 -2
- package/src/internal/builtin-tools/artifacts.ts +2 -3
- package/src/internal/channel-route-dispatch.ts +66 -0
- package/src/internal/channel-state.ts +96 -0
- package/src/internal/cli-ax.ts +111 -3
- package/src/internal/cli-cursor.ts +4 -1
- package/src/internal/cli-deploy.ts +50 -10
- package/src/internal/cli-mcp-oauth.ts +18 -0
- package/src/internal/cli-mcp.ts +11 -0
- package/src/internal/cli-slack.ts +15 -2
- package/src/internal/continuation-channel.ts +2 -1
- package/src/internal/continuation-identity.ts +10 -2
- package/src/internal/cursor/credentials.ts +35 -7
- package/src/internal/deploy-client.ts +54 -0
- package/src/internal/deploy-manifest.ts +115 -1
- package/src/internal/describe-error.ts +28 -0
- package/src/internal/discovery/agent.ts +1 -7
- package/src/internal/discovery/extension-overlay.ts +0 -18
- package/src/internal/discovery/extensions.ts +2 -26
- package/src/internal/discovery/info.ts +3 -13
- package/src/internal/discovery/modules.ts +0 -1
- package/src/internal/discovery/project.ts +0 -16
- package/src/internal/eval-runner.ts +0 -1
- package/src/internal/framework-file-storage.ts +4 -5
- package/src/internal/framework-storage-selection.ts +2 -2
- package/src/internal/guest-network.ts +43 -29
- package/src/internal/hosted-admission-adapter.ts +2 -0
- package/src/internal/hosted-catch-protocol.ts +130 -0
- package/src/internal/hosted-catch.ts +192 -0
- package/src/internal/hosted-delivery-protocol.ts +387 -0
- package/src/internal/hosted-delivery.ts +155 -22
- package/src/internal/hosted-execution-diag.ts +21 -3
- package/src/internal/hosted-execution-flush.ts +6 -3
- package/src/internal/http-control-plane-session.ts +104 -0
- package/src/internal/init-scaffold.ts +1 -2
- package/src/internal/install-cursor-skills.ts +38 -5
- package/src/internal/legacy-command-guard.ts +59 -0
- package/src/internal/platform-timers.ts +191 -0
- package/src/internal/reminder-control-plane-protocol.ts +15 -2
- package/src/internal/reminder-runner.ts +60 -9
- package/src/internal/resolve-prod-target.ts +15 -0
- package/src/internal/run-client.ts +1 -1
- package/src/internal/sdk-runner.ts +3 -2
- package/src/internal/server.ts +89 -95
- package/src/internal/session-engine.ts +155 -285
- package/src/internal/storage-coordinator.ts +5 -76
- package/src/internal/storage-roles.ts +4 -9
- package/src/storage-backends/cursor-hosted-v2.ts +4 -7
- package/src/storage-backends/cursor-hosted.ts +40 -38
- package/src/storage-backends/file-kv.ts +10 -51
- package/src/storage-protocol.ts +3 -17
- package/src/storage.ts +10 -101
- package/src/types.ts +58 -62
- package/templates/demo/README.md +10 -6
- package/templates/demo/agent/channels/github.ts +2 -0
- package/templates/demo/agent/channels/queue.ts +6 -2
- package/templates/demo/agent/lib/repos.ts +5 -0
- package/templates/demo/init.json +25 -0
- package/dist/ab.d.ts +0 -209
- package/dist/ab.d.ts.map +0 -1
- package/dist/ab.js +0 -246
- package/dist/docs/ab.html +0 -80
- package/dist/docs/ab.md +0 -332
- package/dist/docs/assets/ab.md.mlVgqvSk.js +0 -54
- package/dist/docs/assets/ab.md.mlVgqvSk.lean.js +0 -1
- package/dist/docs/assets/chunks/@localSearchIndexroot.DXXZxiMv.js +0 -1
- package/dist/docs/assets/concepts.md.DgEcZOfT.js +0 -1
- package/dist/docs/assets/evals.md.CbMoebP1.js +0 -85
- package/dist/docs/assets/evals.md.CbMoebP1.lean.js +0 -1
- package/dist/docs/assets/guides_cloud-agents.md.DS8RIjwx.js +0 -9
- package/dist/docs/assets/index.md.BW_6tOgR.js +0 -5
- package/dist/docs/assets/reference_sessions.md.CueyOHSL.js +0 -1
- package/dist/docs/assets/skills_ab.md.CsFNatVx.js +0 -26
- package/dist/docs/assets/skills_ab.md.CsFNatVx.lean.js +0 -1
- package/dist/docs/assets/skills_evals.md.723kpUmA.js +0 -25
- package/dist/docs/assets/skills_evals.md.723kpUmA.lean.js +0 -1
- package/dist/docs/assets/skills_framework-map.md.haibFyoB.js +0 -1
- package/dist/docs/assets/skills_index.md.DKwIxzGg.js +0 -1
- package/dist/docs/assets/skills_index.md.DKwIxzGg.lean.js +0 -1
- package/dist/docs/assets/troubleshooting.md.Cus_YZga.js +0 -1
- package/dist/docs/skills/ab.html +0 -52
- package/dist/docs/skills/ab.md +0 -50
- package/dist/internal/ab-collector.d.ts +0 -44
- package/dist/internal/ab-collector.d.ts.map +0 -1
- package/dist/internal/ab-collector.js +0 -142
- package/dist/internal/ab-fold.d.ts +0 -36
- package/dist/internal/ab-fold.d.ts.map +0 -1
- package/dist/internal/ab-fold.js +0 -175
- package/dist/internal/ab-snapshot.d.ts +0 -68
- package/dist/internal/ab-snapshot.d.ts.map +0 -1
- package/dist/internal/ab-snapshot.js +0 -208
- package/dist/internal/discovery/ab.d.ts +0 -9
- package/dist/internal/discovery/ab.d.ts.map +0 -1
- package/dist/internal/discovery/ab.js +0 -113
- package/dist/playground/assets/index-Bq2HpEQB.js +0 -67
- package/dist/playground/assets/index-CZKKNlmb.css +0 -1
- package/docs/ab.md +0 -337
- package/skills/ab/SKILL.md +0 -58
- package/src/ab.ts +0 -430
- package/src/internal/ab-collector.ts +0 -200
- package/src/internal/ab-fold.ts +0 -232
- package/src/internal/ab-snapshot.ts +0 -331
- package/src/internal/discovery/ab.ts +0 -131
- /package/dist/docs/assets/{concepts.md.DgEcZOfT.lean.js → concepts.md.B4o63Gul.lean.js} +0 -0
- /package/dist/docs/assets/{guides_grokbot-agents.md.DVqdhBKb.lean.js → guides_grokbot-agents.md.DyV-WArv.lean.js} +0 -0
- /package/dist/docs/assets/{guides_webhooks.md.DKdA43Qm.lean.js → guides_webhooks.md.CJK484ex.lean.js} +0 -0
- /package/dist/docs/assets/{hillclimbing.md.CpTGTCle.lean.js → hillclimbing.md.BOiVo1tf.lean.js} +0 -0
- /package/dist/docs/assets/{reference_agent-config.md.CHNpiyp4.lean.js → reference_agent-config.md.CvoL6pof.lean.js} +0 -0
- /package/dist/docs/assets/{reference_connections.md.Di6jJAXF.lean.js → reference_connections.md.BojkC6c5.lean.js} +0 -0
- /package/dist/docs/assets/{reference_extensions.md.CGmMLblt.lean.js → reference_extensions.md.ZAVUyuEX.lean.js} +0 -0
- /package/dist/docs/assets/{reference_http-api.md.oySXBO8o.lean.js → reference_http-api.md.BwaCo-VO.lean.js} +0 -0
- /package/dist/docs/assets/{reference_sessions.md.CueyOHSL.lean.js → reference_sessions.md.CyXV1MUw.lean.js} +0 -0
- /package/dist/docs/assets/{scaffolding-agents.md.em43xlY1.lean.js → scaffolding-agents.md.Kctn3OVb.lean.js} +0 -0
- /package/dist/docs/assets/{skills_create-agent.md.BVoWPcan.lean.js → skills_create-agent.md.Q3h6Je-e.lean.js} +0 -0
- /package/dist/docs/assets/{skills_github.md.D0JahM8c.lean.js → skills_github.md.hgFX_oKY.lean.js} +0 -0
- /package/dist/docs/assets/{troubleshooting.md.Cus_YZga.lean.js → troubleshooting.md.CYEAO9bM.lean.js} +0 -0
package/AGENTS.md
CHANGED
|
@@ -5,7 +5,7 @@ Loop: edit files → inspect surface → run a turn → assert with filesystem
|
|
|
5
5
|
evals. Prefer the CLI over ad-hoc curl.
|
|
6
6
|
|
|
7
7
|
User-facing documentation lives in [`docs/`](./docs/README.md)
|
|
8
|
-
(quickstart, concepts, guides, evals/
|
|
8
|
+
(quickstart, concepts, guides, evals/hillclimbing, deployment,
|
|
9
9
|
troubleshooting, reference). This file is the terse loop reference;
|
|
10
10
|
point humans at the docs.
|
|
11
11
|
|
|
@@ -44,12 +44,12 @@ which reads these files. Open them directly. There are no
|
|
|
44
44
|
| `skills/framework-map/SKILL.md` | First contact: folder structure, runtimes, sessions, state, invariants |
|
|
45
45
|
| `skills/create-agent/SKILL.md` | Scaffolding a new agent (interview → scaffold → verify) |
|
|
46
46
|
| `skills/evals/SKILL.md` | Writing evals; fixture strategy; the regression ratchet |
|
|
47
|
-
| `skills/ab/SKILL.md` | Live A/B metrics (`defineAB` under `agent/ab`); not a test runner |
|
|
48
47
|
| `skills/otel/SKILL.md` | OpenTelemetry export (`defineOtel` / OTLP env / `ctx.host.otel`) |
|
|
49
48
|
| `skills/hillclimb/SKILL.md` | Improving an existing agent measurably |
|
|
50
49
|
| `skills/github/SKILL.md` | GitHub webhook agents; replay / forward / fixtures / cursor-events |
|
|
51
50
|
| `skills/setup-slack/SKILL.md` | Slack wiring and Slack tool approvals |
|
|
52
51
|
| `skills/mcp-auth/SKILL.md` | Host MCP OAuth (`mcp oauth`, `--store`, `advertiseTools`, `host-connections/`) |
|
|
52
|
+
| `skills/deploy/SKILL.md` | Deploy or redeploy from a pushed Git ref with an attached service account |
|
|
53
53
|
| `skills/debug/SKILL.md` | Something misbehaving locally (symptom → cause) |
|
|
54
54
|
|
|
55
55
|
Hosted-platform debug (stopped / slow start / health-fail, Datadog
|
|
@@ -87,8 +87,6 @@ agent-sdk call get_weather --dir . --input '{"city":"NYC"}'
|
|
|
87
87
|
agent-sdk eval --dir . --list
|
|
88
88
|
agent-sdk eval --dir . --json
|
|
89
89
|
agent-sdk eval --dir . weather/nyc
|
|
90
|
-
|
|
91
|
-
# Live A/B metrics: author agent/ab.ts (defineAB) — runs under serve, no CLI
|
|
92
90
|
```
|
|
93
91
|
|
|
94
92
|
## Project layout
|
|
@@ -101,8 +99,6 @@ my-agent/
|
|
|
101
99
|
tools/*.ts
|
|
102
100
|
skills/*.md
|
|
103
101
|
channels/
|
|
104
|
-
ab.ts # optional live A/B metrics (defineAB)
|
|
105
|
-
ab.config.ts # optional: maxPlaygroundSessions (default 200)
|
|
106
102
|
...
|
|
107
103
|
evals/
|
|
108
104
|
smoke.eval.ts # single datapoint → id: smoke
|
package/README.md
CHANGED
|
@@ -16,9 +16,9 @@ as the execution engine.
|
|
|
16
16
|
**User-facing documentation lives in [`docs/`](./docs/README.md)**.
|
|
17
17
|
Open it with `npx @cursor/july docs`, or at `/docs` on every running
|
|
18
18
|
`agent-sdk serve` host. It covers getting started, concepts, guides (Slack,
|
|
19
|
-
GitHub webhooks, approvals, agent-to-agent, cloud runtime), evals,
|
|
20
|
-
|
|
21
|
-
|
|
19
|
+
GitHub webhooks, approvals, agent-to-agent, cloud runtime), evals,
|
|
20
|
+
hillclimbing, deployment, troubleshooting, and reference pages for each
|
|
21
|
+
folder. This README is the compact package reference.
|
|
22
22
|
|
|
23
23
|
Instead of one large configuration object, each part of the agent gets a
|
|
24
24
|
clear home. Instructions go in one file, tools in one folder, channels in
|
|
@@ -49,8 +49,6 @@ my-agent/
|
|
|
49
49
|
├── result.ts # optional host commit on the final assistant text
|
|
50
50
|
├── otel.ts # optional OpenTelemetry export
|
|
51
51
|
├── playground/ # optional custom playground tool chips
|
|
52
|
-
├── ab.ts # optional live A/B experiment
|
|
53
|
-
├── ab/ # optional: more experiments
|
|
54
52
|
├── schedules/
|
|
55
53
|
│ └── heartbeat.md # cron-driven runs
|
|
56
54
|
├── sandbox/workspace/ # files seeded into each session's workspace
|
|
@@ -694,7 +692,7 @@ name.
|
|
|
694
692
|
|
|
695
693
|
Requirements and behavior:
|
|
696
694
|
|
|
697
|
-
- The host must be signed in (`agent-sdk login` or `
|
|
695
|
+
- The host must be signed in (`agent-sdk login`, `CURSOR_API_KEY`, or `CURSOR_SERVICE_ACCOUNT_KEY`);
|
|
698
696
|
`serve` fails fast at startup otherwise, and logs each connector's live
|
|
699
697
|
status (`connected` / `needsAuth` / `error`) as it starts.
|
|
700
698
|
- Local turns and host-side calls go through a loopback bridge route guarded
|
|
@@ -981,8 +979,10 @@ under `serve --dev`, which admits unsigned loopback deliveries so
|
|
|
981
979
|
`{ auth }` to start a model turn as the actor, `{ task }` for host-side work
|
|
982
980
|
(202 ACK, runs past GitHub's ~10s timeout), or `null` to skip.
|
|
983
981
|
|
|
984
|
-
**Testing GitHub agents locally.** `cursorAccount`
|
|
985
|
-
|
|
982
|
+
**Testing GitHub agents locally.** `cursorAccount` uses the host Cursor
|
|
983
|
+
credential (`agent-sdk login`, `CURSOR_API_KEY`, or
|
|
984
|
+
`CURSOR_SERVICE_ACCOUNT_KEY`) for both Cursor SCM events and a refreshing
|
|
985
|
+
repo-scoped GitHub credential used
|
|
986
986
|
by `ctx.github`, `ctx.host.github`, and child `gh` commands. Default
|
|
987
987
|
`permissions: "pr-write"` covers comments without `contents:write`; opt up to
|
|
988
988
|
`"contents-write"` when the agent must push or post merge-box checks.
|
|
@@ -1066,7 +1066,7 @@ Cursor GitHub App is on the repo, `serve --cursor-events --repo owner/repo`
|
|
|
1066
1066
|
long-polls `/v0/scm-events` with the host's Cursor account (no public URL /
|
|
1067
1067
|
repo admin). Offset + consumer id live under `<state-root>/cursor-events/`.
|
|
1068
1068
|
The stream is read as your Cursor user, so the flag **requires a signed-in
|
|
1069
|
-
host** (`agent-sdk login`, `CURSOR_API_KEY`, or `serve({ apiKey })`).
|
|
1069
|
+
host** (`agent-sdk login`, `CURSOR_API_KEY`, `CURSOR_SERVICE_ACCOUNT_KEY`, or `serve({ apiKey })`).
|
|
1070
1070
|
Serve fails fast rather than starting with a relay that can never receive
|
|
1071
1071
|
events.
|
|
1072
1072
|
|
|
@@ -1152,7 +1152,6 @@ The NDJSON stream vocabulary: one JSON object per line, each carrying
|
|
|
1152
1152
|
| --------------------- | -------------------------------------------------------------- |
|
|
1153
1153
|
| `session.started` | A durable session was created. |
|
|
1154
1154
|
| `agent.bound` | Cloud conversation URL. |
|
|
1155
|
-
| `ab.assigned` | Sticky A/B enrollment (`experiment`, `variant` or `null` skip). |
|
|
1156
1155
|
| `message.received` | An inbound user message was accepted. |
|
|
1157
1156
|
| `turn.started` | A turn began. |
|
|
1158
1157
|
| `step.started` / `step.completed` | Model step boundaries (with duration). |
|
|
@@ -1187,7 +1186,10 @@ console.log(`listening on ${handle.url}`);
|
|
|
1187
1186
|
|
|
1188
1187
|
The Cursor credential resolves in one order everywhere (SDK turns, cloud
|
|
1189
1188
|
runtime, Cursor account MCP connections): explicit `apiKey` option / `--api-key`
|
|
1190
|
-
→ `CURSOR_API_KEY` →
|
|
1189
|
+
→ `CURSOR_API_KEY` → `CURSOR_API_KEY_FILE` (hosted default
|
|
1190
|
+
`/run/cursor/secrets/CURSOR_API_KEY` when unset) → `CURSOR_SERVICE_ACCOUNT_KEY`
|
|
1191
|
+
→ the key stored by `agent-sdk login`. A bind file wins over
|
|
1192
|
+
`CURSOR_SERVICE_ACCOUNT_KEY`. `whoami` shows
|
|
1191
1193
|
which one is active; `logout` removes the stored key (revoke it in the
|
|
1192
1194
|
Cursor dashboard to kill it outright).
|
|
1193
1195
|
|
package/dist/bin/agent-serve.js
CHANGED
|
@@ -63,6 +63,7 @@ Usage:
|
|
|
63
63
|
${CLI} session <sessionId> [--url <baseUrl> | --prod]
|
|
64
64
|
[--json | --text | --events] [--out <file.ndjson>]
|
|
65
65
|
[--slug <slug>] [--team <id>] [--dir <path>]
|
|
66
|
+
or: --prod [<sessionId>] --slug <slug> --message "…" [--dry-run] [--as-of <instant>]
|
|
66
67
|
${CLI} cost [sessionId] [--url <baseUrl> | --prod] [--json]
|
|
67
68
|
[--slug <slug>] [--team <id>] [--dir <path>]
|
|
68
69
|
${CLI} playground [--url <baseUrl> | --prod] [--session <id>] [--print]
|
|
@@ -72,6 +73,7 @@ Usage:
|
|
|
72
73
|
[--session <id>] [--continuation-token <t>]
|
|
73
74
|
[--events <file.ndjson>] [--no-events] [--text]
|
|
74
75
|
[--timeout-ms <n>] [--no-stream] [--slug <slug>] [--team <id>]
|
|
76
|
+
[--dry-run] [--as-of <instant>]
|
|
75
77
|
${CLI} trajectory --events <file.ndjson> [--text]
|
|
76
78
|
${CLI} call <tool> [--input <json>] [--dir <path> | --url <baseUrl> | --prod]
|
|
77
79
|
[--session <id>] [--slug <slug>] [--team <id>]
|
|
@@ -161,6 +163,10 @@ Commands:
|
|
|
161
163
|
Writes a single events.ndjson trace (summarize with trajectory).
|
|
162
164
|
Streams tool calls and reply text to stderr when stderr is a TTY.
|
|
163
165
|
Pass --prod to hit the hosted deployment instead of a local server.
|
|
166
|
+
On an AgentSDK v2 slug, --prod starts a hosted session through
|
|
167
|
+
the control plane (Temporal, no resident engine); --session
|
|
168
|
+
ses_… resumes that exact session. A 404 falls back to the v1
|
|
169
|
+
engine alias.
|
|
164
170
|
trajectory Summarize an events.ndjson file into a trajectory.
|
|
165
171
|
call Call an authored server tool deterministically (no model turn)
|
|
166
172
|
via POST /v1/tools/:toolName. --session runs it inside an
|
|
@@ -275,8 +281,11 @@ Options:
|
|
|
275
281
|
ALB/ECS checks; use single when one agent is the whole host.
|
|
276
282
|
--dev Dev mode: mounts POST /v1/dev/schedules/:scheduleId and
|
|
277
283
|
disables the cron runner (dispatch schedules by hand).
|
|
278
|
-
--api-key Cursor API key (defaults to CURSOR_API_KEY, then
|
|
279
|
-
|
|
284
|
+
--api-key Cursor API key (defaults to CURSOR_API_KEY, then
|
|
285
|
+
CURSOR_API_KEY_FILE — hosted default
|
|
286
|
+
/run/cursor/secrets/CURSOR_API_KEY when unset —
|
|
287
|
+
then CURSOR_SERVICE_ACCOUNT_KEY, then the stored
|
|
288
|
+
\`${CLI} login\` credential).
|
|
280
289
|
--key-name login: label for the minted API key (defaults to
|
|
281
290
|
"${CLI} (<hostname>)").
|
|
282
291
|
--state-root Durable state directory (default <dir>/.agent-serve). Put it
|
|
@@ -325,6 +334,9 @@ Options:
|
|
|
325
334
|
--dir basename. Mutually exclusive with --url. Requires
|
|
326
335
|
\`${CLI} login\`. For eval, this is how you opt into the
|
|
327
336
|
persisted server-side batch (default is local).
|
|
337
|
+
--dry-run run/session --prod: mark the hosted v2 turn non-mutating.
|
|
338
|
+
--as-of run/session --prod: freeze the session clock at this
|
|
339
|
+
timezone-bearing ISO-8601 instant.
|
|
328
340
|
--once logs: print current progress / log buffer once and exit
|
|
329
341
|
(default is to follow).
|
|
330
342
|
--print playground/docs: print the URL only; do not open a
|
|
@@ -436,7 +448,7 @@ function writeStdout(text) {
|
|
|
436
448
|
function main(argv) {
|
|
437
449
|
return __awaiter(this, void 0, void 0, function* () {
|
|
438
450
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
|
|
439
|
-
var _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
|
|
451
|
+
var _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y;
|
|
440
452
|
const [command, ...restIn] = argv;
|
|
441
453
|
if (command === undefined ||
|
|
442
454
|
command === "help" ||
|
|
@@ -531,6 +543,7 @@ function main(argv) {
|
|
|
531
543
|
context: { type: "string" },
|
|
532
544
|
comment: { type: "string" },
|
|
533
545
|
"dry-run": { type: "boolean", default: false },
|
|
546
|
+
"as-of": { type: "string" },
|
|
534
547
|
out: { type: "string" },
|
|
535
548
|
team: { type: "string" },
|
|
536
549
|
"no-wait": { type: "boolean", default: false },
|
|
@@ -817,6 +830,8 @@ function main(argv) {
|
|
|
817
830
|
stateRoot: values["state-root"],
|
|
818
831
|
timeoutMs: parseTimeoutMs(values["timeout-ms"]),
|
|
819
832
|
stream: values["no-stream"] ? false : undefined,
|
|
833
|
+
dryRun: values["dry-run"],
|
|
834
|
+
asOf: values["as-of"],
|
|
820
835
|
}));
|
|
821
836
|
}
|
|
822
837
|
case "call": {
|
|
@@ -963,6 +978,7 @@ function main(argv) {
|
|
|
963
978
|
}));
|
|
964
979
|
}
|
|
965
980
|
case "session": {
|
|
981
|
+
const messages = yield loadMessages(values.message, values["messages-file"]);
|
|
966
982
|
return cmdSession(positionals[0], axFromOptions({
|
|
967
983
|
dir,
|
|
968
984
|
url: values.url,
|
|
@@ -975,10 +991,14 @@ function main(argv) {
|
|
|
975
991
|
text: values.text,
|
|
976
992
|
rawEvents: values["raw-events"],
|
|
977
993
|
out: values.out,
|
|
994
|
+
messages,
|
|
995
|
+
sessionId: (_s = values["session-id"]) !== null && _s !== void 0 ? _s : values.session,
|
|
996
|
+
dryRun: values["dry-run"],
|
|
997
|
+
asOf: values["as-of"],
|
|
978
998
|
}));
|
|
979
999
|
}
|
|
980
1000
|
case "cost": {
|
|
981
|
-
return cmdCost((
|
|
1001
|
+
return cmdCost((_u = (_t = positionals[0]) !== null && _t !== void 0 ? _t : values["session-id"]) !== null && _u !== void 0 ? _u : values.session, axFromOptions({
|
|
982
1002
|
dir,
|
|
983
1003
|
url: values.url,
|
|
984
1004
|
prod: values.prod,
|
|
@@ -998,7 +1018,7 @@ function main(argv) {
|
|
|
998
1018
|
apiKey: values["api-key"],
|
|
999
1019
|
slug: values.slug,
|
|
1000
1020
|
bearerToken: values["bearer-token"],
|
|
1001
|
-
sessionId: (
|
|
1021
|
+
sessionId: (_v = values["session-id"]) !== null && _v !== void 0 ? _v : values.session,
|
|
1002
1022
|
print: values.print,
|
|
1003
1023
|
}));
|
|
1004
1024
|
}
|
|
@@ -1067,8 +1087,8 @@ function main(argv) {
|
|
|
1067
1087
|
"(events only)"}`)));
|
|
1068
1088
|
lines.push(section("schedules", info.schedules.map((s) => `${s.name} (${s.cron}, ${s.kind})`)));
|
|
1069
1089
|
lines.push(section("hooks", info.hooks));
|
|
1070
|
-
lines.push(section("hosting egress domains", (
|
|
1071
|
-
lines.push(section("hosting secret names", (
|
|
1090
|
+
lines.push(section("hosting egress domains", (_w = (_j = info.hosting) === null || _j === void 0 ? void 0 : _j.egressDomains) !== null && _w !== void 0 ? _w : []));
|
|
1091
|
+
lines.push(section("hosting secret names", (_x = (_k = info.hosting) === null || _k === void 0 ? void 0 : _k.secretNames) !== null && _x !== void 0 ? _x : []));
|
|
1072
1092
|
if (info.diagnostics.length > 0) {
|
|
1073
1093
|
lines.push(`\ndiagnostics:\n${formatDiagnostics(info.diagnostics)}`);
|
|
1074
1094
|
}
|
|
@@ -1138,7 +1158,7 @@ function main(argv) {
|
|
|
1138
1158
|
publicUrl: values["public-url"],
|
|
1139
1159
|
cloudToolsUrl: values["cloud-tools-url"],
|
|
1140
1160
|
cursorEvents: values["cursor-events"] === true
|
|
1141
|
-
? { repos: (
|
|
1161
|
+
? { repos: (_y = values.repo) !== null && _y !== void 0 ? _y : [] }
|
|
1142
1162
|
: undefined,
|
|
1143
1163
|
// Soft boot logs stay secondary to the banner. `dim` is a no-op on
|
|
1144
1164
|
// already-styled lines (the MCP warning box).
|
|
@@ -1247,6 +1267,8 @@ function axFromOptions(partial) {
|
|
|
1247
1267
|
sessionId: partial.sessionId,
|
|
1248
1268
|
resume: partial.resume,
|
|
1249
1269
|
continuationToken: partial.continuationToken,
|
|
1270
|
+
dryRun: partial.dryRun,
|
|
1271
|
+
asOf: partial.asOf,
|
|
1250
1272
|
timeoutMs: partial.timeoutMs,
|
|
1251
1273
|
events: partial.events,
|
|
1252
1274
|
text: partial.text,
|
|
@@ -136,6 +136,8 @@ export interface BitbucketApiPullRequest {
|
|
|
136
136
|
title?: string;
|
|
137
137
|
description?: string;
|
|
138
138
|
state?: string;
|
|
139
|
+
draft?: boolean;
|
|
140
|
+
authorUsername?: string;
|
|
139
141
|
sourceBranch?: string;
|
|
140
142
|
targetBranch?: string;
|
|
141
143
|
headSha?: string;
|
|
@@ -143,6 +145,18 @@ export interface BitbucketApiPullRequest {
|
|
|
143
145
|
htmlUrl?: string;
|
|
144
146
|
raw: unknown;
|
|
145
147
|
}
|
|
148
|
+
export interface BitbucketApiChangedFile {
|
|
149
|
+
path: string;
|
|
150
|
+
previousPath?: string;
|
|
151
|
+
status: "added" | "modified" | "removed" | "renamed";
|
|
152
|
+
patch?: string;
|
|
153
|
+
}
|
|
154
|
+
export interface BitbucketPullRequestDiffInput {
|
|
155
|
+
headSha?: string;
|
|
156
|
+
baseSha?: string;
|
|
157
|
+
mergeBaseSha?: string;
|
|
158
|
+
mergeBaseResolved?: boolean;
|
|
159
|
+
}
|
|
146
160
|
/**
|
|
147
161
|
* The handful of operations review products need, implemented once per
|
|
148
162
|
* dialect. `ctx.bitbucket.api` is the repo-bound instance.
|
|
@@ -159,6 +173,29 @@ export interface BitbucketApi {
|
|
|
159
173
|
/** Raw file contents at `ref` (branch, tag, or SHA). */
|
|
160
174
|
getFileAtRef(path: string, ref: string): Promise<string>;
|
|
161
175
|
}
|
|
176
|
+
export interface BitbucketPullRequestReadApi {
|
|
177
|
+
getPullRequest(id: number): Promise<BitbucketApiPullRequest>;
|
|
178
|
+
getMergeBaseSha(id: number, base: string, headSha: string): Promise<string | undefined>;
|
|
179
|
+
listChangedFiles(id: number, input?: BitbucketPullRequestDiffInput): Promise<BitbucketApiChangedFile[]>;
|
|
180
|
+
}
|
|
181
|
+
export interface BitbucketPullRequestReadClient {
|
|
182
|
+
readonly repository: BitbucketRepositoryRef;
|
|
183
|
+
readonly api: Pick<BitbucketApi, "getPullRequest" | "getPullRequestDiff">;
|
|
184
|
+
request<T = unknown>(input: BitbucketRequestInput): Promise<T>;
|
|
185
|
+
}
|
|
186
|
+
export type BitbucketPullRequestReadDiagnostic = {
|
|
187
|
+
kind: "commit-expansion-failed";
|
|
188
|
+
sha: string;
|
|
189
|
+
error: unknown;
|
|
190
|
+
} | {
|
|
191
|
+
kind: "diff-fallback";
|
|
192
|
+
status: number;
|
|
193
|
+
} | {
|
|
194
|
+
kind: "metadata-fallback";
|
|
195
|
+
status: number;
|
|
196
|
+
};
|
|
197
|
+
/** Split a Git-style unified diff into normalized changed files. */
|
|
198
|
+
export declare function splitBitbucketUnifiedDiff(diff: string): BitbucketApiChangedFile[];
|
|
162
199
|
/** `/repositories/{workspace}/{slug}` — Bitbucket Cloud 2.0. */
|
|
163
200
|
export declare function bitbucketCloudRepoPath(repository: {
|
|
164
201
|
owner: string;
|
|
@@ -169,6 +206,10 @@ export declare function bitbucketDataCenterRepoPath(repository: {
|
|
|
169
206
|
owner: string;
|
|
170
207
|
slug: string;
|
|
171
208
|
}): string;
|
|
209
|
+
export declare function expandBitbucketCloudCommitSha(bitbucket: Pick<BitbucketClient, "request">, repository: Pick<BitbucketRepositoryRef, "owner" | "slug">, sha: string | undefined, onError?: (error: unknown) => void): Promise<string | undefined>;
|
|
210
|
+
export declare function createBitbucketPullRequestReadApi(bitbucket: BitbucketPullRequestReadClient, options?: {
|
|
211
|
+
onDiagnostic?: (diagnostic: BitbucketPullRequestReadDiagnostic) => void;
|
|
212
|
+
}): BitbucketPullRequestReadApi;
|
|
172
213
|
export declare function cloudBitbucketApi(client: BitbucketClient, repository: BitbucketRepositoryRef): BitbucketApi;
|
|
173
214
|
export declare function dcBitbucketApi(client: BitbucketClient, repository: BitbucketRepositoryRef): BitbucketApi;
|
|
174
215
|
/** Pick the dialect implementation for `repository.dialect`. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/api.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -166,6 +166,102 @@ function num(value) {
|
|
|
166
166
|
? value
|
|
167
167
|
: undefined;
|
|
168
168
|
}
|
|
169
|
+
function errorStatus(error) {
|
|
170
|
+
var _a;
|
|
171
|
+
return num((_a = asRecord(error)) === null || _a === void 0 ? void 0 : _a.status);
|
|
172
|
+
}
|
|
173
|
+
function bitbucketAuthorUsername(raw) {
|
|
174
|
+
var _a;
|
|
175
|
+
var _b, _c, _d, _e;
|
|
176
|
+
const author = asRecord((_a = asRecord(raw)) === null || _a === void 0 ? void 0 : _a.author);
|
|
177
|
+
const user = asRecord(author === null || author === void 0 ? void 0 : author.user);
|
|
178
|
+
return ((_e = (_d = (_c = (_b = str(author === null || author === void 0 ? void 0 : author.nickname)) !== null && _b !== void 0 ? _b : str(user === null || user === void 0 ? void 0 : user.name)) !== null && _c !== void 0 ? _c : str(user === null || user === void 0 ? void 0 : user.slug)) !== null && _d !== void 0 ? _d : str(author === null || author === void 0 ? void 0 : author.display_name)) !== null && _e !== void 0 ? _e : str(user === null || user === void 0 ? void 0 : user.displayName));
|
|
179
|
+
}
|
|
180
|
+
const GIT_PATH_ESCAPES = {
|
|
181
|
+
a: "\u0007",
|
|
182
|
+
b: "\b",
|
|
183
|
+
f: "\f",
|
|
184
|
+
n: "\n",
|
|
185
|
+
r: "\r",
|
|
186
|
+
t: "\t",
|
|
187
|
+
v: "\v",
|
|
188
|
+
"\\": "\\",
|
|
189
|
+
'"': '"',
|
|
190
|
+
};
|
|
191
|
+
function unescapeGitPath(path, quoted) {
|
|
192
|
+
var _a, _b;
|
|
193
|
+
if (!quoted) {
|
|
194
|
+
return path;
|
|
195
|
+
}
|
|
196
|
+
const bytes = [];
|
|
197
|
+
let output = "";
|
|
198
|
+
const flush = () => {
|
|
199
|
+
if (bytes.length > 0) {
|
|
200
|
+
output += Buffer.from(bytes).toString("utf8");
|
|
201
|
+
bytes.length = 0;
|
|
202
|
+
}
|
|
203
|
+
};
|
|
204
|
+
for (let index = 0; index < path.length; index += 1) {
|
|
205
|
+
const character = path[index];
|
|
206
|
+
if (character !== "\\") {
|
|
207
|
+
flush();
|
|
208
|
+
output += character;
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
const octal = /^[0-7]{1,3}/.exec(path.slice(index + 1));
|
|
212
|
+
if (octal !== null) {
|
|
213
|
+
bytes.push(Number.parseInt(octal[0], 8));
|
|
214
|
+
index += octal[0].length;
|
|
215
|
+
continue;
|
|
216
|
+
}
|
|
217
|
+
flush();
|
|
218
|
+
const next = (_a = path[index + 1]) !== null && _a !== void 0 ? _a : "";
|
|
219
|
+
output += (_b = GIT_PATH_ESCAPES[next]) !== null && _b !== void 0 ? _b : next;
|
|
220
|
+
index += 1;
|
|
221
|
+
}
|
|
222
|
+
flush();
|
|
223
|
+
return output;
|
|
224
|
+
}
|
|
225
|
+
/** Split a Git-style unified diff into normalized changed files. */
|
|
226
|
+
export function splitBitbucketUnifiedDiff(diff) {
|
|
227
|
+
var _a, _b, _c, _d;
|
|
228
|
+
const files = [];
|
|
229
|
+
const sections = diff.split(/^(?=diff --git )/m).filter(Boolean);
|
|
230
|
+
for (const section of sections) {
|
|
231
|
+
const lines = section.replace(/\n$/, "").split("\n");
|
|
232
|
+
const header = /^diff --git ("?)a\/(.+?)\1 ("?)b\/(.+?)\3$/.exec((_a = lines[0]) !== null && _a !== void 0 ? _a : "");
|
|
233
|
+
if (header === null) {
|
|
234
|
+
continue;
|
|
235
|
+
}
|
|
236
|
+
const oldPath = unescapeGitPath((_b = header[2]) !== null && _b !== void 0 ? _b : "", header[1] !== "");
|
|
237
|
+
const newPath = unescapeGitPath((_c = header[4]) !== null && _c !== void 0 ? _c : "", header[3] !== "");
|
|
238
|
+
let status = "modified";
|
|
239
|
+
let bodyStart = 1;
|
|
240
|
+
for (; bodyStart < lines.length; bodyStart += 1) {
|
|
241
|
+
const line = (_d = lines[bodyStart]) !== null && _d !== void 0 ? _d : "";
|
|
242
|
+
if (line.startsWith("@@")) {
|
|
243
|
+
break;
|
|
244
|
+
}
|
|
245
|
+
if (line === "--- /dev/null") {
|
|
246
|
+
status = "added";
|
|
247
|
+
}
|
|
248
|
+
else if (line === "+++ /dev/null") {
|
|
249
|
+
status = "removed";
|
|
250
|
+
}
|
|
251
|
+
}
|
|
252
|
+
if (status === "modified" && oldPath !== newPath) {
|
|
253
|
+
status = "renamed";
|
|
254
|
+
}
|
|
255
|
+
const patch = lines.slice(bodyStart).join("\n");
|
|
256
|
+
files.push({
|
|
257
|
+
path: newPath,
|
|
258
|
+
previousPath: status === "renamed" ? oldPath : undefined,
|
|
259
|
+
status,
|
|
260
|
+
patch: patch === "" ? undefined : patch,
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
return files;
|
|
264
|
+
}
|
|
169
265
|
function encodePath(path) {
|
|
170
266
|
return path
|
|
171
267
|
.split("/")
|
|
@@ -187,6 +283,170 @@ export function bitbucketCloudRepoPath(repository) {
|
|
|
187
283
|
export function bitbucketDataCenterRepoPath(repository) {
|
|
188
284
|
return `/projects/${encodeURIComponent(repository.owner)}/repos/${encodeURIComponent(repository.slug)}`;
|
|
189
285
|
}
|
|
286
|
+
export function expandBitbucketCloudCommitSha(bitbucket, repository, sha, onError) {
|
|
287
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
288
|
+
var _a;
|
|
289
|
+
if (sha === undefined || !/^[0-9a-f]{7,39}$/i.test(sha)) {
|
|
290
|
+
return sha;
|
|
291
|
+
}
|
|
292
|
+
try {
|
|
293
|
+
const commit = yield bitbucket.request({
|
|
294
|
+
method: "GET",
|
|
295
|
+
path: `${bitbucketCloudRepoPath(repository)}/commit/${encodeURIComponent(sha)}`,
|
|
296
|
+
});
|
|
297
|
+
return /^[0-9a-f]{40}$/i.test((_a = commit.hash) !== null && _a !== void 0 ? _a : "") ? commit.hash : sha;
|
|
298
|
+
}
|
|
299
|
+
catch (error) {
|
|
300
|
+
onError === null || onError === void 0 ? void 0 : onError(error);
|
|
301
|
+
return sha;
|
|
302
|
+
}
|
|
303
|
+
});
|
|
304
|
+
}
|
|
305
|
+
function bitbucketPullRequestFromRaw(raw, id, htmlUrl) {
|
|
306
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
307
|
+
var _j, _k, _l, _m;
|
|
308
|
+
const source = asRecord(raw.source);
|
|
309
|
+
const destination = asRecord(raw.destination);
|
|
310
|
+
return {
|
|
311
|
+
id,
|
|
312
|
+
title: str(raw.title),
|
|
313
|
+
description: str(raw.description),
|
|
314
|
+
state: str(raw.state),
|
|
315
|
+
draft: typeof raw.draft === "boolean" ? raw.draft : undefined,
|
|
316
|
+
authorUsername: bitbucketAuthorUsername(raw),
|
|
317
|
+
sourceBranch: (_j = str((_a = asRecord(source === null || source === void 0 ? void 0 : source.branch)) === null || _a === void 0 ? void 0 : _a.name)) !== null && _j !== void 0 ? _j : str((_b = asRecord(raw.fromRef)) === null || _b === void 0 ? void 0 : _b.displayId),
|
|
318
|
+
targetBranch: (_k = str((_c = asRecord(destination === null || destination === void 0 ? void 0 : destination.branch)) === null || _c === void 0 ? void 0 : _c.name)) !== null && _k !== void 0 ? _k : str((_d = asRecord(raw.toRef)) === null || _d === void 0 ? void 0 : _d.displayId),
|
|
319
|
+
headSha: (_l = str((_e = asRecord(source === null || source === void 0 ? void 0 : source.commit)) === null || _e === void 0 ? void 0 : _e.hash)) !== null && _l !== void 0 ? _l : str((_f = asRecord(raw.fromRef)) === null || _f === void 0 ? void 0 : _f.latestCommit),
|
|
320
|
+
baseSha: (_m = str((_g = asRecord(destination === null || destination === void 0 ? void 0 : destination.commit)) === null || _g === void 0 ? void 0 : _g.hash)) !== null && _m !== void 0 ? _m : str((_h = asRecord(raw.toRef)) === null || _h === void 0 ? void 0 : _h.latestCommit),
|
|
321
|
+
htmlUrl,
|
|
322
|
+
raw,
|
|
323
|
+
};
|
|
324
|
+
}
|
|
325
|
+
export function createBitbucketPullRequestReadApi(bitbucket, options = {}) {
|
|
326
|
+
const { repository } = bitbucket;
|
|
327
|
+
const repo = repository.dialect === "cloud"
|
|
328
|
+
? bitbucketCloudRepoPath(repository)
|
|
329
|
+
: bitbucketDataCenterRepoPath(repository);
|
|
330
|
+
const cloudPullRequestFromActivity = (id) => __awaiter(this, void 0, void 0, function* () {
|
|
331
|
+
var _a;
|
|
332
|
+
let path = `${repo}/pullrequests/${id}/activity`;
|
|
333
|
+
let query = { pagelen: 50 };
|
|
334
|
+
for (let page = 0; page < 20; page += 1) {
|
|
335
|
+
const response = yield bitbucket.request({
|
|
336
|
+
method: "GET",
|
|
337
|
+
path,
|
|
338
|
+
query,
|
|
339
|
+
});
|
|
340
|
+
for (const value of Array.isArray(response.values)
|
|
341
|
+
? response.values
|
|
342
|
+
: []) {
|
|
343
|
+
const update = asRecord((_a = asRecord(value)) === null || _a === void 0 ? void 0 : _a.update);
|
|
344
|
+
if (update !== undefined) {
|
|
345
|
+
return bitbucketPullRequestFromRaw(update, id);
|
|
346
|
+
}
|
|
347
|
+
}
|
|
348
|
+
const next = str(response.next);
|
|
349
|
+
if (next === undefined) {
|
|
350
|
+
return undefined;
|
|
351
|
+
}
|
|
352
|
+
const nextUrl = new URL(next);
|
|
353
|
+
const marker = nextUrl.pathname.indexOf("/repositories/");
|
|
354
|
+
path = marker === -1 ? nextUrl.pathname : nextUrl.pathname.slice(marker);
|
|
355
|
+
query = Object.fromEntries(nextUrl.searchParams.entries());
|
|
356
|
+
}
|
|
357
|
+
return undefined;
|
|
358
|
+
});
|
|
359
|
+
return {
|
|
360
|
+
getPullRequest(id) {
|
|
361
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
362
|
+
var _a, _b;
|
|
363
|
+
let pullRequest;
|
|
364
|
+
try {
|
|
365
|
+
pullRequest = yield bitbucket.api.getPullRequest(id);
|
|
366
|
+
}
|
|
367
|
+
catch (error) {
|
|
368
|
+
const status = errorStatus(error);
|
|
369
|
+
if (repository.dialect !== "cloud" ||
|
|
370
|
+
status === undefined ||
|
|
371
|
+
status < 500) {
|
|
372
|
+
throw error;
|
|
373
|
+
}
|
|
374
|
+
(_a = options.onDiagnostic) === null || _a === void 0 ? void 0 : _a.call(options, { kind: "metadata-fallback", status });
|
|
375
|
+
const fallback = yield cloudPullRequestFromActivity(id);
|
|
376
|
+
if (fallback === undefined) {
|
|
377
|
+
throw error;
|
|
378
|
+
}
|
|
379
|
+
pullRequest = fallback;
|
|
380
|
+
}
|
|
381
|
+
const normalized = Object.assign(Object.assign({}, pullRequest), { draft: ((_b = asRecord(pullRequest.raw)) === null || _b === void 0 ? void 0 : _b.draft) === true, authorUsername: bitbucketAuthorUsername(pullRequest.raw) });
|
|
382
|
+
if (repository.dialect !== "cloud") {
|
|
383
|
+
return normalized;
|
|
384
|
+
}
|
|
385
|
+
const [headSha, baseSha] = yield Promise.all([
|
|
386
|
+
expandBitbucketCloudCommitSha(bitbucket, repository, pullRequest.headSha, (error) => { var _a; return pullRequest.headSha === undefined
|
|
387
|
+
? undefined
|
|
388
|
+
: (_a = options.onDiagnostic) === null || _a === void 0 ? void 0 : _a.call(options, {
|
|
389
|
+
kind: "commit-expansion-failed",
|
|
390
|
+
sha: pullRequest.headSha,
|
|
391
|
+
error,
|
|
392
|
+
}); }),
|
|
393
|
+
expandBitbucketCloudCommitSha(bitbucket, repository, pullRequest.baseSha, (error) => { var _a; return pullRequest.baseSha === undefined
|
|
394
|
+
? undefined
|
|
395
|
+
: (_a = options.onDiagnostic) === null || _a === void 0 ? void 0 : _a.call(options, {
|
|
396
|
+
kind: "commit-expansion-failed",
|
|
397
|
+
sha: pullRequest.baseSha,
|
|
398
|
+
error,
|
|
399
|
+
}); }),
|
|
400
|
+
]);
|
|
401
|
+
return Object.assign(Object.assign({}, normalized), { headSha, baseSha });
|
|
402
|
+
});
|
|
403
|
+
},
|
|
404
|
+
getMergeBaseSha(id, base, headSha) {
|
|
405
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
406
|
+
if (repository.dialect === "cloud") {
|
|
407
|
+
const commit = yield bitbucket.request({
|
|
408
|
+
method: "GET",
|
|
409
|
+
path: `${repo}/merge-base/${encodeURIComponent(headSha)}..${encodeURIComponent(base)}`,
|
|
410
|
+
});
|
|
411
|
+
return str(commit.hash);
|
|
412
|
+
}
|
|
413
|
+
const commit = yield bitbucket.request({
|
|
414
|
+
method: "GET",
|
|
415
|
+
path: `${repo}/pull-requests/${id}/merge-base`,
|
|
416
|
+
});
|
|
417
|
+
return str(commit.id);
|
|
418
|
+
});
|
|
419
|
+
},
|
|
420
|
+
listChangedFiles(id, input) {
|
|
421
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
422
|
+
var _a;
|
|
423
|
+
var _b;
|
|
424
|
+
try {
|
|
425
|
+
return splitBitbucketUnifiedDiff(yield bitbucket.api.getPullRequestDiff(id));
|
|
426
|
+
}
|
|
427
|
+
catch (error) {
|
|
428
|
+
const status = errorStatus(error);
|
|
429
|
+
const comparisonBase = (_b = input === null || input === void 0 ? void 0 : input.mergeBaseSha) !== null && _b !== void 0 ? _b : input === null || input === void 0 ? void 0 : input.baseSha;
|
|
430
|
+
if (repository.dialect !== "cloud" ||
|
|
431
|
+
status === undefined ||
|
|
432
|
+
status < 500 ||
|
|
433
|
+
(input === null || input === void 0 ? void 0 : input.headSha) === undefined ||
|
|
434
|
+
comparisonBase === undefined) {
|
|
435
|
+
throw error;
|
|
436
|
+
}
|
|
437
|
+
(_a = options.onDiagnostic) === null || _a === void 0 ? void 0 : _a.call(options, { kind: "diff-fallback", status });
|
|
438
|
+
const diff = yield bitbucket.request({
|
|
439
|
+
method: "GET",
|
|
440
|
+
path: `${repo}/diff/${encodeURIComponent(input.headSha)}..${encodeURIComponent(comparisonBase)}`,
|
|
441
|
+
query: { topic: input.mergeBaseResolved === true ? "false" : "true" },
|
|
442
|
+
accept: "text/plain",
|
|
443
|
+
});
|
|
444
|
+
return splitBitbucketUnifiedDiff(diff);
|
|
445
|
+
}
|
|
446
|
+
});
|
|
447
|
+
},
|
|
448
|
+
};
|
|
449
|
+
}
|
|
190
450
|
export function cloudBitbucketApi(client, repository) {
|
|
191
451
|
const repo = bitbucketCloudRepoPath(repository);
|
|
192
452
|
const mapComment = (raw) => {
|
|
@@ -59,6 +59,10 @@ export declare function bitbucketRepositoryFromPayload(payload: Record<string, u
|
|
|
59
59
|
/** Cloud `{uuid, display_name, nickname}` or DC `{id, name, displayName}`. */
|
|
60
60
|
export declare function bitbucketUser(value: unknown): BitbucketUser | undefined;
|
|
61
61
|
export declare function bitbucketPullRequestUrl(repository: BitbucketRepositoryRef, id: number, explicit?: string): string;
|
|
62
|
+
/** Absolute PR URL, or undefined when a Data Center payload has no repo URL. */
|
|
63
|
+
export declare function bitbucketAbsolutePullRequestUrl(repository: BitbucketRepositoryRef, id: number, explicit?: string): string | undefined;
|
|
64
|
+
/** Whether a Data Center `updated` payload publishes a draft pull request. */
|
|
65
|
+
export declare function bitbucketDraftMarkedReady(payload: Record<string, unknown>, draft: boolean | undefined): boolean;
|
|
62
66
|
/**
|
|
63
67
|
* Normalize the pull request from either dialect. `action` is the suffix of
|
|
64
68
|
* the Cloud-normalized event key (`pullrequest:created` → `created`).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/binding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,yBAAyB,EAE9B,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAI5B,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,yBAAyB,EAE/B,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EACV,gBAAgB,EAChB,2BAA2B,EAC3B,yBAAyB,EACzB,aAAa,EACb,sBAAsB,EACtB,aAAa,EACd,MAAM,YAAY,CAAC;AAEpB,kFAAkF;AAClF,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,sBAAsB,CAAC;IACnC,8EAA8E;IAC9E,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC;IAC3B,iFAAiF;IACjF,OAAO,CAAC,CAAC,GAAG,OAAO,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC/D,6CAA6C;IAC7C,cAAc,CAAC,KAAK,EAAE,yBAAyB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACnE,8DAA8D;IAC9D,WAAW,CACT,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,WAAW,CAAC,GAClD,OAAO,CAAC,cAAc,CAAC,CAAC;CAC5B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE;IAC3C,UAAU,EAAE,sBAAsB,CAAC;IACnC,KAAK,CAAC,EAAE,uBAAuB,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,sBAAsB,CAAC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,GAAG,eAAe,CAgClB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAI5E;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAInE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAQhE;AAoBD,0DAA0D;AAC1D,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAErC;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,gBAAgB,CASlB;AA0CD;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,sBAAsB,GAAG,SAAS,CASpC;AAED,8EAA8E;AAC9E,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS,CAyBvE;AAED,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,sBAAsB,EAClC,EAAE,EAAE,MAAM,EACV,QAAQ,CAAC,EAAE,MAAM,GAChB,MAAM,CAUR;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,UAAU,EAAE,sBAAsB,EAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,MAAM,EAAE,MAAM,GACb,yBAAyB,GAAG,SAAS,CA4CvC;AAED,uDAAuD;AACvD,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,2BAA2B,GAAG,SAAS,CAoCzC;AAED,4FAA4F;AAC5F,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,aAAa,GAAG,SAAS,CAgD3B"}
|
|
1
|
+
{"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../src/channels/bitbucket/binding.ts"],"names":[],"mappings":"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"}
|