HarperFast / HarperFast/studio

Studio: Roll back to a previous deployment

Open
#1,232 1 comment 0 reactions 1 assignee Claimed by @dawsontoth View on GitHub
Dominant language
TypeScript
Stars
5
Forks
4
Avg merge
1d 8h
Merged PRs (30d)
40

Description

## Summary

Let users roll back a component to a previous deployment from Studio. [harper#641](https://github.com/HarperFast/harper/issues/641) designed the data model for this — the `hdb_deployment` table carries a `restorable` flag and a `rollback_of` pointer, and `rolled_back` is a terminal status — but the **backend rollback operation does not exist yet** (see Dependency below).

## Suggested UX

- On a deployment detail (#1231) or list (#1230) row where `restorable === true`, offer a "Roll back to this deployment" action.
- Confirmation dialog: shows the target deployment (project, version/`package_identifier`, timestamp) and warns that this triggers a new deploy + restart.
- On confirm, kick off the rollback and stream progress using the same live-status mechanism as a normal deploy (the rollback itself creates a new `hdb_deployment` row whose `rollback_of` points at the target).
- Disable/explain the action when `restorable === false` (payload pruned and package no longer resolvable).

## Dependency — blocked on backend

There is currently **no `rollback_deployment` (or equivalent) operation** registered in Harper. The data model supports it (`restorable`, `rollback_of`, `rolled_back`), but a server operation to perform the rollback still needs to be added in harper. This Studio work should not start until that op is defined.

**Action:** confirm/track the backend operation in harper#641 (or a follow-up harper issue) before implementing here. Once the op + its request/response shape land, update this issue with the operation name and params.

## Notes

- Will require super_user, consistent with the other deployment operations.

— filed by Claude (Opus 4.7)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.