Releases: misospace/dispatch
Releases · misospace/dispatch
v0.5.2
What's changed
Fixes
- Fix dispatch cluster issue filters and sync: the cluster view and synced issue list now agree on filter semantics, and the untriaged-issues API is hardened against empty input (#449).
Maintenance
v0.5.1
Bug Fixes
- Exclude Renovate issues from groom pipeline — groom mode in next-task bypassed the isRenovateIssue() filter, causing Renovate Dashboard issues to block the grooming pipeline (#447)
- Add DB id to groom task response — groom task only returned GitHub issue number, not Dispatch DB id, causing 500s when calling the groom POST endpoint (#447)
- Fallback lookup in groom route — falls back to findFirst by repoFullName + issueNumber when DB id doesn't match (#447)
Full Changelog: v0.5.0...v0.5.1
v0.5.0
What's Changed
- chore: release v0.4.5 by @itsmiso-ai in #359
- feat(deps)!: Update dependency @hono/node-server (1.19.14 → 2.0.4) by @its-miso[bot] in #353
- chore(deps): lock file maintenance by @its-miso[bot] in #331
- ci(pr-review): enable ci_status_check to feed CI results into review by @joryirving in #361
- feat(pr-review): /ai-review comment command to force a re-review by @joryirving in #366
- ci: label-driven AI re-review (v1.2.9) by @joryirving in #368
- fix(agent-queue): exclude no-status and in-review from default worker queue by @itsmiso-ai in #370
- fix(pr-fix-queue): mark stale items when upstream PR is merged/closed by @itsmiso-ai in #362
- fix(ci): stop label events from cancelling net-new PR reviews by @joryirving in #372
- chore: manage Dispatch labels from labels.yaml by @joryirving in #373
- chore(ai-review): adopt pr-reviewer v1.3.0 native_loop + org-var tokens by @joryirving in #374
- fix(pr-followup): filter merged/closed PRs in ingestMergeStateEvent and ingestReviewEvent by @itsmiso-ai in #377
- feat(deps): update dependency lucide-react (1.17.0 → 1.18.0) by @its-miso[bot] in #363
- test(pr-followup): add PrFixType assertions to ingestion tests by @itsmiso-ai in #380
- fix: reclassify backlog lane when issues become ready by @joryirving in #389
- feat: add lane configuration model and defaults by @itsmiso-ai in #391
- feat(api): add untriaged filter to /api/issues for grooming intake by @itsmiso-ai in #394
- fix: make heartbeat reporting and Prisma init build-safe by @itsmiso-ai in #371
- feat: add harness-agnostic AgentTask contract by @joryirving in #402
- feat: add agent next-task endpoint by @joryirving in #403
- fix(deps): update tailwindcss monorepo (4.3.0 → 4.3.1) by @its-miso[bot] in #367
- feat: make PR follow-up a first-class next-task source by @joryirving in #404
- feat: add agent task report endpoint by @joryirving in #405
- fix(deps): update dependency vitest (4.1.8 → 4.1.9) by @its-miso[bot] in #376
- feat: add groomer next-task mode by @joryirving in #406
- feat(deps): update dependency @radix-ui/react-slot (1.2.5 → 1.3.0) by @its-miso[bot] in #378
- feat(deps): update dependency lucide-react (1.18.0 → 1.20.0) by @its-miso[bot] in #379
- chore(deps): lock file maintenance by @its-miso[bot] in #375
- ci(github-action): update action misospace/pr-reviewer-action (v1.3.0 → v1.3.1) by @its-miso[bot] in #423
- docs: document idle-first harness checks by @joryirving in #407
- docs: document generic harness loop by @joryirving in #424
- docs: remove external runtime repo dependency by @joryirving in #425
- feat: persist authenticated agent task reports by @joryirving in #426
- fix: require auth for next-task endpoint by @joryirving in #427
- chore: fix npmrc dev dependency config by @joryirving in #428
- docs: reconcile agent workflow contract by @joryirving in #429
- refactor: replace hardcoded lane constants with lane helpers by @joryirving in #430
- feat: support configurable lanes in agent queue APIs by @joryirving in #431
- feat: make issue reconciliation use configurable lanes by @joryirving in #432
- feat: render board and lane filters from lane configuration by @joryirving in #433
- feat: support migration-safe custom lane deployments by @joryirving in #434
- docs: document configurable lane setups by @itsmiso-ai in #435
- docs: add next-task smoke checks by @itsmiso-ai in #437
- docs: update accepted security risks by @itsmiso-ai in #438
- refactor: share agent queue fetching logic by @itsmiso-ai in #440
- fix: warn when MCP agent name is unset by @itsmiso-ai in #436
- test: expand heartbeat helper coverage by @joryirving in #439
- test: add route coverage for API data access by @itsmiso-ai in #441
- chore: release v0.5.0 by @itsmiso-ai in #443
Full Changelog: v0.4.5...v0.5.0
v0.4.5
v0.4.4
v0.4.4
Fixes
- POST /api/issues/reconcile now scans PR body keywords (Fixes #, Closes #, Resolves #) to detect merged PR-to-issue closure links, in addition to branch name patterns (#303 / #302)
- Added optional
bodyfield toGithubPRtype to support body-text scanning (7ccf69e)
Dependencies
- react 19.2.15 → 19.2.16
- next 16.2.6 → 16.2.7
CI
- actions/checkout v6.0.2 → v6.0.3
- github/codeql-action 7211b7c → 87557b9
**No schema migration required. No config changes needed.
v0.4.3
What's Changed
- feat: add logout button and logout flow by @itsmiso-ai in #292
- fix: agent queue now shows assigned work and excludes unlabelled orphans by @itsmiso-ai in #293
- feat: optionally exclude issues by label from sync and queue by @itsmiso-ai in #294
- chore(deps): lock file maintenance by @its-miso[bot] in #295
- fix(deps): update dependency vitest (4.1.7 → 4.1.8) by @its-miso[bot] in #296
- fix(deps): update dependency tsx (4.22.3 → 4.22.4) by @its-miso[bot] in #290
- chore: release v0.4.3 by @joryirving in #297
Full Changelog: v0.4.2...v0.4.3
v0.4.2
What's Changed
- fix(ci): scan pushed image digest with Trivy by @joryirving in #283
- fix: fetch closed PRs in reconcile so merged-PR issue closing works by @joryirving in #284
- fix(deps): update dependency eslint (10.4.0 → 10.4.1) by @its-miso[bot] in #281
- fix: copy public/ into standalone runner so logo and favicons load by @joryirving in #285
- feat: linked PR health — persist via reconcile + on-demand refresh (Option C) by @joryirving in #286
- chore: release v0.4.2 by @joryirving in #287
Full Changelog: v0.4.1...v0.4.2
v0.4.1
What's Changed
- fix: create .next/cache with correct ownership before USER switch by @itsmiso-ai in #234
- fix: replace next/image with plain img for logo by @joryirving in #239
- feat: add closed issue reconciliation to scheduled sync by @joryirving in #240
- fix: handle empty request body in POST /api/sync by @joryirving in #241
- feat: expose lane/status/labels metadata in active-work response by @joryirving in #242
- Harden agent-work checkpoint and finish API contracts for worker crons by @itsmiso-ai in #243
- feat(deps): update dependency lucide-react (1.16.0 → 1.17.0) by @its-miso[bot] in #254
- ci(github-action): update action misospace/pr-reviewer-action (v1.0.17 → v1.0.18) by @its-miso[bot] in #257
- ci(github-action): update action misospace/pr-reviewer-action (39da0a3 → f838c5b) by @its-miso[bot] in #259
- chore: switch to native_review mode by @itsmiso-ai in #260
- fix: clean stale AgentWork records in claim flow to prevent permanent blocking (#245) by @itsmiso-ai in #251
- feat: add optional GitHub App authentication for Dispatch by @itsmiso-ai in #263
- chore: add covering index on Lease(agentName, expiredAt) by @itsmiso-ai in #258
- fix: use real reviewDecision and mergeStateStatus in checkPrHealth (#244) by @itsmiso-ai in #252
- fix: remove ALL existing status labels before adding target (GH #264) by @itsmiso-ai in #274
- feat(issues): expose linked PR health on issue queues and board items by @itsmiso-ai in #273
- fix: exclude vitest/dist from ESLint scan to fix TypeError crash (#247) by @itsmiso-ai in #255
- fix: deduplicate safeEqual using timingSafeEqual from dispatch-env by @itsmiso-ai in #256
- fix: remove hardcoded database credentials from prisma config by @itsmiso-ai in #253
- fix(ci): use --no-engine for prisma validate in docker run by @itsmiso-ai in #265
- Remove hardcoded DATABASE_URL fallback from prisma.config.ts by @itsmiso-ai in #275
- Remove undocumented GPT → ESCALATED lane normalization by @itsmiso-ai in #276
- fix: deduplicate safeEqual in auth.ts by importing from dispatch-env by @itsmiso-ai in #277
- fix: delete stale AgentWork records instead of marking as STALE in claim flow by @itsmiso-ai in #278
- chore: release v0.4.1 by @joryirving in #279
Full Changelog: v0.4.0...v0.4.1
v0.4.0
v0.4.0
Dispatch v0.4.0 adds operator authentication, OIDC support, issue grooming, active-work recovery, and board/project UI hardening.
Highlights
- Add Basic Auth and OIDC operator authentication
- Preserve DISPATCH_AGENT_TOKEN bearer auth for agents and workers
- Add OIDC login/logout/session support
- Fix OIDC login by routing sign-in through a server-side /api/login endpoint
- Fix deployed OIDC session detection for HTTPS Auth.js secure cookies
- Add issue grooming API and persisted grooming metadata
- Add migration for Issue grooming fields
- Fix orphaned active-work/lease cleanup so agents are not blocked by ghost work
- Improve board layout, refresh behavior, and Sync Issues auth path
- Improve Projects five-column layout and Done retention behavior
- Add mobile navigation and app shell spacing improvements
Operational notes
- Run Prisma migrations before/at deploy
- Configure DISPATCH_AUTH_MODE as basic, oidc, disabled, or leave unset for legacy behavior
- For OIDC, configure NEXTAUTH_SECRET and OIDC provider settings
- Browser mutation APIs now rely on operator auth or agent bearer auth
Validation
- npm ci
- npx prisma generate
- npm run lint
- npm run typecheck
- npm run test
- npm run build
v0.3.1
What's Changed
- ci(github-action): update action docker/setup-buildx-action (4d04d5d → d7f5e7f) by @miso-assistant[bot] in #186
- fix: add agent work lease migration by @itsmiso-ai in #187
- chore: release v0.3.1 by @joryirving in #188
Full Changelog: v0.3.0...v0.3.1