Skip to content

w1b: Reload all effective config sources without restart#10

Draft
penso wants to merge 1 commit intomainfrom
beads-polyphony-w1b
Draft

w1b: Reload all effective config sources without restart#10
penso wants to merge 1 commit intomainfrom
beads-polyphony-w1b

Conversation

@penso
Copy link
Owner

@penso penso commented Mar 16, 2026

Automated handoff for w1b.

Issue:
Base branch: main
Head branch: beads-polyphony-w1b
Commit: 3019910

@penso
Copy link
Owner Author

penso commented Mar 16, 2026

Summary

This branch fixes a real gap in workflow reload detection by fingerprinting the user config file and by adding watch targets for missing config/prompt paths. The targeted orchestrator tests I ran for the new fingerprint and reload cases passed.

I found one correctness risk in the new watcher fallback logic.

Risks

  • crates/orchestrator/src/handoff.rs:516 can fall back to a recursive watch on the entire workflow root when .polyphony/agents does not exist. That is much broader than the actual config surface. Every unrelated file change under the repo can now emit RuntimeCommand::Refresh, and the runtime currently handles that by clearing throttles before forcing a reload (crates/orchestrator/src/runtime.rs:91 and crates/orchestrator/src/runtime.rs:112). In practice, ordinary source edits can reset rate-limit/backoff state and cause noisy manual-refresh behavior even when no workflow input changed.

Recommended human checks

  • Start the orchestrator with no repo .polyphony/agents directory, edit an unrelated tracked file, and confirm that it does not trigger a workflow refresh or clear throttles.
  • Exercise a provider-throttled state, then touch unrelated repo files, and confirm the throttle window is preserved.
  • Create the missing repo/user config and agent prompt paths from a cold start and confirm reload still happens when those inputs actually appear.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant