Commit Graph
2272 Commits
Author SHA1 Message Date
Dotta 27b7d05f32 Merge public-gh/master into pap-1469-exec-reliability 2026-04-14 13:12:58 -05:00
DottaandPaperclip 6e6f538630 [codex] Improve issue detail and issue-list UX (#3678)
## Thinking Path

> - Paperclip orchestrates AI agents for zero-human companies
> - A core part of that is the operator experience around reading issue
state, agent chat, and sub-task structure
> - The current branch had a long run of issue-detail and issue-list UX
fixes that all improve how humans follow and steer active work
> - Those changes mostly live in the UI/chat surface and should be
reviewed together instead of mixed with workspace/runtime work
> - This pull request packages the issue-detail, chat, markdown, and
sub-issue list improvements into one standalone change
> - The benefit is a cleaner, less jumpy, more reliable issue workflow
on desktop and mobile without coupling it to unrelated server/runtime
refactors

## What Changed

- Stabilized issue chat runtime wiring, optimistic comment handling,
queued-comment cancellation, and composer anchoring during live updates
- Fixed several issue-detail rendering and navigation regressions
including placeholder bleed, local polling scope, mobile inbox-to-issue
transitions, and visible refresh resets
- Improved markdown and rich-content handling with advisory image
normalization, editor fallback behavior, touch mention recovery, and
`issue:` quicklook links
- Refined sub-issue behavior with parent-derived defaults, current-user
inheritance fixes, empty-state cleanup, and a reusable issue-list
presentation for sub-issues
- Added targeted UI tests for the new issue-detail, chat scroll/message,
placeholder-data, markdown, and issue-list behaviors

## Verification

- `pnpm vitest run ui/src/components/IssueChatThread.test.tsx
ui/src/components/MarkdownEditor.test.tsx
ui/src/components/IssuesList.test.tsx
ui/src/context/LiveUpdatesProvider.test.tsx
ui/src/lib/issue-chat-messages.test.ts
ui/src/lib/issue-chat-scroll.test.ts
ui/src/lib/issue-detail-subissues.test.ts
ui/src/lib/query-placeholder-data.test.tsx
ui/src/hooks/usePaperclipIssueRuntime.test.tsx`

## Risks

- Medium: this branch touches the highest-traffic issue-detail UI paths,
so regressions would show up as chat/thread or sub-issue UX glitches
- The changes are UI-heavy and would benefit from reviewer screenshots
or a quick manual browser pass before merge

## Model Used

- OpenAI Codex coding agent (GPT-5-class runtime in Codex CLI; exact
deployed model ID is not exposed in this environment), reasoning
enabled, tool use and local code execution enabled

## Checklist

- [x] I have included a thinking path that traces from project context
to this change
- [x] I have specified the model used (with version and capability
details)
- [x] I have run tests locally and they pass
- [x] I have added or updated tests where applicable
- [ ] If this change affects the UI, I have included before/after
screenshots
- [ ] I have updated relevant documentation to reflect my changes
- [x] I have considered and documented any risks above
- [x] I will address all Greptile and reviewer comments before
requesting merge

---------

Co-authored-by: Paperclip <noreply@paperclip.ing>
canary/v2026.414.0-canary.0
2026-04-14 12:50:48 -05:00
Dotta 2f5eb7e74b test(server): refresh issue wake and workspace config mocks 2026-04-14 12:19:20 -05:00
Dotta 7e0fa2b6f3 fix(ui): restore issue detail sidebar import 2026-04-14 12:13:15 -05:00
Dotta 05e1cd22a8 fix(server): restore heartbeat activity logging import 2026-04-14 12:10:15 -05:00
Dotta 21784574db fix(server): restore implicit comment reopen helpers 2026-04-14 12:01:23 -05:00
Dotta c3fe756dbb test(server): isolate route module state between cases 2026-04-14 11:54:52 -05:00
Dotta d0af94b4d6 fix(server): preserve issue labels and wake resumed assignees 2026-04-14 11:54:44 -05:00
Dotta 0c3120d372 fix(heartbeat): compact run logs and trim polling noise 2026-04-14 11:54:44 -05:00
Dotta 42544053c4 Avoid rerendering toast action consumers 2026-04-14 11:54:44 -05:00
Dotta 8020f551ca fix: defer mentioned-agent wakes behind issue execution 2026-04-14 11:54:11 -05:00
DottaandPaperclip 5a698b0446 feat(telemetry): emit adapter_type and model on agent.task_completed
The telemetry backend already retains these dimensions (d36ddc1) but
the app was not sending them. Now trackAgentTaskCompleted forwards
adapterType from the agent record and model from adapterConfig when
available, so completions-per-model and completions-per-adapter
charts will populate as data flows in.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-14 11:53:57 -05:00
Dotta 1ab9cd8dfe fix: avoid vite html transform retention 2026-04-14 11:53:57 -05:00
DottaandPaperclip c32b56398e Harden issue assignee resolution
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-14 11:53:57 -05:00
DottaandPaperclip d6308bd3ef Clarify Paperclip status guidance
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-14 11:52:57 -05:00
DottaandPaperclip 07c2ea3421 Trim issue run polling payloads
Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-14 11:52:57 -05:00
DottaandPaperclip 06223c78b7 Add v2026.413.0 release changelog
Covers all changes since v2026.403.0 including issue chat thread,
external adapter plugins, execution policies, blocker dependencies,
standalone MCP server, and 21 community contributors.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-04-14 11:52:57 -05:00
Dotta fac2f226c5 Recover stranded assigned issue execution 2026-04-14 11:52:57 -05:00
Dotta d330076bb2 fix: bypass repeated vite html transforms in dev 2026-04-14 11:52:57 -05:00
Dotta 2e7db9e202 Fix issue active run scoping 2026-04-14 11:52:57 -05:00
Dotta e16beed78e fix: skip auth session lookup on non-api requests 2026-04-14 11:52:57 -05:00
Dotta 83fac16c38 Make pnpm test the cheap default 2026-04-14 11:52:57 -05:00
Dotta 26bab3b168 Trim module reloads in targeted server tests 2026-04-14 11:52:57 -05:00
Dotta 367065a3d7 Auto-enable mentioned skills for heartbeat runs 2026-04-14 11:52:57 -05:00
Dotta ee45102587 Isolate e2e tests from local Paperclip state 2026-04-14 11:52:57 -05:00
Dotta 41a3cd9d75 Reduce Vitest overhead in server route tests 2026-04-14 11:52:57 -05:00
Dotta 9571d7b153 Speed up repeated server route test imports 2026-04-14 11:52:18 -05:00
Dotta 7e0fff8e3c Fix repo-wide verification regressions 2026-04-14 11:52:18 -05:00
Dotta 7d22097573 fix(server): reduce noisy request logging 2026-04-14 11:52:18 -05:00
Dotta 45af343687 Skip self-review-only execution stages 2026-04-14 11:52:18 -05:00
Dotta 02ecc60552 docs: add VS Code task interoperability plan 2026-04-14 11:52:18 -05:00
Dotta 8ad1e7b927 docs: move PAP-1346 plan into issue 2026-04-14 11:52:18 -05:00
Dotta 1a5f0d39ef docs: plan faster issue navigation 2026-04-14 11:52:18 -05:00
DottaandPaperclip 5d1ed71779 chore: add v2026.410.0 release notes for security release
## Summary

- Adds release notes for v2026.410.0 security release covering
GHSA-68qg-g8mg-6pr7
- Required before triggering the stable release workflow to publish
2026.410.0 to npm

## Context

The security advisory GHSA-68qg-g8mg-6pr7 was published on 2026-04-10
listing 2026.410.0 as the patched version, but only canary builds exist
on npm. The authz fix (PR #3315) is already merged to master. This PR
adds release notes so the stable release workflow can be triggered.

## Test plan

- Verify release notes content is accurate
- Merge, then trigger release.yml workflow_dispatch with
source_ref=master, stable_date=2026-04-10, dry_run=false
- Confirm npm view paperclipai version returns 2026.410.0

Co-authored-by: Paperclip <noreply@paperclip.ing>
canary/v2026.413.0-canary.3
2026-04-13 12:43:17 -05:00
DottaandPaperclip 76fe736e8e chore: add v2026.410.0 release notes for security release
## Summary

- Adds comprehensive release notes for `v2026.410.0`, the security
release that patches GHSA-68qg-g8mg-6pr7 (unauthenticated RCE via import
authorization bypass)
- Required before triggering the stable release workflow to publish
`2026.410.0` to npm and create the GitHub Release

## Context

The security fix (PR #3315) is already merged to master. The GHSA
advisory references `2026.410.0` as the patched version, but only canary
builds exist on npm. This PR unblocks the stable release.

## Test plan

- [x] Release notes file is valid markdown
- [ ] Merge and trigger `release.yml` workflow with `source_ref=master`,
`stable_date=2026-04-10`
- [ ] Verify `npm view paperclipai version` returns `2026.410.0`
- [ ] Verify GitHub Release `v2026.410.0` exists

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Paperclip <noreply@paperclip.ing>

Co-authored-by: Paperclip <noreply@paperclip.ing>
canary/v2026.413.0-canary.2
2026-04-13 12:43:07 -05:00
Dotta d6b06788f6 Merge pull request #3542 from cryppadotta/PAP-1346-faster-issue-to-issue-links
Speed up issue-to-issue navigation
canary/v2026.413.0-canary.1
2026-04-12 21:39:27 -05:00
Dotta 6844226572 Address Greptile navigation review 2026-04-12 21:30:50 -05:00
Dotta 0cb42f49ea Fix rebased issue detail prefetch typing 2026-04-12 21:18:57 -05:00
Dotta e59047187b Reset scroll on issue detail navigation 2026-04-12 21:14:12 -05:00
Dotta 1729e41179 Speed up issue-to-issue navigation 2026-04-12 21:14:12 -05:00
Dotta 11de5ae9c9 Merge pull request #3538 from paperclipai/PAP-1355-right-now-when-agents-boot-they-re-instructed-to-call-the-api-to-checkout-the-issue-so-that-they-have-exclusive
Improve scoped wake checkout and linked worktree reuse
canary/v2026.413.0-canary.0
2026-04-12 21:08:20 -05:00
Dotta 8e82ac7e38 Handle harness checkout conflicts gracefully 2026-04-12 20:57:31 -05:00
Dotta be82a912b2 Fix signoff e2e for auto-checked out issues 2026-04-12 20:43:50 -05:00
Dotta ab5eeca94e Fix stale issue live-run state 2026-04-12 20:41:31 -05:00
Dotta 2172476e84 Fix linked worktree reuse for execution workspaces 2026-04-12 20:34:06 -05:00
Dotta c1bb938519 Auto-checkout scoped issue wakes in the harness 2026-04-11 10:53:28 -05:00
Dotta b649bd454f Merge pull request #3383 from paperclipai/pap-1347-codex-fast-mode
feat(codex-local): add fast mode support
canary/v2026.411.0-canary.8
2026-04-11 08:45:50 -05:00
Dotta a692e37f3e Merge pull request #3386 from paperclipai/pap-1347-dev-runner-worktree-env
fix: isolate dev runner worktree env
2026-04-11 08:45:16 -05:00
Dotta 96637a1e09 Merge pull request #3385 from paperclipai/pap-1347-inbox-issue-search
feat(inbox): improve issue search matches
canary/v2026.411.0-canary.7
2026-04-11 08:44:59 -05:00
Dotta a5aed931ab fix(dev-runner): tighten worktree env bootstrap 2026-04-11 08:35:53 -05:00