Release 0.5.7 - #112
Merged
Merged
Release 0.5.7#112
Conversation
An API run was a second-class turn: every gateway tool was refused (memory, permission_prompt and so Auto mode, schedules, background work, charts, progress), it bypassed its thread's run queue, a per-run `mode` rebuilt an Admin channel's container, and its resumeCommand pointed at the host where the session does not exist. The run API key now acts as one fixed principal, `api`: an approved member of the target channel. The gateway MCP maps an API capability to it, so the run gets every channel-scoped capability a member's message gets, while the caller-named author stays attribution only: no admin rank, no permission bypass, nobody's personal tokens, secrets, skills or SSH keys, and admin-mode auto-approval never keys on the named id. Background work and schedules it starts are owned by `api`, so no later run inherits authority the key never proved. - API turns join the per-thread run queue: Slack follow-ups get Steer / Queue / Cancel, and a Slack stop or steer stops the API run. - The post-reply memory review runs after an API turn, as `api`. - The runtime target keeps the channel's Admin posture, so a per-run mode narrows tools without changing mounts or recreating the container. - resumeCommand uses the thread Resume form (exec into the container). - Approval cards credit "An HTTP API run" instead of a broken <@api>. - FEATURES/TEST-PLAN also correct the stale claim that interrupted API jobs are re-run after a restart; they are marked interrupted. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
The run API key is an admin key, so an API run now behaves like an admin's message in its channel instead of a member's: it ranks as an admin (admin gateway tools, admin-mode auto-approval, background shell jobs without the admin click, and --dangerously-skip-permissions for a Full run in an Admin channel, since api_foreground now escalates like slack_foreground). It still acts as the one fixed `api` principal (src/config/api-principal.js), never as the author a request names, and has no personal scope: only the channel's shared composio-agent identity, no composio-user, and nobody's personal tokens, secrets, skills or SSH keys. An untrusted capability naming a real admin never borrows that admin's rank. isAdminPrincipal() applies the admin rank to run AUTHORS only; clickers and approval links still authorize as people, and no approval link is minted for `api`. Per-user API keys that act as a proven person are on the roadmap. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
An API run acts as the admin api principal with no personal scope. Pin the other half: it still receives the organization's and the channel's secrets and skills and runs in the channel's own folder, while the personal secrets and skills of an admin the request names never reach it. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
Cut the 0.5.7 release section, bump the package and lockfile versions, and record the release decision. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Signed-off-by: Tiberiu Socaci <tsocaci@makeitfuture.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release 0.5.7 — candidate
12c2411(beta69710e9+ the version cut).What's in it
apiprincipal: admin rank and the channel's full mode (Auto; Admin-channel permission bypass for a Full run), plus memory and the post-reply memory review, org and channel skills and secrets, connectors and the gateway tools. It gets no personal scope: sharedcomposio-agentonly, and nobody's personal tokens, secrets, skills or SSH keys. The request'sauthoris attribution only. Previously every gateway tool was refused, so Auto mode never applied either.modeno longer rebuilds an Admin channel's container. The operator-home mount follows the channel's mode.resumeCommandfrom the API opens the session inside the channel's container.No
containers/change — the runtime image is unchanged.Checks (on this exact candidate)
npm run test:coverage— 2933 tests, 2906 pass, 0 fail (27 skipped), coverage floors metnpm run check:static,npm run secret-scan,npm run test:security-coverage— passnpm audit --omit=dev --audit-level=high— passnpm run check:dco -- origin/main..HEAD— 4 commits signed offLive acceptance
🤖 Generated with Claude Code