gflow-cli 0.85.0__tar.gz → 0.86.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 (1288) hide show
  1. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.codex-plugin/plugin.json +1 -1
  2. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.env.template +10 -0
  3. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/ci.yml +5 -2
  4. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/AGENTS.md +2 -2
  5. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/CHANGELOG.md +78 -1
  6. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/KNOWN_ISSUES.md +56 -28
  7. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/PKG-INFO +3 -3
  8. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/README.md +2 -2
  9. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker/Dockerfile +1 -1
  10. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/AUTHENTICATION.md +47 -1
  11. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/CONFIGURATION.md +13 -2
  12. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/E2E_TESTING.md +4 -0
  13. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/INDEX.md +1 -1
  14. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.85.0.md +8 -1
  15. gflow_cli-0.86.0/docs/LIVE_VERIFICATION_v0.86.0.md +69 -0
  16. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/MCP.md +23 -16
  17. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/PROJECT_STATUS.md +27 -0
  18. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/USAGE.md +41 -14
  19. {gflow_cli-0.85.0/website → gflow_cli-0.86.0}/docs/USER_GUIDE.md +4 -0
  20. gflow_cli-0.86.0/docs/superpowers/memory/drive-the-page-dont-replay-the-rpc.md +29 -0
  21. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/flow-recon-must-run-on-denon82-ffroliva-migrated.md +7 -5
  22. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/migrated-host-driver-wire-lessons.md +4 -2
  23. gflow_cli-0.86.0/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/ASSESSMENT.md +45 -0
  24. gflow_cli-0.86.0/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/PLAN.md +146 -0
  25. gflow_cli-0.86.0/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/PREDICT.md +101 -0
  26. gflow_cli-0.86.0/docs/superpowers/plans/2026-09-15-agent-only-composer-driver/SCENARIO.md +95 -0
  27. gflow_cli-0.86.0/docs/superpowers/plans/2026-10-17-migrated-video-extend/PLAN.md +104 -0
  28. gflow_cli-0.86.0/docs/superpowers/plans/2026-10-17-migrated-video-extend/PREDICT.md +43 -0
  29. gflow_cli-0.86.0/docs/superpowers/plans/2026-10-17-migrated-video-extend/SCENARIO.md +79 -0
  30. gflow_cli-0.86.0/docs/superpowers/spikes/2026-09-15-agent-only-composer-drive-surface.md +178 -0
  31. gflow_cli-0.86.0/docs/superpowers/spikes/2026-09-19-migrated-video-extend-wire.md +53 -0
  32. gflow_cli-0.86.0/docs/superpowers/spikes/2026-10-14-labs-nextauth-silent-refresh.md +34 -0
  33. gflow_cli-0.86.0/docs/superpowers/spikes/2026-10-17-agent-only-cohort-profiles.md +53 -0
  34. gflow_cli-0.86.0/docs/superpowers/spikes/2026-10-17-migrated-extend-ui-path.md +148 -0
  35. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/llms.txt +1 -1
  36. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/.claude-plugin/plugin.json +1 -1
  37. {gflow_cli-0.85.0 → gflow_cli-0.86.0/plugins/gflow}/skills/gflow-cli/SKILL.md +11 -6
  38. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/SKILL.md +1 -1
  39. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/pyproject.toml +1 -1
  40. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/skillopt/tasks.json +7 -7
  41. gflow_cli-0.86.0/scripts/dev/spike_agent_confirm_radios.py +54 -0
  42. gflow_cli-0.86.0/scripts/dev/spike_agent_only_cohort_profiles.py +150 -0
  43. gflow_cli-0.86.0/scripts/dev/spike_agent_only_composer.py +334 -0
  44. gflow_cli-0.86.0/scripts/dev/spike_agent_only_video_ready.py +154 -0
  45. gflow_cli-0.86.0/scripts/dev/spike_agent_only_video_tile.py +118 -0
  46. gflow_cli-0.86.0/scripts/dev/spike_agent_settings_defaults.py +166 -0
  47. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_submit_references.py +4 -4
  48. gflow_cli-0.86.0/scripts/dev/spike_labs_nextauth_refresh.py +87 -0
  49. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_end_frame.py +4 -4
  50. gflow_cli-0.86.0/scripts/dev/spike_migrated_extend_ui_path.py +396 -0
  51. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_refusal_envelope.py +3 -3
  52. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_nano_banana_21_wire.py +2 -2
  53. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/server.json +2 -2
  54. {gflow_cli-0.85.0/plugins/gflow → gflow_cli-0.86.0}/skills/gflow-cli/SKILL.md +11 -6
  55. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/pr-council-review/SKILL.md +58 -5
  56. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/spike/SKILL.md +2 -1
  57. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/SKILL.md +1 -1
  58. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/__init__.py +1 -1
  59. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/client.py +77 -8
  60. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/credits.py +11 -10
  61. gflow_cli-0.86.0/src/gflow_cli/api/transports/agent_only_composer.py +991 -0
  62. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/batchexecute.py +3 -3
  63. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/migrated_composer.py +183 -104
  64. gflow_cli-0.86.0/src/gflow_cli/api/transports/migrated_extend.py +559 -0
  65. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/ui_automation.py +4 -1
  66. gflow_cli-0.86.0/src/gflow_cli/auth/renew.py +217 -0
  67. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli.py +127 -0
  68. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_credits.py +18 -8
  69. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_video.py +279 -18
  70. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/config.py +16 -0
  71. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/errors.py +5 -4
  72. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/tools.py +20 -8
  73. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/credits.py +58 -8
  74. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_extend.py +51 -0
  75. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_image.py +68 -0
  76. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_credits_http.py +13 -1
  77. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_upload_reference.py +17 -0
  78. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_agent_only_composer.py +58 -0
  79. gflow_cli-0.86.0/tests/api/transports/test_agent_only_composer_driver.py +1063 -0
  80. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_composer.py +80 -21
  81. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_existing_refs.py +18 -0
  82. gflow_cli-0.86.0/tests/api/transports/test_migrated_extend.py +535 -0
  83. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_r2v.py +3 -3
  84. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_signed_media_retry.py +10 -10
  85. gflow_cli-0.86.0/tests/auth/test_renew.py +347 -0
  86. gflow_cli-0.86.0/tests/cli/test_auth_renew.py +229 -0
  87. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_credits.py +48 -4
  88. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_video_extend.py +243 -2
  89. gflow_cli-0.86.0/tests/e2e/test_agent_only_composer_bdd.py +262 -0
  90. gflow_cli-0.86.0/tests/e2e/test_auth_renew_e2e.py +128 -0
  91. gflow_cli-0.86.0/tests/e2e/test_credits_refresh_e2e.py +108 -0
  92. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_host_e2e.py +1 -1
  93. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_refusal_live_bdd.py +1 -1
  94. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_project_create_e2e.py +1 -1
  95. gflow_cli-0.86.0/tests/e2e/test_video_extend_migrated_e2e.py +234 -0
  96. gflow_cli-0.86.0/tests/features/agent_only_composer_live.feature +32 -0
  97. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_credits_steps.py +2 -2
  98. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_cli_parity.py +5 -0
  99. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_credits_tool.py +31 -2
  100. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_credits.py +240 -0
  101. gflow_cli-0.86.0/tests/test_config_agent_confirm.py +28 -0
  102. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_documentation_gate.py +22 -0
  103. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_marker_registry.py +10 -0
  104. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/uv.lock +1 -1
  105. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/AUTHENTICATION.md +47 -1
  106. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/CONFIGURATION.md +13 -2
  107. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/E2E_TESTING.md +4 -0
  108. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/KNOWN_ISSUES.md +56 -28
  109. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/MCP.md +23 -16
  110. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/USAGE.md +41 -14
  111. {gflow_cli-0.85.0 → gflow_cli-0.86.0/website}/docs/USER_GUIDE.md +4 -0
  112. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.agents/plugins/marketplace.json +0 -0
  113. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/README.md +0 -0
  114. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/active.md +0 -0
  115. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/branch-review.md +0 -0
  116. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/changelog.md +0 -0
  117. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/check.md +0 -0
  118. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/doc-review.md +0 -0
  119. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/issue-assessment.md +0 -0
  120. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/issue-resolve.md +0 -0
  121. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/known-issues.md +0 -0
  122. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/live-verify.md +0 -0
  123. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/llm-council.md +0 -0
  124. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/next.md +0 -0
  125. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/plan.md +0 -0
  126. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/pr-council-review.md +0 -0
  127. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/predict.md +0 -0
  128. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/release.md +0 -0
  129. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/scenario.md +0 -0
  130. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/sonar.md +0 -0
  131. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/spike.md +0 -0
  132. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude/commands/gflow/status.md +0 -0
  133. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.claude-plugin/marketplace.json +0 -0
  134. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.gitattributes +0 -0
  135. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/CODEOWNERS +0 -0
  136. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/FUNDING.yml +0 -0
  137. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  138. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/copilot-instructions.md +0 -0
  139. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/dependabot.yml +0 -0
  140. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/deps-watch.yml +0 -0
  141. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/external-pr-triage.yml +0 -0
  142. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/governance-advisory.yml +0 -0
  143. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/governance-benchmark.yml +0 -0
  144. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/labels.yml +0 -0
  145. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/main-base-guard.yml +0 -0
  146. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/mcp-registry.yml +0 -0
  147. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/pages.yml +0 -0
  148. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/release.yml +0 -0
  149. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/scorecard.yml +0 -0
  150. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/selector-probe.yml +0 -0
  151. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/sponsors.yml +0 -0
  152. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.github/workflows/star-history-watch.yml +0 -0
  153. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.gitignore +0 -0
  154. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.gitleaks.toml +0 -0
  155. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.pre-commit-config.yaml +0 -0
  156. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/.secrets.baseline +0 -0
  157. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/CLAUDE.md +0 -0
  158. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/CONFIGURATION.md +0 -0
  159. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/CONTRIBUTING.md +0 -0
  160. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/DISCLAIMER.md +0 -0
  161. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/LICENSE +0 -0
  162. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/PLAN.md +0 -0
  163. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/RELEASE.md +0 -0
  164. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/ROADMAP.md +0 -0
  165. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/conftest.py +0 -0
  166. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/deploy/logrotate-pr-triage +0 -0
  167. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker/Dockerfile.test +0 -0
  168. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker/README.md +0 -0
  169. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker/docker-compose.yml +0 -0
  170. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker/dockerignore.example +0 -0
  171. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docker-compose.yml +0 -0
  172. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/ACCOUNT_SAFETY.md +0 -0
  173. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/AGENT_GUIDE.md +0 -0
  174. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/AGENT_UI_E2E.md +0 -0
  175. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/AGENT_UI_RECON.md +0 -0
  176. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/ARCHITECTURE.md +0 -0
  177. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/ASSET_TAGGING_RECON.md +0 -0
  178. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/CHARACTER.md +0 -0
  179. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/CHARACTER_RECON.md +0 -0
  180. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/CONTAINER.md +0 -0
  181. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/DATA_LAYER.md +0 -0
  182. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/DEBUGGING.md +0 -0
  183. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/DEMOS.md +0 -0
  184. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/DEVELOPMENT.md +0 -0
  185. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/DISTRIBUTION.md +0 -0
  186. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/EXTERNAL_STORAGE.md +0 -0
  187. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/GITHUB.md +0 -0
  188. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/GOVERNANCE_BENCHMARK.md +0 -0
  189. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/IMAGE_UPSCALE_RECON.md +0 -0
  190. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/INSTRUCTIONS.md +0 -0
  191. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_data_layer.md +0 -0
  192. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_image_batch.md +0 -0
  193. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_playwright_1.61.md +0 -0
  194. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_reference_entity_guard.md +0 -0
  195. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.10.0.md +0 -0
  196. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.11.0.md +0 -0
  197. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.12.0.md +0 -0
  198. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.13.0.md +0 -0
  199. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.16.0.md +0 -0
  200. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.17.0.md +0 -0
  201. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.18.0.md +0 -0
  202. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.19.0.md +0 -0
  203. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.20.0.md +0 -0
  204. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.20.1.md +0 -0
  205. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.21.0.md +0 -0
  206. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.22.0.md +0 -0
  207. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.23.0.md +0 -0
  208. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.24.0.md +0 -0
  209. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.25.0.md +0 -0
  210. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.26.0.md +0 -0
  211. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.27.0.md +0 -0
  212. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.27.1.md +0 -0
  213. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.28.0.md +0 -0
  214. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.29.0.md +0 -0
  215. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.30.0.md +0 -0
  216. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.31.0.md +0 -0
  217. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.32.0.md +0 -0
  218. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.32.1.md +0 -0
  219. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.33.0.md +0 -0
  220. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.34.0.md +0 -0
  221. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.35.0.md +0 -0
  222. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.36.0.md +0 -0
  223. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.37.0.md +0 -0
  224. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.38.0.md +0 -0
  225. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.38.1.md +0 -0
  226. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.39.0.md +0 -0
  227. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.40.0-production-readiness.md +0 -0
  228. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.40.0.md +0 -0
  229. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.41.0.md +0 -0
  230. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.42.0.md +0 -0
  231. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.43.0.md +0 -0
  232. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.44.0.md +0 -0
  233. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.45.0.md +0 -0
  234. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.46.0.md +0 -0
  235. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.46.1.md +0 -0
  236. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.47.0.md +0 -0
  237. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.48.0.md +0 -0
  238. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.49.0.md +0 -0
  239. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.50.0.md +0 -0
  240. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.51.0.md +0 -0
  241. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.52.0.md +0 -0
  242. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.54.0.md +0 -0
  243. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.55.0.md +0 -0
  244. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.56.0.md +0 -0
  245. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.57.0.md +0 -0
  246. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.57.1.md +0 -0
  247. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.58.0.md +0 -0
  248. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.59.0.md +0 -0
  249. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.60.0.md +0 -0
  250. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.61.0.md +0 -0
  251. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.62.0.md +0 -0
  252. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.62.1.md +0 -0
  253. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.63.0.md +0 -0
  254. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.64.0.md +0 -0
  255. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.65.0.md +0 -0
  256. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.66.0.md +0 -0
  257. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.66.1.md +0 -0
  258. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.66.2.md +0 -0
  259. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.66.3.md +0 -0
  260. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.67.0.md +0 -0
  261. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.68.0.md +0 -0
  262. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.69.0.md +0 -0
  263. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.7.0.md +0 -0
  264. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.70.0.md +0 -0
  265. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.71.0.md +0 -0
  266. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.71.1.md +0 -0
  267. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.72.0.md +0 -0
  268. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.73.0.md +0 -0
  269. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.73.1.md +0 -0
  270. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.73.2.md +0 -0
  271. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.74.0.md +0 -0
  272. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.75.0.md +0 -0
  273. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.76.0.md +0 -0
  274. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.77.0.md +0 -0
  275. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.77.1.md +0 -0
  276. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.78.0.md +0 -0
  277. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.79.0.md +0 -0
  278. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.79.1.md +0 -0
  279. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.8.1.md +0 -0
  280. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.80.0.md +0 -0
  281. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.81.0.md +0 -0
  282. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.82.0.md +0 -0
  283. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.82.1.md +0 -0
  284. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.83.0.md +0 -0
  285. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.83.1.md +0 -0
  286. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.83.2.md +0 -0
  287. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.84.0.md +0 -0
  288. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.9.0.md +0 -0
  289. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_v0.9.1.md +0 -0
  290. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/LIVE_VERIFICATION_video_download.md +0 -0
  291. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/MARKETPLACES.md +0 -0
  292. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/MEDIA_LIBRARY.md +0 -0
  293. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/MOVIE.md +0 -0
  294. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/PROMPT_EXPANSION.md +0 -0
  295. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/REFERENCE_STRATEGIES.md +0 -0
  296. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/SECURITY.md +0 -0
  297. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/SPONSORS.md +0 -0
  298. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/TOOLS.md +0 -0
  299. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/assets/demo-split-pf.gif +0 -0
  300. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/assets/example-run.gif +0 -0
  301. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/assets/examples.webp +0 -0
  302. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/medium_tutorial.md +0 -0
  303. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/schemas/movie-handoff.schema.json +0 -0
  304. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/sonar-cleanup-tracker.md +0 -0
  305. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/README.md +0 -0
  306. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/agents-md-vs-llms-txt.md +0 -0
  307. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/background-e2e-pytest-pattern.md +0 -0
  308. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/bdd-stubs-mirror-runtime-signatures.md +0 -0
  309. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/content-policy-text-scan-false-positives-on-page-chrome.md +0 -0
  310. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/credit-free-route-abort-verification.md +0 -0
  311. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/data-layer-overview.md +0 -0
  312. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/data-layer-test-pollution-trap.md +0 -0
  313. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/doc-examples-are-untested-fixtures.md +0 -0
  314. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/draft-pr-merge-trap.md +0 -0
  315. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/e2e-evidence-is-a-contributor-deliverable.md +0 -0
  316. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/exit-code-16-data-store.md +0 -0
  317. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/flow-capabilities-are-cohort-dependent.md +0 -0
  318. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/flow-credits-videos-only.md +0 -0
  319. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/flow-locale-leak-icon-ligatures.md +0 -0
  320. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/force-color-breaks-cli-tests.md +0 -0
  321. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/full-test-suite-ooms.md +0 -0
  322. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/git-add-all-sweeps-scratch-files.md +0 -0
  323. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/image-video-mode-switch-symmetry.md +0 -0
  324. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/ligature-carrier-differs-by-host.md +0 -0
  325. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/mcp-is-first-class-across-skill-chain.md +0 -0
  326. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/memory-is-working-dir-keyed.md +0 -0
  327. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/migrated-refusal-is-a-dom-card-not-a-wire-record.md +0 -0
  328. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/on-started-callback-recorder-safety.md +0 -0
  329. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/playwright-click-no-downstream-event-signature.md +0 -0
  330. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/pr-council-review-stale-tree-reads.md +0 -0
  331. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/pr-hygiene-revert-and-multi-commit.md +0 -0
  332. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/pr-must-verify-on-affected-surface.md +0 -0
  333. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/prose-conflicts-hide-in-disjoint-files.md +0 -0
  334. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/pypi-readme-staleness-fix.md +0 -0
  335. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/pypi-rejected-filename-reusable.md +0 -0
  336. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/readme-hybrid-router-pattern.md +0 -0
  337. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/real-browser-auth-mandatory.md +0 -0
  338. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/release-back-merge-gap-recovery.md +0 -0
  339. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/release-signing.md +0 -0
  340. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/release-spec-plan-memory-consolidation.md +0 -0
  341. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/rest-transports-drop-ui-fields.md +0 -0
  342. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/ruff-format-scope-is-src-tests.md +0 -0
  343. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/sonarcloud-hotspot-review-workflow.md +0 -0
  344. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/sonarcloud-new-code-gotchas.md +0 -0
  345. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/sonarcloud-pr-issues-scope-s7497.md +0 -0
  346. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/sonarcloud-setup.md +0 -0
  347. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/stale-test-discovery.md +0 -0
  348. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/structlog-cache-logger-off-for-tests.md +0 -0
  349. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/ui-selector-drift-error-exit-23.md +0 -0
  350. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/verification-ledger-5-layer.md +0 -0
  351. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/video-model-capability-matrix.md +0 -0
  352. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/wheel-build-sanity-gate.md +0 -0
  353. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/windows-dev-quirks.md +0 -0
  354. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/memory/windows-running-launcher-blocks-uv-upgrade.md +0 -0
  355. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-12-issue-174-library-ui-attach/PLAN.md +0 -0
  356. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-mcp-server/PLAN.md +0 -0
  357. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-mcp-server/PREDICT.md +0 -0
  358. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-mcp-server/SCENARIO.md +0 -0
  359. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/PLAN.md +0 -0
  360. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/PREDICT.md +0 -0
  361. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-22-prompt-expansion/SCENARIO.md +0 -0
  362. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-24-gflow-studio-scaffold/PLAN.md +0 -0
  363. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-24-rest-api-layer/PLAN.md +0 -0
  364. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-06-26-mcp-e2e-test/PLAN.md +0 -0
  365. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-08-pr-triage-autopilot/PLAN.md +0 -0
  366. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-09-camoufox-adoption/PLAN.md +0 -0
  367. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-14-storyboarding-and-visual-curation/PLAN.md +0 -0
  368. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-18-asset-tagging/PLAN.md +0 -0
  369. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-19-live-verify/PLAN.md +0 -0
  370. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-19-production-readiness-browser-lifecycle.md +0 -0
  371. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-19-production-readiness-driver-cdp-verification.md +0 -0
  372. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-19-production-readiness-public-truth.md +0 -0
  373. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-19-production-readiness-queue-safety.md +0 -0
  374. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-26-character-prompt-polishing/PLAN.md +0 -0
  375. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-26-project-name-management/PLAN.md +0 -0
  376. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-26-self-documenting-errors/PLAN.md +0 -0
  377. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-27-overlay-banner-dismissal/PLAN.md +0 -0
  378. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-27-tier-aware-credit-confirmations/PLAN.md +0 -0
  379. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-07-27-tier-aware-credit-confirmations/SCENARIO.md +0 -0
  380. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-04-mcp-tasks/PLAN.md +0 -0
  381. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-04-output-hardening/PLAN.md +0 -0
  382. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-317-intra-batch-references/PLAN.md +0 -0
  383. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-317-intra-batch-references/SCENARIO.md +0 -0
  384. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-402-entity-provenance/PLAN.md +0 -0
  385. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-402-entity-provenance/SCENARIO.md +0 -0
  386. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-451-duration-tab-drift/PLAN.md +0 -0
  387. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-05-issue-451-duration-tab-drift/SCENARIO.md +0 -0
  388. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-driver-delay-jittering/PLAN.md +0 -0
  389. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-driver-delay-jittering/SCENARIO.md +0 -0
  390. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-overlay-changelog-watermark/PLAN.md +0 -0
  391. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-overlay-changelog-watermark/SCENARIO.md +0 -0
  392. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-ui-mode-policy/PLAN.md +0 -0
  393. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-06-ui-mode-policy/SCENARIO.md +0 -0
  394. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-14-video-ui-mode-policy/PLAN.md +0 -0
  395. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-14-video-ui-mode-policy/SCENARIO.md +0 -0
  396. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-21-selector-registry.md +0 -0
  397. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-08-25-workflow-hardening-gaps.md +0 -0
  398. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-01-video-extend/PLAN.md +0 -0
  399. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-06-spike-tooling-reorg/PLAN.md +0 -0
  400. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-14-community-feedback-uplift/PLAN.md +0 -0
  401. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-17-gflow-docs-command/PLAN.md +0 -0
  402. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-17-gflow-docs-command/SCENARIO.md +0 -0
  403. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/plans/2026-09-17-project-create-bundle/PLAN.md +0 -0
  404. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/research/2026-06-27-tool-abstraction-evaluation.md +0 -0
  405. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-06-29-issue-assessment-workflow-design.md +0 -0
  406. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-07-04-pr-triage-autopilot-design.md +0 -0
  407. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-07-18-asset-tagging-design.md +0 -0
  408. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-07-19-live-verify-design.md +0 -0
  409. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-07-19-production-readiness-hardening-design.md +0 -0
  410. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-08-21-selector-registry-design.md +0 -0
  411. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-08-26-model-attribution-provenance.md +0 -0
  412. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-08-26-model-cost-quota-catalog.md +0 -0
  413. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/specs/2026-08-27-changelog-modal-precondition-design.md +0 -0
  414. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-07-09-camoufox-waf-403.md +0 -0
  415. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-07-12-ui-cohort-backend-config.md +0 -0
  416. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-07-17-production-readiness-assessment.md +0 -0
  417. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-08-01-mcp-2026-07-28-spec-impact.md +0 -0
  418. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-08-14-video-model-capability-matrix.md +0 -0
  419. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-08-15-picker-tile-alt-text.md +0 -0
  420. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-08-31-veo-extend-route-recon.md +0 -0
  421. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-04-migrated-host-handoff-mechanism.md +0 -0
  422. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-05-migrated-frames-attach.md +0 -0
  423. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-05-migrated-host-wire-protocol.md +0 -0
  424. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-05-migrated-model-menu-lower-priority.md +0 -0
  425. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-05-migrated-r2v-attach-surface.md +0 -0
  426. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-06-labs-vs-migrated-session-credential.md +0 -0
  427. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-06-migrated-character-surface-and-recaptcha.md +0 -0
  428. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-07-character-format-button-anchor.md +0 -0
  429. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-07-credit-shortfall-looks-like-selector-drift.md +0 -0
  430. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-07-format-click-is-not-a-format.md +0 -0
  431. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-07-ligature-carrier-and-name-drift.md +0 -0
  432. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-07-migrated-composer-has-an-image-mode.md +0 -0
  433. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-08-g12-blocks-webdriver-not-playwright.md +0 -0
  434. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-08-migrated-composer-agent-mode-hides-settings.md +0 -0
  435. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-08-migrated-image-submit-wire.md +0 -0
  436. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-08-migrated-queue-is-readable-on-zzl0ze.md +0 -0
  437. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-08-migrated-upload-fails-two-ways.md +0 -0
  438. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-10-about-redirect-stability.md +0 -0
  439. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-10-migrated-click-blocked.md +0 -0
  440. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-11-about-redirect-is-decided-client-side.md +0 -0
  441. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-11-about-redirect-is-stable-for-an-account.md +0 -0
  442. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-11-migrated-cookie-bar-blocks-the-composer.md +0 -0
  443. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-11-nano2-lite-capability.md +0 -0
  444. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-13-frames-picker-confirm.md +0 -0
  445. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-14-credits-on-migrated-host.md +0 -0
  446. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-14-generation-wire-no-push-channel.md +0 -0
  447. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-14-two-domain-protocol-survey.md +0 -0
  448. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-14-video-poll-is-a-fixed-client-timer.md +0 -0
  449. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-15-container-transport-viability.md +0 -0
  450. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-15-unentitled-account-signal.md +0 -0
  451. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-16-networkidle-costs-3x-it-does-not-hang.md +0 -0
  452. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-17-migrated-end-frame-submit-contract.md +0 -0
  453. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-17-project-create-on-flow-google-com.md +0 -0
  454. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-17-stranded-clip-recovery.md +0 -0
  455. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-20-warm-client-premint-on-about-blank.md +0 -0
  456. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-22-playwright-max-retries-econnreset.md +0 -0
  457. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-23-about-cta-leads-to-google-reauth.md +0 -0
  458. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-27-migrated-refusal-is-on-the-wire.md +0 -0
  459. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-27-stealth-fingerprint-delta.md +0 -0
  460. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-09-30-migrated-upscale-wire.md +0 -0
  461. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-01-batch-ref-dropped.md +0 -0
  462. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-01-recaptcha-error-shape.md +0 -0
  463. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-06-948-record-slot3-null.md +0 -0
  464. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-08-nano-banana-21-replaced-2.md +0 -0
  465. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-10-duration-locale-and-notice-only-cookie-bar.md +0 -0
  466. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/docs/superpowers/spikes/2026-10-13-migrated-image-character-mention.md +0 -0
  467. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/README.md +0 -0
  468. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/batch_from_config.py +0 -0
  469. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/multi_prompt_t2i.py +0 -0
  470. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/sample_config.json +0 -0
  471. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/sample_prompts.txt +0 -0
  472. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/single_image_t2i.py +0 -0
  473. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/examples/workflow_chain.py +0 -0
  474. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/glama.json +0 -0
  475. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/hatch_build.py +0 -0
  476. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/index.html +0 -0
  477. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/mempalace.yaml +0 -0
  478. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/README.md +0 -0
  479. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/.mcp.json +0 -0
  480. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/clip_qa.py +0 -0
  481. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/composition.md +0 -0
  482. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/consistency.md +0 -0
  483. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/failure-modes.md +0 -0
  484. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/plugins/gflow/skills/video-production/tasks.json +0 -0
  485. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/README.md +0 -0
  486. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/01_upload_image.json +0 -0
  487. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/02_batchAsyncGenerateVideoText.json +0 -0
  488. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/03_batchCheckAsyncVideoGenerationStatus.json +0 -0
  489. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/04_archive_workflow.json +0 -0
  490. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/05_createProject.json +0 -0
  491. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/06_batchGenerateImages.json +0 -0
  492. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/07_batchGenerateImages_seeded.json +0 -0
  493. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/08_batchAsyncGenerateVideoStartAndEndImage.json +0 -0
  494. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/09_batchAsyncGenerateVideoReferenceImages.json +0 -0
  495. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/10_batchCheckAsyncVideoGenerationStatus_successful.json +0 -0
  496. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/11_batchCheckAsyncVideoGenerationStatus_failed.json +0 -0
  497. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/12_create_scene.json +0 -0
  498. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/13_sceneWorkflows_update.json +0 -0
  499. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/14_get_scene_workflows.json +0 -0
  500. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/samples/captured/15_commit_flowWorkflow.json +0 -0
  501. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/canary/register_task.ps1 +0 -0
  502. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/canary/run_canary.py +0 -0
  503. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_council_memory.py +0 -0
  504. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_doc_links.py +0 -0
  505. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_fork_pr_ci.py +0 -0
  506. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_materiality.py +0 -0
  507. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_release_artifacts.py +0 -0
  508. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_repo_hygiene.py +0 -0
  509. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_test_count.py +0 -0
  510. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/check_website_docs_pii.py +0 -0
  511. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/generate_plugin_skills.py +0 -0
  512. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/generate_website_docs.py +0 -0
  513. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/ci/update_sponsors.py +0 -0
  514. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/debug_editor.py +0 -0
  515. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/debug_gen_settings.py +0 -0
  516. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/debug_settings.py +0 -0
  517. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/_recording_client.py +0 -0
  518. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/_spike_common.py +0 -0
  519. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/acceptance/__init__.py +0 -0
  520. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/acceptance/bench.py +0 -0
  521. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/acceptance/domain.py +0 -0
  522. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/acceptance/judge.py +0 -0
  523. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/acceptance/settings.py +0 -0
  524. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/active_plan.py +0 -0
  525. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/analyze_agent_ui_capture.py +0 -0
  526. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_frames_mode_trigger_ligature.py +0 -0
  527. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_i2v_frame_slots_dom.py +0 -0
  528. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_i2v_intercept_submit.py +0 -0
  529. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_i2v_model_select_repro.py +0 -0
  530. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_i2v_post_bind_state.py +0 -0
  531. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_image_add_media_dom.py +0 -0
  532. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_locale_invariants.py +0 -0
  533. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_lower_priority_model_cost.py +0 -0
  534. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_attach_rpcs.py +0 -0
  535. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_mention_gestures.py +0 -0
  536. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_model_menu.py +0 -0
  537. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_r2v_production_submit.py +0 -0
  538. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_r2v_submit_payload.py +0 -0
  539. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_r2v_surface.py +0 -0
  540. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_migrated_upload_flow.py +0 -0
  541. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_project_listing.py +0 -0
  542. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_r2v_ingredient_lifecycle.py +0 -0
  543. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_sidebar_state_dom.py +0 -0
  544. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/capture_video_model_capability_matrix.py +0 -0
  545. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/cdp_drive_and_probe.py +0 -0
  546. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/character_create_spike.py +0 -0
  547. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/character_create_spike_v2.py +0 -0
  548. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/dump_character_selectors.js +0 -0
  549. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/README.md +0 -0
  550. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/capture-agent-ui.ps1 +0 -0
  551. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/capture-media-scrape.ps1 +0 -0
  552. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/extract_har_summary.py +0 -0
  553. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/launch-flow-chrome.ps1 +0 -0
  554. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/probe-agent-mode.ps1 +0 -0
  555. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/probe_agent_mode.py +0 -0
  556. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/run-cdp-smoke.ps1 +0 -0
  557. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/start-background-capture.ps1 +0 -0
  558. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/start-har-capture.ps1 +0 -0
  559. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/stop-background-capture.ps1 +0 -0
  560. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/har-spike/stop-har-capture.ps1 +0 -0
  561. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/incident_bundle_quality.py +0 -0
  562. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/live_verify_mcp_tasks.py +0 -0
  563. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/live_verify_policy_400_v060.py +0 -0
  564. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/live_verify_video_model_select.py +0 -0
  565. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/make_project.py +0 -0
  566. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/materiality_backtest.py +0 -0
  567. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/measure_html_lang_settle.py +0 -0
  568. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/measure_locale_probe.py +0 -0
  569. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/measure_migrated_host_flip.py +0 -0
  570. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/patch_character.py +0 -0
  571. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/skillopt/README.md +0 -0
  572. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/skillopt/harness.py +0 -0
  573. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/sonar-local-scan.sh +0 -0
  574. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/sonar-pre-push-gate.sh +0 -0
  575. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_948_project_records.py +0 -0
  576. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_948_submit_envelope.py +0 -0
  577. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_963_duration_locale.py +0 -0
  578. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_about_cta_recovery.py +0 -0
  579. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_about_redirect_cause.py +0 -0
  580. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_about_redirect_stability.py +0 -0
  581. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_batch_ref_dropped.py +0 -0
  582. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_batch_ref_existing_media.py +0 -0
  583. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_cdp_har_without_node.py +0 -0
  584. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_changelog_capture.py +0 -0
  585. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_char_editor_dom.py +0 -0
  586. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_char_gen_capture.py +0 -0
  587. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_character_editor_ready_gate.py +0 -0
  588. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_character_prompt_format.py +0 -0
  589. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_create_project_401.py +0 -0
  590. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_credits_migrated_surface.py +0 -0
  591. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_entity_submit_rpcs.py +0 -0
  592. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_extend_model_recon.py +0 -0
  593. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_extend_ourstack_verify.py +0 -0
  594. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_extend_route_capture.py +0 -0
  595. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_extend_submit_capture.py +0 -0
  596. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_extend_ui_recon.py +0 -0
  597. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_flow_unavailable_signal.py +0 -0
  598. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_format_prompt_effect.py +0 -0
  599. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_frames_picker_confirm.py +0 -0
  600. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_generation_wire_survey.py +0 -0
  601. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_gif_export_delivery.py +0 -0
  602. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_host_lane.py +0 -0
  603. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_model_attribution.py +0 -0
  604. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_upscale_capture.py +0 -0
  605. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_upscale_drive.py +0 -0
  606. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_upscale_recaptcha_action.py +0 -0
  607. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_image_upscale_rest_probe.py +0 -0
  608. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_incident_live.py +0 -0
  609. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_issue170_picker_locale_recon.py +0 -0
  610. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_issue174_library_ui_recon.py +0 -0
  611. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_issue313_agent_mode_controls.py +0 -0
  612. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_issue314_picker_filename_search.py +0 -0
  613. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_issue404_count_tabs_recon.py +0 -0
  614. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_ligature_carrier_sweep.py +0 -0
  615. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_locale_poison.py +0 -0
  616. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_mention_existing_media.py +0 -0
  617. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_aspect_radios.py +0 -0
  618. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_body_reference_chip.py +0 -0
  619. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_character_body_controls.py +0 -0
  620. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_character_editor_anchor.py +0 -0
  621. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_character_ogiz0b_schema.py +0 -0
  622. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_character_submit_wire.py +0 -0
  623. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_character_surface.py +0 -0
  624. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_click_blocked.py +0 -0
  625. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_composer_arms.py +0 -0
  626. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_composer_mode_axis.py +0 -0
  627. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_cookie_bar.py +0 -0
  628. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_create_project.py +0 -0
  629. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_duration_by_model.py +0 -0
  630. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_editor_dom_inventory.py +0 -0
  631. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_entity_submit.py +0 -0
  632. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_frames_attach.py +0 -0
  633. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_host_trigger.py +0 -0
  634. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_image_capability.py +0 -0
  635. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_image_submit.py +0 -0
  636. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_picker_option_kind.py +0 -0
  637. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_queue_read.py +0 -0
  638. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_recaptcha_mint.py +0 -0
  639. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_submit_anchor.py +0 -0
  640. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_submit_capture.py +0 -0
  641. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_upload_wire.py +0 -0
  642. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migrated_vs_labs_provenance.py +0 -0
  643. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_migration_flag_bootstrap.py +0 -0
  644. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_mint_on_about_blank.py +0 -0
  645. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_mode_roundtrip.py +0 -0
  646. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_mode_switch_agentic_to_classic.py +0 -0
  647. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_model_inventory.py +0 -0
  648. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_movie_attach_payload.py +0 -0
  649. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_movie_entity_recon.py +0 -0
  650. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_movie_gen_capture.py +0 -0
  651. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_movie_picker_select.py +0 -0
  652. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_movie_voice_list.py +0 -0
  653. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_nano2_lite_capability.py +0 -0
  654. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_networkidle_bootstrap_cost.py +0 -0
  655. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_offscreen_window.py +0 -0
  656. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_omni_flash_i2v_ui_recon.py +0 -0
  657. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_patch_entity.py +0 -0
  658. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_patchright.py +0 -0
  659. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_picker_chip_removal.py +0 -0
  660. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_picker_entity_marker.py +0 -0
  661. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_playwright_chrome_login.py +0 -0
  662. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_playwright_max_retries.py +0 -0
  663. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_project_media_status.py +0 -0
  664. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_recaptcha_error_shape.py +0 -0
  665. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_recover_stranded_clip.py +0 -0
  666. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_ref_gate.py +0 -0
  667. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_stealth_fingerprint_delta.py +0 -0
  668. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_trpc_origin_referer_401.py +0 -0
  669. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_two_domain_protocol_survey.py +0 -0
  670. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_upload_token_join.py +0 -0
  671. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_upscale_menu_anchors.py +0 -0
  672. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_video_tab_dom.py +0 -0
  673. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_video_workflow_id.py +0 -0
  674. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/spike_warm_client_unported_form.py +0 -0
  675. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/verify_lang_settle_fix.py +0 -0
  676. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/verify_language_agnostic.py +0 -0
  677. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/verify_locale_navigation_race.py +0 -0
  678. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/dev/verify_model_attribution.py +0 -0
  679. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/README.md +0 -0
  680. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/capture_flow_traffic.py +0 -0
  681. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/diag_aisandbox_bearer.py +0 -0
  682. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/memory_profile.py +0 -0
  683. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/recaptcha_mint.py +0 -0
  684. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/diag/spike_387_openai_compat.py +0 -0
  685. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/e2e/agentic_image_e2e.ps1 +0 -0
  686. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/e2e/capture_agent_toggle.py +0 -0
  687. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/probe/run_probe.py +0 -0
  688. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/probe/spike_auth_matrix.py +0 -0
  689. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/record_demo.ps1 +0 -0
  690. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/smoke_image.py +0 -0
  691. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/smoke_video_editor.py +0 -0
  692. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/smoke_worker_style.py +0 -0
  693. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/spike_waf_camoufox.py +0 -0
  694. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/scripts/verify_chrome_auth_viability.py +0 -0
  695. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/README.md +0 -0
  696. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/changelog/SKILL.md +0 -0
  697. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/check/SKILL.md +0 -0
  698. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/doc-review/SKILL.md +0 -0
  699. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/issue-assessment/SKILL.md +0 -0
  700. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/issue-resolve/SKILL.md +0 -0
  701. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/known-issues/SKILL.md +0 -0
  702. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/live-verify/SKILL.md +0 -0
  703. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/llm-council/SKILL.md +0 -0
  704. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/plan/SKILL.md +0 -0
  705. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/predict/SKILL.md +0 -0
  706. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/release/SKILL.md +0 -0
  707. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/scenario/SKILL.md +0 -0
  708. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/sonar/SKILL.md +0 -0
  709. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/status/SKILL.md +0 -0
  710. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/clip_qa.py +0 -0
  711. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/composition.md +0 -0
  712. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/consistency.md +0 -0
  713. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/failure-modes.md +0 -0
  714. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/skills/video-production/tasks.json +0 -0
  715. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/sonar-project.properties +0 -0
  716. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/__main__.py +0 -0
  717. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/_cli_helpers.py +0 -0
  718. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/__init__.py +0 -0
  719. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/_engine.py +0 -0
  720. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/_retry.py +0 -0
  721. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/_sapisidhash.py +0 -0
  722. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/character.py +0 -0
  723. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/dto.py +0 -0
  724. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/extend_chain.py +0 -0
  725. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/image.py +0 -0
  726. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/image_upscale.py +0 -0
  727. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/recaptcha.py +0 -0
  728. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/routes.py +0 -0
  729. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/scene.py +0 -0
  730. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/__init__.py +0 -0
  731. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/_common.py +0 -0
  732. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/_fingerprint.py +0 -0
  733. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/base.py +0 -0
  734. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/drivers/__init__.py +0 -0
  735. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/drivers/agentic.py +0 -0
  736. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/drivers/base.py +0 -0
  737. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/drivers/classic.py +0 -0
  738. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/drivers/factory.py +0 -0
  739. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/experimental/__init__.py +0 -0
  740. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/experimental/bearer.py +0 -0
  741. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/experimental/evaluate_fetch.py +0 -0
  742. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/experimental/sapisidhash.py +0 -0
  743. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/migrated_recover.py +0 -0
  744. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/migrated_upscale.py +0 -0
  745. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/migrated_video_upscale.py +0 -0
  746. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/mode_control.py +0 -0
  747. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/transports/ui_automation_video.py +0 -0
  748. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/video.py +0 -0
  749. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/api/video_extend.py +0 -0
  750. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/__init__.py +0 -0
  751. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/base.py +0 -0
  752. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/cookies.py +0 -0
  753. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/factory.py +0 -0
  754. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/internal_chromium.py +0 -0
  755. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/real_chrome.py +0 -0
  756. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/strategies.py +0 -0
  757. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/auth/verification.py +0 -0
  758. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/browser_manager.py +0 -0
  759. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/chain.py +0 -0
  760. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/chain_manifest.py +0 -0
  761. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_character.py +0 -0
  762. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_data.py +0 -0
  763. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_docs.py +0 -0
  764. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_doctor.py +0 -0
  765. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_image.py +0 -0
  766. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_instructions.py +0 -0
  767. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_models.py +0 -0
  768. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_movie.py +0 -0
  769. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_project.py +0 -0
  770. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_run.py +0 -0
  771. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_scene.py +0 -0
  772. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_tools.py +0 -0
  773. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/cli_update.py +0 -0
  774. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/composition.py +0 -0
  775. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/__init__.py +0 -0
  776. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/chain_repo.py +0 -0
  777. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0001_initial.sql +0 -0
  778. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0002_add_cloud_storage.sql +0 -0
  779. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0003_add_scene_tables.sql +0 -0
  780. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0004_add_scene_output_path.sql +0 -0
  781. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0005_add_chain_links.sql +0 -0
  782. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0006_add_operations_metadata.sql +0 -0
  783. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0007_queue.sql +0 -0
  784. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0008_add_operation_expanded_prompt.sql +0 -0
  785. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/0009_queue_claims.sql +0 -0
  786. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/migrations/__init__.py +0 -0
  787. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/models.py +0 -0
  788. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/queries.py +0 -0
  789. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/recorder.py +0 -0
  790. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/redaction.py +0 -0
  791. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/repository.py +0 -0
  792. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/data/store.py +0 -0
  793. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/diagnostics.py +0 -0
  794. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/docs_catalog.py +0 -0
  795. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/exceptions.py +0 -0
  796. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/file_integrity.py +0 -0
  797. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/flow_selectors/__init__.py +0 -0
  798. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/flow_selectors/grading.py +0 -0
  799. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/flow_selectors/model.py +0 -0
  800. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/flow_selectors/registry.py +0 -0
  801. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/image_batch.py +0 -0
  802. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/json_output.py +0 -0
  803. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/__init__.py +0 -0
  804. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/prompts.py +0 -0
  805. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/resources.py +0 -0
  806. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/server.py +0 -0
  807. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/setup.py +0 -0
  808. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/mcp/tasks_extension.py +0 -0
  809. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/media.py +0 -0
  810. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/movie_manifest.py +0 -0
  811. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/observability.py +0 -0
  812. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/paths.py +0 -0
  813. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/profile_lease.py +0 -0
  814. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/profile_store.py +0 -0
  815. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/redaction.py +0 -0
  816. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/__init__.py +0 -0
  817. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/catalog_sync.py +0 -0
  818. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/character_create.py +0 -0
  819. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/doctor.py +0 -0
  820. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/media_recovery.py +0 -0
  821. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/services/mentions.py +0 -0
  822. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/storage.py +0 -0
  823. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/__init__.py +0 -0
  824. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/banned.py +0 -0
  825. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/builtin/__init__.py +0 -0
  826. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/builtin/creative-director.toml +0 -0
  827. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/builtin/reverse-engineer.toml +0 -0
  828. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/builtin/storyboard.toml +0 -0
  829. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/expander.py +0 -0
  830. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/invocation.py +0 -0
  831. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/loader.py +0 -0
  832. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/registry.py +0 -0
  833. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/runtime.py +0 -0
  834. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/tools/spec.py +0 -0
  835. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/ui/app.py +0 -0
  836. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/ui/server.py +0 -0
  837. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/update_check.py +0 -0
  838. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/winsec.py +0 -0
  839. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/worker/codec.py +0 -0
  840. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/worker/daemon.py +0 -0
  841. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/src/gflow_cli/worker/queue.py +0 -0
  842. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tasks/lessons.md +0 -0
  843. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/test_assets/sample_batch.json +0 -0
  844. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/test_assets/sample_batch.tsv +0 -0
  845. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/test_assets/sample_batch_invalid.tsv +0 -0
  846. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/__init__.py +0 -0
  847. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/__init__.py +0 -0
  848. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/_upscale_fakes.py +0 -0
  849. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/fixtures/character_gen_response.json +0 -0
  850. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/fixtures/patch_entity_response.json +0 -0
  851. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/fixtures/project_initial_data_extend_models.json +0 -0
  852. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_aisandbox_auth_error.py +0 -0
  853. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_aisandbox_auth_headers.py +0 -0
  854. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_aisandbox_auth_remediation.py +0 -0
  855. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_bearer_redaction.py +0 -0
  856. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_bootstrap_chooser.py +0 -0
  857. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_character.py +0 -0
  858. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_character_readback_fallback.py +0 -0
  859. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client.py +0 -0
  860. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_character.py +0 -0
  861. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_delete_characters.py +0 -0
  862. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_errors.py +0 -0
  863. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_generate_character.py +0 -0
  864. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_incidents.py +0 -0
  865. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_launch_kwargs.py +0 -0
  866. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_locale_cache.py +0 -0
  867. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_migrated_mint.py +0 -0
  868. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_patch_entity.py +0 -0
  869. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_project_host.py +0 -0
  870. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_scene.py +0 -0
  871. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_upscale.py +0 -0
  872. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_client_window_position.py +0 -0
  873. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_concurrency.py +0 -0
  874. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_credits.py +0 -0
  875. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_dto.py +0 -0
  876. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_engine.py +0 -0
  877. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_extend_chain.py +0 -0
  878. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_image.py +0 -0
  879. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_image_capability_and_cookie_bar.py +0 -0
  880. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_image_dto.py +0 -0
  881. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_image_upscale.py +0 -0
  882. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_migrated_upscale.py +0 -0
  883. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_migrated_video_upscale.py +0 -0
  884. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_post_json_aisandbox_auth.py +0 -0
  885. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_recaptcha.py +0 -0
  886. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_retry.py +0 -0
  887. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_routes.py +0 -0
  888. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_routes_character.py +0 -0
  889. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_routes_locale.py +0 -0
  890. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_routes_scene.py +0 -0
  891. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_sapisidhash_helper.py +0 -0
  892. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_scene_models.py +0 -0
  893. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_video.py +0 -0
  894. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_video_extend.py +0 -0
  895. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_video_request.py +0 -0
  896. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/test_video_status_poll.py +0 -0
  897. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/__init__.py +0 -0
  898. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/_ogiz0b.py +0 -0
  899. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/conftest.py +0 -0
  900. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/drivers/__init__.py +0 -0
  901. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/drivers/test_agentic.py +0 -0
  902. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/drivers/test_classic.py +0 -0
  903. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/drivers/test_factory.py +0 -0
  904. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/drivers/test_ui_mode.py +0 -0
  905. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_agentic_cohort_detection.py +0 -0
  906. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_base.py +0 -0
  907. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_batchexecute.py +0 -0
  908. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_bearer.py +0 -0
  909. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_character_model_picker.py +0 -0
  910. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_click_attribution.py +0 -0
  911. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_common.py +0 -0
  912. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_evaluate_fetch.py +0 -0
  913. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_factory.py +0 -0
  914. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_fingerprint.py +0 -0
  915. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_flow_access_unavailable.py +0 -0
  916. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ligature_carrier.py +0 -0
  917. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_locale_navigation.py +0 -0
  918. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_dispatch.py +0 -0
  919. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_host_gate.py +0 -0
  920. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_images.py +0 -0
  921. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_project.py +0 -0
  922. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_recover.py +0 -0
  923. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_migrated_route.py +0 -0
  924. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_mode_control.py +0 -0
  925. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_model_selection_loud.py +0 -0
  926. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_navigation_settled.py +0 -0
  927. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_new_project_cta_migrated.py +0 -0
  928. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_overlay_precondition.py +0 -0
  929. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_policy_400.py +0 -0
  930. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_sapisidhash.py +0 -0
  931. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_selector_symmetry.py +0 -0
  932. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_transport_timeout.py +0 -0
  933. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ui_automation.py +0 -0
  934. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ui_automation_batch.py +0 -0
  935. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ui_automation_image_mode.py +0 -0
  936. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ui_automation_video.py +0 -0
  937. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_ui_character_editor.py +0 -0
  938. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/api/transports/test_video_model_selection_loud.py +0 -0
  939. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/strategies/test_factory.py +0 -0
  940. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/strategies/test_strategies.py +0 -0
  941. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/test_account_autoselect.py +0 -0
  942. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/test_cookies.py +0 -0
  943. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/test_real_chrome.py +0 -0
  944. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/test_verification.py +0 -0
  945. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/auth/test_windows_acl.py +0 -0
  946. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/__init__.py +0 -0
  947. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_auth_status.py +0 -0
  948. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_auth_error_paths.py +0 -0
  949. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_auth_list.py +0 -0
  950. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_character.py +0 -0
  951. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_character_create.py +0 -0
  952. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_data.py +0 -0
  953. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_data_errors.py +0 -0
  954. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_data_errors_retention.py +0 -0
  955. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_data_sync.py +0 -0
  956. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_docs.py +0 -0
  957. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_doctor.py +0 -0
  958. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_image.py +0 -0
  959. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_image_seed_removed.py +0 -0
  960. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_image_selector_drift.py +0 -0
  961. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_image_upscale.py +0 -0
  962. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_image_uuid_ref_enrichment.py +0 -0
  963. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_instructions.py +0 -0
  964. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_models.py +0 -0
  965. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_movie.py +0 -0
  966. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_run.py +0 -0
  967. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_scene.py +0 -0
  968. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_tools.py +0 -0
  969. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_video.py +0 -0
  970. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_video_chain.py +0 -0
  971. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_cli_video_upscale.py +0 -0
  972. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_docs_catalog_real_docs.py +0 -0
  973. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_error_handling.py +0 -0
  974. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_failure_funnel.py +0 -0
  975. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_helpers.py +0 -0
  976. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_incident_output.py +0 -0
  977. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_movie_manifest.py +0 -0
  978. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_movie_manifest_style_variants.py +0 -0
  979. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_predictable_output.py +0 -0
  980. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_run_with_handlers_context_leak.py +0 -0
  981. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_run_with_handlers_interrupt.py +0 -0
  982. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_settings_validation.py +0 -0
  983. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_t2i_multi_prompt.py +0 -0
  984. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/cli/test_video_recording_busy.py +0 -0
  985. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/composition/test_character.py +0 -0
  986. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/composition/test_compose_prompt.py +0 -0
  987. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/composition/test_handoff.py +0 -0
  988. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/composition/test_style_variants.py +0 -0
  989. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/composition/test_style_variants_e2e.py +0 -0
  990. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/conftest.py +0 -0
  991. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/__init__.py +0 -0
  992. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_chain_repo.py +0 -0
  993. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_failure_recording.py +0 -0
  994. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_find_incomplete_character.py +0 -0
  995. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_models.py +0 -0
  996. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_null_columns_stay_null.py +0 -0
  997. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_packaging.py +0 -0
  998. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_recorder.py +0 -0
  999. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_recorder_character.py +0 -0
  1000. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_redaction.py +0 -0
  1001. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_repository.py +0 -0
  1002. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_scene_persistence.py +0 -0
  1003. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_settings_and_errors.py +0 -0
  1004. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_store.py +0 -0
  1005. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_store_migrations.py +0 -0
  1006. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/data/test_store_transaction_errors.py +0 -0
  1007. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/dev/test_recording_client.py +0 -0
  1008. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/__init__.py +0 -0
  1009. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/conftest.py +0 -0
  1010. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_account_chooser_e2e.py +0 -0
  1011. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_agentic_count_enforcement_e2e.py +0 -0
  1012. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_aisandbox_auth_live.py +0 -0
  1013. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_asset_tagging_e2e.py +0 -0
  1014. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_auth_verification_e2e.py +0 -0
  1015. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_blocking_dialog_dismissal_bdd.py +0 -0
  1016. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_cancellation_e2e.py +0 -0
  1017. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_chain_e2e.py +0 -0
  1018. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_character_create_e2e.py +0 -0
  1019. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_character_mcp_parity_e2e.py +0 -0
  1020. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_classic_count_setter_e2e.py +0 -0
  1021. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_click_attribution_bdd.py +0 -0
  1022. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_crash_recovery_e2e.py +0 -0
  1023. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_credits_e2e.py +0 -0
  1024. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_credits_mcp_e2e.py +0 -0
  1025. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_daemon_e2e.py +0 -0
  1026. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_data_download_e2e.py +0 -0
  1027. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_data_layer_e2e.py +0 -0
  1028. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_data_sync_names_e2e.py +0 -0
  1029. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_e2e_env_isolation.py +0 -0
  1030. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_entity_provenance_e2e.py +0 -0
  1031. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_entity_smuggling_e2e.py +0 -0
  1032. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_frame_picker_binding_bdd.py +0 -0
  1033. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_i2v_flags_e2e.py +0 -0
  1034. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_image_batch_e2e.py +0 -0
  1035. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_image_i2i_ref_cap_e2e.py +0 -0
  1036. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_image_uuid_ref_e2e.py +0 -0
  1037. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_incident_quality_e2e.py +0 -0
  1038. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_insufficient_credits_e2e.py +0 -0
  1039. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_json_output_e2e.py +0 -0
  1040. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_landing_state_diagnosis_bdd.py +0 -0
  1041. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_live_agentic_instructions.py +0 -0
  1042. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_locale_selectors_e2e.py +0 -0
  1043. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_login_identity_recheck_e2e.py +0 -0
  1044. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_manifest_refs_bdd.py +0 -0
  1045. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_i2v_e2e.py +0 -0
  1046. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_image_character_mention_bdd.py +0 -0
  1047. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_locale_e2e.py +0 -0
  1048. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_migrated_upscale_e2e.py +0 -0
  1049. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_project_naming_e2e.py +0 -0
  1050. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_recaptcha_error_shape_bdd.py +0 -0
  1051. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_refresh_on_miss_e2e.py +0 -0
  1052. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_retired_labs_route_diagnosis_e2e.py +0 -0
  1053. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_scene_compose_live.py +0 -0
  1054. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_sidebar_recovery_e2e.py +0 -0
  1055. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_t2i_batch_project_e2e.py +0 -0
  1056. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_tools_e2e.py +0 -0
  1057. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_transports_e2e.py +0 -0
  1058. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_video_r2v_ref_cap_e2e.py +0 -0
  1059. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_video_r2v_uuid_name_e2e.py +0 -0
  1060. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/e2e/test_video_t2v_e2e.py +0 -0
  1061. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/__init__.py +0 -0
  1062. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/asset_tagging.feature +0 -0
  1063. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/auth.feature +0 -0
  1064. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/auth_login.feature +0 -0
  1065. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/blocking_dialog_dismissal.feature +0 -0
  1066. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/character_create.feature +0 -0
  1067. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/character_read.feature +0 -0
  1068. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/click_attribution.feature +0 -0
  1069. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/conftest.py +0 -0
  1070. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/credits.feature +0 -0
  1071. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/duration_tab_drift.feature +0 -0
  1072. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/entity_provenance.feature +0 -0
  1073. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/frame_picker_binding.feature +0 -0
  1074. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/image.feature +0 -0
  1075. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/image_batch_references.feature +0 -0
  1076. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/image_upscale.feature +0 -0
  1077. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/incident_diagnostics.feature +0 -0
  1078. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/instructions.feature +0 -0
  1079. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/landing_state_diagnosis.feature +0 -0
  1080. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/latched_locale_recovery.feature +0 -0
  1081. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/locale_picker_include.feature +0 -0
  1082. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/manifest_refs_live.feature +0 -0
  1083. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/mcp_tasks.feature +0 -0
  1084. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/media_picker_tiers.feature +0 -0
  1085. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_driver.feature +0 -0
  1086. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_host_gate.feature +0 -0
  1087. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_host_images.feature +0 -0
  1088. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_i2v.feature +0 -0
  1089. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_image_character_mention.feature +0 -0
  1090. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_refusal_envelope.feature +0 -0
  1091. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/migrated_refusal_live.feature +0 -0
  1092. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/output_hardening.feature +0 -0
  1093. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/recaptcha_error_shape.feature +0 -0
  1094. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_asset_tagging_steps.py +0 -0
  1095. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_auth_login_steps.py +0 -0
  1096. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_auth_steps.py +0 -0
  1097. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_character_create_steps.py +0 -0
  1098. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_character_read_steps.py +0 -0
  1099. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_e2e_binding_guard.py +0 -0
  1100. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_image_steps.py +0 -0
  1101. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_image_upscale_steps.py +0 -0
  1102. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_incident_diagnostics_steps.py +0 -0
  1103. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_instructions_steps.py +0 -0
  1104. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_locale_picker_include_steps.py +0 -0
  1105. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_mcp_tasks_steps.py +0 -0
  1106. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_media_picker_tiers_steps.py +0 -0
  1107. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_migrated_driver_steps.py +0 -0
  1108. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_migrated_host_gate_steps.py +0 -0
  1109. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_migrated_host_images_steps.py +0 -0
  1110. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_migrated_i2v_steps.py +0 -0
  1111. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_migrated_refusal_envelope_steps.py +0 -0
  1112. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_output_hardening_steps.py +0 -0
  1113. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_step_collision_guard.py +0 -0
  1114. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_video_agent_ui_steps.py +0 -0
  1115. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/test_video_chain_steps.py +0 -0
  1116. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/video_agent_ui.feature +0 -0
  1117. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/features/video_chain.feature +0 -0
  1118. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/__init__.py +0 -0
  1119. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/changelog_modal_page.html +0 -0
  1120. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/doctor_env.py +0 -0
  1121. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/flow_model_inventory.json +0 -0
  1122. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/flow_project_listing_media.json +0 -0
  1123. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/listing_payload.py +0 -0
  1124. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/fixtures/seeded_catalog.py +0 -0
  1125. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/__init__.py +0 -0
  1126. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/test_grading.py +0 -0
  1127. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/test_model.py +0 -0
  1128. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/test_model_governance.py +0 -0
  1129. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/test_registry.py +0 -0
  1130. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/flow_selectors/test_report.py +0 -0
  1131. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/image_batch/__init__.py +0 -0
  1132. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/image_batch/test_image_manifest.py +0 -0
  1133. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/image_batch/test_jitter_config.py +0 -0
  1134. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/image_batch/test_observability_events.py +0 -0
  1135. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/__init__.py +0 -0
  1136. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/conftest.py +0 -0
  1137. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/constants.py +0 -0
  1138. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/test_docs_ships_in_wheel.py +0 -0
  1139. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/test_expander_gateway.py +0 -0
  1140. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/test_storage_gcs.py +0 -0
  1141. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/integration/test_storage_s3.py +0 -0
  1142. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/__init__.py +0 -0
  1143. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/conftest.py +0 -0
  1144. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_auth_status_tool.py +0 -0
  1145. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_character_tools.py +0 -0
  1146. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_download_error_envelope.py +0 -0
  1147. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_error_funnel.py +0 -0
  1148. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_http_transport.py +0 -0
  1149. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_known_issues_resource.py +0 -0
  1150. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_mcp_profile_contention.py +0 -0
  1151. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_migrated_i2v_parity.py +0 -0
  1152. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_no_spend.py +0 -0
  1153. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_payload_key_round_trip.py +0 -0
  1154. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_rate_limit_envelope.py +0 -0
  1155. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_reference_entity_round_trip.py +0 -0
  1156. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_resources.py +0 -0
  1157. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_serve_auth.py +0 -0
  1158. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_server.py +0 -0
  1159. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_setup.py +0 -0
  1160. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_stdio_transport.py +0 -0
  1161. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_tasks_extension.py +0 -0
  1162. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_tools_helpers.py +0 -0
  1163. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_tools_instructions.py +0 -0
  1164. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_tools_wired.py +0 -0
  1165. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/mcp/test_upscale_tool.py +0 -0
  1166. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_analyze_agent_ui_capture.py +0 -0
  1167. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_canary_classify.py +0 -0
  1168. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_canary_reexec.py +0 -0
  1169. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_capture_locale_invariants.py +0 -0
  1170. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_capture_video_model_capability_matrix.py +0 -0
  1171. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_council_memory.py +0 -0
  1172. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_fork_pr_ci.py +0 -0
  1173. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_materiality.py +0 -0
  1174. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_release_artifacts.py +0 -0
  1175. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_repo_hygiene.py +0 -0
  1176. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_test_count.py +0 -0
  1177. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_check_website_docs_pii.py +0 -0
  1178. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_codex_plugin.py +0 -0
  1179. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_extract_har_summary.py +0 -0
  1180. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_frame_acceptance.py +0 -0
  1181. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_generate_website_docs.py +0 -0
  1182. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_incident_bundle_quality.py +0 -0
  1183. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_materiality_backtest.py +0 -0
  1184. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_skillopt_scoring.py +0 -0
  1185. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_spike_page_pool.py +0 -0
  1186. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_spike_profile_lease.py +0 -0
  1187. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_update_sponsors.py +0 -0
  1188. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/scripts/test_workflow_hardening.py +0 -0
  1189. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/__init__.py +0 -0
  1190. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_catalog_sync.py +0 -0
  1191. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_character_create_redaction.py +0 -0
  1192. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_character_create_saga.py +0 -0
  1193. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_character_gen_no_direct_post.py +0 -0
  1194. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_doctor.py +0 -0
  1195. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_media_attribution.py +0 -0
  1196. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_media_recovery.py +0 -0
  1197. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_mentions_observability.py +0 -0
  1198. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_mentions_parse.py +0 -0
  1199. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_mentions_resolve.py +0 -0
  1200. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/services/test_resolve_and_apply.py +0 -0
  1201. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/smoke/__init__.py +0 -0
  1202. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/smoke/test_profile_account_smoke.py +0 -0
  1203. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/smoke/test_real_flow.py +0 -0
  1204. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_about_landing_guard.py +0 -0
  1205. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_auth.py +0 -0
  1206. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_batch_outcomes.py +0 -0
  1207. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_batch_recording.py +0 -0
  1208. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_batch_ref_wiring.py +0 -0
  1209. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_browser_manager.py +0 -0
  1210. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_chain.py +0 -0
  1211. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_chain_manifest.py +0 -0
  1212. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_cli_data.py +0 -0
  1213. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_cli_project.py +0 -0
  1214. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_cli_update.py +0 -0
  1215. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_config.py +0 -0
  1216. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_conftest_isolation.py +0 -0
  1217. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_data_queries.py +0 -0
  1218. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_bundle.py +0 -0
  1219. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_events.py +0 -0
  1220. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_journal.py +0 -0
  1221. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_recorder.py +0 -0
  1222. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_retention.py +0 -0
  1223. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_diagnostics_sanitize.py +0 -0
  1224. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_dockerfile_version_pin.py +0 -0
  1225. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_duration_tab_drift.py +0 -0
  1226. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_entity_provenance.py +0 -0
  1227. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_errors.py +0 -0
  1228. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_errors_classification.py +0 -0
  1229. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_glama_build_spec.py +0 -0
  1230. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_image_batch_references.py +0 -0
  1231. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_incident_generation_requests.py +0 -0
  1232. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_json_output.py +0 -0
  1233. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_manifest_refs.py +0 -0
  1234. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_media.py +0 -0
  1235. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_observability.py +0 -0
  1236. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_overlay_banner_dismissal.py +0 -0
  1237. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_paths.py +0 -0
  1238. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_playwright_pin.py +0 -0
  1239. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_plugin_manifests.py +0 -0
  1240. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_profile_lease.py +0 -0
  1241. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_profile_lease_subprocess.py +0 -0
  1242. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_profile_store.py +0 -0
  1243. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_profile_store_locale.py +0 -0
  1244. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_project_list_urls.py +0 -0
  1245. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_release_version_sites.py +0 -0
  1246. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_rich_markup_safety.py +0 -0
  1247. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_self_documenting_errors.py +0 -0
  1248. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_server_json.py +0 -0
  1249. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_smoke.py +0 -0
  1250. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/test_update_check.py +0 -0
  1251. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/__init__.py +0 -0
  1252. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_banned.py +0 -0
  1253. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_expander.py +0 -0
  1254. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_invocation.py +0 -0
  1255. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_loader.py +0 -0
  1256. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_registry.py +0 -0
  1257. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_runtime.py +0 -0
  1258. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/tools/test_spec.py +0 -0
  1259. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/ui/test_app.py +0 -0
  1260. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_codec.py +0 -0
  1261. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_daemon.py +0 -0
  1262. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_mcp_daemon_race.py +0 -0
  1263. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_queue.py +0 -0
  1264. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_queue_multiprocess.py +0 -0
  1265. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/tests/worker/test_queue_reconciliation.py +0 -0
  1266. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/ACCOUNT_SAFETY.md +0 -0
  1267. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/ARCHITECTURE.md +0 -0
  1268. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/CHARACTER.md +0 -0
  1269. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/DATA_LAYER.md +0 -0
  1270. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/DEBUGGING.md +0 -0
  1271. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/DEVELOPMENT.md +0 -0
  1272. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/EXTERNAL_STORAGE.md +0 -0
  1273. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/INSTRUCTIONS.md +0 -0
  1274. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/MEDIA_LIBRARY.md +0 -0
  1275. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/MOVIE.md +0 -0
  1276. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/PROMPT_EXPANSION.md +0 -0
  1277. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/SECURITY.md +0 -0
  1278. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/SPONSORS.md +0 -0
  1279. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/TOOLS.md +0 -0
  1280. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/agents.md +0 -0
  1281. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/index.md +0 -0
  1282. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/installation.md +0 -0
  1283. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/onboarding-mockup.html +0 -0
  1284. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/onboarding.md +0 -0
  1285. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/docs/stylesheets/extra.css +0 -0
  1286. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/mkdocs.yml +0 -0
  1287. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/requirements.in +0 -0
  1288. {gflow_cli-0.85.0 → gflow_cli-0.86.0}/website/requirements.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gflow",
3
- "version": "0.85.0",
3
+ "version": "0.86.0",
4
4
  "description": "Reusable development and operations workflows for gflow-cli",
5
5
  "author": {
6
6
  "name": "Flavio Oliva",
@@ -202,6 +202,16 @@
202
202
  # with exit 36 (kill switch).
203
203
  # GFLOW_CLI_FLOW_HOST=auto
204
204
 
205
+ # Agent-only composer (#799): "Confirm before generating" applied before a run.
206
+ # account (default): leave the Flow account's setting; gflow approves one
207
+ # confirmation its own submit produced and stops on a second. Only that second
208
+ # one is stopped before billing: one confirmation can cover several clips, and an
209
+ # over-count under it is caught after the fact.
210
+ # always: set Always. never: set Never — no approval step, so an agent that
211
+ # queues more than asked is only caught after credits are spent.
212
+ # Saved to the Flow account and not restored after the run.
213
+ # GFLOW_CLI_AGENT_CONFIRM=account
214
+
205
215
  # DEPRECATED — use GFLOW_CLI_UI_MODE=classic. true maps to ui_mode=classic, but the
206
216
  # old silent agentic fallback is gone: a classic-required run now aborts (exit 28).
207
217
  # GFLOW_CLI_PREFER_CLASSIC=false
@@ -256,9 +256,12 @@ jobs:
256
256
  # (bad marker/-k filter, broken conftest), never routine deletions.
257
257
  run: uv run python scripts/ci/check_test_count.py pytest-report.xml 2000
258
258
 
259
- # Upload coverage XML so the sonar job can consume it
259
+ # Upload coverage XML so the sonar job can consume it. It must come from the job
260
+ # that installs Chromium: the real-DOM fixture tests skip everywhere else, so a
261
+ # 3.11 upload counted every browser-tested module as uncovered (#989's
262
+ # agent_only_composer.py measured 39% new coverage with its tests green).
260
263
  - name: Upload coverage report
261
- if: matrix.python-version == '3.11'
264
+ if: matrix.python-version == '3.13'
262
265
  uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7
263
266
  with:
264
267
  name: coverage-xml
@@ -44,10 +44,10 @@ by construction, so Codex / Cursor / Aider / `agy` read exactly what Claude Code
44
44
 
45
45
  ## Project at a glance
46
46
 
47
- - Python CLI and MCP server for [Google Flow](https://labs.google/fx/tools/flow) — drives Veo (image-to-video, text-to-video) and Imagen (text-to-image) generations from the terminal by reverse-engineering Flow's private REST API at `aisandbox-pa.googleapis.com` — and, for accounts Google has moved to `flow.google.com`, that frontend's `batchexecute` wire (text-to-video, image-to-video from a local `--initial-frame`, reference-to-video from local `--ref` files, and text-to-image/local-file image-to-image with `@Character` mentions by name, today; `GFLOW_CLI_FLOW_HOST`).
47
+ - Python CLI and MCP server for [Google Flow](https://labs.google/fx/tools/flow) — drives Veo (image-to-video, text-to-video) and Imagen (text-to-image) generations from the terminal by reverse-engineering Flow's private REST API at `aisandbox-pa.googleapis.com` — and, for accounts Google has moved to `flow.google.com`, that frontend's `batchexecute` wire (text-to-video, image-to-video from a local `--initial-frame`, reference-to-video from local `--ref` files, and text-to-image/local-file image-to-image with `@Character` mentions by name, and a single-segment `video extend`, today — an agent-only composer, #799, takes text-to-image and text-to-video only; `GFLOW_CLI_FLOW_HOST`).
48
48
  - Python 3.11+ · `uv`-managed · `hatchling` builds · Playwright Chromium transport · `pyright` strict · `ruff` · `pytest`.
49
49
  - Single-package modular monolith. Top-level modules under `src/gflow_cli/`: `api/`, `auth/`, `data/`, `mcp/`, `services/`, `tools/`, `ui/`, `worker/`, `browser_manager.py`, `cli.py`, `_cli_helpers.py`, `diagnostics.py`, `json_output.py`, `media.py`, `profile_lease.py`, `redaction.py`, `storage.py`, `winsec.py`, `cli_project.py`, `cli_character.py`, `cli_credits.py`, `cli_data.py`, `cli_image.py`, `cli_instructions.py`, `cli_models.py`, `cli_movie.py`, `cli_run.py`, `cli_scene.py`, `cli_tools.py`, `cli_video.py`, `chain.py`, `chain_manifest.py`, `cli_doctor.py`, `cli_docs.py`, `docs_catalog.py`, `cli_update.py`, `composition.py`, `config.py`, `errors.py`, `file_integrity.py`, `flow_selectors/`, `update_check.py`, `exceptions.py`, `image_batch.py`, `movie_manifest.py`, `observability.py`, `paths.py`, `profile_store.py`.
50
- - Command surface: `gflow auth`, `gflow credits` (user/list — read-only Veo balance), `gflow image` (t2i/i2i/batch/upload/upscale), `gflow video` (t2v/i2v/r2v/chain/extend/upscale — `extend` continues an existing clip past Flow's 8s ceiling, server-seeded from the source so the join is continuous; `upscale` exports to 1080p, 720p, or 270p GIF; no `batch` subcommand; the nonfunctional stub was removed, loop `gflow video t2v`/`i2v` from the shell for multi-clip runs), `gflow character` (create/list/show/rm/voices — reusable project-scoped Flow Character entities), `gflow scene` (create/show — Add Clip / Scenes, with `create --output` for credit-free server-side extended video), `gflow instructions` (persistent Agent-Mode brief cards — add/list/enable/disable/rm/apply/toggle-mode, credits-free, `--project` required), `gflow movie` (run/template — multi-scene manifest pipeline), `gflow tools` (list/show/run — prompt-rewriting tools, also `--tool` on generation commands), `gflow data` (catalog queries), `gflow docs` (browse the bundled documentation — bare lists every topic, `gflow docs <topic>` prints one as Markdown, `gflow docs --search TERM` searches all of them; there are **no** `list`/`print`/`search` subcommands — read-only, offline, deliberately no MCP twin), `gflow doctor` (read-only pre-flight diagnostic, exit 33 = findings present), `gflow update` (self-update through the installer that put it here — uv tool / pipx / pip; `--check` only reports; source installs refused, exit 11; deliberately no MCP twin), `gflow project`, `gflow models`, `gflow run` (JSON image-batch config; a row may generate from an earlier row with `"ref": "batch:N"`, referenced in place, no upload, or from a local image file, uploaded once per run), `gflow mcp` (run/setup — stdio MCP server), and `gflow serve` (Streamable HTTP at `/mcp`; `--transport sse` is deprecated).
50
+ - Command surface: `gflow auth` (login/status/renew/list/use/logout — `renew` refreshes saved sessions headlessly, no sign-in), `gflow credits` (user/list — Veo balance; read-only unless `--refresh`, which renews expired sessions first), `gflow image` (t2i/i2i/batch/upload/upscale), `gflow video` (t2v/i2v/r2v/chain/extend/upscale — `extend` continues an existing clip past Flow's 8s ceiling, server-seeded from the source so the join is continuous; `upscale` exports to 1080p, 720p, or 270p GIF; no `batch` subcommand; the nonfunctional stub was removed, loop `gflow video t2v`/`i2v` from the shell for multi-clip runs), `gflow character` (create/list/show/rm/voices — reusable project-scoped Flow Character entities), `gflow scene` (create/show — Add Clip / Scenes, with `create --output` for credit-free server-side extended video), `gflow instructions` (persistent Agent-Mode brief cards — add/list/enable/disable/rm/apply/toggle-mode, credits-free, `--project` required), `gflow movie` (run/template — multi-scene manifest pipeline), `gflow tools` (list/show/run — prompt-rewriting tools, also `--tool` on generation commands), `gflow data` (catalog queries), `gflow docs` (browse the bundled documentation — bare lists every topic, `gflow docs <topic>` prints one as Markdown, `gflow docs --search TERM` searches all of them; there are **no** `list`/`print`/`search` subcommands — read-only, offline, deliberately no MCP twin), `gflow doctor` (read-only pre-flight diagnostic, exit 33 = findings present), `gflow update` (self-update through the installer that put it here — uv tool / pipx / pip; `--check` only reports; source installs refused, exit 11; deliberately no MCP twin), `gflow project`, `gflow models`, `gflow run` (JSON image-batch config; a row may generate from an earlier row with `"ref": "batch:N"`, referenced in place, no upload, or from a local image file, uploaded once per run), `gflow mcp` (run/setup — stdio MCP server), and `gflow serve` (Streamable HTTP at `/mcp`; `--transport sse` is deprecated).
51
51
  - Works with any Google account that has Flow access. All generations bill against the user's own Google account.
52
52
 
53
53
  ## Headed-browser dependency (architectural reality)
@@ -7,6 +7,82 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.86.0] — 2026-10-18
11
+
12
+ ### Added
13
+
14
+ - **`gflow video extend` runs on flow.google.com, one segment at a time.** gflow opens the
15
+ clip's editor and drives Flow's own Extend control, so the page builds and mints the
16
+ `fZytfe` submit itself, the way every other flow.google.com port works. Before any click,
17
+ Flow's own project read must list the clip as a video in `--project` (exit 11 otherwise).
18
+ Every scene/extend request passes a route guard that aborts it, before Flow sees it, if
19
+ it names another clip. The new segment is downloaded to `--output` (or the output
20
+ directory). On that host `--segments > 1`, `--scene`/`--resume-from`, `--seed` and an
21
+ `--aspect` other than the source's exit 36 before anything is billed; `--aspect` now
22
+ defaults to the source's aspect there (9:16 on labs.google, as before). Each run leaves a
23
+ new scene in the project, and the plan shows no price, because flow.google.com does not
24
+ report one before submitting. Thanks to @stgmt, whose wire research in #882 (the
25
+ workflow-id slot, the frame window, the `as29s` record) mapped this surface.
26
+ ([#639](https://github.com/ffroliva/gflow-cli/issues/639), [#882](https://github.com/ffroliva/gflow-cli/pull/882))
27
+ - **Text-to-image and text-to-video on Flow's agent-only composer
28
+ ([#799](https://github.com/ffroliva/gflow-cli/issues/799)).** Accounts `flow.google.com` serves
29
+ with no classic composer exited 25; `gflow image t2i` and `gflow video t2v` (and their MCP
30
+ twins) now run there. gflow sets aspect, count and model in Agent settings, saves, asks the
31
+ agent in plain language, and restores those defaults afterwards — also when the run fails
32
+ with an error. A run killed between Save and restore leaves the run's defaults in place; the
33
+ `migrated.agent_only.defaults_restore_failed` log names the originals (KNOWN_ISSUES).
34
+ Completion is read from the page: images from new grid tiles, named by their
35
+ `img[data-media-id]` and downloaded at original size from the tile's opaque `/asb/` URL
36
+ (`=s0`; the tile itself shows a 512-px preview), videos once no pending tile is left, with the clip id taken from the agent's reply when the grid tile has
37
+ none. Live-verified on an AI Pro account: 3:4 × 2 images, and a 4 s 9:16 clip downloaded.
38
+ Other forms on that composer exit 36 before anything is clicked.
39
+ - **`GFLOW_CLI_AGENT_CONFIRM=account|always|never`** — the agent-only composer's "Confirm before
40
+ generating" choice, applied before a run and kept. `account` (default) leaves the account's
41
+ setting alone. With a confirmation step gflow approves exactly one that its own submit
42
+ produced, and stops without approving a second. Only that second confirmation is stopped
43
+ before billing: one confirmation can cover several clips, and an over-count under it is caught
44
+ after the fact. A video run also refuses to start while another clip is still generating in the project, and stops if more clips are queued than were requested.
45
+ - **`gflow auth renew` refreshes saved sessions without signing in again.** It opens each
46
+ profile (`--profile`, or `--all`) in a headless browser and loads Flow, so Google and Flow
47
+ rotate the saved cookies. It then verifies the session like `gflow auth status`. No credits
48
+ are spent. A revoked session still needs `gflow auth login`, and a profile in use by another
49
+ gflow process is skipped. It reports a profile as renewed only when it saw it renewed: an
50
+ account Flow holds at its public `/about` page is `public_landing`; a labs.google session that
51
+ stayed expired, or never answered readably, is `labs_stale` / `labs_unverified`; a browser
52
+ that cannot start (the profile is open in your own Chrome) is a `launch_error` row, and the
53
+ rest of an `--all` run carries on. `--json` prints JSON on every path, including errors.
54
+ - **`gflow credits user|list --refresh` renews expired sessions again.** Since #802, an expired
55
+ session fails the credits read without opening a browser. That is the right default, because
56
+ re-asking aisandbox-pa with the same Bearer cannot change its answer. It also removed the only
57
+ automatic renewal that `credits list` used to give stale profiles. `--refresh` brings it back as
58
+ an opt-in. A profile whose fast path raises an expired-session error is renewed through
59
+ `auth renew` and asked again, while the others are untouched. A failed renewal keeps the
60
+ original diagnosis. The MCP twin is `gflow_get_credits(refresh=true)`. The credits 401 hint
61
+ now points at `--refresh` / `gflow auth renew` instead of "check your balance in Flow"; an
62
+ account whose labs session issues no token at all is not helped by renewal, and says so.
63
+
64
+ ### Changed
65
+
66
+ - **The agent-only composer is recognised after 5 s**, not after the full 30 s readiness wait.
67
+ - **Image downloads accept `flow.google.com` URLs, and now check where redirects end.** The
68
+ agent-only composer's `/asb/` image URLs redirect to `lh3.google.com`; a download whose
69
+ redirects end on a host outside Google's allowlist (or on plain `http`) is refused before
70
+ anything is written.
71
+ - **A run on the agent-only composer that times out after submit is `retryable: false`.** The
72
+ request was already sent, so an automatic retry would submit (and for a video, bill) again.
73
+ - **Refusals before the page opens now require that neither composer supports the request.**
74
+ `--aspect 3:4` was refused up front because the classic settings pane has no 3:4 option; the
75
+ agent-only pane does.
76
+
77
+ ### Fixed
78
+
79
+ - **`gflow video extend --json` prints one JSON document.** The human plan preamble no
80
+ longer precedes it on stdout, and the payload now carries the same `video_result` fields
81
+ as `t2v`/`i2v` (`status`, `succeeded`, `media_id`, `local_path`, `request.mode`). On
82
+ flow.google.com `--output` saves the new extension clip; on labs.google it still renders
83
+ the whole scene.
84
+ (#882, @stgmt)
85
+
10
86
  ## [0.85.0] — 2026-10-14
11
87
 
12
88
  ### Added
@@ -6058,7 +6134,8 @@ shell-script template that branches on these codes.
6058
6134
 
6059
6135
  First skeleton. Not functional end-to-end yet.
6060
6136
 
6061
- [Unreleased]: https://github.com/ffroliva/gflow-cli/compare/v0.85.0...HEAD
6137
+ [Unreleased]: https://github.com/ffroliva/gflow-cli/compare/v0.86.0...HEAD
6138
+ [0.86.0]: https://github.com/ffroliva/gflow-cli/compare/v0.85.0...v0.86.0
6062
6139
  [0.85.0]: https://github.com/ffroliva/gflow-cli/compare/v0.84.0...v0.85.0
6063
6140
  [0.84.0]: https://github.com/ffroliva/gflow-cli/compare/v0.83.2...v0.84.0
6064
6141
  [0.83.2]: https://github.com/ffroliva/gflow-cli/compare/v0.83.1...v0.83.2
@@ -47,7 +47,7 @@ close Chrome yourself. On the measured account, `/about` was gone on the next ru
47
47
 
48
48
  ### Flow is migrating to `flow.google.com`; generation coverage is partial but includes images
49
49
 
50
- - **Status:** Open (partially resolved) · **Severity:** High for unported forms · **Affected:** on accounts the rollout has reached, `gflow video t2v`, local-file `video i2v` / `r2v`, `gflow image t2i`, and local-file `gflow image i2i` now run on the migrated host. Image mode supports Nano Banana 2.1 (`nano2`, which replaced Nano Banana 2 there, #958) / 2 Lite / Pro, all five aspect ratios its radiogroup renders (16:9, 4:3, 1:1, 3:4, 9:16 — 3:4 appeared by 2026-09-17, #864), and count 1–4. Image prompts can tag a **character** with `@Name` / `--reference-entity` + `--reference-entity-name` since #723 (attached through the composer's `@` picker; an id without a name exits 36; video is unchanged). Image refs by UUID, video `@Name` / `--reference-entity`, Agent instructions, Imagen 4, video frame refs by UUID/name, scenes, extend, instructions and tools are not ported yet and fail before submit. **`character create` worked on the migrated host until its labs `createEntity` route was retired:** measured 2026-10-14 on a profile served flow.google.com, it exits 7 with "Flow RPCs have been deprecated" (404). `character list` does NOT: it reads the retired labs `projectInitialData` route and exits 7, measured 2026-09-20 both on `auto` and with `GFLOW_CLI_FLOW_HOST=flow.google.com` (#875). Of the remainder, only the i2v-by-UUID case rests on a positive observation of absence (the Frames picker tiles carry no media id); `scenes`, `extend`, `instructions` and `tools` remain *unported by gflow*, never proven impossible on the host.
50
+ - **Status:** Open (partially resolved) · **Severity:** High for unported forms · **Affected:** on accounts the rollout has reached, `gflow video t2v`, local-file `video i2v` / `r2v`, `gflow image t2i`, local-file `gflow image i2i`, and a **single-segment** `gflow video extend` (#882: Flow's own Extend control, driven from the clip editor) now run on the migrated host. Image mode supports Nano Banana 2.1 (`nano2`, which replaced Nano Banana 2 there, #958) / 2 Lite / Pro, all five aspect ratios its radiogroup renders (16:9, 4:3, 1:1, 3:4, 9:16 — 3:4 appeared by 2026-09-17, #864), and count 1–4. Image prompts can tag a **character** with `@Name` / `--reference-entity` + `--reference-entity-name` since #723 (attached through the composer's `@` picker; an id without a name exits 36; video is unchanged). That matrix is the **classic** migrated composer's. On an **agent-only** composer ([#799](https://github.com/ffroliva/gflow-cli/issues/799)) gflow drives `image t2i` (all five aspects; count 1–4) and `video t2v` (one 9:16 or 16:9 clip) only — i2i, i2v, r2v and character references are refused there before anything is clicked. Image refs by UUID, video `@Name` / `--reference-entity`, Agent instructions, Imagen 4, video frame refs by UUID/name, scenes, chained extend (`-n > 1`, `--scene`/`--resume-from`, `--seed`, an `--aspect` other than the source clip's), instructions and tools are not ported yet and fail before submit. **`character create` worked on the migrated host until its labs `createEntity` route was retired:** measured 2026-10-14 on a profile served flow.google.com, it exits 7 with "Flow RPCs have been deprecated" (404). `character list` does NOT: it reads the retired labs `projectInitialData` route and exits 7, measured 2026-09-20 both on `auto` and with `GFLOW_CLI_FLOW_HOST=flow.google.com` (#875). Of the remainder, only the i2v-by-UUID case rests on a positive observation of absence (the Frames picker tiles carry no media id); `scenes`, multi-segment `extend` (`-n > 1`, `--scene`/`--resume-from`, `--seed`), `instructions` and `tools` remain *unported by gflow*, never proven impossible on the host.
51
51
  - **Tracked:** [#639](https://github.com/ffroliva/gflow-cli/issues/639) · Reported 2026-09-02 against 0.59.0, 0.62.1, 0.63.0 and 0.65.0
52
52
  - **Confirmed live 2026-09-03 on a second, independent account** (`ffroliva`) — see [LIVE_VERIFICATION_v0.66.0](docs/LIVE_VERIFICATION_v0.66.0.md). A read-only probe of the migrated origin measured `i_total: 0`, reproducing the reporter's central measurement.
53
53
  - **`--reference-entity` was refused on `r2v` but not on `t2v`** ([#716](https://github.com/ffroliva/gflow-cli/issues/716), fixed in v0.71.0): the "not ported, exit 36" refusal above sat inside the r2v branch of the routing gate, so a `t2v` request carrying a character entity returned from that gate without its entities ever being inspected — and nothing downstream attaches one on this host. The generation was **submitted and billed** with the entity silently dropped, returning a plausible clip of the wrong person. The check is now mode-independent and ahead of every early return. If you ran `gflow video t2v @Name …` or `--reference-entity` on a moved account before this fix, the identity in those clips was never bound.
@@ -140,7 +140,7 @@ with the distinct, non-retryable exit 36 instead of the misleading
140
140
  `UiSelectorDriftError` (exit 23, "file a selector bug"). `_check_logged_in` also
141
141
  accepts the migrated host, so a migrated load is no longer misread as a
142
142
  logged-out session. The generation forms listed above and characters are driven;
143
- scenes, extend, instructions, tools, and the named reference/model
143
+ scenes, chained extend, instructions, tools, and the named reference/model
144
144
  variants are the remaining work
145
145
  tracked here — no retry helps for those until each is ported.
146
146
 
@@ -742,16 +742,27 @@ Google's web session cookies aren't permanent. They expire when:
742
742
 
743
743
  When this happens, the next API call returns 401/403 and `gflow-cli` raises `AuthExpiredError`.
744
744
 
745
- **Workaround:**
745
+ **Workaround, stale session (the common case):**
746
+ ```bash
747
+ gflow auth renew --profile <name> # or: gflow auth renew --all
748
+ gflow credits list --refresh # renews only the expired profiles, then reads them
749
+ ```
750
+
751
+ A profile that has just sat unused has a lapsed labs.google token, not a dead Google session.
752
+ `auth renew` loads Flow and labs.google in a headless browser and waits for labs to sign in
753
+ again on its own, with no prompt. Measured 2026-10-14: 7 of 10 stale profiles recovered.
754
+
755
+ **Workaround, revoked session:**
746
756
  ```bash
747
757
  gflow auth login --profile <name>
748
758
  ```
749
759
 
750
760
  Re-running `auth login` reuses the existing profile dir (you typically just click "Continue as <you>" on the Google account chooser). No data is lost; only the cookie jar is refreshed.
751
761
 
752
- **Why we don't auto-refresh:** Google's session-refresh flow can include CAPTCHA / device verification that only a human can complete. A community SDK can't reliably automate that step. See [docs/AUTHENTICATION.md § Refresh / expiry](docs/AUTHENTICATION.md#refresh--expiry).
753
-
754
- **Roadmap:** not scheduled. The Phase 4 hardening pass (v0.4.0a2) added typed `AuthExpiredError` + exit code `3` so scripts can branch on auth expiry deterministically. A periodic "session liveness" check + a `gflow auth refresh` command are still candidates for a later phase, but not committed to a version yet.
762
+ **What renewal cannot do:** complete a step only a human can, such as CAPTCHA, device
763
+ verification, or "Confirm it's you". The 3 profiles that did not recover on 2026-10-14 were held
764
+ at Flow's public `/about` page ([entry above](#every-command-lands-on-flowgooglecomabout-exit-31-while-gflow-auth-status-says-the-session-is-fine)),
765
+ and `auth renew` reports them as not renewed. See [docs/AUTHENTICATION.md § Refresh / expiry](docs/AUTHENTICATION.md#refresh--expiry).
755
766
 
756
767
  ---
757
768
 
@@ -1345,32 +1356,49 @@ continue as a seeded I2V generation — tracked as backlog.
1345
1356
 
1346
1357
  ## Mitigated
1347
1358
 
1348
- ### Some accounts get an agent-only composer on flow.google.com, which gflow cannot drive
1359
+ ### Some accounts get an agent-only composer on flow.google.com — text-to-image and text-to-video are driven; other forms are not
1349
1360
 
1350
1361
  Some accounts on `flow.google.com` are served a composer with **no classic arm at all**:
1351
1362
  the only prompt box is the agent panel, there is no `agent-mode-chip` to turn off, and
1352
1363
  aspect / model / count are Agent-settings **defaults** rather than per-request controls.
1353
- Every control the migrated driver reaches for is structurally absent, so `gflow video`
1354
- and `gflow image` cannot run there at all.
1355
-
1356
- **Mitigation (v0.74.0):** the state is named before submit — `FlowAgentUiError`, exit 25,
1357
- `retryable: false`, $0 spent — instead of the generic `UiSelectorDriftError` (exit 23)
1358
- that reads as a gflow frontend bug and invites a doomed retry. The discriminator is the
1359
- chip, because the DOM is otherwise identical to the *recoverable* agent mode of
1360
- [#749](https://github.com/ffroliva/gflow-cli/issues/749): a hidden settings trigger **with**
1361
- a chip is recoverable and gflow turns it back itself; a hidden trigger with **no chip
1362
- anywhere** is this cohort.
1363
-
1364
- **No workaround inside gflow.** No flag, `--ui-mode`, or profile change reaches it — the
1365
- composer is a property of the Google account. Generating from the Flow web UI still works.
1366
- A driver for the agent panel is not implemented;
1367
- [#799](https://github.com/ffroliva/gflow-cli/issues/799) stays open for it.
1368
-
1369
- **Prevalence is unmeasured.** One reporter, one account (Windows 11, ru locale), whose DOM
1370
- capture is what made this diagnosable. No account available to the maintainers is in this
1371
- cohort, so the **positive** case is verified against the reporter's captured markup driven
1372
- by a real Chromium (`tests/api/transports/test_agent_only_composer.py`) and **not** against
1373
- live Flow — that needs an account in the cohort and is the named blocker on #799.
1364
+
1365
+ **Driven ([#799](https://github.com/ffroliva/gflow-cli/issues/799)):** `gflow image t2i` and
1366
+ `gflow video t2v` (and their MCP twins). gflow sets the request's aspect, count and model in
1367
+ Agent settings, saves, sends a natural-language request to the agent, and **restores those
1368
+ three defaults afterwards**. "Confirm before generating" follows
1369
+ [`GFLOW_CLI_AGENT_CONFIRM`](docs/CONFIGURATION.md#gflow_cli_agent_confirm) and is not restored.
1370
+ With a confirmation step, gflow approves exactly one that its own submit produced and stops
1371
+ without approving a second. Live-verified 2026-09-15 on a Google AI Pro account (`en`):
1372
+ t2i 3:4 × 2 (896×1200 each), t2v 4 s 9:16 (ready 69 s after submit, MP4 downloaded).
1373
+
1374
+ **Not driven yet on this composer** (exit 36, before anything is clicked): image-to-image,
1375
+ image-to-video, reference-to-video, character references, Agent instructions, an explicit
1376
+ video `--resolution` (the Agent settings pane has no resolution control), and more than one
1377
+ video per request.
1378
+
1379
+ **Rough edges, measured:**
1380
+ - A run that dies between Save and restore can leave the account on the run's defaults; the
1381
+ `migrated.agent_only.defaults_restore_failed` log line names the originals.
1382
+ - Editing Agent settings in the browser *during* a run is overwritten by the restore.
1383
+ - Finished **video** tiles re-render to opaque `/asb/` media with no media id; the id comes
1384
+ from the agent's reply instead, and the clip is fetched from the tile's hover player.
1385
+ **Image** tiles also load an opaque `/asb/` src (a 512-px preview) but carry the media id on
1386
+ `img[data-media-id]`; gflow downloads the original size by rewriting the size spec to `=s0`.
1387
+ - The request text is English. Whether the agent honours it on a non-English account is
1388
+ unmeasured (the original reporter's account is `ru`).
1389
+ - **The confirmation step does not bound the spend of the first ask.** gflow approves the
1390
+ first confirmation without reading the count it names, and one confirmation can cover
1391
+ several generations. Only a *second* confirmation is stopped before billing; an agent that
1392
+ queues more than requested under the first is detected after the fact (more clips pending,
1393
+ or more images on the grid, than requested), with the credits already spent — even with
1394
+ `GFLOW_CLI_AGENT_CONFIRM=always`.
1395
+ - An image whose orientation does not match the requested aspect is kept (the run is
1396
+ billed and the file is valid) and logged as `migrated.agent_only.aspect_mismatch`.
1397
+
1398
+ **Detection** is unchanged from v0.74.0: a hidden settings trigger with **no chip anywhere**
1399
+ is this composer; with a chip it is the recoverable agent mode of
1400
+ [#749](https://github.com/ffroliva/gflow-cli/issues/749). It is now reported after a 5 s
1401
+ early wait instead of the full 30 s readiness gate.
1374
1402
 
1375
1403
  The **negative** controls were measured live at $0 on 2026-09-13, which is what makes the
1376
1404
  discriminator more than a guess: a healthy migrated composer carries
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: gflow-cli
3
- Version: 0.85.0
3
+ Version: 0.86.0
4
4
  Summary: CLI and MCP server for Google Flow — drive Veo text-to-video, image-to-video and Imagen image generation from the terminal.
5
5
  Project-URL: Homepage, https://github.com/ffroliva/gflow-cli
6
6
  Project-URL: Documentation, https://ffroliva.github.io/gflow-cli/
@@ -127,7 +127,7 @@ You have a Google account with Flow access, you have Veo credits, and you run re
127
127
  - **Consistent subjects.** `gflow character create` mints a Flow Character (face and body reference) so the same person appears from one generation to the next.
128
128
  - **Prompt tools.** `--tool creative-director` rewrites a terse prompt into a vivid one (Google's 5-component formula) before generating — on any command. Bring your own with [My Tools](docs/TOOLS.md).
129
129
  - **Pipelines.** Wire Veo into your content automation, AI-video stack, or batch experiments.
130
- - **Terminal-native.** After one `gflow auth login`, you stay in the shell. No clicking through dialogs.
130
+ - **Terminal-native.** After one `gflow auth login`, you stay in the shell. No clicking through dialogs. A stale session renews headlessly with `gflow auth renew` (or `gflow credits user|list --refresh`).
131
131
 
132
132
  Same Veo and Imagen models, same quality, same billing against your own Google account, now programmatic.
133
133
 
@@ -243,7 +243,7 @@ gflow CLI → Provider (interchangeable) → Flow (ui_automation) / Mock (te
243
243
 
244
244
  **Current transport:** `ui_automation` drives Flow through a persistent Playwright Chromium profile. It is production-stable and verified end-to-end every release (see the per-release `LIVE_VERIFICATION_*` evidence files).
245
245
 
246
- **Two Flow frontends:** Google is moving accounts from `labs.google` onto `flow.google.com` ([#639](https://github.com/ffroliva/gflow-cli/issues/639)) — same product, different widget toolkit and wire protocol (`batchexecute` instead of `aisandbox-pa`). The migrated driver covers text-to-video, image-to-video from a local start frame, reference-to-video from local files, text-to-image, and image-to-image from local files. Image generation supports Nano Banana 2.1 (`nano2`, [#958](https://github.com/ffroliva/gflow-cli/issues/958)) / 2 Lite / Pro, the five aspect ratios measured on that host (16:9, 4:3, 1:1, 3:4, 9:16), and counts 1–4; an existing project is required at the transport boundary. Images can tag a character by `@Name` ([#723](https://github.com/ffroliva/gflow-cli/issues/723)). UUID media references, an entity id without a name, instructions, Imagen 4, and the rest of the matrix keep the labs driver until ported (`GFLOW_CLI_FLOW_HOST`, see [CONFIGURATION](docs/CONFIGURATION.md#gflow_cli_flow_host)).
246
+ **Two Flow frontends:** Google is moving accounts from `labs.google` onto `flow.google.com` ([#639](https://github.com/ffroliva/gflow-cli/issues/639)) — same product, different widget toolkit and wire protocol (`batchexecute` instead of `aisandbox-pa`). The migrated driver covers text-to-video, image-to-video from a local start frame, reference-to-video from local files, text-to-image, image-to-image from local files, and a single-segment `video extend`. Image generation supports Nano Banana 2.1 (`nano2`, [#958](https://github.com/ffroliva/gflow-cli/issues/958)) / 2 Lite / Pro, the five aspect ratios measured on that host (16:9, 4:3, 1:1, 3:4, 9:16), and counts 1–4; an existing project is required at the transport boundary. Images can tag a character by `@Name` ([#723](https://github.com/ffroliva/gflow-cli/issues/723)). An account served the **agent-only** composer ([#799](https://github.com/ffroliva/gflow-cli/issues/799)) gets text-to-image and text-to-video only. UUID media references, an entity id without a name, instructions, Imagen 4, and the rest of the matrix keep the labs driver until ported (`GFLOW_CLI_FLOW_HOST`, see [CONFIGURATION](docs/CONFIGURATION.md#gflow_cli_flow_host)).
247
247
 
248
248
  **What's blocked:** a pure HTTP transport for video generation. The video upload endpoint returns HTTP 401 under non-Chrome browsers plus a reCAPTCHA mint we cannot reproduce headlessly. Three earlier HTTP strategies (`evaluate_fetch`, `bearer`, `sapisidhash`) live under `src/gflow_cli/api/transports/experimental/` for research, off the production path.
249
249
 
@@ -39,7 +39,7 @@ You have a Google account with Flow access, you have Veo credits, and you run re
39
39
  - **Consistent subjects.** `gflow character create` mints a Flow Character (face and body reference) so the same person appears from one generation to the next.
40
40
  - **Prompt tools.** `--tool creative-director` rewrites a terse prompt into a vivid one (Google's 5-component formula) before generating — on any command. Bring your own with [My Tools](docs/TOOLS.md).
41
41
  - **Pipelines.** Wire Veo into your content automation, AI-video stack, or batch experiments.
42
- - **Terminal-native.** After one `gflow auth login`, you stay in the shell. No clicking through dialogs.
42
+ - **Terminal-native.** After one `gflow auth login`, you stay in the shell. No clicking through dialogs. A stale session renews headlessly with `gflow auth renew` (or `gflow credits user|list --refresh`).
43
43
 
44
44
  Same Veo and Imagen models, same quality, same billing against your own Google account, now programmatic.
45
45
 
@@ -155,7 +155,7 @@ gflow CLI → Provider (interchangeable) → Flow (ui_automation) / Mock (te
155
155
 
156
156
  **Current transport:** `ui_automation` drives Flow through a persistent Playwright Chromium profile. It is production-stable and verified end-to-end every release (see the per-release `LIVE_VERIFICATION_*` evidence files).
157
157
 
158
- **Two Flow frontends:** Google is moving accounts from `labs.google` onto `flow.google.com` ([#639](https://github.com/ffroliva/gflow-cli/issues/639)) — same product, different widget toolkit and wire protocol (`batchexecute` instead of `aisandbox-pa`). The migrated driver covers text-to-video, image-to-video from a local start frame, reference-to-video from local files, text-to-image, and image-to-image from local files. Image generation supports Nano Banana 2.1 (`nano2`, [#958](https://github.com/ffroliva/gflow-cli/issues/958)) / 2 Lite / Pro, the five aspect ratios measured on that host (16:9, 4:3, 1:1, 3:4, 9:16), and counts 1–4; an existing project is required at the transport boundary. Images can tag a character by `@Name` ([#723](https://github.com/ffroliva/gflow-cli/issues/723)). UUID media references, an entity id without a name, instructions, Imagen 4, and the rest of the matrix keep the labs driver until ported (`GFLOW_CLI_FLOW_HOST`, see [CONFIGURATION](docs/CONFIGURATION.md#gflow_cli_flow_host)).
158
+ **Two Flow frontends:** Google is moving accounts from `labs.google` onto `flow.google.com` ([#639](https://github.com/ffroliva/gflow-cli/issues/639)) — same product, different widget toolkit and wire protocol (`batchexecute` instead of `aisandbox-pa`). The migrated driver covers text-to-video, image-to-video from a local start frame, reference-to-video from local files, text-to-image, image-to-image from local files, and a single-segment `video extend`. Image generation supports Nano Banana 2.1 (`nano2`, [#958](https://github.com/ffroliva/gflow-cli/issues/958)) / 2 Lite / Pro, the five aspect ratios measured on that host (16:9, 4:3, 1:1, 3:4, 9:16), and counts 1–4; an existing project is required at the transport boundary. Images can tag a character by `@Name` ([#723](https://github.com/ffroliva/gflow-cli/issues/723)). An account served the **agent-only** composer ([#799](https://github.com/ffroliva/gflow-cli/issues/799)) gets text-to-image and text-to-video only. UUID media references, an entity id without a name, instructions, Imagen 4, and the rest of the matrix keep the labs driver until ported (`GFLOW_CLI_FLOW_HOST`, see [CONFIGURATION](docs/CONFIGURATION.md#gflow_cli_flow_host)).
159
159
 
160
160
  **What's blocked:** a pure HTTP transport for video generation. The video upload endpoint returns HTTP 401 under non-Chrome browsers plus a reCAPTCHA mint we cannot reproduce headlessly. Three earlier HTTP strategies (`evaluate_fetch`, `bearer`, `sapisidhash`) live under `src/gflow_cli/api/transports/experimental/` for research, off the production path.
161
161
 
@@ -45,7 +45,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
45
45
  # Deliberately NOT pinned: google-chrome-stable. Chrome's apt repo keeps only the current
46
46
  # build, so a pinned version stops resolving within weeks. The trade-off is that this
47
47
  # layer caches indefinitely and a rebuild is what picks up a newer Chrome.
48
- ARG GFLOW_VERSION=0.85.0
48
+ ARG GFLOW_VERSION=0.86.0
49
49
  RUN pip install --no-cache-dir "gflow-cli==${GFLOW_VERSION}"
50
50
 
51
51
  VOLUME ["/data"]
@@ -262,6 +262,35 @@ Flow session verified as you@example.com.
262
262
 
263
263
  > Note: `cookies_present: True` only confirms the file exists. The final verdict line is the live probe result, and it has three failing shapes — all exit 1, each with a different hint. A **dead session** prints a `gflow auth login` remediation hint. A probe that **cannot reach the endpoint** (offline, 5xx) suggests checking connectivity instead of re-logging in. And a profile **missing its `.gflow_browser_strategy` marker** — the state a failed *first* login leaves behind, since that rolls the marker back — says so and points at `gflow auth login --browser chrome --profile <name>`; it is local profile state, not a network fault, and "check connectivity" would send you to the wrong place ([#796](https://github.com/ffroliva/gflow-cli/issues/796), 0.73.2). The MCP twin `gflow_auth_status` reports the same three as HTTP 401, 503 (`retryable: true`) and 409 (`retryable: false`) — see [MCP.md](MCP.md).
264
264
 
265
+ ### `gflow auth renew`
266
+
267
+ Refreshes saved sessions **without signing in again**. Google rotates its session cookies, and
268
+ Flow re-mints its own session, only when a real browser visits the app. A profile left unused for
269
+ weeks therefore drifts towards an expired session even though nothing about the account changed.
270
+ `auth renew` opens the profile in a hidden browser and loads Flow. It then loads
271
+ `labs.google/fx/` and waits up to 20 s for the labs app to sign in again on its own: a stale labs
272
+ session reports `ACCESS_TOKEN_REFRESH_NEEDED`, and the page renews it through Google without a
273
+ prompt. This step matters because `gflow credits` reads its token from that labs session, and the
274
+ Flow visit alone never refreshes it. The browser saves whatever cookies were rotated, and the
275
+ result is verified exactly like `gflow auth status`. It spends no credits.
276
+
277
+ ```bash
278
+ gflow auth renew # the default profile
279
+ gflow auth renew --profile work # one named profile
280
+ gflow auth renew --all --json # every profile with a saved session
281
+ ```
282
+
283
+ It exits `0` when every renewed profile verifies and `1` otherwise. An account that Flow sends to
284
+ its public `/about` page (see [KNOWN_ISSUES](../KNOWN_ISSUES.md)) never finishes the labs sign-in,
285
+ so it needs `gflow auth login`. A profile counts as renewed only when labs.google was seen to
286
+ refresh it: if labs is unreachable or answers unreadably (a network that blocks `labs.google`,
287
+ say), the row is `labs_unverified` and the command exits `1` even though the Flow session
288
+ verifies. A profile another gflow process is using is skipped, not failed. It cannot bring back a session Google has **revoked**
289
+ (a password change, "sign out of all devices", an identity re-check). That still needs
290
+ `gflow auth login`. `gflow credits user|list --refresh` runs the same renewal automatically for
291
+ a profile whose credits read fails with an expired session. Over MCP, that case is reached
292
+ through `gflow_get_credits(refresh=true)`; `auth renew` itself has no MCP tool.
293
+
265
294
  ### `gflow auth list`
266
295
 
267
296
  Same output as bare `gflow auth` when profiles exist — useful when you want the table even from a script (no auto-login fallback).
@@ -417,7 +446,24 @@ ERROR: Auth expired for profile 'default'.
417
446
  Run: gflow auth login --profile default
418
447
  ```
419
448
 
420
- Re-running `auth login` refreshes the cookies in place — no other state is lost.
449
+ Two cases look the same at that point and are fixed differently:
450
+
451
+ - **Stale, not revoked.** This is the common one: the profile has simply not been opened for a
452
+ while. Google's cookies are still good, but labs' NextAuth token has lapsed
453
+ (`ACCESS_TOKEN_REFRESH_NEEDED`), and labs only renews it when a browser visits. Run
454
+ [`gflow auth renew`](#gflow-auth-renew), or add `--refresh` to `gflow credits user|list`. It
455
+ renews the session headlessly with no sign-in.
456
+ - **Revoked.** A password change, a removed device, or Google asking to "Confirm it's you" cannot
457
+ be renewed from cookies. `auth renew` reports "could not be renewed" (or names Flow's public
458
+ `/about` page). Re-running `gflow auth login` refreshes the cookies in place, and no other state
459
+ is lost.
460
+
461
+ > **Renewal signs in headlessly.** The labs re-sign-in runs Google's OAuth hop in a headless
462
+ > browser, which identifies itself as `HeadlessChrome` (only `navigator.webdriver` is hidden).
463
+ > Generation runs headed by default, so this is the one Google sign-in gflow does headless.
464
+ > It worked on 7 of 7 recoverable profiles on 2026-10-14. If Google ever starts challenging it,
465
+ > fall back to `gflow auth login`. Note that `gflow_get_credits(refresh=true)` lets an agent
466
+ > trigger a renewal on every expired profile.
421
467
 
422
468
  ## Chromium downgrade guard
423
469
 
@@ -420,7 +420,7 @@ Measurement script: `scripts/dev/spike_offscreen_window.py`.
420
420
  **How it works:** before each generation, gflow determines the required arm, clicks the classic↔agentic toggle as a **prerequisite**, **verifies** with a DOM re-probe, then binds — or fails fast. The required arm is also **inferred**: `-i` instructions are agentic-only, so they force `agentic` automatically (and `--ui-mode classic` + `-i` is a hard conflict, not a silent drop).
421
421
  **Why `classic`:** the agentic cohort treats aspect ratio as a soft prompt hint (portrait 9:16 can come back landscape). `classic` enforces it or fails fast instead of silently degrading.
422
422
  **Retry note:** the cohort flaps per load, so an exit-28 abort is **retryable** — a re-run often lands the wanted arm. A server experiment can pin the arm, in which case it's unreachable from the client (the abort still saves the credits).
423
- **Video commands:** `gflow video t2v`/`i2v` joined the policy in [#299](https://github.com/ffroliva/gflow-cli/issues/299) PR-A. The video pipeline only has a classic driver, so `auto` ≡ `classic` there: both verify the classic editor pre-submit and abort with exit 28 if it is unreachable. An env-sourced `agentic` **degrades to classic with a logged warning** (so a value set for image workflows can't hard-fail your video runs); only an explicit agentic *request* errors — the `--ui-mode agentic` flag immediately at the CLI edge (exit 2), or the MCP `ui_mode="agentic"` param with a 400 envelope — because no agentic video driver exists yet. `video r2v` and `video chain` have no flag and follow the env-only path.
423
+ **Video commands:** `gflow video t2v`/`i2v` joined the policy in [#299](https://github.com/ffroliva/gflow-cli/issues/299) PR-A. The video pipeline only has a classic driver, so `auto` ≡ `classic` there: both verify the classic editor pre-submit and abort with exit 28 if it is unreachable. An env-sourced `agentic` **degrades to classic with a logged warning** (so a value set for image workflows can't hard-fail your video runs); only an explicit agentic *request* errors — the `--ui-mode agentic` flag immediately at the CLI edge (exit 2), or the MCP `ui_mode="agentic"` param with a 400 envelope — because no agentic video driver exists yet. `video r2v` and `video chain` have no flag and follow the env-only path. This policy is the labs and classic-migrated one: an account whose `flow.google.com` project is served an **agent-only** composer ([#799](https://github.com/ffroliva/gflow-cli/issues/799)) is routed to its driver before it, so supported `image t2i` / `video t2v` requests run there whatever this is set to.
424
424
  **Supersedes:** `GFLOW_CLI_PREFER_CLASSIC` and `GFLOW_CLI_FORCE_AGENT_UI` (below).
425
425
 
426
426
  ### `GFLOW_CLI_FLOW_HOST`
@@ -431,7 +431,18 @@ Measurement script: `scripts/dev/spike_offscreen_window.py`.
431
431
  - `flow.google.com` — force the migrated composer for everything, including what it cannot serve yet (those requests then exit 36/11 instead of falling back).
432
432
  - `labs.google` — never use the migrated composer; where Flow serves `flow.google.com`, requests fail with exit 36 (kill switch).
433
433
  **Default:** `auto`
434
- **Scope today:** the migrated composer covers `gflow video t2v`, local-file `video i2v` / `r2v`, `gflow image t2i`, and local-file `gflow image i2i`. Images support Nano Banana 2.1 (`nano2`, #958) / 2 Lite / Pro, all five aspect ratios (16:9, 4:3, 1:1, 3:4, 9:16 — `3:4` was added to that host's radiogroup by 2026-09-17, #864) and count 1–4; the page owns the `ogiZ0b` reCAPTCHA + submit and the response already contains completed signed image URLs. Local-file start+end frames (`--initial-frame` + `--end-frame`) are ported (#639). Image prompts may tag a character with `@Name` (or `--reference-entity` paired with `--reference-entity-name`; an id alone exits 36), attached through the composer's `@` picker (#723). Frames given by UUID/`@Name`, media references by UUID/`@Name`, character entities on video, Agent instructions, Imagen 4, scenes, extend, instructions and tools are not ported yet and fail before submit where Flow serves flow.google.com. MCP uses the same image service and queue payload, and inherits this setting from the server/daemon environment rather than per call.
434
+ **Scope today:** the migrated composer covers `gflow video t2v`, local-file `video i2v` / `r2v`, `gflow image t2i`, and local-file `gflow image i2i`. Images support Nano Banana 2.1 (`nano2`, #958) / 2 Lite / Pro, all five aspect ratios (16:9, 4:3, 1:1, 3:4, 9:16 — `3:4` was added to that host's radiogroup by 2026-09-17, #864) and count 1–4; the page owns the `ogiZ0b` reCAPTCHA + submit and the response already contains completed signed image URLs. Local-file start+end frames (`--initial-frame` + `--end-frame`) are ported (#639). Image prompts may tag a character with `@Name` (or `--reference-entity` paired with `--reference-entity-name`; an id alone exits 36), attached through the composer's `@` picker (#723). `video extend` is ported for a single segment from a clip (one PROMPT; `-n` > 1, `--scene`/`--resume-from`, `--seed` and an `--aspect` other than the source's exit 36, and `-o` saves the new extension clip only, #882). Frames given by UUID/`@Name`, media references by UUID/`@Name`, character entities on video, Agent instructions, Imagen 4, scenes, instructions and tools are not ported yet and fail before submit where Flow serves flow.google.com. MCP uses the same image service and queue payload, and inherits this setting from the server/daemon environment rather than per call.
435
+
436
+ ### `GFLOW_CLI_AGENT_CONFIRM`
437
+
438
+ **What:** On an account Flow serves the agent-only composer ([#799](https://github.com/ffroliva/gflow-cli/issues/799)), Agent settings carries a **Confirm before generating** choice. This sets it before a run.
439
+ **Values:**
440
+ - `account` (default) — leave the account's setting as it is. If Flow asks for confirmation, gflow approves exactly one request its own submit produced, and stops without approving if a second one appears. As with `always`, only that second confirmation is stopped before credits are spent: one confirmation can cover several generations, and an over-count under it is caught after the fact.
441
+ - `always` — set **Always**. gflow approves the **first** confirmation without reading the count it names, and one confirmation can cover several generations. What this stops before credits are spent is a **second** confirmation in the same run; an agent that queues more than requested under the first one is caught only after the fact (gflow fails the run when more clips are pending, or more images appear, than were requested — the credits are already spent).
442
+ - `never` — set **Never**. No approval step; a result count that differs from the request is detected only after the credits are spent.
443
+ **Default:** `account`
444
+ **Persistence:** unlike model / aspect / count (applied per run and restored afterwards), this value is saved to the Flow account and **not** restored — it is your standing choice, and it also applies when you use Flow in the browser.
445
+ **MCP:** inherited from the server/daemon environment, not per call.
435
446
 
436
447
  ### `GFLOW_CLI_PREFER_CLASSIC` *(deprecated — use `GFLOW_CLI_UI_MODE=classic`)*
437
448
 
@@ -160,6 +160,8 @@ test, not a mocked proxy — the Bug Lane's step 5.
160
160
  | `GFLOW_CLI_E2E_BATCH_MANIFEST` | `test_assets/sample_batch.tsv` | TSV manifest for the batch image e2e. |
161
161
  | `GFLOW_CLI_E2E_BATCH_JITTER` | `"1"` | Set to `"0"` to disable inter-request jitter in batch tests. |
162
162
  | `GFLOW_CLI_E2E_PROMPT` | *(safe default)* | Prompt override for the smoke test. |
163
+ | `GFLOW_CLI_E2E_STALE_PROFILES` | *(unset)* | Comma-separated profiles whose labs session has **lapsed** (the credits fast path fails with an expired session). Used by the session-renewal e2e (`e2e_auth`): index 0 drives `gflow_get_credits(refresh=true)`, index 1 drives `gflow credits user --refresh`, and index 2 drives `gflow auth renew`. Each is consumed by its first successful renewal, because a renewed labs token lasts about 24 h. A test whose profile is fresh **skips**; it never passes on a read that needed no renewal. `GFLOW_CLI_E2E_PROFILE` must also be set. |
164
+ | `GFLOW_CLI_E2E_ABOUT_PROFILE` | *(unset)* | A profile Flow holds at its public `/about` page (see [KNOWN_ISSUES](../KNOWN_ISSUES.md)). `tests/e2e/test_auth_renew_e2e.py` asserts that `gflow auth renew` does **not** report it renewed. It skips if the profile reads a balance. |
163
165
 
164
166
  ---
165
167
 
@@ -399,6 +401,8 @@ tests/
399
401
  ├── conftest.py # e2e_profile_dir, e2e_nosession_profile,
400
402
  │ # e2e_env (shared fixtures)
401
403
  ├── test_auth_verification_e2e.py # [e2e, e2e_auth]
404
+ ├── test_auth_renew_e2e.py # [e2e, e2e_auth] `gflow auth renew` leaf — 0 credits
405
+ ├── test_credits_refresh_e2e.py # [e2e, e2e_auth] `--refresh` on CLI + MCP — 0 credits
402
406
  ├── test_transports_e2e.py # [e2e, e2e_{auth,image,batch,video}]
403
407
  ├── test_image_batch_e2e.py # [e2e, e2e_batch]
404
408
  ├── test_video_t2v_e2e.py # [e2e, e2e_video]