Skip to content

fix(config): keep validator_pixel_safety_net and planner_validation overrides - #222

Open
macrocrazier wants to merge 1 commit into
google:mainfrom
macrocrazier:fix/config-judge-node-overrides
Open

macrocrazier wants to merge 1 commit into
google:mainfrom
macrocrazier:fix/config-judge-node-overrides

Conversation

@macrocrazier

Copy link
Copy Markdown

Problem

LLMConfig declares two optional judge nodes, validator_pixel_safety_net and planner_validation. If they are configured under nodes in artemis.jsonc, the overrides are silently dropped, and get_agent() falls back to lightweight_judge_default(), which is a Google flash-lite model.

With a non-Google setup and no Google key, the pixel safety net then fails to initialize and is skipped. The log shows 'LLMConfig' object has no attribute 'validator', and nothing says the configured model was ignored.

Cause

_expand_default_into_nodes() only copies the nodes in its fixed all_agent_nodes list into the expanded config. The two optional judge nodes are not in that list.

Fix

Pass the two judge nodes through when they are declared, merged over default, like other nodes. When they are not declared, they stay unset, so the existing lightweight default still applies.

Tests

New tests/unit/config/test_llm_judge_nodes.py:

  • declared judge nodes keep their provider, model and temperature, and inherit the default fallback. This fails on main and passes with this change.
  • undeclared judge nodes still resolve to lightweight_judge_default().

make test: no new failures compared with main. make lint and make typecheck pass.

Related: #138, #179 (other places where a non-Google configuration still reaches Gemini).

…verrides

_expand_default_into_nodes only copied its fixed list of agent nodes, so
overrides for the two optional judge nodes were silently dropped and
get_agent() fell back to the Google flash-lite default.

Pass both nodes through when declared, merged over the default; leave them
unset otherwise so the lightweight default still applies.
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