Skip to content

fix: build plugin-sdk before server in Dockerfile#2

Open
Utkarshbhimte wants to merge 1 commit intostagingfrom
fix/dockerfile-plugin-sdk-build
Open

fix: build plugin-sdk before server in Dockerfile#2
Utkarshbhimte wants to merge 1 commit intostagingfrom
fix/dockerfile-plugin-sdk-build

Conversation

@Utkarshbhimte
Copy link
Collaborator

Server build fails with TS2307: Cannot find module @paperclipai/plugin-sdk. The Dockerfile was missing COPY for plugin-sdk package.json in deps stage, and wasn't building shared + plugin-sdk before server. This PR adds both.

The server imports @paperclipai/plugin-sdk but the Dockerfile wasn't:
1. COPYing the plugin-sdk package.json in the deps stage
2. Building shared + plugin-sdk before server in the build stage

This caused TS2307 errors (Cannot find module '@paperclipai/plugin-sdk')
and cascading TS7006/TS18046 errors in the server build.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Utkarshbhimte pushed a commit that referenced this pull request Mar 23, 2026
**#1 — Missing `description` field in fields table**
The create body example included `description` and the schema confirms
`description: z.string().optional().nullable()`, but the reference table
omitted it. Added as an optional field.

**#2 — Concurrency policy descriptions were inaccurate**
Original docs described both `coalesce_if_active` and `skip_if_active` as
variants of "skip", which was wrong. Source-verified against
`server/src/services/routines.ts` (dispatchRoutineRun, line 568):

  const status = concurrencyPolicy === "skip_if_active" ? "skipped" : "coalesced";

Both policies write identical DB state (same linkedIssueId and
coalescedIntoRunId); the only difference is the run status value.
Descriptions now reflect this: both finalise the incoming run immediately
and link it to the active run — no new issue is created in either case.

Note: the reviewer's suggestion that `coalesce_if_active` "extends or
notifies" the active run was also not supported by the code; corrected
accordingly.

**paperclipai#3 — `triggerId` undocumented in Manual Run**
`runRoutineSchema` accepts `triggerId` and the service genuinely uses it
(routines.ts:1029–1034): fetches the trigger, enforces that it belongs to
the routine (403) and is enabled (409), then passes it to dispatchRoutineRun
which records the run against the trigger and updates its `lastFiredAt`.
Added `triggerId` to the example body and documented all three behaviours.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant