gflow-cli 0.92.0__tar.gz → 0.93.0__tar.gz

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 (1520) hide show
  1. gflow_cli-0.93.0/.codex-plugin/plugin.json +34 -0
  2. gflow_cli-0.93.0/.github/workflows/ci.yml +565 -0
  3. gflow_cli-0.93.0/.github/workflows/deps-watch.yml +83 -0
  4. gflow_cli-0.93.0/.github/workflows/governance-advisory.yml +48 -0
  5. gflow_cli-0.93.0/.github/workflows/governance-benchmark.yml +30 -0
  6. gflow_cli-0.93.0/.github/workflows/pages.yml +62 -0
  7. gflow_cli-0.93.0/.github/workflows/release.yml +121 -0
  8. gflow_cli-0.93.0/.github/workflows/scorecard.yml +52 -0
  9. gflow_cli-0.93.0/.gitignore +131 -0
  10. gflow_cli-0.93.0/AGENTS.md +422 -0
  11. gflow_cli-0.93.0/CHANGELOG.md +6955 -0
  12. gflow_cli-0.93.0/KNOWN_ISSUES.md +1944 -0
  13. gflow_cli-0.93.0/PKG-INFO +314 -0
  14. gflow_cli-0.93.0/conftest.py +82 -0
  15. gflow_cli-0.93.0/dev/sharpit_app.py +18 -0
  16. gflow_cli-0.93.0/docker/Dockerfile +53 -0
  17. gflow_cli-0.93.0/docs/ARCHITECTURE.md +460 -0
  18. gflow_cli-0.93.0/docs/AUTHENTICATION.md +577 -0
  19. gflow_cli-0.93.0/docs/CONFIGURATION.md +707 -0
  20. gflow_cli-0.93.0/docs/E2E_TESTING.md +601 -0
  21. gflow_cli-0.93.0/docs/GITHUB.md +316 -0
  22. gflow_cli-0.93.0/docs/INDEX.md +201 -0
  23. gflow_cli-0.93.0/docs/LIVE_VERIFICATION_v0.92.1.md +76 -0
  24. gflow_cli-0.93.0/docs/LIVE_VERIFICATION_v0.93.0.md +90 -0
  25. gflow_cli-0.93.0/docs/MCP.md +581 -0
  26. gflow_cli-0.93.0/docs/PROJECT_STATUS.md +876 -0
  27. gflow_cli-0.93.0/docs/REFERENCE_STRATEGIES.md +176 -0
  28. gflow_cli-0.93.0/docs/SECURITY.md +330 -0
  29. gflow_cli-0.93.0/docs/USAGE.md +2329 -0
  30. gflow_cli-0.93.0/docs/superpowers/spikes/2026-11-04-external-prs-1142-1145.md +73 -0
  31. gflow_cli-0.93.0/docs/superpowers/spikes/2026-11-04-t2v-lost-submit-reply.md +72 -0
  32. gflow_cli-0.93.0/docs/superpowers/spikes/2026-11-05-clip-url-is-a-thumbnail.md +36 -0
  33. gflow_cli-0.93.0/docs/superpowers/spikes/2026-11-05-revoked-session-workspace.md +44 -0
  34. gflow_cli-0.93.0/llms.txt +45 -0
  35. gflow_cli-0.93.0/plugins/gflow/.claude-plugin/plugin.json +30 -0
  36. gflow_cli-0.93.0/plugins/gflow/skills/gflow-cli/SKILL.md +313 -0
  37. gflow_cli-0.93.0/pyproject.toml +271 -0
  38. gflow_cli-0.93.0/pytest-speed.toml +8 -0
  39. gflow_cli-0.93.0/scripts/ci/check_test_count.py +60 -0
  40. gflow_cli-0.93.0/scripts/ci/pytest_speed/VERSION +2 -0
  41. gflow_cli-0.93.0/scripts/ci/pytest_speed/__main__.py +241 -0
  42. gflow_cli-0.93.0/scripts/ci/pytest_speed/ab.py +80 -0
  43. gflow_cli-0.93.0/scripts/ci/pytest_speed/check.py +194 -0
  44. gflow_cli-0.93.0/scripts/ci/pytest_speed/compare.py +83 -0
  45. gflow_cli-0.93.0/scripts/ci/pytest_speed/durations.py +17 -0
  46. gflow_cli-0.93.0/scripts/ci/pytest_speed/fixture_timer.py +62 -0
  47. gflow_cli-0.93.0/scripts/ci/pytest_speed/junit.py +52 -0
  48. gflow_cli-0.93.0/scripts/ci/pytest_speed/rebuild_log.py +67 -0
  49. gflow_cli-0.93.0/scripts/ci/pytest_speed/vendor.py +45 -0
  50. gflow_cli-0.93.0/scripts/ci/shard_tests.py +98 -0
  51. gflow_cli-0.93.0/scripts/dev/mcpjam/README.md +36 -0
  52. gflow_cli-0.93.0/scripts/dev/mcpjam/cases.json +74 -0
  53. gflow_cli-0.93.0/scripts/dev/mcpjam/package-lock.json +1899 -0
  54. gflow_cli-0.93.0/scripts/dev/mcpjam/package.json +19 -0
  55. gflow_cli-0.93.0/scripts/dev/mcpjam/run.mjs +126 -0
  56. gflow_cli-0.93.0/scripts/dev/mcpjam/stub.mjs +17 -0
  57. gflow_cli-0.93.0/scripts/dev/spike_agent_only_cli_path.py +60 -0
  58. gflow_cli-0.93.0/scripts/dev/spike_agent_only_reload.py +89 -0
  59. gflow_cli-0.93.0/scripts/dev/spike_clip_url_redirect.py +71 -0
  60. gflow_cli-0.93.0/scripts/dev/spike_lost_submit_recovery.py +269 -0
  61. gflow_cli-0.93.0/scripts/dev/spike_mention_empty_picker.py +265 -0
  62. gflow_cli-0.93.0/scripts/dev/spike_revoked_session.py +68 -0
  63. gflow_cli-0.93.0/scripts/dev/spike_t2v_two_runs.py +131 -0
  64. gflow_cli-0.93.0/scripts/dev/spike_t2v_two_runs_read.py +87 -0
  65. gflow_cli-0.93.0/scripts/dev/spike_workspace_oracle.py +103 -0
  66. gflow_cli-0.93.0/server.json +42 -0
  67. gflow_cli-0.93.0/skills/gflow-cli/SKILL.md +313 -0
  68. gflow_cli-0.93.0/src/gflow_cli/__init__.py +3 -0
  69. gflow_cli-0.93.0/src/gflow_cli/api/client.py +4161 -0
  70. gflow_cli-0.93.0/src/gflow_cli/api/image.py +574 -0
  71. gflow_cli-0.93.0/src/gflow_cli/api/transports/batchexecute.py +418 -0
  72. gflow_cli-0.93.0/src/gflow_cli/api/transports/experimental/sapisidhash.py +335 -0
  73. gflow_cli-0.93.0/src/gflow_cli/api/transports/migrated_composer.py +4475 -0
  74. gflow_cli-0.93.0/src/gflow_cli/api/transports/migrated_extend.py +583 -0
  75. gflow_cli-0.93.0/src/gflow_cli/api/transports/migrated_recover.py +266 -0
  76. gflow_cli-0.93.0/src/gflow_cli/api/transports/ui_automation.py +4468 -0
  77. gflow_cli-0.93.0/src/gflow_cli/api/transports/ui_automation_video.py +4186 -0
  78. gflow_cli-0.93.0/src/gflow_cli/auth/internal_chromium.py +498 -0
  79. gflow_cli-0.93.0/src/gflow_cli/auth/real_chrome.py +511 -0
  80. gflow_cli-0.93.0/src/gflow_cli/auth/verification.py +691 -0
  81. gflow_cli-0.93.0/src/gflow_cli/cli.py +842 -0
  82. gflow_cli-0.93.0/src/gflow_cli/cli_data.py +919 -0
  83. gflow_cli-0.93.0/src/gflow_cli/data/repository.py +1303 -0
  84. gflow_cli-0.93.0/src/gflow_cli/errors.py +1565 -0
  85. gflow_cli-0.93.0/src/gflow_cli/image_batch.py +1566 -0
  86. gflow_cli-0.93.0/src/gflow_cli/mcp/tools.py +2526 -0
  87. gflow_cli-0.93.0/src/gflow_cli/winsec.py +120 -0
  88. gflow_cli-0.93.0/src/gflow_cli/worker/queue.py +399 -0
  89. gflow_cli-0.93.0/tests/api/test_client_launch_kwargs.py +474 -0
  90. gflow_cli-0.93.0/tests/api/transports/conftest.py +83 -0
  91. gflow_cli-0.93.0/tests/api/transports/drivers/test_agentic.py +1246 -0
  92. gflow_cli-0.93.0/tests/api/transports/test_bearer.py +519 -0
  93. gflow_cli-0.93.0/tests/api/transports/test_locale_navigation.py +195 -0
  94. gflow_cli-0.93.0/tests/api/transports/test_migrated_composer.py +4208 -0
  95. gflow_cli-0.93.0/tests/api/transports/test_migrated_r2v.py +690 -0
  96. gflow_cli-0.93.0/tests/api/transports/test_overlay_precondition.py +449 -0
  97. gflow_cli-0.93.0/tests/api/transports/test_page_fixture_shares_browser.py +34 -0
  98. gflow_cli-0.93.0/tests/api/transports/test_sapisidhash.py +455 -0
  99. gflow_cli-0.93.0/tests/api/transports/test_transport_timeout.py +107 -0
  100. gflow_cli-0.93.0/tests/api/transports/test_ui_automation.py +3558 -0
  101. gflow_cli-0.93.0/tests/api/transports/test_ui_automation_batch.py +1256 -0
  102. gflow_cli-0.93.0/tests/api/transports/test_ui_automation_image_mode.py +248 -0
  103. gflow_cli-0.93.0/tests/api/transports/test_ui_automation_video.py +3970 -0
  104. gflow_cli-0.93.0/tests/api/transports/test_ui_character_editor.py +1670 -0
  105. gflow_cli-0.93.0/tests/auth/test_real_chrome.py +900 -0
  106. gflow_cli-0.93.0/tests/auth/test_verification.py +1185 -0
  107. gflow_cli-0.93.0/tests/auth/test_workspace_oracle.py +72 -0
  108. gflow_cli-0.93.0/tests/cli/test_cli_models.py +122 -0
  109. gflow_cli-0.93.0/tests/data/test_repository.py +876 -0
  110. gflow_cli-0.93.0/tests/dev/test_sharpit_wrapper_outside_wheel.py +36 -0
  111. gflow_cli-0.93.0/tests/e2e/test_account_chooser_e2e.py +301 -0
  112. gflow_cli-0.93.0/tests/e2e/test_landing_state_diagnosis_bdd.py +342 -0
  113. gflow_cli-0.93.0/tests/e2e/test_login_window_position_e2e.py +59 -0
  114. gflow_cli-0.93.0/tests/e2e/test_mention_chip_order_bdd.py +179 -0
  115. gflow_cli-0.93.0/tests/e2e/test_migrated_submit_body_loss_bdd.py +299 -0
  116. gflow_cli-0.93.0/tests/e2e/test_workspace_oracle_e2e.py +47 -0
  117. gflow_cli-0.93.0/tests/fakes.py +32 -0
  118. gflow_cli-0.93.0/tests/features/mention_chip_order.feature +29 -0
  119. gflow_cli-0.93.0/tests/features/migrated_video_submit_body_loss.feature +32 -0
  120. gflow_cli-0.93.0/tests/features/test_media_picker_tiers_steps.py +223 -0
  121. gflow_cli-0.93.0/tests/features/test_video_agent_ui_steps.py +722 -0
  122. gflow_cli-0.93.0/tests/mcp/test_output_boundary_documented.py +24 -0
  123. gflow_cli-0.93.0/tests/mcp/test_reference_and_tools_params_documented.py +50 -0
  124. gflow_cli-0.93.0/tests/mcp/test_wait_false_runs.py +395 -0
  125. gflow_cli-0.93.0/tests/scripts/test_check_test_count.py +88 -0
  126. gflow_cli-0.93.0/tests/scripts/test_shard_tests.py +84 -0
  127. gflow_cli-0.93.0/tests/test_browser_manager.py +457 -0
  128. gflow_cli-0.93.0/tests/test_durations.json +344 -0
  129. gflow_cli-0.93.0/tests/test_fakes.py +9 -0
  130. gflow_cli-0.93.0/tests/test_overlay_banner_dismissal.py +175 -0
  131. gflow_cli-0.93.0/tests/test_vendored_pytest_speed.py +23 -0
  132. gflow_cli-0.93.0/tests/tools/__init__.py +0 -0
  133. gflow_cli-0.93.0/uv.lock +3668 -0
  134. gflow_cli-0.93.0/website/docs/ARCHITECTURE.md +460 -0
  135. gflow_cli-0.93.0/website/docs/AUTHENTICATION.md +577 -0
  136. gflow_cli-0.93.0/website/docs/CONFIGURATION.md +707 -0
  137. gflow_cli-0.93.0/website/docs/E2E_TESTING.md +601 -0
  138. gflow_cli-0.93.0/website/docs/KNOWN_ISSUES.md +1944 -0
  139. gflow_cli-0.93.0/website/docs/MCP.md +581 -0
  140. gflow_cli-0.93.0/website/docs/SECURITY.md +330 -0
  141. gflow_cli-0.93.0/website/docs/USAGE.md +2329 -0
  142. gflow_cli-0.93.0/website/requirements.in +3 -0
  143. gflow_cli-0.93.0/website/requirements.txt +493 -0
  144. gflow_cli-0.92.0/.codex-plugin/plugin.json +0 -34
  145. gflow_cli-0.92.0/.github/workflows/ci.yml +0 -403
  146. gflow_cli-0.92.0/.github/workflows/deps-watch.yml +0 -83
  147. gflow_cli-0.92.0/.github/workflows/governance-advisory.yml +0 -48
  148. gflow_cli-0.92.0/.github/workflows/governance-benchmark.yml +0 -30
  149. gflow_cli-0.92.0/.github/workflows/pages.yml +0 -62
  150. gflow_cli-0.92.0/.github/workflows/release.yml +0 -121
  151. gflow_cli-0.92.0/.github/workflows/scorecard.yml +0 -52
  152. gflow_cli-0.92.0/.gitignore +0 -127
  153. gflow_cli-0.92.0/AGENTS.md +0 -422
  154. gflow_cli-0.92.0/CHANGELOG.md +0 -6880
  155. gflow_cli-0.92.0/KNOWN_ISSUES.md +0 -1943
  156. gflow_cli-0.92.0/PKG-INFO +0 -314
  157. gflow_cli-0.92.0/conftest.py +0 -48
  158. gflow_cli-0.92.0/docker/Dockerfile +0 -53
  159. gflow_cli-0.92.0/docs/ARCHITECTURE.md +0 -460
  160. gflow_cli-0.92.0/docs/AUTHENTICATION.md +0 -571
  161. gflow_cli-0.92.0/docs/CONFIGURATION.md +0 -704
  162. gflow_cli-0.92.0/docs/E2E_TESTING.md +0 -601
  163. gflow_cli-0.92.0/docs/GITHUB.md +0 -289
  164. gflow_cli-0.92.0/docs/INDEX.md +0 -201
  165. gflow_cli-0.92.0/docs/MCP.md +0 -579
  166. gflow_cli-0.92.0/docs/PROJECT_STATUS.md +0 -836
  167. gflow_cli-0.92.0/docs/REFERENCE_STRATEGIES.md +0 -176
  168. gflow_cli-0.92.0/docs/SECURITY.md +0 -330
  169. gflow_cli-0.92.0/docs/USAGE.md +0 -2330
  170. gflow_cli-0.92.0/llms.txt +0 -45
  171. gflow_cli-0.92.0/plugins/gflow/.claude-plugin/plugin.json +0 -30
  172. gflow_cli-0.92.0/plugins/gflow/skills/gflow-cli/SKILL.md +0 -313
  173. gflow_cli-0.92.0/pyproject.toml +0 -261
  174. gflow_cli-0.92.0/scripts/ci/check_test_count.py +0 -52
  175. gflow_cli-0.92.0/scripts/dev/spike_lost_submit_recovery.py +0 -234
  176. gflow_cli-0.92.0/server.json +0 -42
  177. gflow_cli-0.92.0/skills/gflow-cli/SKILL.md +0 -313
  178. gflow_cli-0.92.0/src/gflow_cli/__init__.py +0 -3
  179. gflow_cli-0.92.0/src/gflow_cli/api/client.py +0 -4155
  180. gflow_cli-0.92.0/src/gflow_cli/api/image.py +0 -573
  181. gflow_cli-0.92.0/src/gflow_cli/api/transports/batchexecute.py +0 -384
  182. gflow_cli-0.92.0/src/gflow_cli/api/transports/experimental/sapisidhash.py +0 -335
  183. gflow_cli-0.92.0/src/gflow_cli/api/transports/migrated_composer.py +0 -4313
  184. gflow_cli-0.92.0/src/gflow_cli/api/transports/migrated_extend.py +0 -583
  185. gflow_cli-0.92.0/src/gflow_cli/api/transports/migrated_recover.py +0 -255
  186. gflow_cli-0.92.0/src/gflow_cli/api/transports/ui_automation.py +0 -4464
  187. gflow_cli-0.92.0/src/gflow_cli/api/transports/ui_automation_video.py +0 -4180
  188. gflow_cli-0.92.0/src/gflow_cli/auth/internal_chromium.py +0 -496
  189. gflow_cli-0.92.0/src/gflow_cli/auth/real_chrome.py +0 -512
  190. gflow_cli-0.92.0/src/gflow_cli/auth/verification.py +0 -621
  191. gflow_cli-0.92.0/src/gflow_cli/cli.py +0 -842
  192. gflow_cli-0.92.0/src/gflow_cli/cli_data.py +0 -920
  193. gflow_cli-0.92.0/src/gflow_cli/data/repository.py +0 -1303
  194. gflow_cli-0.92.0/src/gflow_cli/errors.py +0 -1564
  195. gflow_cli-0.92.0/src/gflow_cli/image_batch.py +0 -1565
  196. gflow_cli-0.92.0/src/gflow_cli/mcp/tools.py +0 -2492
  197. gflow_cli-0.92.0/src/gflow_cli/winsec.py +0 -120
  198. gflow_cli-0.92.0/src/gflow_cli/worker/queue.py +0 -399
  199. gflow_cli-0.92.0/tests/api/test_client_launch_kwargs.py +0 -472
  200. gflow_cli-0.92.0/tests/api/transports/conftest.py +0 -59
  201. gflow_cli-0.92.0/tests/api/transports/drivers/test_agentic.py +0 -1245
  202. gflow_cli-0.92.0/tests/api/transports/test_bearer.py +0 -514
  203. gflow_cli-0.92.0/tests/api/transports/test_locale_navigation.py +0 -194
  204. gflow_cli-0.92.0/tests/api/transports/test_migrated_composer.py +0 -3880
  205. gflow_cli-0.92.0/tests/api/transports/test_migrated_r2v.py +0 -621
  206. gflow_cli-0.92.0/tests/api/transports/test_overlay_precondition.py +0 -448
  207. gflow_cli-0.92.0/tests/api/transports/test_sapisidhash.py +0 -451
  208. gflow_cli-0.92.0/tests/api/transports/test_transport_timeout.py +0 -98
  209. gflow_cli-0.92.0/tests/api/transports/test_ui_automation.py +0 -3554
  210. gflow_cli-0.92.0/tests/api/transports/test_ui_automation_batch.py +0 -1254
  211. gflow_cli-0.92.0/tests/api/transports/test_ui_automation_image_mode.py +0 -247
  212. gflow_cli-0.92.0/tests/api/transports/test_ui_automation_video.py +0 -3968
  213. gflow_cli-0.92.0/tests/api/transports/test_ui_character_editor.py +0 -1669
  214. gflow_cli-0.92.0/tests/auth/test_real_chrome.py +0 -866
  215. gflow_cli-0.92.0/tests/auth/test_verification.py +0 -1156
  216. gflow_cli-0.92.0/tests/cli/test_cli_models.py +0 -122
  217. gflow_cli-0.92.0/tests/data/test_repository.py +0 -875
  218. gflow_cli-0.92.0/tests/e2e/test_account_chooser_e2e.py +0 -297
  219. gflow_cli-0.92.0/tests/e2e/test_landing_state_diagnosis_bdd.py +0 -329
  220. gflow_cli-0.92.0/tests/e2e/test_mention_chip_order_bdd.py +0 -148
  221. gflow_cli-0.92.0/tests/e2e/test_migrated_submit_body_loss_bdd.py +0 -285
  222. gflow_cli-0.92.0/tests/features/mention_chip_order.feature +0 -21
  223. gflow_cli-0.92.0/tests/features/migrated_video_submit_body_loss.feature +0 -24
  224. gflow_cli-0.92.0/tests/features/test_media_picker_tiers_steps.py +0 -222
  225. gflow_cli-0.92.0/tests/features/test_video_agent_ui_steps.py +0 -721
  226. gflow_cli-0.92.0/tests/mcp/test_wait_false_runs.py +0 -392
  227. gflow_cli-0.92.0/tests/scripts/test_check_test_count.py +0 -66
  228. gflow_cli-0.92.0/tests/test_browser_manager.py +0 -456
  229. gflow_cli-0.92.0/tests/test_overlay_banner_dismissal.py +0 -173
  230. gflow_cli-0.92.0/uv.lock +0 -3668
  231. gflow_cli-0.92.0/website/docs/ARCHITECTURE.md +0 -460
  232. gflow_cli-0.92.0/website/docs/AUTHENTICATION.md +0 -571
  233. gflow_cli-0.92.0/website/docs/CONFIGURATION.md +0 -704
  234. gflow_cli-0.92.0/website/docs/E2E_TESTING.md +0 -601
  235. gflow_cli-0.92.0/website/docs/KNOWN_ISSUES.md +0 -1943
  236. gflow_cli-0.92.0/website/docs/MCP.md +0 -579
  237. gflow_cli-0.92.0/website/docs/SECURITY.md +0 -330
  238. gflow_cli-0.92.0/website/docs/USAGE.md +0 -2330
  239. gflow_cli-0.92.0/website/requirements.in +0 -3
  240. gflow_cli-0.92.0/website/requirements.txt +0 -493
  241. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.agents/plugins/marketplace.json +0 -0
  242. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/README.md +0 -0
  243. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/active.md +0 -0
  244. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/branch-review.md +0 -0
  245. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/changelog.md +0 -0
  246. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/check.md +0 -0
  247. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/doc-review.md +0 -0
  248. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/issue-assessment.md +0 -0
  249. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/issue-resolve.md +0 -0
  250. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/known-issues.md +0 -0
  251. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/live-verify.md +0 -0
  252. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/llm-council.md +0 -0
  253. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/next.md +0 -0
  254. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/plan.md +0 -0
  255. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/pr-council-review.md +0 -0
  256. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/predict.md +0 -0
  257. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/release.md +0 -0
  258. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/scenario.md +0 -0
  259. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/sonar.md +0 -0
  260. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/spike.md +0 -0
  261. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude/commands/gflow/status.md +0 -0
  262. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.claude-plugin/marketplace.json +0 -0
  263. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.env.template +0 -0
  264. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.gitattributes +0 -0
  265. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/CODEOWNERS +0 -0
  266. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/FUNDING.yml +0 -0
  267. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  268. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/copilot-instructions.md +0 -0
  269. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/dependabot.yml +0 -0
  270. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/external-pr-triage.yml +0 -0
  271. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/labels.yml +0 -0
  272. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/main-base-guard.yml +0 -0
  273. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/mcp-registry.yml +0 -0
  274. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/sponsors.yml +0 -0
  275. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.github/workflows/star-history-watch.yml +0 -0
  276. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.gitleaks.toml +0 -0
  277. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.pre-commit-config.yaml +0 -0
  278. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/.secrets.baseline +0 -0
  279. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/CLAUDE.md +0 -0
  280. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/CONFIGURATION.md +0 -0
  281. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/CONTRIBUTING.md +0 -0
  282. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/DISCLAIMER.md +0 -0
  283. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/LICENSE +0 -0
  284. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/PLAN.md +0 -0
  285. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/README.md +0 -0
  286. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/RELEASE.md +0 -0
  287. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/ROADMAP.md +0 -0
  288. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/deploy/logrotate-pr-triage +0 -0
  289. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docker/Dockerfile.test +0 -0
  290. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docker/README.md +0 -0
  291. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docker/docker-compose.yml +0 -0
  292. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docker/dockerignore.example +0 -0
  293. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docker-compose.yml +0 -0
  294. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/ACCOUNT_SAFETY.md +0 -0
  295. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/AGENT_GUIDE.md +0 -0
  296. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/AGENT_UI_E2E.md +0 -0
  297. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/AGENT_UI_RECON.md +0 -0
  298. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/ASSET_TAGGING_RECON.md +0 -0
  299. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/CHARACTER.md +0 -0
  300. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/CHARACTER_RECON.md +0 -0
  301. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/CONTAINER.md +0 -0
  302. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/DATA_LAYER.md +0 -0
  303. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/DEBUGGING.md +0 -0
  304. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/DEMOS.md +0 -0
  305. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/DEVELOPMENT.md +0 -0
  306. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/DISTRIBUTION.md +0 -0
  307. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/EXTERNAL_STORAGE.md +0 -0
  308. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/GOVERNANCE_BENCHMARK.md +0 -0
  309. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/IMAGE_UPSCALE_RECON.md +0 -0
  310. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/INSTRUCTIONS.md +0 -0
  311. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_data_layer.md +0 -0
  312. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_image_batch.md +0 -0
  313. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_playwright_1.61.md +0 -0
  314. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_reference_entity_guard.md +0 -0
  315. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.10.0.md +0 -0
  316. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.11.0.md +0 -0
  317. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.12.0.md +0 -0
  318. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.13.0.md +0 -0
  319. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.16.0.md +0 -0
  320. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.17.0.md +0 -0
  321. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.18.0.md +0 -0
  322. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.19.0.md +0 -0
  323. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.20.0.md +0 -0
  324. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.20.1.md +0 -0
  325. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.21.0.md +0 -0
  326. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.22.0.md +0 -0
  327. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.23.0.md +0 -0
  328. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.24.0.md +0 -0
  329. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.25.0.md +0 -0
  330. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.26.0.md +0 -0
  331. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.27.0.md +0 -0
  332. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.27.1.md +0 -0
  333. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.28.0.md +0 -0
  334. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.29.0.md +0 -0
  335. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.30.0.md +0 -0
  336. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.31.0.md +0 -0
  337. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.32.0.md +0 -0
  338. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.32.1.md +0 -0
  339. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.33.0.md +0 -0
  340. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.34.0.md +0 -0
  341. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.35.0.md +0 -0
  342. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.36.0.md +0 -0
  343. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.37.0.md +0 -0
  344. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.38.0.md +0 -0
  345. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.38.1.md +0 -0
  346. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.39.0.md +0 -0
  347. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.40.0-production-readiness.md +0 -0
  348. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.40.0.md +0 -0
  349. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.41.0.md +0 -0
  350. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.42.0.md +0 -0
  351. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.43.0.md +0 -0
  352. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.44.0.md +0 -0
  353. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.45.0.md +0 -0
  354. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.46.0.md +0 -0
  355. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.46.1.md +0 -0
  356. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.47.0.md +0 -0
  357. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.48.0.md +0 -0
  358. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.49.0.md +0 -0
  359. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.50.0.md +0 -0
  360. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.51.0.md +0 -0
  361. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.52.0.md +0 -0
  362. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.54.0.md +0 -0
  363. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.55.0.md +0 -0
  364. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.56.0.md +0 -0
  365. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.57.0.md +0 -0
  366. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.57.1.md +0 -0
  367. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.58.0.md +0 -0
  368. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.59.0.md +0 -0
  369. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.60.0.md +0 -0
  370. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.61.0.md +0 -0
  371. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.62.0.md +0 -0
  372. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.62.1.md +0 -0
  373. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.63.0.md +0 -0
  374. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.64.0.md +0 -0
  375. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.65.0.md +0 -0
  376. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.66.0.md +0 -0
  377. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.66.1.md +0 -0
  378. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.66.2.md +0 -0
  379. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.66.3.md +0 -0
  380. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.67.0.md +0 -0
  381. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.68.0.md +0 -0
  382. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.69.0.md +0 -0
  383. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.7.0.md +0 -0
  384. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.70.0.md +0 -0
  385. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.71.0.md +0 -0
  386. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.71.1.md +0 -0
  387. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.72.0.md +0 -0
  388. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.73.0.md +0 -0
  389. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.73.1.md +0 -0
  390. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.73.2.md +0 -0
  391. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.74.0.md +0 -0
  392. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.75.0.md +0 -0
  393. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.76.0.md +0 -0
  394. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.77.0.md +0 -0
  395. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.77.1.md +0 -0
  396. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.78.0.md +0 -0
  397. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.79.0.md +0 -0
  398. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.79.1.md +0 -0
  399. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.8.1.md +0 -0
  400. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.80.0.md +0 -0
  401. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.81.0.md +0 -0
  402. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.82.0.md +0 -0
  403. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.82.1.md +0 -0
  404. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.83.0.md +0 -0
  405. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.83.1.md +0 -0
  406. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.83.2.md +0 -0
  407. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.84.0.md +0 -0
  408. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.85.0.md +0 -0
  409. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.86.0.md +0 -0
  410. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.87.0.md +0 -0
  411. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.87.1.md +0 -0
  412. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.88.0.md +0 -0
  413. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.89.0.md +0 -0
  414. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.89.1.md +0 -0
  415. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.9.0.md +0 -0
  416. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.9.1.md +0 -0
  417. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.90.0.md +0 -0
  418. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.91.0.md +0 -0
  419. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_v0.92.0.md +0 -0
  420. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/LIVE_VERIFICATION_video_download.md +0 -0
  421. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/MARKETPLACES.md +0 -0
  422. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/MEDIA_LIBRARY.md +0 -0
  423. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/MOVIE.md +0 -0
  424. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/PROMPT_EXPANSION.md +0 -0
  425. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/SPONSORS.md +0 -0
  426. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/TOOLS.md +0 -0
  427. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/USER_GUIDE.md +0 -0
  428. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/assets/demo-split-pf.gif +0 -0
  429. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/assets/example-run.gif +0 -0
  430. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/assets/examples.webp +0 -0
  431. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/medium_tutorial.md +0 -0
  432. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/schemas/movie-handoff.schema.json +0 -0
  433. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/sonar-cleanup-tracker.md +0 -0
  434. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/README.md +0 -0
  435. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/agents-md-vs-llms-txt.md +0 -0
  436. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/background-e2e-pytest-pattern.md +0 -0
  437. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/bdd-stubs-mirror-runtime-signatures.md +0 -0
  438. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/content-policy-text-scan-false-positives-on-page-chrome.md +0 -0
  439. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/credit-free-route-abort-verification.md +0 -0
  440. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/data-layer-overview.md +0 -0
  441. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/data-layer-test-pollution-trap.md +0 -0
  442. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/doc-examples-are-untested-fixtures.md +0 -0
  443. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/draft-pr-merge-trap.md +0 -0
  444. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/drive-the-page-dont-replay-the-rpc.md +0 -0
  445. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/e2e-evidence-is-a-contributor-deliverable.md +0 -0
  446. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/exit-code-16-data-store.md +0 -0
  447. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/flow-capabilities-are-cohort-dependent.md +0 -0
  448. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/flow-credits-videos-only.md +0 -0
  449. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/flow-locale-leak-icon-ligatures.md +0 -0
  450. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/flow-recon-must-run-on-denon82-ffroliva-migrated.md +0 -0
  451. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/force-color-breaks-cli-tests.md +0 -0
  452. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/full-test-suite-ooms.md +0 -0
  453. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/git-add-all-sweeps-scratch-files.md +0 -0
  454. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/image-video-mode-switch-symmetry.md +0 -0
  455. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/ligature-carrier-differs-by-host.md +0 -0
  456. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/mcp-is-first-class-across-skill-chain.md +0 -0
  457. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/memory-is-working-dir-keyed.md +0 -0
  458. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/migrated-host-driver-wire-lessons.md +0 -0
  459. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/migrated-refusal-is-a-dom-card-not-a-wire-record.md +0 -0
  460. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/on-started-callback-recorder-safety.md +0 -0
  461. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/playwright-click-no-downstream-event-signature.md +0 -0
  462. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/pr-council-review-stale-tree-reads.md +0 -0
  463. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/pr-hygiene-revert-and-multi-commit.md +0 -0
  464. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/pr-must-verify-on-affected-surface.md +0 -0
  465. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/prose-conflicts-hide-in-disjoint-files.md +0 -0
  466. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/pypi-readme-staleness-fix.md +0 -0
  467. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/pypi-rejected-filename-reusable.md +0 -0
  468. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/readme-hybrid-router-pattern.md +0 -0
  469. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/real-browser-auth-mandatory.md +0 -0
  470. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/release-back-merge-gap-recovery.md +0 -0
  471. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/release-signing.md +0 -0
  472. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/release-spec-plan-memory-consolidation.md +0 -0
  473. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/rest-transports-drop-ui-fields.md +0 -0
  474. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/ruff-format-scope-is-src-tests.md +0 -0
  475. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/sonarcloud-hotspot-review-workflow.md +0 -0
  476. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/sonarcloud-new-code-gotchas.md +0 -0
  477. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/sonarcloud-pr-issues-scope-s7497.md +0 -0
  478. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/sonarcloud-setup.md +0 -0
  479. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/stale-test-discovery.md +0 -0
  480. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/structlog-cache-logger-off-for-tests.md +0 -0
  481. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/ui-selector-drift-error-exit-23.md +0 -0
  482. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/verification-ledger-5-layer.md +0 -0
  483. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/video-model-capability-matrix.md +0 -0
  484. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/wheel-build-sanity-gate.md +0 -0
  485. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/windows-dev-quirks.md +0 -0
  486. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/memory/windows-running-launcher-blocks-uv-upgrade.md +0 -0
  487. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-12-issue-174-library-ui-attach/PLAN.md +0 -0
  488. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-mcp-server/PLAN.md +0 -0
  489. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-mcp-server/PREDICT.md +0 -0
  490. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-mcp-server/SCENARIO.md +0 -0
  491. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/PLAN.md +0 -0
  492. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/PREDICT.md +0 -0
  493. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/SCENARIO.md +0 -0
  494. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-24-gflow-studio-scaffold/PLAN.md +0 -0
  495. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-24-rest-api-layer/PLAN.md +0 -0
  496. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-06-26-mcp-e2e-test/PLAN.md +0 -0
  497. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-08-pr-triage-autopilot/PLAN.md +0 -0
  498. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-09-camoufox-adoption/PLAN.md +0 -0
  499. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-14-storyboarding-and-visual-curation/PLAN.md +0 -0
  500. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-18-asset-tagging/PLAN.md +0 -0
  501. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-19-live-verify/PLAN.md +0 -0
  502. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-19-production-readiness-browser-lifecycle.md +0 -0
  503. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-19-production-readiness-driver-cdp-verification.md +0 -0
  504. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-19-production-readiness-public-truth.md +0 -0
  505. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-19-production-readiness-queue-safety.md +0 -0
  506. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-26-character-prompt-polishing/PLAN.md +0 -0
  507. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-26-project-name-management/PLAN.md +0 -0
  508. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-26-self-documenting-errors/PLAN.md +0 -0
  509. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-27-overlay-banner-dismissal/PLAN.md +0 -0
  510. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-27-tier-aware-credit-confirmations/PLAN.md +0 -0
  511. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-07-27-tier-aware-credit-confirmations/SCENARIO.md +0 -0
  512. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-04-mcp-tasks/PLAN.md +0 -0
  513. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-04-output-hardening/PLAN.md +0 -0
  514. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-317-intra-batch-references/PLAN.md +0 -0
  515. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-317-intra-batch-references/SCENARIO.md +0 -0
  516. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-402-entity-provenance/PLAN.md +0 -0
  517. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-402-entity-provenance/SCENARIO.md +0 -0
  518. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-451-duration-tab-drift/PLAN.md +0 -0
  519. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-05-issue-451-duration-tab-drift/SCENARIO.md +0 -0
  520. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-driver-delay-jittering/PLAN.md +0 -0
  521. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-driver-delay-jittering/SCENARIO.md +0 -0
  522. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-overlay-changelog-watermark/PLAN.md +0 -0
  523. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-overlay-changelog-watermark/SCENARIO.md +0 -0
  524. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-ui-mode-policy/PLAN.md +0 -0
  525. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-06-ui-mode-policy/SCENARIO.md +0 -0
  526. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-14-video-ui-mode-policy/PLAN.md +0 -0
  527. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-14-video-ui-mode-policy/SCENARIO.md +0 -0
  528. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-21-selector-registry.md +0 -0
  529. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-08-25-workflow-hardening-gaps.md +0 -0
  530. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-01-video-extend/PLAN.md +0 -0
  531. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-06-spike-tooling-reorg/PLAN.md +0 -0
  532. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-14-community-feedback-uplift/PLAN.md +0 -0
  533. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/ASSESSMENT.md +0 -0
  534. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/PLAN.md +0 -0
  535. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/PREDICT.md +0 -0
  536. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/SCENARIO.md +0 -0
  537. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-17-gflow-docs-command/PLAN.md +0 -0
  538. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-17-gflow-docs-command/SCENARIO.md +0 -0
  539. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-09-17-project-create-bundle/PLAN.md +0 -0
  540. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-17-migrated-video-extend/PLAN.md +0 -0
  541. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-17-migrated-video-extend/PREDICT.md +0 -0
  542. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-17-migrated-video-extend/SCENARIO.md +0 -0
  543. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-19-catalog-refs-in-project/PLAN.md +0 -0
  544. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-19-catalog-refs-in-project/PREDICT.md +0 -0
  545. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/plans/2026-10-19-catalog-refs-in-project/SCENARIO.md +0 -0
  546. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/research/2026-06-27-tool-abstraction-evaluation.md +0 -0
  547. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-06-29-issue-assessment-workflow-design.md +0 -0
  548. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-07-04-pr-triage-autopilot-design.md +0 -0
  549. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-07-18-asset-tagging-design.md +0 -0
  550. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-07-19-live-verify-design.md +0 -0
  551. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-07-19-production-readiness-hardening-design.md +0 -0
  552. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-08-21-selector-registry-design.md +0 -0
  553. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-08-26-model-attribution-provenance.md +0 -0
  554. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-08-26-model-cost-quota-catalog.md +0 -0
  555. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/specs/2026-08-27-changelog-modal-precondition-design.md +0 -0
  556. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-07-09-camoufox-waf-403.md +0 -0
  557. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-07-12-ui-cohort-backend-config.md +0 -0
  558. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-07-17-production-readiness-assessment.md +0 -0
  559. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-08-01-mcp-2026-07-28-spec-impact.md +0 -0
  560. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-08-14-video-model-capability-matrix.md +0 -0
  561. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-08-15-picker-tile-alt-text.md +0 -0
  562. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-08-31-veo-extend-route-recon.md +0 -0
  563. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-04-migrated-host-handoff-mechanism.md +0 -0
  564. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-05-migrated-frames-attach.md +0 -0
  565. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-05-migrated-host-wire-protocol.md +0 -0
  566. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-05-migrated-model-menu-lower-priority.md +0 -0
  567. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-05-migrated-r2v-attach-surface.md +0 -0
  568. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-06-labs-vs-migrated-session-credential.md +0 -0
  569. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-06-migrated-character-surface-and-recaptcha.md +0 -0
  570. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-07-character-format-button-anchor.md +0 -0
  571. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-07-credit-shortfall-looks-like-selector-drift.md +0 -0
  572. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-07-format-click-is-not-a-format.md +0 -0
  573. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-07-ligature-carrier-and-name-drift.md +0 -0
  574. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-07-migrated-composer-has-an-image-mode.md +0 -0
  575. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-08-g12-blocks-webdriver-not-playwright.md +0 -0
  576. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-08-migrated-composer-agent-mode-hides-settings.md +0 -0
  577. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-08-migrated-image-submit-wire.md +0 -0
  578. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-08-migrated-queue-is-readable-on-zzl0ze.md +0 -0
  579. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-08-migrated-upload-fails-two-ways.md +0 -0
  580. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-10-about-redirect-stability.md +0 -0
  581. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-10-migrated-click-blocked.md +0 -0
  582. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-11-about-redirect-is-decided-client-side.md +0 -0
  583. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-11-about-redirect-is-stable-for-an-account.md +0 -0
  584. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-11-migrated-cookie-bar-blocks-the-composer.md +0 -0
  585. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-11-nano2-lite-capability.md +0 -0
  586. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-13-frames-picker-confirm.md +0 -0
  587. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-14-credits-on-migrated-host.md +0 -0
  588. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-14-generation-wire-no-push-channel.md +0 -0
  589. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-14-two-domain-protocol-survey.md +0 -0
  590. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-14-video-poll-is-a-fixed-client-timer.md +0 -0
  591. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-15-agent-only-composer-drive-surface.md +0 -0
  592. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-15-container-transport-viability.md +0 -0
  593. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-15-unentitled-account-signal.md +0 -0
  594. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-16-networkidle-costs-3x-it-does-not-hang.md +0 -0
  595. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-17-migrated-end-frame-submit-contract.md +0 -0
  596. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-17-project-create-on-flow-google-com.md +0 -0
  597. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-17-stranded-clip-recovery.md +0 -0
  598. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-19-migrated-video-extend-wire.md +0 -0
  599. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-20-warm-client-premint-on-about-blank.md +0 -0
  600. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-22-playwright-max-retries-econnreset.md +0 -0
  601. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-23-about-cta-leads-to-google-reauth.md +0 -0
  602. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-27-migrated-refusal-is-on-the-wire.md +0 -0
  603. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-27-stealth-fingerprint-delta.md +0 -0
  604. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-09-30-migrated-upscale-wire.md +0 -0
  605. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-01-batch-ref-dropped.md +0 -0
  606. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-01-recaptcha-error-shape.md +0 -0
  607. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-06-948-record-slot3-null.md +0 -0
  608. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-08-nano-banana-21-replaced-2.md +0 -0
  609. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-10-duration-locale-and-notice-only-cookie-bar.md +0 -0
  610. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-13-migrated-image-character-mention.md +0 -0
  611. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-14-labs-nextauth-silent-refresh.md +0 -0
  612. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-17-agent-only-cohort-profiles.md +0 -0
  613. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-17-migrated-extend-ui-path.md +0 -0
  614. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-18-rpc-response-body-readback.md +0 -0
  615. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-19-earlier-run-ref-in-place.md +0 -0
  616. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-19-fourth-ref-caret.md +0 -0
  617. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-19-minio-replacement.md +0 -0
  618. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-20-migrated-upload-reply-body-eviction.md +0 -0
  619. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-21-migrated-submit-reply-body-loss.md +0 -0
  620. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-22-credits-balance-on-nzlxg.md +0 -0
  621. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-22-image-upscale-lost-body.md +0 -0
  622. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-22-labs-session-oracle-gone.md +0 -0
  623. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-25-mcp-detached-task-shutdown.md +0 -0
  624. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-27-lost-video-submit-recovery.md +0 -0
  625. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/docs/superpowers/spikes/2026-10-29-cross-device-relocate.md +0 -0
  626. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/README.md +0 -0
  627. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/batch_from_config.py +0 -0
  628. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/multi_prompt_t2i.py +0 -0
  629. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/sample_config.json +0 -0
  630. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/sample_prompts.txt +0 -0
  631. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/single_image_t2i.py +0 -0
  632. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/examples/workflow_chain.py +0 -0
  633. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/glama.json +0 -0
  634. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/hatch_build.py +0 -0
  635. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/index.html +0 -0
  636. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/mempalace.yaml +0 -0
  637. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/README.md +0 -0
  638. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/.mcp.json +0 -0
  639. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/SKILL.md +0 -0
  640. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/clip_qa.py +0 -0
  641. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/composition.md +0 -0
  642. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/consistency.md +0 -0
  643. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/failure-modes.md +0 -0
  644. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/plugins/gflow/skills/video-production/tasks.json +0 -0
  645. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/README.md +0 -0
  646. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/01_upload_image.json +0 -0
  647. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/02_batchAsyncGenerateVideoText.json +0 -0
  648. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/03_batchCheckAsyncVideoGenerationStatus.json +0 -0
  649. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/04_archive_workflow.json +0 -0
  650. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/05_createProject.json +0 -0
  651. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/06_batchGenerateImages.json +0 -0
  652. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/07_batchGenerateImages_seeded.json +0 -0
  653. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/08_batchAsyncGenerateVideoStartAndEndImage.json +0 -0
  654. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/09_batchAsyncGenerateVideoReferenceImages.json +0 -0
  655. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/10_batchCheckAsyncVideoGenerationStatus_successful.json +0 -0
  656. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/11_batchCheckAsyncVideoGenerationStatus_failed.json +0 -0
  657. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/12_create_scene.json +0 -0
  658. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/13_sceneWorkflows_update.json +0 -0
  659. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/14_get_scene_workflows.json +0 -0
  660. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/samples/captured/15_commit_flowWorkflow.json +0 -0
  661. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/canary/register_task.ps1 +0 -0
  662. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/canary/run_canary.py +0 -0
  663. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_council_memory.py +0 -0
  664. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_deletions.py +0 -0
  665. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_doc_links.py +0 -0
  666. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_fork_pr_ci.py +0 -0
  667. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_materiality.py +0 -0
  668. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_release_artifacts.py +0 -0
  669. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_repo_hygiene.py +0 -0
  670. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/check_website_docs_pii.py +0 -0
  671. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/generate_plugin_skills.py +0 -0
  672. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/generate_website_docs.py +0 -0
  673. {gflow_cli-0.92.0/src/gflow_cli/tools → gflow_cli-0.93.0/scripts/ci/pytest_speed}/__init__.py +0 -0
  674. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/ci/update_sponsors.py +0 -0
  675. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/debug_editor.py +0 -0
  676. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/debug_gen_settings.py +0 -0
  677. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/debug_settings.py +0 -0
  678. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/_recording_client.py +0 -0
  679. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/_spike_common.py +0 -0
  680. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/acceptance/__init__.py +0 -0
  681. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/acceptance/bench.py +0 -0
  682. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/acceptance/domain.py +0 -0
  683. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/acceptance/judge.py +0 -0
  684. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/acceptance/settings.py +0 -0
  685. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/active_plan.py +0 -0
  686. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/analyze_agent_ui_capture.py +0 -0
  687. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_frames_mode_trigger_ligature.py +0 -0
  688. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_i2v_frame_slots_dom.py +0 -0
  689. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_i2v_intercept_submit.py +0 -0
  690. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_i2v_model_select_repro.py +0 -0
  691. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_i2v_post_bind_state.py +0 -0
  692. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_image_add_media_dom.py +0 -0
  693. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_locale_invariants.py +0 -0
  694. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_lower_priority_model_cost.py +0 -0
  695. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_attach_rpcs.py +0 -0
  696. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_mention_gestures.py +0 -0
  697. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_model_menu.py +0 -0
  698. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_r2v_production_submit.py +0 -0
  699. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_r2v_submit_payload.py +0 -0
  700. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_r2v_surface.py +0 -0
  701. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_migrated_upload_flow.py +0 -0
  702. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_project_listing.py +0 -0
  703. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_r2v_ingredient_lifecycle.py +0 -0
  704. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_sidebar_state_dom.py +0 -0
  705. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/capture_video_model_capability_matrix.py +0 -0
  706. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/cdp_drive_and_probe.py +0 -0
  707. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/character_create_spike.py +0 -0
  708. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/character_create_spike_v2.py +0 -0
  709. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/cleanup.py +0 -0
  710. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/dump_character_selectors.js +0 -0
  711. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/README.md +0 -0
  712. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/capture-agent-ui.ps1 +0 -0
  713. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/capture-media-scrape.ps1 +0 -0
  714. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/extract_har_summary.py +0 -0
  715. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/launch-flow-chrome.ps1 +0 -0
  716. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/probe-agent-mode.ps1 +0 -0
  717. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/probe_agent_mode.py +0 -0
  718. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/run-cdp-smoke.ps1 +0 -0
  719. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/start-background-capture.ps1 +0 -0
  720. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/start-har-capture.ps1 +0 -0
  721. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/stop-background-capture.ps1 +0 -0
  722. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/har-spike/stop-har-capture.ps1 +0 -0
  723. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/incident_bundle_quality.py +0 -0
  724. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/live_verify_mcp_tasks.py +0 -0
  725. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/live_verify_policy_400_v060.py +0 -0
  726. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/live_verify_video_model_select.py +0 -0
  727. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/make_project.py +0 -0
  728. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/materiality_backtest.py +0 -0
  729. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/measure_html_lang_settle.py +0 -0
  730. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/measure_locale_probe.py +0 -0
  731. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/measure_migrated_host_flip.py +0 -0
  732. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/patch_character.py +0 -0
  733. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/skillopt/README.md +0 -0
  734. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/skillopt/harness.py +0 -0
  735. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/skillopt/tasks.json +0 -0
  736. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/sonar-local-scan.sh +0 -0
  737. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/sonar-pre-push-gate.sh +0 -0
  738. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_1114_cross_device_relocate.py +0 -0
  739. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_948_project_records.py +0 -0
  740. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_948_submit_envelope.py +0 -0
  741. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_963_duration_locale.py +0 -0
  742. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_995_earlier_run_ref.py +0 -0
  743. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_997_fourth_ref_caret.py +0 -0
  744. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_about_cta_recovery.py +0 -0
  745. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_about_redirect_cause.py +0 -0
  746. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_about_redirect_stability.py +0 -0
  747. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_confirm_radios.py +0 -0
  748. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_only_cohort_profiles.py +0 -0
  749. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_only_composer.py +0 -0
  750. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_only_video_ready.py +0 -0
  751. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_only_video_tile.py +0 -0
  752. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_agent_settings_defaults.py +0 -0
  753. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_batch_ref_dropped.py +0 -0
  754. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_batch_ref_existing_media.py +0 -0
  755. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_cdp_har_without_node.py +0 -0
  756. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_changelog_capture.py +0 -0
  757. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_char_editor_dom.py +0 -0
  758. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_char_gen_capture.py +0 -0
  759. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_character_editor_ready_gate.py +0 -0
  760. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_character_prompt_format.py +0 -0
  761. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_create_project_401.py +0 -0
  762. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_credits_balance_carrier.py +0 -0
  763. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_credits_migrated_surface.py +0 -0
  764. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_entity_submit_rpcs.py +0 -0
  765. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_extend_model_recon.py +0 -0
  766. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_extend_ourstack_verify.py +0 -0
  767. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_extend_route_capture.py +0 -0
  768. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_extend_submit_capture.py +0 -0
  769. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_extend_ui_recon.py +0 -0
  770. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_flow_unavailable_signal.py +0 -0
  771. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_format_prompt_effect.py +0 -0
  772. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_frames_picker_confirm.py +0 -0
  773. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_generation_wire_survey.py +0 -0
  774. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_gif_export_delivery.py +0 -0
  775. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_host_lane.py +0 -0
  776. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_model_attribution.py +0 -0
  777. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_submit_references.py +0 -0
  778. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_upscale_capture.py +0 -0
  779. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_upscale_drive.py +0 -0
  780. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_upscale_recaptcha_action.py +0 -0
  781. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_image_upscale_rest_probe.py +0 -0
  782. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_incident_live.py +0 -0
  783. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_issue170_picker_locale_recon.py +0 -0
  784. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_issue174_library_ui_recon.py +0 -0
  785. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_issue313_agent_mode_controls.py +0 -0
  786. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_issue314_picker_filename_search.py +0 -0
  787. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_issue404_count_tabs_recon.py +0 -0
  788. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_labs_nextauth_refresh.py +0 -0
  789. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_ligature_carrier_sweep.py +0 -0
  790. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_locale_poison.py +0 -0
  791. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_mcp_detached_shutdown.py +0 -0
  792. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_mention_existing_media.py +0 -0
  793. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_aspect_radios.py +0 -0
  794. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_body_reference_chip.py +0 -0
  795. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_character_body_controls.py +0 -0
  796. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_character_editor_anchor.py +0 -0
  797. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_character_ogiz0b_schema.py +0 -0
  798. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_character_submit_wire.py +0 -0
  799. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_character_surface.py +0 -0
  800. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_click_blocked.py +0 -0
  801. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_composer_arms.py +0 -0
  802. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_composer_mode_axis.py +0 -0
  803. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_cookie_bar.py +0 -0
  804. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_create_project.py +0 -0
  805. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_duration_by_model.py +0 -0
  806. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_editor_dom_inventory.py +0 -0
  807. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_end_frame.py +0 -0
  808. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_entity_submit.py +0 -0
  809. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_extend_ui_path.py +0 -0
  810. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_frames_attach.py +0 -0
  811. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_host_trigger.py +0 -0
  812. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_image_capability.py +0 -0
  813. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_image_submit.py +0 -0
  814. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_picker_option_kind.py +0 -0
  815. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_queue_read.py +0 -0
  816. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_recaptcha_mint.py +0 -0
  817. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_refusal_envelope.py +0 -0
  818. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_submit_anchor.py +0 -0
  819. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_submit_body_loss.py +0 -0
  820. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_submit_capture.py +0 -0
  821. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_upload_body_eviction.py +0 -0
  822. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_upload_wire.py +0 -0
  823. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migrated_vs_labs_provenance.py +0 -0
  824. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_migration_flag_bootstrap.py +0 -0
  825. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_mint_on_about_blank.py +0 -0
  826. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_mode_roundtrip.py +0 -0
  827. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_mode_switch_agentic_to_classic.py +0 -0
  828. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_model_inventory.py +0 -0
  829. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_movie_attach_payload.py +0 -0
  830. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_movie_entity_recon.py +0 -0
  831. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_movie_gen_capture.py +0 -0
  832. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_movie_picker_select.py +0 -0
  833. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_movie_voice_list.py +0 -0
  834. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_nano2_lite_capability.py +0 -0
  835. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_nano_banana_21_wire.py +0 -0
  836. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_networkidle_bootstrap_cost.py +0 -0
  837. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_offscreen_window.py +0 -0
  838. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_omni_flash_i2v_ui_recon.py +0 -0
  839. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_patch_entity.py +0 -0
  840. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_patchright.py +0 -0
  841. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_picker_chip_removal.py +0 -0
  842. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_picker_entity_marker.py +0 -0
  843. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_playwright_chrome_login.py +0 -0
  844. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_playwright_max_retries.py +0 -0
  845. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_project_media_status.py +0 -0
  846. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_recaptcha_error_shape.py +0 -0
  847. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_recover_stranded_clip.py +0 -0
  848. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_ref_gate.py +0 -0
  849. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_s3_test_backend.py +0 -0
  850. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_session_oracle.py +0 -0
  851. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_stealth_fingerprint_delta.py +0 -0
  852. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_trpc_origin_referer_401.py +0 -0
  853. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_two_domain_protocol_survey.py +0 -0
  854. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_upload_token_join.py +0 -0
  855. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_upscale_lost_body.py +0 -0
  856. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_upscale_menu_anchors.py +0 -0
  857. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_video_tab_dom.py +0 -0
  858. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_video_workflow_id.py +0 -0
  859. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/spike_warm_client_unported_form.py +0 -0
  860. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/verify_lang_settle_fix.py +0 -0
  861. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/verify_language_agnostic.py +0 -0
  862. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/verify_locale_navigation_race.py +0 -0
  863. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/dev/verify_model_attribution.py +0 -0
  864. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/README.md +0 -0
  865. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/capture_flow_traffic.py +0 -0
  866. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/diag_aisandbox_bearer.py +0 -0
  867. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/memory_profile.py +0 -0
  868. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/recaptcha_mint.py +0 -0
  869. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/diag/spike_387_openai_compat.py +0 -0
  870. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/e2e/agentic_image_e2e.ps1 +0 -0
  871. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/e2e/capture_agent_toggle.py +0 -0
  872. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/probe/run_probe.py +0 -0
  873. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/probe/spike_auth_matrix.py +0 -0
  874. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/record_demo.ps1 +0 -0
  875. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/smoke_image.py +0 -0
  876. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/smoke_video_editor.py +0 -0
  877. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/smoke_worker_style.py +0 -0
  878. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/spike_waf_camoufox.py +0 -0
  879. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/scripts/verify_chrome_auth_viability.py +0 -0
  880. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/README.md +0 -0
  881. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/changelog/SKILL.md +0 -0
  882. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/check/SKILL.md +0 -0
  883. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/doc-review/SKILL.md +0 -0
  884. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/issue-assessment/SKILL.md +0 -0
  885. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/issue-resolve/SKILL.md +0 -0
  886. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/known-issues/SKILL.md +0 -0
  887. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/live-verify/SKILL.md +0 -0
  888. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/llm-council/SKILL.md +0 -0
  889. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/plan/SKILL.md +0 -0
  890. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/pr-council-review/SKILL.md +0 -0
  891. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/predict/SKILL.md +0 -0
  892. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/release/SKILL.md +0 -0
  893. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/scenario/SKILL.md +0 -0
  894. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/sonar/SKILL.md +0 -0
  895. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/spike/SKILL.md +0 -0
  896. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/status/SKILL.md +0 -0
  897. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/SKILL.md +0 -0
  898. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/clip_qa.py +0 -0
  899. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/composition.md +0 -0
  900. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/consistency.md +0 -0
  901. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/failure-modes.md +0 -0
  902. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/skills/video-production/tasks.json +0 -0
  903. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/sonar-project.properties +0 -0
  904. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/__main__.py +0 -0
  905. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/_cli_helpers.py +0 -0
  906. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/__init__.py +0 -0
  907. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/_engine.py +0 -0
  908. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/_retry.py +0 -0
  909. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/_sapisidhash.py +0 -0
  910. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/character.py +0 -0
  911. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/dto.py +0 -0
  912. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/extend_chain.py +0 -0
  913. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/image_upscale.py +0 -0
  914. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/recaptcha.py +0 -0
  915. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/routes.py +0 -0
  916. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/scene.py +0 -0
  917. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/__init__.py +0 -0
  918. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/_common.py +0 -0
  919. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/_fingerprint.py +0 -0
  920. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/agent_only_composer.py +0 -0
  921. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/base.py +0 -0
  922. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/drivers/__init__.py +0 -0
  923. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/drivers/agentic.py +0 -0
  924. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/drivers/base.py +0 -0
  925. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/drivers/classic.py +0 -0
  926. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/drivers/factory.py +0 -0
  927. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/experimental/__init__.py +0 -0
  928. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/experimental/bearer.py +0 -0
  929. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/experimental/evaluate_fetch.py +0 -0
  930. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/migrated_upscale.py +0 -0
  931. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/migrated_video_upscale.py +0 -0
  932. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/transports/mode_control.py +0 -0
  933. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/video.py +0 -0
  934. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/api/video_extend.py +0 -0
  935. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/__init__.py +0 -0
  936. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/base.py +0 -0
  937. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/cookies.py +0 -0
  938. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/factory.py +0 -0
  939. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/renew.py +0 -0
  940. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/auth/strategies.py +0 -0
  941. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/browser_manager.py +0 -0
  942. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/chain.py +0 -0
  943. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/chain_manifest.py +0 -0
  944. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_character.py +0 -0
  945. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_credits.py +0 -0
  946. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_docs.py +0 -0
  947. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_doctor.py +0 -0
  948. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_image.py +0 -0
  949. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_instructions.py +0 -0
  950. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_models.py +0 -0
  951. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_movie.py +0 -0
  952. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_project.py +0 -0
  953. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_run.py +0 -0
  954. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_scene.py +0 -0
  955. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_tools.py +0 -0
  956. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_update.py +0 -0
  957. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/cli_video.py +0 -0
  958. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/composition.py +0 -0
  959. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/config.py +0 -0
  960. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/__init__.py +0 -0
  961. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/chain_repo.py +0 -0
  962. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0001_initial.sql +0 -0
  963. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0002_add_cloud_storage.sql +0 -0
  964. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0003_add_scene_tables.sql +0 -0
  965. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0004_add_scene_output_path.sql +0 -0
  966. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0005_add_chain_links.sql +0 -0
  967. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0006_add_operations_metadata.sql +0 -0
  968. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0007_queue.sql +0 -0
  969. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0008_add_operation_expanded_prompt.sql +0 -0
  970. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/0009_queue_claims.sql +0 -0
  971. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/migrations/__init__.py +0 -0
  972. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/models.py +0 -0
  973. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/queries.py +0 -0
  974. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/recorder.py +0 -0
  975. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/redaction.py +0 -0
  976. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/data/store.py +0 -0
  977. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/diagnostics.py +0 -0
  978. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/docs_catalog.py +0 -0
  979. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/exceptions.py +0 -0
  980. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/file_integrity.py +0 -0
  981. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/flow_selectors/__init__.py +0 -0
  982. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/flow_selectors/grading.py +0 -0
  983. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/flow_selectors/model.py +0 -0
  984. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/flow_selectors/registry.py +0 -0
  985. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/json_output.py +0 -0
  986. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/__init__.py +0 -0
  987. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/prompts.py +0 -0
  988. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/resources.py +0 -0
  989. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/server.py +0 -0
  990. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/setup.py +0 -0
  991. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/mcp/tasks_extension.py +0 -0
  992. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/media.py +0 -0
  993. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/movie_manifest.py +0 -0
  994. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/observability.py +0 -0
  995. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/paths.py +0 -0
  996. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/profile_lease.py +0 -0
  997. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/profile_store.py +0 -0
  998. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/redaction.py +0 -0
  999. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/__init__.py +0 -0
  1000. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/catalog_sync.py +0 -0
  1001. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/character_create.py +0 -0
  1002. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/credits.py +0 -0
  1003. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/doctor.py +0 -0
  1004. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/media_recovery.py +0 -0
  1005. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/mentions.py +0 -0
  1006. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/services/reference_uploads.py +0 -0
  1007. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/storage.py +0 -0
  1008. {gflow_cli-0.92.0/src/gflow_cli/tools/builtin → gflow_cli-0.93.0/src/gflow_cli/tools}/__init__.py +0 -0
  1009. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/banned.py +0 -0
  1010. {gflow_cli-0.92.0/tests → gflow_cli-0.93.0/src/gflow_cli/tools/builtin}/__init__.py +0 -0
  1011. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/builtin/creative-director.toml +0 -0
  1012. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/builtin/reverse-engineer.toml +0 -0
  1013. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/builtin/storyboard.toml +0 -0
  1014. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/expander.py +0 -0
  1015. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/invocation.py +0 -0
  1016. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/loader.py +0 -0
  1017. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/registry.py +0 -0
  1018. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/runtime.py +0 -0
  1019. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/tools/spec.py +0 -0
  1020. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/ui/app.py +0 -0
  1021. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/ui/server.py +0 -0
  1022. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/update_check.py +0 -0
  1023. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/worker/codec.py +0 -0
  1024. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/src/gflow_cli/worker/daemon.py +0 -0
  1025. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tasks/lessons.md +0 -0
  1026. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/test_assets/sample_batch.json +0 -0
  1027. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/test_assets/sample_batch.tsv +0 -0
  1028. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/test_assets/sample_batch_invalid.tsv +0 -0
  1029. {gflow_cli-0.92.0/tests/api → gflow_cli-0.93.0/tests}/__init__.py +0 -0
  1030. {gflow_cli-0.92.0/tests/api/transports → gflow_cli-0.93.0/tests/api}/__init__.py +0 -0
  1031. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/_upscale_fakes.py +0 -0
  1032. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/fixtures/character_gen_response.json +0 -0
  1033. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/fixtures/patch_entity_response.json +0 -0
  1034. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/fixtures/project_initial_data_extend_models.json +0 -0
  1035. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_aisandbox_auth_error.py +0 -0
  1036. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_aisandbox_auth_headers.py +0 -0
  1037. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_aisandbox_auth_remediation.py +0 -0
  1038. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_bearer_redaction.py +0 -0
  1039. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_bootstrap_chooser.py +0 -0
  1040. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_character.py +0 -0
  1041. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_character_readback_fallback.py +0 -0
  1042. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client.py +0 -0
  1043. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_character.py +0 -0
  1044. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_delete_characters.py +0 -0
  1045. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_errors.py +0 -0
  1046. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_extend.py +0 -0
  1047. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_generate_character.py +0 -0
  1048. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_image.py +0 -0
  1049. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_incidents.py +0 -0
  1050. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_locale_cache.py +0 -0
  1051. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_migrated_mint.py +0 -0
  1052. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_patch_entity.py +0 -0
  1053. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_project_host.py +0 -0
  1054. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_scene.py +0 -0
  1055. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_upscale.py +0 -0
  1056. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_client_window_position.py +0 -0
  1057. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_concurrency.py +0 -0
  1058. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_credits.py +0 -0
  1059. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_diagnostics_boundary_890.py +0 -0
  1060. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_dto.py +0 -0
  1061. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_engine.py +0 -0
  1062. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_extend_chain.py +0 -0
  1063. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_image.py +0 -0
  1064. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_image_capability_and_cookie_bar.py +0 -0
  1065. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_image_dto.py +0 -0
  1066. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_image_upscale.py +0 -0
  1067. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_migrated_upscale.py +0 -0
  1068. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_migrated_video_upscale.py +0 -0
  1069. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_post_json_aisandbox_auth.py +0 -0
  1070. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_profile_in_use.py +0 -0
  1071. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_recaptcha.py +0 -0
  1072. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_retry.py +0 -0
  1073. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_routes.py +0 -0
  1074. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_routes_character.py +0 -0
  1075. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_routes_locale.py +0 -0
  1076. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_routes_scene.py +0 -0
  1077. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_sapisidhash_helper.py +0 -0
  1078. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_scene_models.py +0 -0
  1079. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_served_route_parked_page.py +0 -0
  1080. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_upload_reference.py +0 -0
  1081. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_video.py +0 -0
  1082. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_video_extend.py +0 -0
  1083. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_video_request.py +0 -0
  1084. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/test_video_status_poll.py +0 -0
  1085. {gflow_cli-0.92.0/tests/api/transports/drivers → gflow_cli-0.93.0/tests/api/transports}/__init__.py +0 -0
  1086. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/_ogiz0b.py +0 -0
  1087. {gflow_cli-0.92.0/tests/cli → gflow_cli-0.93.0/tests/api/transports/drivers}/__init__.py +0 -0
  1088. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/drivers/test_classic.py +0 -0
  1089. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/drivers/test_factory.py +0 -0
  1090. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/drivers/test_ui_mode.py +0 -0
  1091. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_agent_only_composer.py +0 -0
  1092. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_agent_only_composer_driver.py +0 -0
  1093. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_agentic_cohort_detection.py +0 -0
  1094. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_base.py +0 -0
  1095. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_batchexecute.py +0 -0
  1096. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_character_model_picker.py +0 -0
  1097. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_click_attribution.py +0 -0
  1098. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_common.py +0 -0
  1099. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_diagnostics_boundary_1062.py +0 -0
  1100. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_evaluate_fetch.py +0 -0
  1101. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_factory.py +0 -0
  1102. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_fingerprint.py +0 -0
  1103. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_flow_access_unavailable.py +0 -0
  1104. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_hidden_model_picker.py +0 -0
  1105. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_ligature_carrier.py +0 -0
  1106. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_dispatch.py +0 -0
  1107. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_existing_refs.py +0 -0
  1108. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_extend.py +0 -0
  1109. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_host_gate.py +0 -0
  1110. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_images.py +0 -0
  1111. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_mention_order.py +0 -0
  1112. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_project.py +0 -0
  1113. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_recover.py +0 -0
  1114. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_migrated_route.py +0 -0
  1115. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_missing_project_landing_paths.py +0 -0
  1116. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_mode_control.py +0 -0
  1117. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_model_selection_loud.py +0 -0
  1118. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_navigation_settled.py +0 -0
  1119. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_new_project_cta_migrated.py +0 -0
  1120. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_policy_400.py +0 -0
  1121. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_selector_symmetry.py +0 -0
  1122. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_signed_media_retry.py +0 -0
  1123. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_upscale_tile_listed_late.py +0 -0
  1124. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/api/transports/test_video_model_selection_loud.py +0 -0
  1125. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/strategies/test_factory.py +0 -0
  1126. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/strategies/test_strategies.py +0 -0
  1127. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/test_account_autoselect.py +0 -0
  1128. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/test_cookies.py +0 -0
  1129. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/test_renew.py +0 -0
  1130. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/auth/test_windows_acl.py +0 -0
  1131. {gflow_cli-0.92.0/tests/data → gflow_cli-0.93.0/tests/cli}/__init__.py +0 -0
  1132. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_auth_renew.py +0 -0
  1133. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_auth_status.py +0 -0
  1134. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_auth_error_paths.py +0 -0
  1135. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_auth_list.py +0 -0
  1136. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_character.py +0 -0
  1137. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_character_create.py +0 -0
  1138. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_credits.py +0 -0
  1139. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_data.py +0 -0
  1140. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_data_errors.py +0 -0
  1141. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_data_errors_retention.py +0 -0
  1142. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_data_sync.py +0 -0
  1143. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_docs.py +0 -0
  1144. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_doctor.py +0 -0
  1145. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_image.py +0 -0
  1146. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_image_seed_removed.py +0 -0
  1147. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_image_selector_drift.py +0 -0
  1148. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_image_upscale.py +0 -0
  1149. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_image_uuid_ref_enrichment.py +0 -0
  1150. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_instructions.py +0 -0
  1151. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_movie.py +0 -0
  1152. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_run.py +0 -0
  1153. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_scene.py +0 -0
  1154. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_tools.py +0 -0
  1155. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_video.py +0 -0
  1156. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_video_chain.py +0 -0
  1157. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_video_extend.py +0 -0
  1158. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cli_video_upscale.py +0 -0
  1159. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_cloud_storage_local_output.py +0 -0
  1160. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_default_project.py +0 -0
  1161. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_docs_catalog_real_docs.py +0 -0
  1162. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_error_handling.py +0 -0
  1163. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_failure_funnel.py +0 -0
  1164. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_helpers.py +0 -0
  1165. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_incident_output.py +0 -0
  1166. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_movie_manifest.py +0 -0
  1167. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_movie_manifest_style_variants.py +0 -0
  1168. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_predictable_output.py +0 -0
  1169. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_run_with_handlers_context_leak.py +0 -0
  1170. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_run_with_handlers_interrupt.py +0 -0
  1171. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_settings_validation.py +0 -0
  1172. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_t2i_multi_prompt.py +0 -0
  1173. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/cli/test_video_recording_busy.py +0 -0
  1174. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/composition/test_character.py +0 -0
  1175. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/composition/test_compose_prompt.py +0 -0
  1176. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/composition/test_handoff.py +0 -0
  1177. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/composition/test_style_variants.py +0 -0
  1178. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/composition/test_style_variants_e2e.py +0 -0
  1179. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/conftest.py +0 -0
  1180. {gflow_cli-0.92.0/tests/e2e → gflow_cli-0.93.0/tests/data}/__init__.py +0 -0
  1181. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_chain_repo.py +0 -0
  1182. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_failure_recording.py +0 -0
  1183. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_find_incomplete_character.py +0 -0
  1184. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_models.py +0 -0
  1185. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_null_columns_stay_null.py +0 -0
  1186. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_packaging.py +0 -0
  1187. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_recorder.py +0 -0
  1188. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_recorder_character.py +0 -0
  1189. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_redaction.py +0 -0
  1190. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_scene_persistence.py +0 -0
  1191. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_settings_and_errors.py +0 -0
  1192. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_store.py +0 -0
  1193. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_store_migrations.py +0 -0
  1194. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/data/test_store_transaction_errors.py +0 -0
  1195. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/dev/test_recording_client.py +0 -0
  1196. {gflow_cli-0.92.0/tests/features → gflow_cli-0.93.0/tests/e2e}/__init__.py +0 -0
  1197. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/conftest.py +0 -0
  1198. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_agent_only_composer_bdd.py +0 -0
  1199. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_agentic_count_enforcement_e2e.py +0 -0
  1200. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_aisandbox_auth_live.py +0 -0
  1201. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_asset_tagging_e2e.py +0 -0
  1202. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_auth_renew_e2e.py +0 -0
  1203. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_auth_status_mcp_e2e.py +0 -0
  1204. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_auth_verification_e2e.py +0 -0
  1205. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_blocking_dialog_dismissal_bdd.py +0 -0
  1206. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_browser_proxy_e2e.py +0 -0
  1207. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_cancellation_e2e.py +0 -0
  1208. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_chain_e2e.py +0 -0
  1209. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_character_create_e2e.py +0 -0
  1210. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_character_mcp_parity_e2e.py +0 -0
  1211. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_classic_count_setter_e2e.py +0 -0
  1212. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_click_attribution_bdd.py +0 -0
  1213. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_crash_recovery_e2e.py +0 -0
  1214. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_credits_mcp_e2e.py +0 -0
  1215. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_credits_on_flow_bdd.py +0 -0
  1216. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_credits_refresh_e2e.py +0 -0
  1217. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_daemon_e2e.py +0 -0
  1218. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_data_download_e2e.py +0 -0
  1219. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_data_layer_e2e.py +0 -0
  1220. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_data_sync_names_e2e.py +0 -0
  1221. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_default_project_e2e.py +0 -0
  1222. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_e2e_env_isolation.py +0 -0
  1223. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_earlier_run_ref_in_place_bdd.py +0 -0
  1224. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_entity_provenance_e2e.py +0 -0
  1225. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_entity_smuggling_e2e.py +0 -0
  1226. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_frame_picker_binding_bdd.py +0 -0
  1227. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_i2v_flags_e2e.py +0 -0
  1228. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_image_batch_e2e.py +0 -0
  1229. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_image_download_failure_records_bdd.py +0 -0
  1230. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_image_i2i_ref_cap_e2e.py +0 -0
  1231. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_image_uuid_ref_e2e.py +0 -0
  1232. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_incident_quality_e2e.py +0 -0
  1233. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_insufficient_credits_e2e.py +0 -0
  1234. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_json_output_e2e.py +0 -0
  1235. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_live_agentic_instructions.py +0 -0
  1236. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_local_ref_uploaded_once_bdd.py +0 -0
  1237. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_locale_selectors_e2e.py +0 -0
  1238. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_login_identity_recheck_e2e.py +0 -0
  1239. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_manifest_refs_bdd.py +0 -0
  1240. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_mcp_wait_false_bdd.py +0 -0
  1241. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_host_e2e.py +0 -0
  1242. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_i2v_e2e.py +0 -0
  1243. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_image_character_mention_bdd.py +0 -0
  1244. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_locale_e2e.py +0 -0
  1245. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_presubmit_gate_e2e.py +0 -0
  1246. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_r2v_character_bdd.py +0 -0
  1247. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_r2v_character_matrix_bdd.py +0 -0
  1248. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_refusal_live_bdd.py +0 -0
  1249. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_rpc_readback_bdd.py +0 -0
  1250. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_selector_drift_e2e.py +0 -0
  1251. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_migrated_upscale_e2e.py +0 -0
  1252. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_missing_project_e2e.py +0 -0
  1253. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_missing_project_upscale_extend_e2e.py +0 -0
  1254. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_project_create_e2e.py +0 -0
  1255. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_project_create_slow_link_e2e.py +0 -0
  1256. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_project_naming_e2e.py +0 -0
  1257. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_recaptcha_error_shape_bdd.py +0 -0
  1258. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_refresh_on_miss_e2e.py +0 -0
  1259. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_retired_labs_route_diagnosis_e2e.py +0 -0
  1260. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_run_resume_e2e.py +0 -0
  1261. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_scene_compose_live.py +0 -0
  1262. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_sidebar_recovery_e2e.py +0 -0
  1263. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_signed_url_http_error_e2e.py +0 -0
  1264. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_standalone_window_position_e2e.py +0 -0
  1265. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_t2i_batch_project_e2e.py +0 -0
  1266. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_tools_e2e.py +0 -0
  1267. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_transports_e2e.py +0 -0
  1268. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_video_extend_migrated_e2e.py +0 -0
  1269. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_video_r2v_ref_cap_e2e.py +0 -0
  1270. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_video_r2v_uuid_name_e2e.py +0 -0
  1271. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_video_t2v_e2e.py +0 -0
  1272. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/e2e/test_warm_client_upscale_e2e.py +0 -0
  1273. {gflow_cli-0.92.0/tests/fixtures → gflow_cli-0.93.0/tests/features}/__init__.py +0 -0
  1274. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/agent_only_composer_live.feature +0 -0
  1275. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/asset_tagging.feature +0 -0
  1276. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/auth.feature +0 -0
  1277. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/auth_login.feature +0 -0
  1278. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/blocking_dialog_dismissal.feature +0 -0
  1279. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/character_create.feature +0 -0
  1280. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/character_read.feature +0 -0
  1281. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/click_attribution.feature +0 -0
  1282. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/conftest.py +0 -0
  1283. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/credits.feature +0 -0
  1284. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/credits_on_flow.feature +0 -0
  1285. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/duration_tab_drift.feature +0 -0
  1286. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/earlier_run_ref_in_place.feature +0 -0
  1287. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/entity_provenance.feature +0 -0
  1288. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/frame_picker_binding.feature +0 -0
  1289. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/image.feature +0 -0
  1290. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/image_batch_references.feature +0 -0
  1291. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/image_download_failure_records.feature +0 -0
  1292. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/image_upscale.feature +0 -0
  1293. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/incident_diagnostics.feature +0 -0
  1294. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/instructions.feature +0 -0
  1295. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/landing_state_diagnosis.feature +0 -0
  1296. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/latched_locale_recovery.feature +0 -0
  1297. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/local_ref_uploaded_once.feature +0 -0
  1298. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/locale_picker_include.feature +0 -0
  1299. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/manifest_refs_live.feature +0 -0
  1300. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/mcp_tasks.feature +0 -0
  1301. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/mcp_wait_false.feature +0 -0
  1302. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/media_picker_tiers.feature +0 -0
  1303. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_driver.feature +0 -0
  1304. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_host_gate.feature +0 -0
  1305. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_host_images.feature +0 -0
  1306. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_i2v.feature +0 -0
  1307. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_image_character_mention.feature +0 -0
  1308. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_r2v_character.feature +0 -0
  1309. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_r2v_character_matrix.feature +0 -0
  1310. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_refusal_envelope.feature +0 -0
  1311. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_refusal_live.feature +0 -0
  1312. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_rpc_readback.feature +0 -0
  1313. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/migrated_submit_body_loss.feature +0 -0
  1314. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/output_hardening.feature +0 -0
  1315. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/recaptcha_error_shape.feature +0 -0
  1316. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_asset_tagging_steps.py +0 -0
  1317. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_auth_login_steps.py +0 -0
  1318. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_auth_steps.py +0 -0
  1319. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_character_create_steps.py +0 -0
  1320. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_character_read_steps.py +0 -0
  1321. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_credits_steps.py +0 -0
  1322. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_e2e_binding_guard.py +0 -0
  1323. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_image_steps.py +0 -0
  1324. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_image_upscale_steps.py +0 -0
  1325. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_incident_diagnostics_steps.py +0 -0
  1326. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_instructions_steps.py +0 -0
  1327. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_locale_picker_include_steps.py +0 -0
  1328. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_mcp_tasks_steps.py +0 -0
  1329. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_migrated_driver_steps.py +0 -0
  1330. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_migrated_host_gate_steps.py +0 -0
  1331. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_migrated_host_images_steps.py +0 -0
  1332. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_migrated_i2v_steps.py +0 -0
  1333. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_migrated_refusal_envelope_steps.py +0 -0
  1334. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_output_hardening_steps.py +0 -0
  1335. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_step_collision_guard.py +0 -0
  1336. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/test_video_chain_steps.py +0 -0
  1337. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/video_agent_ui.feature +0 -0
  1338. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/features/video_chain.feature +0 -0
  1339. {gflow_cli-0.92.0/tests/flow_selectors → gflow_cli-0.93.0/tests/fixtures}/__init__.py +0 -0
  1340. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/changelog_modal_page.html +0 -0
  1341. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/doctor_env.py +0 -0
  1342. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/flow_model_inventory.json +0 -0
  1343. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/flow_project_listing_media.json +0 -0
  1344. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/listing_payload.py +0 -0
  1345. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/seeded_catalog.py +0 -0
  1346. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/fixtures/settings_mock.py +0 -0
  1347. {gflow_cli-0.92.0/tests/image_batch → gflow_cli-0.93.0/tests/flow_selectors}/__init__.py +0 -0
  1348. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/flow_selectors/test_grading.py +0 -0
  1349. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/flow_selectors/test_model.py +0 -0
  1350. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/flow_selectors/test_model_governance.py +0 -0
  1351. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/flow_selectors/test_registry.py +0 -0
  1352. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/flow_selectors/test_report.py +0 -0
  1353. {gflow_cli-0.92.0/tests/integration → gflow_cli-0.93.0/tests/image_batch}/__init__.py +0 -0
  1354. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/image_batch/test_image_manifest.py +0 -0
  1355. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/image_batch/test_jitter_config.py +0 -0
  1356. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/image_batch/test_observability_events.py +0 -0
  1357. {gflow_cli-0.92.0/tests/services → gflow_cli-0.93.0/tests/integration}/__init__.py +0 -0
  1358. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/conftest.py +0 -0
  1359. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/constants.py +0 -0
  1360. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/test_docs_ships_in_wheel.py +0 -0
  1361. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/test_expander_gateway.py +0 -0
  1362. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/test_migrated_video_storage_s3.py +0 -0
  1363. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/test_storage_gcs.py +0 -0
  1364. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/integration/test_storage_s3.py +0 -0
  1365. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/__init__.py +0 -0
  1366. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/conftest.py +0 -0
  1367. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_auth_status_tool.py +0 -0
  1368. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_character_tools.py +0 -0
  1369. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_cli_parity.py +0 -0
  1370. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_credits_tool.py +0 -0
  1371. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_download_error_envelope.py +0 -0
  1372. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_error_funnel.py +0 -0
  1373. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_http_transport.py +0 -0
  1374. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_known_issues_resource.py +0 -0
  1375. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_mcp_profile_contention.py +0 -0
  1376. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_migrated_i2v_parity.py +0 -0
  1377. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_no_spend.py +0 -0
  1378. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_output_confinement.py +0 -0
  1379. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_payload_key_round_trip.py +0 -0
  1380. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_rate_limit_envelope.py +0 -0
  1381. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_reference_entity_round_trip.py +0 -0
  1382. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_resources.py +0 -0
  1383. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_serve_auth.py +0 -0
  1384. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_server.py +0 -0
  1385. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_setup.py +0 -0
  1386. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_stdio_transport.py +0 -0
  1387. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_tasks_extension.py +0 -0
  1388. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_tools_helpers.py +0 -0
  1389. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_tools_instructions.py +0 -0
  1390. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_tools_wired.py +0 -0
  1391. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_upscale_tool.py +0 -0
  1392. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/mcp/test_wait_parameter_documented.py +0 -0
  1393. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_analyze_agent_ui_capture.py +0 -0
  1394. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_canary_classify.py +0 -0
  1395. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_canary_reexec.py +0 -0
  1396. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_capture_locale_invariants.py +0 -0
  1397. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_capture_video_model_capability_matrix.py +0 -0
  1398. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_council_memory.py +0 -0
  1399. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_deletions.py +0 -0
  1400. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_fork_pr_ci.py +0 -0
  1401. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_materiality.py +0 -0
  1402. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_release_artifacts.py +0 -0
  1403. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_repo_hygiene.py +0 -0
  1404. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_check_website_docs_pii.py +0 -0
  1405. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_cleanup.py +0 -0
  1406. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_codex_plugin.py +0 -0
  1407. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_extract_har_summary.py +0 -0
  1408. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_frame_acceptance.py +0 -0
  1409. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_generate_website_docs.py +0 -0
  1410. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_incident_bundle_quality.py +0 -0
  1411. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_materiality_backtest.py +0 -0
  1412. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_skillopt_scoring.py +0 -0
  1413. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_spike_page_pool.py +0 -0
  1414. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_spike_profile_lease.py +0 -0
  1415. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_update_sponsors.py +0 -0
  1416. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/scripts/test_workflow_hardening.py +0 -0
  1417. {gflow_cli-0.92.0/tests/smoke → gflow_cli-0.93.0/tests/services}/__init__.py +0 -0
  1418. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_catalog_sync.py +0 -0
  1419. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_character_create_redaction.py +0 -0
  1420. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_character_create_saga.py +0 -0
  1421. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_character_gen_no_direct_post.py +0 -0
  1422. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_credits.py +0 -0
  1423. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_doctor.py +0 -0
  1424. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_media_attribution.py +0 -0
  1425. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_media_recovery.py +0 -0
  1426. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_mentions_observability.py +0 -0
  1427. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_mentions_parse.py +0 -0
  1428. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_mentions_resolve.py +0 -0
  1429. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_reference_uploads.py +0 -0
  1430. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/services/test_resolve_and_apply.py +0 -0
  1431. {gflow_cli-0.92.0/tests/tools → gflow_cli-0.93.0/tests/smoke}/__init__.py +0 -0
  1432. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/smoke/test_profile_account_smoke.py +0 -0
  1433. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/smoke/test_real_flow.py +0 -0
  1434. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_about_landing_guard.py +0 -0
  1435. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_auth.py +0 -0
  1436. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_batch_outcomes.py +0 -0
  1437. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_batch_recording.py +0 -0
  1438. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_batch_ref_wiring.py +0 -0
  1439. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_browser_proxy.py +0 -0
  1440. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_chain.py +0 -0
  1441. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_chain_manifest.py +0 -0
  1442. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_cli_data.py +0 -0
  1443. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_cli_project.py +0 -0
  1444. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_cli_update.py +0 -0
  1445. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_config.py +0 -0
  1446. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_config_agent_confirm.py +0 -0
  1447. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_conftest_isolation.py +0 -0
  1448. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_data_queries.py +0 -0
  1449. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_bundle.py +0 -0
  1450. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_events.py +0 -0
  1451. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_journal.py +0 -0
  1452. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_recorder.py +0 -0
  1453. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_retention.py +0 -0
  1454. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_diagnostics_sanitize.py +0 -0
  1455. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_dockerfile_version_pin.py +0 -0
  1456. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_documentation_gate.py +0 -0
  1457. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_duration_tab_drift.py +0 -0
  1458. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_e2e_env_home.py +0 -0
  1459. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_entity_provenance.py +0 -0
  1460. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_errors.py +0 -0
  1461. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_errors_classification.py +0 -0
  1462. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_glama_build_spec.py +0 -0
  1463. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_image_batch_references.py +0 -0
  1464. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_image_download_failure_records.py +0 -0
  1465. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_incident_generation_requests.py +0 -0
  1466. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_json_output.py +0 -0
  1467. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_manifest_refs.py +0 -0
  1468. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_marker_registry.py +0 -0
  1469. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_media.py +0 -0
  1470. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_observability.py +0 -0
  1471. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_paths.py +0 -0
  1472. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_playwright_pin.py +0 -0
  1473. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_plugin_manifests.py +0 -0
  1474. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_profile_lease.py +0 -0
  1475. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_profile_lease_subprocess.py +0 -0
  1476. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_profile_store.py +0 -0
  1477. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_profile_store_locale.py +0 -0
  1478. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_project_list_urls.py +0 -0
  1479. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_release_version_sites.py +0 -0
  1480. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_rich_markup_safety.py +0 -0
  1481. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_self_documenting_errors.py +0 -0
  1482. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_server_json.py +0 -0
  1483. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_smoke.py +0 -0
  1484. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_storage_write_error.py +0 -0
  1485. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/test_update_check.py +0 -0
  1486. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_banned.py +0 -0
  1487. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_expander.py +0 -0
  1488. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_invocation.py +0 -0
  1489. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_loader.py +0 -0
  1490. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_registry.py +0 -0
  1491. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_runtime.py +0 -0
  1492. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/tools/test_spec.py +0 -0
  1493. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/ui/test_app.py +0 -0
  1494. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_codec.py +0 -0
  1495. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_codec_image_ref_project.py +0 -0
  1496. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_daemon.py +0 -0
  1497. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_mcp_daemon_race.py +0 -0
  1498. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_queue.py +0 -0
  1499. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_queue_multiprocess.py +0 -0
  1500. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/tests/worker/test_queue_reconciliation.py +0 -0
  1501. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/ACCOUNT_SAFETY.md +0 -0
  1502. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/CHARACTER.md +0 -0
  1503. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/DATA_LAYER.md +0 -0
  1504. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/DEBUGGING.md +0 -0
  1505. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/DEVELOPMENT.md +0 -0
  1506. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/EXTERNAL_STORAGE.md +0 -0
  1507. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/INSTRUCTIONS.md +0 -0
  1508. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/MEDIA_LIBRARY.md +0 -0
  1509. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/MOVIE.md +0 -0
  1510. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/PROMPT_EXPANSION.md +0 -0
  1511. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/SPONSORS.md +0 -0
  1512. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/TOOLS.md +0 -0
  1513. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/USER_GUIDE.md +0 -0
  1514. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/agents.md +0 -0
  1515. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/index.md +0 -0
  1516. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/installation.md +0 -0
  1517. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/onboarding-mockup.html +0 -0
  1518. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/onboarding.md +0 -0
  1519. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/docs/stylesheets/extra.css +0 -0
  1520. {gflow_cli-0.92.0 → gflow_cli-0.93.0}/website/mkdocs.yml +0 -0
@@ -0,0 +1,34 @@
1
+ {
2
+ "name": "gflow",
3
+ "version": "0.93.0",
4
+ "description": "Reusable development and operations workflows for gflow-cli",
5
+ "author": {
6
+ "name": "Flavio Oliva",
7
+ "url": "https://github.com/ffroliva"
8
+ },
9
+ "homepage": "https://github.com/ffroliva/gflow-cli",
10
+ "repository": "https://github.com/ffroliva/gflow-cli",
11
+ "license": "MIT",
12
+ "keywords": [
13
+ "gflow-cli",
14
+ "codex",
15
+ "google-flow"
16
+ ],
17
+ "skills": "./plugins/gflow/skills/",
18
+ "interface": {
19
+ "displayName": "gflow-cli",
20
+ "shortDescription": "Develop, validate, review, and operate gflow-cli.",
21
+ "longDescription": "Project workflows for planning, validation, issue handling, reviews, releases, and Google Flow CLI operations.",
22
+ "developerName": "Flavio Oliva",
23
+ "category": "Developer Tools",
24
+ "capabilities": [
25
+ "Interactive",
26
+ "Write"
27
+ ],
28
+ "websiteURL": "https://github.com/ffroliva/gflow-cli",
29
+ "defaultPrompt": [
30
+ "Show the current gflow-cli task with $gflow:status.",
31
+ "Run the gflow-cli quality gates with $gflow:check."
32
+ ]
33
+ }
34
+ }
@@ -0,0 +1,565 @@
1
+ name: CI
2
+
3
+ on:
4
+ push:
5
+ branches: [develop, main]
6
+ pull_request:
7
+
8
+ # Least-privilege default token for every job (OpenSSF Scorecard:
9
+ # Token-Permissions). Jobs that need more elevate per-job below.
10
+ permissions:
11
+ contents: read
12
+
13
+ env:
14
+ # Suppress Node.js deprecation warnings and align with user request to use Node 22/remove noise.
15
+ ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION: true
16
+ NODE_VERSION: '22'
17
+
18
+ jobs:
19
+ # ── Security gate: runs first, on every push/PR, never skippable ──────────
20
+ secrets-scan:
21
+ name: Secret scan (gitleaks)
22
+ runs-on: ubuntu-latest
23
+ permissions:
24
+ contents: read
25
+ pull-requests: write # gitleaks-action PR feedback comments
26
+ steps:
27
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
28
+ with:
29
+ persist-credentials: false
30
+ fetch-depth: 0 # full history so gitleaks can diff against base
31
+
32
+ - name: Run gitleaks
33
+ uses: gitleaks/gitleaks-action@e0c47f4f8be36e29cdc102c57e68cb5cbf0e8d1e # v3
34
+ env:
35
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
36
+
37
+ # ── Security gate: dependency CVE audit against locked deps ──────────────
38
+ deps-audit:
39
+ name: Dependency audit (pip-audit)
40
+ runs-on: ubuntu-latest
41
+ steps:
42
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
43
+ with:
44
+ persist-credentials: false
45
+ - name: Install uv
46
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
47
+ - name: Audit locked dependencies for known CVEs
48
+ # Fails the build on any known advisory. Accept later via: pip-audit --ignore-vuln <GHSA-id>
49
+ #
50
+ # `--all-extras` is REQUIRED, not tidiness. Without it `uv export` emits
51
+ # only the default dependency group, so everything reachable solely
52
+ # through an optional extra is never audited. That blind spot was real:
53
+ # aiohttp 3.13.5 and pyasn1 0.6.3 sat in uv.lock with published high
54
+ # advisories while this gate reported clean, because both arrive via the
55
+ # `gcs`/`s3` extras (gcsfs / s3fs / google-auth). GitHub's Dependabot
56
+ # alerts flagged them against uv.lock; this gate could not see them.
57
+ run: |
58
+ uv export --frozen --all-extras --format requirements-txt --no-emit-project > requirements-audit.txt
59
+ # pip-audit version pinned for a reproducible gate (uvx has no
60
+ # dependabot ecosystem — bump by hand when it drifts).
61
+ uvx pip-audit==2.10.1 -r requirements-audit.txt
62
+
63
+ # ── Security gate: static analysis of the workflows themselves ───────────
64
+ # Everything else in this file audits the Python we ship. Nothing audited the
65
+ # CI that ships it, and CI is a supply-chain surface in its own right: it
66
+ # holds a repository token, it publishes to PyPI, and its inputs (branch
67
+ # names, PR titles, fork content) are attacker-controllable text.
68
+ #
69
+ # zizmor is what turns that into a gate. It found real defects on its first
70
+ # run over this repo (#565): 12 checkouts persisting the job token into the
71
+ # workspace, and `${{ github.base_ref }}` interpolated straight into a
72
+ # governance-advisory shell script. Both are fixed; this job is what stops
73
+ # them coming back one copy-pasted step at a time.
74
+ workflow-audit:
75
+ name: Workflow audit (zizmor)
76
+ runs-on: ubuntu-latest
77
+ steps:
78
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
79
+ with:
80
+ persist-credentials: false
81
+
82
+ - name: Install uv
83
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
84
+
85
+ - name: Audit workflows (zizmor)
86
+ # --offline: the online audits need a GH token and reach the network, so
87
+ # they would make this gate non-deterministic and unrunnable on fork
88
+ # PRs. Action freshness/pinning is already covered by Dependabot plus
89
+ # Scorecard's Pinned-Dependencies check.
90
+ # --min-severity low: informational findings are advisory, not defects.
91
+ # The one open today is `superfluous-actions` on
92
+ # softprops/action-gh-release; rewriting the release publisher is not
93
+ # a hardening change and is deliberately declined (docs/GITHUB.md).
94
+ # Version pinned for a reproducible gate — uvx has no Dependabot
95
+ # ecosystem, so bump it by hand (the pin is asserted by
96
+ # tests/scripts/test_workflow_hardening.py, which fails if the two drift).
97
+ run: uvx zizmor==1.29.0 --offline --min-severity low .github/workflows/
98
+
99
+ # ── Supply-chain gate: resolve WITHOUT the lockfile ───────────────────────
100
+ # Every other job installs via `uv sync`, which honours uv.lock. That means CI
101
+ # never exercises the version RANGES in pyproject.toml — the exact blind spot
102
+ # that let `mcp>=1.0.0` (unbounded) ship a broken MCP surface to every fresh
103
+ # `pip install gflow-cli` while CI stayed green: mcp 2.0.0 deleted
104
+ # `mcp.server.fastmcp`, which the server imports at module load.
105
+ #
106
+ # This job installs the way a USER does — from the declared ranges, newest
107
+ # compatible versions, no lockfile — and smoke-imports the surfaces that break
108
+ # first. It is what turns "a dependency published a major bump" from a user
109
+ # bug report into a CI failure.
110
+ resolve-drift:
111
+ name: Dependency resolution drift (no lockfile)
112
+ runs-on: ubuntu-latest
113
+ steps:
114
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
115
+ with:
116
+ persist-credentials: false
117
+
118
+ - name: Install uv
119
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
120
+
121
+ - name: Set up Python
122
+ run: uv python install 3.13
123
+
124
+ - name: Install from pyproject ranges (ignore uv.lock)
125
+ # --upgrade resolves to the newest versions the ranges allow, so a newly
126
+ # published major that our bounds do not exclude is caught here.
127
+ run: |
128
+ uv venv
129
+ uv pip install --upgrade .
130
+
131
+ - name: Smoke-import the MCP surface
132
+ # Import-time failures (deleted modules, moved symbols) surface here.
133
+ # Registration is a decorator side effect, so a successful import with a
134
+ # non-empty tool registry proves the whole surface still wires up.
135
+ run: |
136
+ uv run --no-sync python - <<'PY'
137
+ from gflow_cli.mcp.server import server, run_stdio, run_http, run_sse
138
+ from gflow_cli.mcp import prompts, resources, tools # noqa: F401
139
+
140
+ n_tools = len(server._tool_manager._tools)
141
+ n_resources = len(server._resource_manager._resources)
142
+ n_prompts = len(server._prompt_manager._prompts)
143
+ print(f"tools={n_tools} resources={n_resources} prompts={n_prompts}")
144
+ assert n_tools, "no MCP tools registered"
145
+ assert n_resources, "no MCP resources registered"
146
+ assert n_prompts, "no MCP prompts registered"
147
+
148
+ import mcp.types as t
149
+ print("negotiable protocol ceiling:", t.LATEST_PROTOCOL_VERSION)
150
+ PY
151
+
152
+ - name: Smoke-run the CLI entry points
153
+ run: |
154
+ uv run --no-sync gflow --version
155
+ uv run --no-sync gflow --help
156
+ uv run --no-sync gflow serve --help
157
+
158
+ - name: Report the resolved versions
159
+ # Printed unconditionally so a green run still records what was resolved.
160
+ if: always()
161
+ run: uv pip list
162
+
163
+ # ── Main test matrix ──────────────────────────────────────────────────────
164
+ # 3.11 and 3.12 run everything in one job each. 3.13 is the coverage job and was
165
+ # the critical path (Chromium, real-DOM tests, the hermetic e2e), so it runs as
166
+ # parallel shards below and `test-313` aggregates them under the required name.
167
+ test:
168
+ runs-on: ubuntu-latest
169
+ strategy:
170
+ matrix:
171
+ python-version: ["3.11", "3.12"]
172
+ steps:
173
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
174
+ with:
175
+ persist-credentials: false
176
+
177
+ - name: Install uv
178
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
179
+
180
+ - name: Set up Python
181
+ run: uv python install ${{ matrix.python-version }}
182
+
183
+ # --frozen: install from the committed uv.lock without re-resolving it.
184
+ # Plain `uv sync` REWRITES uv.lock in place, which would silently repair
185
+ # the exact version drift the hygiene gate below exists to catch.
186
+ - name: Install deps
187
+ run: uv sync --frozen --extra dev
188
+
189
+ # --no-sync for the same reason: `uv run` re-locks before running.
190
+ - name: Repo hygiene (no artefacts, no hardcoded paths, version lockstep)
191
+ run: uv run --no-sync python scripts/ci/check_repo_hygiene.py
192
+
193
+ - name: Documentation links
194
+ run: uv run python scripts/ci/check_doc_links.py
195
+
196
+ - name: Website docs PII guard (no private identifiers in the published mirror)
197
+ run: uv run python scripts/ci/check_website_docs_pii.py
198
+
199
+ - name: Website docs mirror in sync (regenerate-and-diff)
200
+ run: uv run python scripts/ci/generate_website_docs.py --check
201
+
202
+ - name: Council memory (every cited slug resolves, every file is cited)
203
+ run: uv run python scripts/ci/check_council_memory.py
204
+
205
+ - name: Plugin skills in sync (curated payload, no maintainer-only skill shipped)
206
+ run: uv run python scripts/ci/generate_plugin_skills.py --check
207
+
208
+ - name: Lint
209
+ run: uv run ruff check src tests
210
+
211
+ - name: Format check
212
+ run: uv run ruff format --check src tests
213
+
214
+ - name: Type check
215
+ run: uv run pyright src
216
+
217
+ - name: Test (smoke only)
218
+ # e2e/live tests require a logged-in Chromium profile and may spend
219
+ # Flow credits. pyproject.toml excludes both markers by default; CI
220
+ # intentionally relies on that default smoke set.
221
+ # -n auto: pytest-xdist, one worker per runner vCPU (~2x on the full suite;
222
+ # 198 s vs ~390 s measured locally at -n 8).
223
+ # --dist worksteal: the default `load` hands each worker a fixed chunk up
224
+ # front, and test_agent_only_composer_driver.py's 85 contiguous tests all
225
+ # landed on one worker (338 s there, ~20 s on the other three, measured).
226
+ run: uv run python -m pytest -q -n auto --dist worksteal --junitxml=pytest-report.xml
227
+
228
+ - name: Test-count guard (a green build that ran nothing is not green)
229
+ # Floor well below the real count (~2900): catches collection collapse
230
+ # (bad marker/-k filter, broken conftest), never routine deletions.
231
+ run: uv run python scripts/ci/check_test_count.py pytest-report.xml 2000
232
+
233
+ # ── 3.13: three unit shards + the hermetic e2e, in parallel ───────────────
234
+ # GFLOW_TEST_SHARD=k/N makes root conftest.py keep only shard k's files, split
235
+ # by whole file and balanced on tests/test_durations.json
236
+ # (scripts/ci/shard_tests.py). Every file runs in exactly one shard; the count
237
+ # floor is checked over the SUM in `test-313`, never per shard.
238
+ test-313-shard:
239
+ name: test 3.13 (${{ matrix.shard }})
240
+ runs-on: ubuntu-latest
241
+ strategy:
242
+ fail-fast: false
243
+ matrix:
244
+ shard: ["1/3", "2/3", "3/3", "e2e"]
245
+ env:
246
+ SHARD: ${{ matrix.shard }}
247
+ steps:
248
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
249
+ with:
250
+ persist-credentials: false
251
+
252
+ - name: Install uv
253
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
254
+
255
+ - name: Set up Python
256
+ run: uv python install 3.13
257
+
258
+ - name: Install deps
259
+ run: uv sync --frozen --extra dev
260
+
261
+ # The repo gates are version-independent except pyright; 3.11/3.12 run them
262
+ # too. On 3.13 they ride on the first unit shard, the lightest after the split.
263
+ - name: Repo gates (hygiene, docs, plugin skills, lint, format, types)
264
+ if: matrix.shard == '1/3'
265
+ run: |
266
+ uv run --no-sync python scripts/ci/check_repo_hygiene.py
267
+ uv run python scripts/ci/check_doc_links.py
268
+ uv run python scripts/ci/check_website_docs_pii.py
269
+ uv run python scripts/ci/generate_website_docs.py --check
270
+ uv run python scripts/ci/check_council_memory.py
271
+ uv run python scripts/ci/generate_plugin_skills.py --check
272
+ uv run ruff check src tests
273
+ uv run ruff format --check src tests
274
+ uv run pyright src
275
+
276
+ # The overlay-precondition tests (#593) drive the captured changelog markup in
277
+ # a real headless Chromium — a mock cannot tell you whether
278
+ # `[role='dialog']:has(a[href*='changelog']) button` resolves against Flow's
279
+ # actual DOM, only a real CSS engine can. They skip cleanly when the browser is
280
+ # absent, which would make them silently decorative in CI, so every 3.13 shard
281
+ # installs it. No account, no network, no credits.
282
+ - name: Install Chromium (real-DOM fixture tests)
283
+ run: uv run playwright install chromium --with-deps
284
+
285
+ - name: Test shard + coverage
286
+ if: matrix.shard != 'e2e'
287
+ env:
288
+ GFLOW_TEST_SHARD: ${{ matrix.shard }}
289
+ run: uv run python -m pytest -q -n auto --dist worksteal --cov=gflow_cli --cov-report= --junitxml=pytest-report.xml
290
+
291
+ # Five files under tests/e2e/ are hermetic: every Flow origin is served by
292
+ # `page.route(...).fulfill(...)`, so they need no account, no profile, no
293
+ # network and no credits — only the Chromium installed above. They are the
294
+ # regression tests for #593, #773, #859 and #860, and because `-m e2e` is
295
+ # excluded by pyproject's addopts and no job overrode it, they ran nowhere:
296
+ # a regression of any of those fixes would have gone green. They are the
297
+ # only e2e tests that CAN run here; the other 42 need a logged-in profile.
298
+ - name: E2E (hermetic subset — route-intercepted, $0, no profile)
299
+ if: matrix.shard == 'e2e'
300
+ run: >
301
+ uv run python -m pytest -q -m e2e
302
+ tests/e2e/test_account_chooser_e2e.py
303
+ tests/e2e/test_blocking_dialog_dismissal_bdd.py
304
+ tests/e2e/test_click_attribution_bdd.py
305
+ tests/e2e/test_frame_picker_binding_bdd.py
306
+ tests/e2e/test_landing_state_diagnosis_bdd.py
307
+ --junitxml=pytest-e2e-hermetic.xml
308
+
309
+ - name: E2E-count guard (an empty e2e run is not a passing e2e run)
310
+ if: matrix.shard == 'e2e'
311
+ run: uv run python scripts/ci/check_test_count.py pytest-e2e-hermetic.xml 10
312
+
313
+ # `.coverage` is a dotfile, which upload-artifact skips unless told otherwise.
314
+ - name: Upload shard report + coverage data
315
+ if: matrix.shard != 'e2e'
316
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
317
+ with:
318
+ name: shard-${{ strategy.job-index }}
319
+ path: |
320
+ pytest-report.xml
321
+ .coverage
322
+ include-hidden-files: true
323
+ if-no-files-found: error
324
+ retention-days: 1
325
+
326
+ # The required check `test (3.13)` lives HERE, so the ruleset needs no edit.
327
+ # `if: always()` plus the result gate are both load-bearing: GitHub reports a
328
+ # SKIPPED required check as passing, so without them a failed shard would skip
329
+ # this job and the PR would merge green.
330
+ test-313:
331
+ name: test (3.13)
332
+ runs-on: ubuntu-latest
333
+ needs: test-313-shard
334
+ if: always()
335
+ steps:
336
+ - name: Every 3.13 shard passed
337
+ env:
338
+ SHARDS: ${{ needs.test-313-shard.result }}
339
+ run: |
340
+ if [ "$SHARDS" != "success" ]; then
341
+ echo "::error::a 3.13 shard ended '$SHARDS' — see the test 3.13 (...) jobs"
342
+ exit 1
343
+ fi
344
+
345
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
346
+ with:
347
+ persist-credentials: false
348
+
349
+ - name: Install uv
350
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
351
+
352
+ - name: Set up Python
353
+ run: uv python install 3.13
354
+
355
+ - name: Install deps
356
+ run: uv sync --frozen --extra dev
357
+
358
+ - name: Download shard reports
359
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8
360
+ with:
361
+ pattern: shard-*
362
+
363
+ # Each shard is named, not globbed: a shard that uploaded nothing must fail
364
+ # here rather than shrink the sum.
365
+ - name: Test-count guard over every shard (a green build that ran nothing is not green)
366
+ # Floor well below the real count (~2900): catches collection collapse
367
+ # (bad marker/-k filter, broken conftest, a lost shard), never routine deletions.
368
+ run: >
369
+ uv run --no-sync python scripts/ci/check_test_count.py
370
+ shard-0/pytest-report.xml shard-1/pytest-report.xml shard-2/pytest-report.xml 2000
371
+
372
+ - name: Combine shard coverage
373
+ run: |
374
+ uv run --no-sync coverage combine shard-0/.coverage shard-1/.coverage shard-2/.coverage
375
+ uv run --no-sync coverage xml -o coverage.xml
376
+ uv run --no-sync coverage report --format=total
377
+
378
+ # Upload coverage XML so the sonar job can consume it. It must come from the
379
+ # Chromium-installing 3.13 shards: the real-DOM fixture tests skip everywhere
380
+ # else, so a 3.11 upload counted every browser-tested module as uncovered
381
+ # (#989's agent_only_composer.py measured 39% new coverage with its tests green).
382
+ - name: Upload coverage report
383
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
384
+ with:
385
+ name: coverage-xml
386
+ path: coverage.xml
387
+ retention-days: 1
388
+
389
+ # Report-only (watch mode): `continue-on-error` and the brace group mean nothing
390
+ # in this step can turn the job red. Reads the shard-*/pytest-report.xml already
391
+ # downloaded above (copied alone so the scan never sees coverage.xml or the repo); no new upload.
392
+ - name: Speed check (report only)
393
+ continue-on-error: true
394
+ run: |
395
+ { mkdir speed-in && cp --parents shard-*/pytest-report.xml speed-in/ \
396
+ && uv run --no-sync python -m scripts.ci.pytest_speed check speed-in --config pytest-speed.toml --out speed.md \
397
+ && cat speed.md >> "$GITHUB_STEP_SUMMARY"; } || echo "speed check: not run" >> "$GITHUB_STEP_SUMMARY"
398
+
399
+ # ── Focused OS matrix: ProfileLease cross-process contract (Task D2) ──────
400
+ # Everything else in this file runs Ubuntu-only (the `test` job above).
401
+ # This job exists because ProfileLease's kernel lock is genuinely
402
+ # OS-specific (msvcrt.locking on Windows vs. fcntl.flock on POSIX) and D1's
403
+ # local Windows-only run left the POSIX fcntl branch reasoned-but-unexecuted
404
+ # (see .superpowers/sdd/task-D1-report.md). Runs ONLY the lease unit +
405
+ # subprocess tests, not the full suite.
406
+ profile-lease-matrix:
407
+ name: ProfileLease (${{ matrix.os }})
408
+ runs-on: ${{ matrix.os }}
409
+ env:
410
+ PYTHONUTF8: "1"
411
+ strategy:
412
+ fail-fast: false
413
+ matrix:
414
+ os: [windows-latest, macos-latest, ubuntu-latest]
415
+ steps:
416
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
417
+ with:
418
+ persist-credentials: false
419
+
420
+ - name: Install uv
421
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
422
+
423
+ - name: Set up Python
424
+ run: uv python install 3.13
425
+
426
+ - name: Install deps
427
+ run: uv sync --extra dev
428
+
429
+ - name: ProfileLease unit + subprocess tests
430
+ run: uv run python -m pytest tests/test_profile_lease.py tests/test_profile_lease_subprocess.py -q --junitxml=pytest-lease.xml
431
+
432
+ - name: Test-count guard (lease matrix ran its suite)
433
+ # Floor well below the ~29 executed per OS leg — catches collapse, not
434
+ # routine test consolidation.
435
+ run: uv run python scripts/ci/check_test_count.py pytest-lease.xml 10
436
+
437
+ # ── Storage container tests (S3 via RustFS, GCS via fake-gcs-server) ───────
438
+ # Nothing ran `-m containers` before this job, so the pinned MinIO image was
439
+ # deleted from Docker Hub and the S3 tests rotted unnoticed. A registry
440
+ # deletion or a broken backend now turns CI red. The count guard catches the
441
+ # other silent failure: every fixture `importorskip`s, so a missing dependency
442
+ # would skip all 12 tests and still exit 0.
443
+ storage-containers:
444
+ name: Storage container tests
445
+ runs-on: ubuntu-latest
446
+ timeout-minutes: 15
447
+ env:
448
+ PYTHONUTF8: "1"
449
+ steps:
450
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
451
+ with:
452
+ persist-credentials: false
453
+
454
+ - name: Install uv
455
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
456
+
457
+ - name: Set up Python
458
+ run: uv python install 3.13
459
+
460
+ - name: Install deps
461
+ run: uv sync --frozen --group containers
462
+
463
+ - name: Container tests
464
+ run: uv run --no-sync python -m pytest -m containers tests/integration/ -q --junitxml=pytest-containers.xml
465
+
466
+ # 9 S3 (incl. the #1003 migrated-clip upload) + 4 GCS. The expander-gateway
467
+ # tests share the marker but skip without an LLM endpoint; skips do not count.
468
+ - name: Test-count guard (all storage tests executed, none skipped)
469
+ run: uv run --no-sync python scripts/ci/check_test_count.py pytest-containers.xml 13
470
+
471
+ # ── SonarCloud analysis ───────────────────────────────────────────────────
472
+ sonar:
473
+ name: SonarCloud analysis
474
+ runs-on: ubuntu-latest
475
+ needs: [test, test-313] # wait for tests + the combined coverage report
476
+ permissions:
477
+ contents: read
478
+ pull-requests: read # PR-context analysis / decoration lookups
479
+ # Forked pull_request runs do not receive repository secrets, so SONAR_TOKEN
480
+ # is empty there and the scanner fails before analysis. Dependabot-triggered
481
+ # runs are the same case: GitHub serves them the separate Dependabot secrets
482
+ # namespace, so SONAR_TOKEN is also empty even though the branch is in-repo.
483
+ # Keep SonarCloud on trusted pushes/internal PRs where the token is available.
484
+ if: >
485
+ always() &&
486
+ github.actor != 'dependabot[bot]' &&
487
+ (
488
+ github.event_name != 'pull_request' ||
489
+ github.event.pull_request.head.repo.full_name == github.repository
490
+ )
491
+ steps:
492
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
493
+ with:
494
+ persist-credentials: false
495
+ fetch-depth: 0 # shallow clones break blame / new-code detection
496
+
497
+ - name: Download coverage report
498
+ uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8
499
+ with:
500
+ name: coverage-xml
501
+ continue-on-error: true # graceful if coverage upload was skipped
502
+
503
+ # SonarCloud is a third-party service; it does have outages (seen live
504
+ # 2026-07-16, ~504s across its whole API including the unauthenticated
505
+ # /api/system/status endpoint). Reassessed fresh on every run — no manual
506
+ # flag to remember to flip back once it recovers. A skip here still lets
507
+ # the job COMPLETE (green), it just doesn't run the scan step; local
508
+ # coverage during an outage comes from the shared SonarQube instance
509
+ # (scripts/dev/sonar-local-scan.sh) — see docs/GITHUB.md § SonarCloud
510
+ # outage handling.
511
+ - name: Check SonarCloud availability
512
+ id: sonarcloud_health
513
+ run: |
514
+ if curl -sf -m 10 "https://sonarcloud.io/api/system/status" | grep -q '"status":"UP"'; then
515
+ echo "up=true" >> "$GITHUB_OUTPUT"
516
+ else
517
+ echo "up=false" >> "$GITHUB_OUTPUT"
518
+ echo "::warning::SonarCloud is unreachable or degraded — skipping the scan for this run (not a code quality failure). Verify locally with scripts/dev/sonar-local-scan.sh before merging if this persists, and re-run this job once SonarCloud recovers."
519
+ fi
520
+
521
+ - name: SonarCloud scan
522
+ if: steps.sonarcloud_health.outputs.up == 'true'
523
+ # sonarcloud-github-action is ARCHIVED upstream (dependabot never bumps
524
+ # archived actions, so its pin would rot silently); sonarqube-scan-action
525
+ # is SonarSource's maintained successor and serves SonarCloud when
526
+ # SONAR_HOST_URL points at it.
527
+ uses: SonarSource/sonarqube-scan-action@4d1dc0c91ee400dcf8a6dddf2f705ac36542e304 # v8.4.0
528
+ env:
529
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # PR decoration
530
+ SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} # set in repo → Settings → Secrets
531
+ SONAR_HOST_URL: https://sonarcloud.io
532
+
533
+ # Fails on N+1 queries and swallowed programming errors (see dev/sharpit_app.py). sharpit is pinned: a new release
534
+ # can add findings, so upgrading it is a change of its own.
535
+ sharpit:
536
+ runs-on: ubuntu-latest
537
+ steps:
538
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
539
+ with:
540
+ persist-credentials: false
541
+
542
+ - name: Install uv
543
+ uses: astral-sh/setup-uv@1c37ad07a6a961277cf70c0d37d6f313000f5884 # v10.3.0
544
+
545
+ - name: Set up Python
546
+ run: uv python install 3.12
547
+
548
+ - name: Install deps
549
+ run: uv sync --frozen --extra dev
550
+
551
+ # --with adds sharpit to this run only; uv.lock and the wheel never depend on it.
552
+ - name: Test suite under pytest --sharpit
553
+ run: >-
554
+ uv run --no-sync --with "sharpit==0.4.0" python -m pytest -q -n auto
555
+ --sharpit --sharpit-no-advisors
556
+ --sharpit-report=sharpit-report.json --sharpit-junit=sharpit-junit.xml
557
+
558
+ - name: Upload the sharpit reports
559
+ if: always()
560
+ uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
561
+ with:
562
+ name: sharpit-report
563
+ path: |
564
+ sharpit-report.json
565
+ sharpit-junit.xml
@@ -0,0 +1,83 @@
1
+ name: Dependency watch
2
+
3
+ # ── Why this exists, on a CLOCK ──────────────────────────────────────────────
4
+ # CI's `deps-audit` job runs the same pip-audit command, but only `on: push` and
5
+ # `on: pull_request`. That gate has no clock: an advisory published *after* the
6
+ # last push stays invisible until someone happens to push. That is exactly how
7
+ # CVE-2026-69247 (cryptography 49.0.0) reached the v0.50.0 release PR — the
8
+ # lockfile had been sitting on the vulnerable version for days and nothing was
9
+ # scheduled to re-check it. This workflow gives that gate a timer.
10
+ #
11
+ # It also answers the question no existing job answers: "what CAN we update?"
12
+ # Every other job installs via `uv sync` against uv.lock, so the lockfile hides
13
+ # both halves of the picture — what upstream has published, and what our own
14
+ # declared bounds are currently refusing. Both are printed below.
15
+
16
+ on:
17
+ schedule:
18
+ # Mondays 07:00 UTC — one hour before Dependabot's 08:00 Europe/Lisbon run,
19
+ # so the audit result is already on screen when the bump PRs land.
20
+ - cron: "0 7 * * 1"
21
+ workflow_dispatch:
22
+
23
+ permissions:
24
+ contents: read
25
+
26
+ jobs:
27
+ watch:
28
+ name: Audit + report upgradable dependencies
29
+ runs-on: ubuntu-latest
30
+ steps:
31
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7
32
+ with:
33
+ persist-credentials: false
34
+
35
+ - name: Install uv
36
+ uses: astral-sh/setup-uv@68559e99cc807c1eb7e9238fd43a15bba460eec2 # v10.3.3
37
+
38
+ - name: Set up Python
39
+ run: uv python install 3.13
40
+
41
+ # ── The gate: fails the run, which emails the repo owner ───────────────
42
+ - name: Audit locked dependencies for known CVEs
43
+ run: |
44
+ # --all-extras: without it only the default group is exported, so
45
+ # anything reachable solely through an optional extra goes unaudited.
46
+ # See the matching note in ci.yml — this is how aiohttp/pyasn1 hid.
47
+ uv export --frozen --all-extras --format requirements-txt --no-emit-project > requirements-audit.txt
48
+ # pip-audit deliberately floats here (unlike the pinned gate in
49
+ # ci.yml): this weekly watch job never gates a merge, and fresh
50
+ # advisory tooling is exactly what it is for.
51
+ uvx pip-audit -r requirements-audit.txt
52
+
53
+ # ── The reports: never fail the run, and still run when the audit fails
54
+ # (a red audit is precisely when you want to know what's upgradable) ─
55
+ - name: Report what our bounds allow us to take now
56
+ if: always()
57
+ # Resolves the newest versions pyproject.toml's ranges permit, without
58
+ # writing uv.lock. This is the "safe to merge today" list.
59
+ run: |
60
+ echo '## Upgradable within current bounds' >> "$GITHUB_STEP_SUMMARY"
61
+ echo '```' >> "$GITHUB_STEP_SUMMARY"
62
+ # uv writes this report to STDERR, so it must be folded into stdout
63
+ # BEFORE the pipe. `... 2>&1 >> file` would be wrong: that order sends
64
+ # stdout to the file and leaves stderr on the terminal, which silently
65
+ # published an empty summary section. tee keeps both destinations.
66
+ uv lock --upgrade --dry-run 2>&1 | tee -a "$GITHUB_STEP_SUMMARY"
67
+ echo '```' >> "$GITHUB_STEP_SUMMARY"
68
+
69
+ - name: Report what upstream has published
70
+ if: always()
71
+ # Unlike the step above, this ignores our constraints and reports the
72
+ # true latest on PyPI — so a package frozen by one of OUR upper bounds
73
+ # shows up here and nowhere else. This is the expiry alarm for those
74
+ # bounds: `playwright>=1.61.0,<1.62.0` is deliberate (an untested driver
75
+ # silently wedged video generation — see the comment in pyproject.toml),
76
+ # but a deliberate pin still needs a periodic "how stale is it now?"
77
+ # signal, and raising it requires a live-verified generation first.
78
+ run: |
79
+ uv sync --frozen
80
+ echo '## Latest upstream (ignores our bounds)' >> "$GITHUB_STEP_SUMMARY"
81
+ echo '```' >> "$GITHUB_STEP_SUMMARY"
82
+ uv pip list --outdated 2>&1 | tee -a "$GITHUB_STEP_SUMMARY"
83
+ echo '```' >> "$GITHUB_STEP_SUMMARY"