Skip to content

v3.3.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 16:38
· 23 commits to main since this release

Security

  • On platform servers a change is attributed to whoever made it: a member can no longer record
    someone else as the author. Repository administrators may still record other authors, so
    imports and pando migrate keep the original history. Single-repository servers keep git's
    free-form authors.

Fixed

  • Platform servers no longer slow landing down: access answers are cached per process (cleared
    by every write that changes them) and push events are prepared off the landing path only when
    a webhook wants them. With 200 agents on one branch, p99 latency through a hosted repository
    went from 2.8–3.8 s to 0.22–0.25 s, matching a server without the platform (ADR-029).

Added

  • pando migrate FROM --to SERVER/OWNER/NAME (ADR-028, docs/migrate.md): moves a repository
    from GitHub, GitLab, Bitbucket or any git host with its full history on every branch; from
    GitHub (and GitHub Enterprise Server with --github-api), open pull requests become change
    requests and issues come with comments, labels and state. It prints the pando mirror
    command that keeps the old host current while you move.
  • Issues (ADR-027): open, discuss, label and assign issues to people or agents, in the console
    (Issues tab), the CLI (pando issue) and over MCP (pando_issues, pando_issue,
    pando_open_issue, pando_comment_on_issue, pando_update_issue). Issues and change
    requests share numbers; a change request saying "fixes #N" closes the issue when it lands.
    Issues assigned to you are in your inbox; issue webhook events let an agent runner start work
    as soon as an issue is assigned.
  • Remote MCP (ADR-026): pando mcp --http ADDR --server URL serves a whole server to agents
    anywhere over the stateless MCP 2026-07-28 protocol. With a URL and a token an agent reads,
    writes and lands files, opens, reviews and lands change requests, reports checks and reads its
    inbox, without a checkout; each request's token is passed through, so the server's
    permissions, token limits and audit log apply.
  • An agent's change request asks the person the agent answers to for review; change requests
    nobody was asked to review show in the inbox of everyone who may approve them.
  • Changesets created without an author are attributed to the authenticated caller.
  • Webhooks (ADR-025, docs/webhooks.md): push, change_request, review, comment and
    check events posted to URLs and signed like GitHub's (X-Pando-Signature-256), retried
    with backoff from a queue that is safe across replicas. pando webhook add|list|ping|log|remove
    and repository Settings → Webhooks in the console.
  • pando land on a protected branch opens a change request from a review/ branch instead of
    failing. The console can open a change request from any branch.

Added

  • Change requests and review on platform servers (ADR-024): open a change request from a branch,
    comment on lines with suggestions, approve or request changes, report CI checks, and land it as
    one changeset once nothing blocks it; pando cr rebase replays it on its target. Protected
    branches (pando protect, or repository Settings in the console) require approvals and passing
    checks, make approvals stale on a new push, and refuse direct lands except for those allowed to
    bypass review. An inbox (review requested, changes requested, agents' changes ready) and an
    activity feed. CLI: pando cr create|list|view|comment|review|check|land|rebase|ready|close|reopen.
  • The web console's review screens work against a platform server, and admins protect branches
    from repository Settings.