Skip to content

[codex] Fix pod plugin alias expansion and add regression test#240

Closed
mikehostetler wants to merge 1 commit intomainfrom
codex/pod-plugin-alias-regression-test
Closed

[codex] Fix pod plugin alias expansion and add regression test#240
mikehostetler wants to merge 1 commit intomainfrom
codex/pod-plugin-alias-regression-test

Conversation

@mikehostetler
Copy link
Copy Markdown
Contributor

Summary

  • expand user-provided :plugins in Jido.Pod.__using__/1 via Definition.expand_and_eval_literal_option/2 before Macro.escape/1
  • merge pod plugins with expanded user plugins (pod_plugins ++ (user_plugins || []))
  • add a regression test that compiles a pod using an aliased plugin module in plugins: and verifies the module is resolved and mounted

Root Cause

Jido.Pod.__using__/1 passed opts[:plugins] through raw. When the pod options were later escaped, aliased plugin modules remained as alias AST tuples rather than resolved module atoms, causing plugin normalization/compile checks to fail.

Impact

Pods can now safely use aliased plugin modules in plugins: declarations. This restores expected macro behavior and prevents compile-time plugin extraction failures.

Validation

  • mix test test/jido/pod_test.exs test/jido/pod/topology_test.exs test/jido/pod/mutation/planner_test.exs test/jido/pod/mutation_runtime_test.exs test/jido/pod/runtime_test.exs test/jido/pod/telemetry_test.exs

@mikehostetler
Copy link
Copy Markdown
Contributor Author

Meant to attach this to #239 - closing

@mikehostetler mikehostetler deleted the codex/pod-plugin-alias-regression-test branch March 30, 2026 23:08
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