Home CLI guides Migrations CLI

Migrations CLI

Last updated on May 07, 2026

Current Status

There is no first-class Migrations command group in the current CLI implementation.

The migration model currently lives in the macOS app and core services. The CLI does not yet read Fireway files, compare them with Firestore migration records, or execute migration hooks. Use this page as the support boundary for teams that want terminal automation later: it records the expected inputs, safety behavior, and evidence a future command should return.

GUI-Only Coverage Today

Use the macOS Migrations module for:

  • local Fireway file inspection
  • migration record listing
  • status comparison
  • source content review

Before relying on migration status, link the local Firebase workspace in Firestruct, select the Firebase project/database, and confirm the configured migration collection. The GUI can then show local file names, remote records, applied or missing status, source text, and logs that explain parsing or Firestore read failures.

If a deployment runbook needs a terminal checkpoint today, export or copy the GUI evidence into the runbook rather than assuming a CLI command exists. Keep the migration ID, source file path, selected database, environment label, and remote record state together so the future CLI can reproduce the same status table.

Future CLI Shape

Expected future commands:

migrations list
migrations show <migration-id>
migrations status
migrations apply <migration-id> --confirm

Execution must remain guarded when CLI support is added. Migration apply should be Pro-gated, refuse read-only projects, require explicit confirmation for production, show the target project/environment, expose overwrite or rerun behavior, and run through Tasks so operators can inspect progress and failures.

Source Anchors

  • Sources/FirestructCore/FirewayIntegrationService.swift
  • Sources/FirestructCore/ProjectRegistry+Migrations.swift