Guard Aurora action listing against recursion#15
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 2970d15357
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| self._emit("ACTION_STARTED", {"intent": action.intent}) | ||
| result = self._dispatch_action(action) | ||
| self._emit("ACTION_FINISHED", {"intent": action.intent}) |
There was a problem hiding this comment.
Emit ACTION_FAILED when dispatch returns ok=False
Because handle_intent always emits ACTION_FINISHED after _dispatch_action, failures (e.g., workspace_save_snapshot when no workspace exists or os_open_workspace_folder without an OS pipeline) will still be reported as successful actions. Downstream consumers like AvatarBehaviorEngine treat ACTION_FINISHED as a success signal, so the UI/voice feedback will incorrectly celebrate failed actions. Consider emitting ACTION_FAILED (and/or skipping ACTION_FINISHED) when result.get("ok") is false to keep event semantics consistent with actual outcomes.
Useful? React with 👍 / 👎.
Motivation
RecursionErrorraised while deriving Aurora canvas state when enumerating actions vialist_actions()incompute_canvas_state().Description
_filter_actions(core/aurora_state.py) that attemptsregistry.list_actions()and falls back togetattr(registry, "_actions", [])onRecursionErroror other exceptions, preserving the existing filtering, sorting and conversion toActionItem.Testing
Codex Task