Paperclip
Paperclip keeps embedded Postgres alive through hot restart
Paperclip’s hot-restart patch preserves an owned embedded PostgreSQL process when a validated restart hands active runs to the replacement server. A VPS report meanwhile says the documented public authenticated quickstart rejects that same embedded-database default, exposing a gap between lifecycle work and deployment guidance.
paperclipai/paperclip PR #10556 is the inspected primary source: “fix(server): preserve embedded Postgres during hot restart.” The two related records below were inspected as supporting context, not treated as independent confirmation.
The facts
- paperclipai/paperclip PR #10556 was created 2026-07-31T15:33:27Z and was open at inspection; its title is “fix(server): preserve embedded Postgres during hot restart.” - paperclipai/paperclip issue #10552 was created 2026-07-31T13:33:18Z and was open at inspection; its title is “Public authenticated deployment rejects documented embedded PostgreSQL default.” - paperclipai/paperclip PR #10584 was created 2026-08-01T00:03:08Z and was closed at inspection; its title is “fix(heartbeat): atomically claim due timer intervals.” - The repository reported 75282 stars, 4973 open issues, default branch master, and last push 2026-08-01T00:56:44Z. - The latest tagged-release baseline checked was v2026.722.0 published 2026-07-22T23:05:41Z.
What changed
paperclipai/paperclip PR #10556 reports: Thinking Path - Paperclip is the open source app people use to manage AI agents for work. - The server preserves eligible agent child processes during a validated hot restart. - The same shutdown handler still stopped the embedded PostgreSQL process. - That database stop cancelled active transactions and broke run adoption. - This pull request gives Paperclip explicit lifecycle ownership, disables the dependency signal hook for the server instance, and carries the hot-restart decision into database shutdown coordination. - The benefit is one continuous database and deterministic agent-run adoption across a controlled restart. Linked Issues or Issue Description No public GitHub issue covers this
paperclipai/paperclip issue #10552 reports: Pre-submission checklist [x] I have searched existing open and closed issues and this is not a duplicate. [x] I am on the latest released version of Paperclip (or can reproduce on master). [x] I have confirmed the error originates in Paperclip itself — not in my agent adapter, API provider, or local configuration. What happened? Summary A Paperclip VPS installation following the current official installation guide fails to start when using the documented public/authenticated deployment with the --yes onboarding defaults. The guide states that npx paperclipai onboard --yes configures an authenticated, public deployment with embedded PostgreSQL. However, paperclipai run exits with an error saying public
paperclipai/paperclip PR #10584 reports: Thinking Path - Paperclip coordinates AI agents through scheduled heartbeat runs. - The heartbeat scheduler can call tickTimers() again before an earlier tick has finished. - Each overlapping tick can read the same old lastHeartbeatAt value and decide that the same agent is due. - The existing queue checks do not make that due-time decision atomic. - This pull request atomically advances the timer baseline before it enqueues the wake. - The benefit is that one timer interval can create at most one scheduled run for an agent. Linked Issues or Issue Description No public GitHub issue describes this exact scheduler race. Related pull requests
Why it matters
A control plane cannot promise run adoption while restarting the database underneath active transactions. Database ownership, restart intent and the replacement process’s reuse contract need one auditable handoff. This is an operator boundary: persisted state, execution ownership and visible controls must describe the same event. A workaround that broadens access, deletes state or hides the symptom would trade a visible defect for an unmeasured one.
Current
The primary record was open when captured on 2026-08-01. The release baseline was v2026.722.0 published 2026-07-22T23:05:41Z. Current repository metadata, pull requests, issues, release records, Google News discovery, Hacker News discovery, Lobsters, Metamesh and the rendered ClawCharts row were checked. ClawCharts selected the subject; it did not prove the claim.
Evidence
The primary URL is https://github.com/paperclipai/paperclip/pull/10556. Supporting records are https://github.com/paperclipai/paperclip/issues/10552 and https://github.com/paperclipai/paperclip/pull/10584. Their source bodies, timestamps and states were captured in the daily evidence bundle. Test counts, reproductions and deployment observations remain attributed to their authors unless explicitly identified as independently rerun.
Source boundary
Open work is described as open, closed work as closed, and operator reports as reports. A pull request is evidence of proposed or reviewed direction, not proof of a shipped release. Issue closure would not by itself prove a deployed fix. Search residue, package mirrors and historically published source spines were excluded.
Operator take
Test normal shutdown and failed restart preparation as well as the happy path; reconcile public-deployment documentation before treating embedded Postgres as a supported production default. Preserve a before-state receipt, make the smallest reversible change, and verify the original failure independently after intervention.
Caveat
Public project records are mutable. Status, scope and evidence can change after publication. This brief records the inspected state and does not authorize changes to a reader’s deployment.
Source inspected; source state, environment and release boundary remain explicit.