@supacloud/cli 0.75.1 → 0.77.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (118) hide show
  1. package/README.md +24 -4
  2. package/dist/index.d.ts +2 -0
  3. package/dist/index.js +18766 -73279
  4. package/dist/index.test.d.ts +1 -0
  5. package/dist/migration-inventory.integration.test.d.ts +1 -0
  6. package/dist/project-read-process.test.d.ts +1 -0
  7. package/dist/shared/cli.d.ts +18 -0
  8. package/dist/shared/context.d.ts +26 -0
  9. package/dist/shared/context.test.d.ts +1 -0
  10. package/dist/shared/execution-policy.d.ts +14 -0
  11. package/dist/shared/execution-policy.test.d.ts +1 -0
  12. package/dist/shared/global-options.d.ts +8 -0
  13. package/dist/shared/global-options.test.d.ts +1 -0
  14. package/dist/shared/mutation-protocol.d.ts +45 -0
  15. package/dist/shared/mutation-protocol.test.d.ts +1 -0
  16. package/dist/shared/outcome-guidance.d.ts +1 -0
  17. package/dist/shared/project-ref.d.ts +1 -0
  18. package/dist/shared/schema.d.ts +13 -0
  19. package/dist/shared/schema.test.d.ts +1 -0
  20. package/dist/shared/tool-server.d.ts +15 -0
  21. package/dist/shared/tool-server.test.d.ts +1 -0
  22. package/dist/shared/tools/advanced-tools.d.ts +5 -0
  23. package/dist/shared/tools/advanced-tools.test.d.ts +1 -0
  24. package/dist/shared/tools/ai-tools.d.ts +28 -0
  25. package/dist/shared/tools/ai-tools.test.d.ts +1 -0
  26. package/dist/shared/tools/app-database-check.d.ts +7 -0
  27. package/dist/shared/tools/app-database-check.test.d.ts +1 -0
  28. package/dist/shared/tools/app-delivery.test.d.ts +1 -0
  29. package/dist/shared/tools/app-dev-regressions.test.d.ts +1 -0
  30. package/dist/shared/tools/app-dev.test.d.ts +1 -0
  31. package/dist/shared/tools/app-local-dev.d.ts +15 -0
  32. package/dist/shared/tools/app-local-dev.test.d.ts +1 -0
  33. package/dist/shared/tools/app-minimal-starter.test.d.ts +1 -0
  34. package/dist/shared/tools/app-resource-generation.test.d.ts +1 -0
  35. package/dist/shared/tools/app-resource.d.ts +5 -0
  36. package/dist/shared/tools/app-scaffold-writes.d.ts +33 -0
  37. package/dist/shared/tools/app-scaffold-writes.test.d.ts +1 -0
  38. package/dist/shared/tools/app-starter-attachment-worker.d.ts +2 -0
  39. package/dist/shared/tools/app-starter-attachments.d.ts +2 -0
  40. package/dist/shared/tools/app-starter-composition.test.d.ts +1 -0
  41. package/dist/shared/tools/app-starter-database.d.ts +14 -0
  42. package/dist/shared/tools/app-starter-environment.d.ts +2 -0
  43. package/dist/shared/tools/app-starter-postgres.d.ts +4 -0
  44. package/dist/shared/tools/app-starter-reactive.d.ts +4 -0
  45. package/dist/shared/tools/app-starter-reactive.test.d.ts +1 -0
  46. package/dist/shared/tools/app-starter-review-job.d.ts +2 -0
  47. package/dist/shared/tools/app-starter-roles.d.ts +2 -0
  48. package/dist/shared/tools/app-starter-roles.test.d.ts +1 -0
  49. package/dist/shared/tools/app-starter-templates.d.ts +7 -0
  50. package/dist/shared/tools/app-starter-upload.d.ts +3 -0
  51. package/dist/shared/tools/app-starter.d.ts +12 -0
  52. package/dist/shared/tools/app-starter.test.d.ts +1 -0
  53. package/dist/shared/tools/app-tool-export.d.ts +42 -0
  54. package/dist/shared/tools/app-tools.d.ts +93 -0
  55. package/dist/shared/tools/app-tools.test.d.ts +1 -0
  56. package/dist/shared/tools/app-verification-plan.d.ts +14 -0
  57. package/dist/shared/tools/app-verification-plan.test.d.ts +1 -0
  58. package/dist/shared/tools/application-schemas.d.ts +75 -0
  59. package/dist/shared/tools/application-tools.d.ts +23 -0
  60. package/dist/shared/tools/application-tools.test.d.ts +1 -0
  61. package/dist/shared/tools/auth-tools.d.ts +3 -0
  62. package/dist/shared/tools/auth-tools.test.d.ts +1 -0
  63. package/dist/shared/tools/branch-tools.d.ts +6 -0
  64. package/dist/shared/tools/branch-tools.test.d.ts +1 -0
  65. package/dist/shared/tools/database-tools.d.ts +13 -0
  66. package/dist/shared/tools/database-tools.test.d.ts +1 -0
  67. package/dist/shared/tools/db-governance-tools.d.ts +80 -0
  68. package/dist/shared/tools/db-governance-tools.test.d.ts +1 -0
  69. package/dist/shared/tools/db-workflow.d.ts +37 -0
  70. package/dist/shared/tools/db-workflow.test.d.ts +1 -0
  71. package/dist/shared/tools/deploy-tools.d.ts +36 -0
  72. package/dist/shared/tools/deploy-tools.test.d.ts +1 -0
  73. package/dist/shared/tools/edge-function-response.d.ts +55 -0
  74. package/dist/shared/tools/edge-function-response.test.d.ts +1 -0
  75. package/dist/shared/tools/frontend-release-control.d.ts +54 -0
  76. package/dist/shared/tools/frontend-release-control.test.d.ts +1 -0
  77. package/dist/shared/tools/frontend-tools.d.ts +3 -0
  78. package/dist/shared/tools/gateway-tools.d.ts +6 -0
  79. package/dist/shared/tools/gateway-tools.test.d.ts +1 -0
  80. package/dist/shared/tools/lite-cli-command.d.ts +2 -0
  81. package/dist/shared/tools/lite-cli-tools.d.ts +46 -0
  82. package/dist/shared/tools/lite-cli-tools.test.d.ts +1 -0
  83. package/dist/shared/tools/migration-import.d.ts +22 -0
  84. package/dist/shared/tools/migration-import.test.d.ts +1 -0
  85. package/dist/shared/tools/migration-risk.d.ts +36 -0
  86. package/dist/shared/tools/migration-risk.test.d.ts +1 -0
  87. package/dist/shared/tools/mutation-tools.d.ts +3 -0
  88. package/dist/shared/tools/mutation-tools.test.d.ts +1 -0
  89. package/dist/shared/tools/oauth-client-tools.d.ts +3 -0
  90. package/dist/shared/tools/oauth-client-tools.test.d.ts +1 -0
  91. package/dist/shared/tools/project-cli-tools.d.ts +6 -0
  92. package/dist/shared/tools/project-cli-tools.test.d.ts +1 -0
  93. package/dist/shared/tools/project-endpoint-read.d.ts +10 -0
  94. package/dist/shared/tools/project-endpoint-tools.test.d.ts +1 -0
  95. package/dist/shared/tools/project-read-projection.d.ts +8 -0
  96. package/dist/shared/tools/project-read-projection.test.d.ts +1 -0
  97. package/dist/shared/tools/queue-tools.d.ts +6 -0
  98. package/dist/shared/tools/queue-tools.test.d.ts +1 -0
  99. package/dist/shared/tools/release-control-response.d.ts +12 -0
  100. package/dist/shared/tools/release-control-response.test.d.ts +1 -0
  101. package/dist/shared/tools/release-tools.d.ts +8 -0
  102. package/dist/shared/tools/release-tools.test.d.ts +1 -0
  103. package/dist/shared/tools/remote-dev-tools.d.ts +41 -0
  104. package/dist/shared/tools/remote-dev-tools.test.d.ts +1 -0
  105. package/dist/shared/tools/scheduled-function-tools.d.ts +7 -0
  106. package/dist/shared/tools/scheduled-function-tools.test.d.ts +1 -0
  107. package/dist/shared/tools/storage-tools.d.ts +3 -0
  108. package/dist/shared/tools/storage-tools.test.d.ts +1 -0
  109. package/dist/shared/tools/supabase-cli-tools.d.ts +49 -0
  110. package/dist/shared/tools/supabase-cli-tools.test.d.ts +1 -0
  111. package/dist/shared/transports/http.d.ts +64 -0
  112. package/dist/shared/transports/http.test.d.ts +1 -0
  113. package/dist/supabase-cli.integration.test.d.ts +1 -0
  114. package/dist/test-helpers.d.ts +1 -0
  115. package/dist/tool-runtime.d.ts +2 -0
  116. package/dist/tool-runtime.js +154 -0
  117. package/dist/tool-runtime.test.d.ts +1 -0
  118. package/package.json +19 -4
package/README.md CHANGED
@@ -2,9 +2,15 @@
2
2
 
3
3
  Project-scoped CLI for SupaCloud users.
4
4
 
5
- This package exposes only `supacloud-cli`. The bare `supacloud` name is reserved
5
+ The only command-line executable is `supacloud-cli`. The bare `supacloud` name is reserved
6
6
  for the compiled server binary installed at `/usr/local/bin/supacloud`.
7
7
 
8
+ Tool adapters import `@supacloud/cli/tool-runtime` for typed registration and
9
+ schema decoding. This side-effect-free entrypoint does not initialize the CLI.
10
+ Registration accepts unknown boundary input, decodes it before invoking the
11
+ typed callback, and validates the callback's result. Private `src/shared` imports
12
+ are not supported.
13
+
8
14
  ## Application Starter
9
15
 
10
16
  ```sh
@@ -231,6 +237,7 @@ actions and also exposes the immutable prebuilt release workflow:
231
237
 
232
238
  ```bash
233
239
  supacloud-cli frontend list_releases --ref abc123 --id web
240
+ supacloud-cli frontend get_active_release --ref abc123 --id web
234
241
  supacloud-cli frontend get_release --ref abc123 --id web --release_id <sha256>
235
242
  supacloud-cli frontend upload_release --ref abc123 --id web --zip_path ./dist.zip
236
243
  supacloud-cli frontend activate_release --ref abc123 --id web \
@@ -238,6 +245,8 @@ supacloud-cli frontend activate_release --ref abc123 --id web \
238
245
  --expected_active_release_id absent \
239
246
  --expected_activation_id absent \
240
247
  --mutation_id <retry-stable-uuid-v4>
248
+ supacloud-cli frontend rollback --ref abc123 --id web --release_id <retained-sha256>
249
+ supacloud-cli frontend rollback --ref abc123 --id web
241
250
  ```
242
251
 
243
252
  `upload_release` hashes and streams an existing regular ZIP file without
@@ -245,10 +254,21 @@ buffering the full archive. The Management API binds the upload to that SHA-256,
245
254
  and the CLI reads the immutable release back before reporting success.
246
255
  `activate_release` uses both the observed active release and activation IDs as
247
256
  optimistic concurrency tokens, then verifies the authoritative active release.
248
- Use the values returned by `list_releases`; `absent` is valid only when no
249
- release has been activated. Production uploads and activations require the
257
+ Use the values returned by `get_active_release`; `absent` is valid only when no
258
+ release has been activated. Production uploads, activations and rollback require the
250
259
  normal exact `--confirm-production <ref>` value, and
251
- `SUPACLOUD_READ_ONLY=true` blocks both mutations.
260
+ `SUPACLOUD_READ_ONLY=true` blocks all mutations.
261
+
262
+ `get_active_release` automatically handles older servers returning HTTP 404
263
+ with a one-record history page and exact active artifact readback. It never
264
+ falls back for authentication, integrity or server failures.
265
+ `rollback` without `--release_id` asks SupaCloud for a journal-verified previous
266
+ immutable release, reads the current CAS identity and generates the mutation ID
267
+ itself. An explicit `--release_id` remains available for a deliberate rollback
268
+ to any retained release. It never infers a target from content-hash-sorted
269
+ history, reuploads assets or restores a database.
270
+ An uncertain result includes the mutation ID for read-only reconciliation and
271
+ must not be blindly retried.
252
272
 
253
273
  ### Immutable application releases
254
274
 
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};