ww-agentic-workflows 1.0.0.dev5__tar.gz → 1.0.0.dev6__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 (371) hide show
  1. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/CHANGELOG.md +5 -0
  2. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/PKG-INFO +1 -1
  3. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/features.md +4 -0
  4. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/specification.md +4 -1
  5. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/pyproject.toml +1 -1
  6. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/service.py +6 -0
  7. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_handoff_block.py +44 -1
  8. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.claude/settings.json +0 -0
  9. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.claude/skills/noww/SKILL.md +0 -0
  10. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.claude/skills/update-architecture-documentation/SKILL.md +0 -0
  11. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.claude/skills/ww/SKILL.md +0 -0
  12. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.codex/hooks.json +0 -0
  13. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.codex/skills/noww/SKILL.md +0 -0
  14. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.codex/skills/update-architecture-documentation/SKILL.md +0 -0
  15. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.codex/skills/ww/SKILL.md +0 -0
  16. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.git-blame-ignore-revs +0 -0
  17. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.githooks/pre-commit +0 -0
  18. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  19. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/ISSUE_TEMPLATE/config.yml +0 -0
  20. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  21. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
  22. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/workflows/dev-publish.yml +0 -0
  23. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.github/workflows/release-gates.yml +0 -0
  24. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/.gitignore +0 -0
  25. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/AGENTS.md +0 -0
  26. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/CLAUDE.md +0 -0
  27. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/CODE_OF_CONDUCT.md +0 -0
  28. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/CONTRIBUTING.md +0 -0
  29. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/LICENSE +0 -0
  30. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/README.md +0 -0
  31. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/SECURITY.md +0 -0
  32. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/WW_AGENT_INSTRUCTIONS.md +0 -0
  33. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/agent-hooks.md +0 -0
  34. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/architecture.md +0 -0
  35. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/development-releases.md +0 -0
  36. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/examples.md +0 -0
  37. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/limitations.md +0 -0
  38. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/python-agent-rules.md +0 -0
  39. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/documentation/todo.md +0 -0
  40. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/ext/ww/git/extension.py +0 -0
  41. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/check_distribution.py +0 -0
  42. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/check_release_gates.py +0 -0
  43. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/demo.sh +0 -0
  44. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/ensure_spdx_license.py +0 -0
  45. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/measure_pages.py +0 -0
  46. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/run_workflow_dummy.py +0 -0
  47. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/set_dev_version.py +0 -0
  48. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/scripts/test +0 -0
  49. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/__init__.py +0 -0
  50. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/action_execution.py +0 -0
  51. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/__init__.py +0 -0
  52. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/command.py +0 -0
  53. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/contracts.py +0 -0
  54. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/extension.py +0 -0
  55. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/mcp.py +0 -0
  56. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/prompt.py +0 -0
  57. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/skill.py +0 -0
  58. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/actions/slash_command.py +0 -0
  59. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/agents.py +0 -0
  60. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/amendments.py +0 -0
  61. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/artifacts.py +0 -0
  62. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assessments.py +0 -0
  63. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/__init__.py +0 -0
  64. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/agent_instructions.md +0 -0
  65. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/noww_skill.md +0 -0
  66. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/workflows/onboarding.yaml +0 -0
  67. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/workflows/scriptize.yaml +0 -0
  68. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-automate_skill.md +0 -0
  69. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-deduce-feedback_skill.md +0 -0
  70. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-feedback-rules_skill.md +0 -0
  71. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-learn-project_skill.md +0 -0
  72. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-refresh_skill.md +0 -0
  73. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-rule_skill.md +0 -0
  74. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-rules-from-artifacts_skill.md +0 -0
  75. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-scriptize_skill.md +0 -0
  76. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-setup_skill.md +0 -0
  77. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-solve_skill.md +0 -0
  78. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-suggest_skill.md +0 -0
  79. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww-wizard_skill.md +0 -0
  80. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assets/ww_skill.md +0 -0
  81. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/assignments.py +0 -0
  82. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/bootstrap.py +0 -0
  83. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/builtin_workflows.py +0 -0
  84. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/changes.py +0 -0
  85. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/child_coordination.py +0 -0
  86. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/children.py +0 -0
  87. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/claude_permissions.py +0 -0
  88. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/__init__.py +0 -0
  89. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/__main__.py +0 -0
  90. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/audit.py +0 -0
  91. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/catalogs.py +0 -0
  92. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/discover.py +0 -0
  93. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/initialization.py +0 -0
  94. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/lookup.py +0 -0
  95. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/main.py +0 -0
  96. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/parser.py +0 -0
  97. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/prompts.py +0 -0
  98. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/cli/updates.py +0 -0
  99. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/completion_artifacts.py +0 -0
  100. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/completion_inputs.py +0 -0
  101. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/__init__.py +0 -0
  102. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/actions.py +0 -0
  103. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/composition.py +0 -0
  104. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/rules.py +0 -0
  105. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/steps.py +0 -0
  106. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config/values.py +0 -0
  107. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config_files.py +0 -0
  108. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/config_writes.py +0 -0
  109. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/contracts.py +0 -0
  110. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/control.py +0 -0
  111. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/defaults.py +0 -0
  112. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/design_docs.py +0 -0
  113. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/direct_work.py +0 -0
  114. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/discovery.py +0 -0
  115. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/documents.py +0 -0
  116. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/errors.py +0 -0
  117. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/executable.py +0 -0
  118. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/__init__.py +0 -0
  119. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/construction.py +0 -0
  120. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/decoding.py +0 -0
  121. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/plan_codec.py +0 -0
  122. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/records.py +0 -0
  123. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/execution_models/runs.py +0 -0
  124. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/extensions/__init__.py +0 -0
  125. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/extensions/api.py +0 -0
  126. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/extensions/registry.py +0 -0
  127. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/extensions/store.py +0 -0
  128. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/feedback.py +0 -0
  129. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/handler_repairs.py +0 -0
  130. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/hooks/__init__.py +0 -0
  131. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/hooks/agents.py +0 -0
  132. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/hooks/install.py +0 -0
  133. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/hooks/notices.py +0 -0
  134. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/hooks/runtime.py +0 -0
  135. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/inspect.py +0 -0
  136. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/__init__.py +0 -0
  137. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/builder.py +0 -0
  138. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/commands.py +0 -0
  139. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/handoff.py +0 -0
  140. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/models.py +0 -0
  141. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/policy.py +0 -0
  142. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/instructions/text.py +0 -0
  143. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/interactions.py +0 -0
  144. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/interpolation.py +0 -0
  145. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/item_passes.py +0 -0
  146. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/items.py +0 -0
  147. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/locking.py +0 -0
  148. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/metadata_publication.py +0 -0
  149. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/onboarding.py +0 -0
  150. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/open_work.py +0 -0
  151. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operations.py +0 -0
  152. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/__init__.py +0 -0
  153. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/page.html +0 -0
  154. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/server.py +0 -0
  155. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/session.py +0 -0
  156. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/sheet.py +0 -0
  157. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/operator_ui/view.py +0 -0
  158. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output.py +0 -0
  159. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/__init__.py +0 -0
  160. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/base.py +0 -0
  161. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/json_adapter.py +0 -0
  162. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/markdown.py +0 -0
  163. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/rule_pages.py +0 -0
  164. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/output_adapters/terminal.py +0 -0
  165. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/package_updates.py +0 -0
  166. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/plan/__init__.py +0 -0
  167. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/plan/actions.py +0 -0
  168. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/plan/compiler.py +0 -0
  169. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/plan/constructs.py +0 -0
  170. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/plan/models.py +0 -0
  171. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/project_config.py +0 -0
  172. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/recovery.py +0 -0
  173. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/replanning.py +0 -0
  174. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/results.py +0 -0
  175. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_checks.py +0 -0
  176. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_conversion.py +0 -0
  177. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_disputes.py +0 -0
  178. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_store.py +0 -0
  179. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_verification.py +0 -0
  180. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_views.py +0 -0
  181. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/rule_writes.py +0 -0
  182. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/run_coordination.py +0 -0
  183. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/runtimes.py +0 -0
  184. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/setup_apply.py +0 -0
  185. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/step_values.py +0 -0
  186. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage.py +0 -0
  187. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/__init__.py +0 -0
  188. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/base.py +0 -0
  189. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/filesystem.py +0 -0
  190. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/memory.py +0 -0
  191. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/project_metadata.py +0 -0
  192. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/storage_adapters/task_document.py +0 -0
  193. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/task_ids.py +0 -0
  194. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/task_references.py +0 -0
  195. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/transitions.py +0 -0
  196. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/updates.py +0 -0
  197. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/upgrade.py +0 -0
  198. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/validation.py +0 -0
  199. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/variables.py +0 -0
  200. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/workflow_config.py +0 -0
  201. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/workflow_update.py +0 -0
  202. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/workflow_validation.py +0 -0
  203. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/src/ww/workspace.py +0 -0
  204. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/action_contract_helpers.py +0 -0
  205. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/config_helpers.py +0 -0
  206. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/conftest.py +0 -0
  207. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/example_documents.py +0 -0
  208. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/fixtures/packaged_extension/ww_test_packaged_extension.py +0 -0
  209. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/completion.md +0 -0
  210. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/fix-required.md +0 -0
  211. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/interactive.md +0 -0
  212. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/item-stage.md +0 -0
  213. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/loop-body.md +0 -0
  214. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/loop-continue.md +0 -0
  215. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/manager-dispatch.md +0 -0
  216. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/operator-stop.md +0 -0
  217. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/step-auto-worker.md +0 -0
  218. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/step-rules.md +0 -0
  219. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/step-single.md +0 -0
  220. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/values-and-metadata.md +0 -0
  221. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/verification.md +0 -0
  222. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/worker-bootstrap.md +0 -0
  223. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/golden/pages/worker-handoff.md +0 -0
  224. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_adjustments.py +0 -0
  225. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_artifact_from_containers.py +0 -0
  226. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_assessment_outcomes.py +0 -0
  227. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_assignment_tokens.py +0 -0
  228. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_auto_retries.py +0 -0
  229. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_automatic_handler_groups.py +0 -0
  230. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_automatic_modes.py +0 -0
  231. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_awaiting_operator.py +0 -0
  232. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_bootstrap_task_id.py +0 -0
  233. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_builtin_workflows.py +0 -0
  234. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_identity.py +0 -0
  235. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_launch_settings.py +0 -0
  236. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_stages.py +0 -0
  237. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_start_action.py +0 -0
  238. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_start_guards.py +0 -0
  239. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_child_tasks.py +0 -0
  240. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_children_added_mid_run.py +0 -0
  241. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_cli.py +0 -0
  242. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_command_metadata.py +0 -0
  243. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_complete_dispatch.py +0 -0
  244. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_concurrency.py +0 -0
  245. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_config_files.py +0 -0
  246. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_configuration_authority.py +0 -0
  247. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_direct_work.py +0 -0
  248. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_discover.py +0 -0
  249. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_documents.py +0 -0
  250. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_example_behaviour.py +0 -0
  251. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_executable.py +0 -0
  252. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_extension_execution.py +0 -0
  253. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_feedback_commands.py +0 -0
  254. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_git_extension.py +0 -0
  255. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_git_variables.py +0 -0
  256. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_golden_pages.py +0 -0
  257. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_handler_repairs.py +0 -0
  258. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_hooks.py +0 -0
  259. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_init_force.py +0 -0
  260. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_init_permissions.py +0 -0
  261. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_inspect.py +0 -0
  262. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_interactive.py +0 -0
  263. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_assignment.py +0 -0
  264. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_fields.py +0 -0
  265. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_pass_restarts.py +0 -0
  266. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_pass_runs.py +0 -0
  267. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_reply_reports.py +0 -0
  268. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_item_runtime_values.py +0 -0
  269. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_items.py +0 -0
  270. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_local_step_pages.py +0 -0
  271. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_loops.py +0 -0
  272. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_memory_workflow_service.py +0 -0
  273. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_metadata_lists.py +0 -0
  274. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_onboarding.py +0 -0
  275. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_onboarding_workflows.py +0 -0
  276. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_pack_scenarios.py +0 -0
  277. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_packaged_extension.py +0 -0
  278. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_page_gates.py +0 -0
  279. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_plan_execution.py +0 -0
  280. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_projects.py +0 -0
  281. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_recommended_workflow.py +0 -0
  282. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_recovery_guards.py +0 -0
  283. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_replanning.py +0 -0
  284. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_requirements_pages.py +0 -0
  285. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_requirements_per_session.py +0 -0
  286. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_restart.py +0 -0
  287. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_rule_commands.py +0 -0
  288. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_rule_conversion.py +0 -0
  289. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_rule_verification_flow.py +0 -0
  290. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_rule_write_commands.py +0 -0
  291. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_rules_and_checks.py +0 -0
  292. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_scriptize_workflow.py +0 -0
  293. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_setup_apply.py +0 -0
  294. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_setup_update.py +0 -0
  295. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_setup_verification.py +0 -0
  296. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_shared_items.py +0 -0
  297. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_stale_task_records.py +0 -0
  298. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_state_unknown_fields.py +0 -0
  299. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_system_scenarios.py +0 -0
  300. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_update_notice.py +0 -0
  301. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_upgrade.py +0 -0
  302. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_workdir.py +0 -0
  303. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_worker_bootstrap_text.py +0 -0
  304. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_worker_handoff.py +0 -0
  305. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/integration/test_workflow_service.py +0 -0
  306. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/page_catalog.py +0 -0
  307. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/plan_helpers.py +0 -0
  308. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/test_dev_version.py +0 -0
  309. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_action_contracts.py +0 -0
  310. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_action_example.py +0 -0
  311. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_action_phase_contexts.py +0 -0
  312. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_artifacts.py +0 -0
  313. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_assignments.py +0 -0
  314. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_beta_notice.py +0 -0
  315. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_builtin_actions.py +0 -0
  316. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_changes.py +0 -0
  317. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_checklist_prompt.py +0 -0
  318. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_child_stages_config.py +0 -0
  319. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_children_config.py +0 -0
  320. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_cli_prompts.py +0 -0
  321. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_completion_inputs.py +0 -0
  322. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_completion_selection.py +0 -0
  323. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_config.py +0 -0
  324. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_config_composition.py +0 -0
  325. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_config_writes.py +0 -0
  326. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_delegation_requests.py +0 -0
  327. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_design_docs.py +0 -0
  328. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_discovery.py +0 -0
  329. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_examples_doc.py +0 -0
  330. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_execution_hints.py +0 -0
  331. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_extensions.py +0 -0
  332. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_feedback.py +0 -0
  333. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_handler_failure_report.py +0 -0
  334. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_hook_agents.py +0 -0
  335. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_instruction_commands.py +0 -0
  336. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_interactions.py +0 -0
  337. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_item_config.py +0 -0
  338. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_item_passes.py +0 -0
  339. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_item_validation.py +0 -0
  340. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_locking.py +0 -0
  341. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_markdown_output.py +0 -0
  342. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_modes.py +0 -0
  343. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_operator_ui.py +0 -0
  344. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_package_updates.py +0 -0
  345. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_plan.py +0 -0
  346. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_project_config.py +0 -0
  347. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_project_metadata_storage_adapters.py +0 -0
  348. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_records.py +0 -0
  349. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_rule_disputes.py +0 -0
  350. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_rule_store.py +0 -0
  351. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_rule_verification.py +0 -0
  352. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_rule_writes.py +0 -0
  353. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_rules.py +0 -0
  354. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_runtimes.py +0 -0
  355. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_scripts_test_bootstrap.py +0 -0
  356. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_step_role.py +0 -0
  357. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_storage.py +0 -0
  358. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_task_document.py +0 -0
  359. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_task_ids.py +0 -0
  360. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_task_references.py +0 -0
  361. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_task_storage_adapters.py +0 -0
  362. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_transitions.py +0 -0
  363. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_updates.py +0 -0
  364. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_validation.py +0 -0
  365. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_variables.py +0 -0
  366. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_workflow_inheritance.py +0 -0
  367. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_workflow_validation.py +0 -0
  368. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/unit/test_workspace.py +0 -0
  369. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/tests/workflow_helpers.py +0 -0
  370. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/ww.json +0 -0
  371. {ww_agentic_workflows-1.0.0.dev5 → ww_agentic_workflows-1.0.0.dev6}/ww.yaml +0 -0
@@ -11,6 +11,11 @@ yet, is in [documentation/limitations.md](documentation/limitations.md).
11
11
 
12
12
  ## 2026-10-05
13
13
 
14
+ - Fixed: in the `auto` runtime, a worker's `loop --continue` below the loop's limit left the task stuck: the
15
+ continue ended the assignment yet opened the next round's first step for a worker that no longer held a
16
+ token, so the worker's next command was refused and the manager's `next` reported a step in progress. The
17
+ continue now ends the assignment with its handoff block, and the manager's `next` dispatches the first step
18
+ of the next round as a new assignment.
14
19
  - Removed: the session-start task list, stop reminders, interruption records and transcript recovery, and the
15
20
  `interrupted` command. Hooks, events and `agent_hooks` keys stay accepted. `5414a34`
16
21
  - Added: `add-child` is accepted while a per-child stage of a roadmap-style parent is active, not only while the
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: ww-agentic-workflows
3
- Version: 1.0.0.dev5
3
+ Version: 1.0.0.dev6
4
4
  Summary: A local-first, resumable workflow CLI for people and AI agents.
5
5
  Project-URL: Homepage, https://agenticworkflows.dev
6
6
  Project-URL: Documentation, https://github.com/from-developers-for-developers/agentic-workflows/tree/main/documentation
@@ -3310,6 +3310,10 @@ ww-agentic-workflows loop TASK-123 --continue --role worker \
3310
3310
  --artifact="<whole result in Markdown>"
3311
3311
  ```
3312
3312
 
3313
+ In the `auto` runtime a continue ends the worker's assignment, because the next
3314
+ round is a new one: the worker returns its handoff block and the manager's `next`
3315
+ dispatches the first body step again.
3316
+
3313
3317
  If no worker breaks or continues, the body repeats automatically. Each repetition gives
3314
3318
  automatic actions fresh operation IDs, while retries within one round
3315
3319
  retain their existing idempotency identity.
@@ -627,7 +627,10 @@ set `artifact: false` to disable only this main artifact; body steps retain
627
627
  their own artifact settings.
628
628
 
629
629
  If a worker uses `continue`, ww records the result, runs the step's completion
630
- hooks, then resets the body and dispatches its first step. If no worker breaks
630
+ hooks, then resets the body. In the `auto` runtime that ends the worker's
631
+ assignment with its handoff block, and the manager's `next` dispatches the
632
+ first body step as a new assignment; in the `single` runtime the same session
633
+ goes on with it. If no worker breaks
631
634
  or continues the loop, reaching the end resets the body and the manager
632
635
  dispatches the first step again until the effective maximum is reached. The
633
636
  effective value comes from the wrapper's `max_rounds`, or from `limits.rounds`
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "ww-agentic-workflows"
7
- version = "1.0.0.dev5"
7
+ version = "1.0.0.dev6"
8
8
  description = "A local-first, resumable workflow CLI for people and AI agents."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.10"
@@ -3337,6 +3337,10 @@ class WorkflowService:
3337
3337
  state = finish_loop_continue(state, plan, _now)
3338
3338
  if state is not prior:
3339
3339
  self.commit(state, snapshot)
3340
+ if assignment_item_id is not None and state.assignment_item_id is None:
3341
+ # The continue reset the round, which ended the assignment
3342
+ # being drained: the next round is a new assignment.
3343
+ return state, snapshot
3340
3344
  exiting_children = _exiting_children(state, plan)
3341
3345
  state = finish_loop_exit(state, plan, _now)
3342
3346
  if state is not prior:
@@ -3733,6 +3737,8 @@ class WorkflowService:
3733
3737
  or state.status == "completed"
3734
3738
  or assignment is None
3735
3739
  or state.cursor >= assignment.stop
3740
+ # A loop continue reset the round and ended the assignment.
3741
+ or state.assignment_item_id is None
3736
3742
  ):
3737
3743
  # Records an assessment skipped sit right after the assignment's
3738
3744
  # last item; the next dispatch starts beyond them, not on one.
@@ -161,9 +161,52 @@ def test_the_block_names_a_loop_break(tmp_path: Path) -> None:
161
161
  ]
162
162
 
163
163
 
164
+ def test_a_loop_continue_below_the_limit_hands_the_next_round_to_the_manager(
165
+ tmp_path: Path,
166
+ ) -> None:
167
+ service = _auto(tmp_path, ROUND)
168
+ service.next(TASK, caller_role="manager")
169
+ first = assignment_token(service, TASK)
170
+ _worker_complete(service, "Findings.")
171
+
172
+ ended = service.loop(
173
+ TASK,
174
+ artifact="Fixed some.",
175
+ summary_for_next="More to do.",
176
+ continue_loop=True,
177
+ caller_role="worker",
178
+ assignment=first,
179
+ )
180
+
181
+ # The round is over: the worker's assignment ends with its block, and no
182
+ # step is left open for a worker without a token.
183
+ assert ended.next_role == "manager"
184
+ assert not ended.loop_limit_reached
185
+ assert ended.handoff_block is not None
186
+ assert ended.handoff_block.token == first
187
+ assert [(s.name, s.outcome) for s in ended.handoff_block.steps] == [
188
+ ("review", "completed"),
189
+ ("fix", "loop continue"),
190
+ ]
191
+ state = service.tasks.read_execution_state(TASK, "01-task")
192
+ assert state is not None
193
+ assert (state.active_item_id, state.assignment_token) == (None, None)
194
+ assert dict(state.loop_iterations) == {"review-and-fix": 2}
195
+ with pytest.raises(StateError, match="no assignment is open"):
196
+ _worker_complete(service, "Stray.")
197
+
198
+ # The manager dispatches the next round as a new assignment.
199
+ second = service.next(TASK, caller_role="manager")
200
+ assert (second.item_name, second.next_role) == ("review", "worker")
201
+ token = assignment_token(service, TASK)
202
+ assert token is not None and token != first
203
+ review = service.status(TASK, caller_role="worker", assignment=token)
204
+ assert review.loop_iteration == 2
205
+
206
+
164
207
  def test_the_block_names_a_loop_continue(tmp_path: Path) -> None:
165
208
  # A continue at the loop's limit stops the task for the operator, which
166
- # ends the worker's assignment; below the limit the worker goes on.
209
+ # ends the worker's assignment as a continue below the limit does.
167
210
  service = _auto(tmp_path, ROUND.replace("loop:", "max_rounds: 1\n loop:", 1))
168
211
  service.next(TASK, caller_role="manager")
169
212
  _worker_complete(service, "Findings.")