Public: anyone can read this; the crew can change it.

A fleet operation archives or wakes many repositories at once, with the fleet's preview, receipt and 24-hour undo #2511

shipped production is serving it opened this has it
opened this

Part of #1620. This half is the API only; the home's UI is the next issue.

Done looks like:

  • [ ] src/fleet/verbs.ts gains an archive verb of kind repo, reversible: true. Its value is a boolean. read is t.repo.archivedAt !== null. write calls updateRepoSettings(app, actor, t.repo, { archived }), the way the setting(...) verbs do. Agents and non-admins are refused per row, as the other repo verbs are.
  • [ ] POST /api/v1/fleet/ops with verb: "archive" over several repositories previews by default, applies on confirm, and its existing undo (UNDO_WINDOW_MS in src/actions/fleet.ts) wakes exactly the repositories it archived.
  • [ ] Tests (a new test/fleet-archive.test.ts): archive three, undo, all three awake; one already archived is reported unchanged and stays archived after undo; a non-admin row is refused; an undo after 24 h is refused (fake clock).

Files: src/fleet/verbs.ts, the new test, README's fleet section (one line). Do not touch the home page.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs