Skip to content

docs(v3): document App Actions V3 version history#271

Open
veljko7 wants to merge 1 commit into
projects/DEV-1314from
feature/DEV-1314
Open

docs(v3): document App Actions V3 version history#271
veljko7 wants to merge 1 commit into
projects/DEV-1314from
feature/DEV-1314

Conversation

@veljko7
Copy link
Copy Markdown
Contributor

@veljko7 veljko7 commented Jun 1, 2026

Summary

Documents the version-history feature added to V3 App Actions in fliplet-api (DEV-1259 / PR #8070). The API now snapshots an action's configuration on every create/update/restore and exposes REST endpoints to browse and roll back that history — none of which was documented on developers.fliplet.com until now.

All changes are confined to docs/API/core/app-actions-v3.md.

What was added

New "Version history" section, covering:

  • Snapshot-on-write behaviour — every create, update, and restore snapshots the config; the action field records the reason (create / update / pre-restore). Snapshotting is best-effort and never blocks the write.
  • Retention — max 100 versions per action, oldest pruned; history cascade-deletes with the action.
  • What a snapshot captures — the full config field list (V2 carryover fields empty for V3).
  • Three REST endpoints, with parameters, response shapes, and Fliplet.API.request() examples:
    • GET …/versions — paginated summary list (heavy fields omitted)
    • GET …/versions/:versionId — full snapshot
    • POST …/versions/:versionId/restore — restores config, takes a pre-restore snapshot so the restore is itself undo-able, refuses production actions, re-applies cron, returns restoredFromVersionId + preRestoreVersionId.

Supporting updates to keep the rest of the doc consistent:

  • Concept point on versioning in "Data models and key concepts"
  • Error tables: VERSION_NOT_FOUND, CANNOT_RESTORE_PRODUCTION, RESTORE_FAILED (plus the 409 NAME_ALREADY_EXISTS collision case on restore)
  • Rate limits: version reads under the 60/60s CRUD bucket, restore under the 10/60s publish bucket
  • Frontmatter capabilities: version history, restore version, rollback

Notes for reviewers

  • The endpoints are documented via the REST API (Fliplet.API.request()), verified against docs/API/core/api.md. There is no Fliplet.App.V3.Actions JS wrapper for versioning in scope here; if one lands later, this section can be converted to the JS API style.
  • All field names, status codes, retention cap, and response shapes were taken from the implementation on release/DEV-1259 (routes/v3/app-actions.js, models/task.js, libs/v3/actions.js).
  • The .well-known/ AI indexes (llms.txt, llms-full.txt, agent skills) are not touched — they are regenerated by bin/build-agent-indexes.mjs at build time on deploy.

🤖 Generated with Claude Code

Document the version-history feature added to V3 App Actions in
fliplet-api (DEV-1259 / PR #8070): config snapshots on create/update/
restore, the 100-version retention cap, and the three REST endpoints
to list, fetch, and restore versions.

- New "Version history" section covering snapshot-on-write behaviour
  (create/update/pre-restore reasons), retention/pruning, cascade
  delete, and what a snapshot captures
- GET /versions (paginated summary), GET /versions/:id (full snapshot),
  POST /versions/:id/restore (undo-able restore, refuses production)
  documented with Fliplet.API.request() examples and response shapes
- Added concept point on versioning to "Data models and key concepts"
- Error tables: VERSION_NOT_FOUND, CANNOT_RESTORE_PRODUCTION,
  RESTORE_FAILED (plus the 409 name-collision case on restore)
- Rate limits: version reads under CRUD bucket, restore under publish
- Frontmatter capabilities: version history, restore version, rollback

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@cloudflare-workers-and-pages
Copy link
Copy Markdown

Deploying fliplet-cli with  Cloudflare Pages  Cloudflare Pages

Latest commit: db3d74e
Status: ✅  Deploy successful!
Preview URL: https://a0d6f711.fliplet-cli.pages.dev
Branch Preview URL: https://feature-dev-1314.fliplet-cli.pages.dev

View logs

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