Skip to content

fix: validate action broker result timeout - #37

Merged
twilightsaurus merged 1 commit into
mainfrom
slice-23-actionbroker-timeout-validation
Oct 5, 2026
Merged

twilightsaurus merged 1 commit into
mainfrom
slice-23-actionbroker-timeout-validation

Conversation

@twilightsaurus

Copy link
Copy Markdown
Collaborator

Summary

Implements Slice 23: ActionBroker Timeout Validation.

Closes the deferred hardening gap where ActionBroker could be constructed directly with invalid result timeout values.

Validation

ActionBroker now requires result_timeout to be:

  • finite
  • strictly positive

Rejected immediately:

  • zero
  • negative finite values
  • positive infinity
  • negative infinity
  • NaN

Valid finite-positive values remain unchanged.

No coercion, clamping, fallback, upper bound, dependency, or new setting was added.

Behavior preserved

No changes to:

  • /action
  • /action-consumer
  • exact context fencing
  • consumer ownership
  • one-in-flight semantics
  • result status vocabulary
  • cancellation
  • disconnect behavior
  • retry/replay policy

Existing timeout behavior remains:

  • timed-out action returns unknown
  • detail remains consumer result timed out
  • late result is rejected
  • in-flight broker state is released
  • subsequent actions continue normally

Production impact

Production still constructs ActionBroker() with the existing default:

5.0 seconds

Current production configuration does not expose an action-result timeout override.

Existing stale/authentication timeout validation remains unchanged.

Validation

Passed:

  • focused broker/action tests
  • relay suite: 226
  • protocol tests: 64
  • desktop tests: 152
  • shared adapter tests: 31
  • Mudlet tests: 32
  • TinyFugue tests: 101
  • Python Ruff / formatting / mypy
  • TypeScript/Svelte checks
  • cross-component E2E
  • docs/version checks
  • frontend production build
  • git diff --check origin/main
  • full npm run check

Independent review found no remaining High, Medium, or Low findings.

Historical audit remains unchanged.

@twilightsaurus
twilightsaurus merged commit 3cfbdc7 into main Oct 5, 2026
5 checks passed
@twilightsaurus
twilightsaurus deleted the slice-23-actionbroker-timeout-validation branch October 5, 2026 11:51
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