mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-23 17:33:51 +02:00
Add a Secrets tab to RoutineDetail that reuses the existing EnvVarEditor for plain values and secret refs, alongside agent and project env. Env joins routine draft state, dirty-field detection, mutation payload, conflict reset, and the restore-response handler so it flows through every routine save path consistently. Extend RoutineHistoryTab with env-aware diffs that never echo secret material: - Add an "Env" row to the revision preview summary with `N keys (M secret refs)` and the existing `differs from current` chip. - Add a "Routine secrets will revert: …" bullet to the restore confirm dialog when target/current env counts differ. - Add an env diff vocabulary to the compare modal: `Env added (KEY)`, `Env removed (KEY)`, `Env KEY binding kind`, `Env KEY version`, and `Env KEY value`, with `(set)`/`(changed)` redaction tokens and secret name + version for refs. Add a routine-secrets Storybook story covering empty, configured, disabled-or-missing, and history-diff states; export EnvPlainBinding and EnvSecretRefBinding from shared so the history helpers can type the binding kind locally. Co-Authored-By: Paperclip <noreply@paperclip.ing>
@paperclipai/ui
Published static assets for the Paperclip board UI.
What gets published
The npm package contains the production build under dist/. It does not ship the UI source tree or workspace-only dependencies.
Storybook
Storybook config, stories, and fixtures live under ui/storybook/.
pnpm --filter @paperclipai/ui storybook
pnpm --filter @paperclipai/ui build-storybook
Typical use
Install the package, then serve or copy the built files from node_modules/@paperclipai/ui/dist.