Repository navigation
Conversation
|
Baseline done — all 9 local failures are pre-existing on this host, not from this PR. I ran the same 9 test names on a clean Identical set, identical names:
They all look like Windows path/env assumptions (absolute-path shapes, I checked the last one specifically before concluding, since its name mentions the summarizer and this PR touches a summarizer comment: it fails on clean |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (11)
💤 Files with no reviewable changes (9)
Included review availability: Your plan provides up to 10 included reviews per hour; 8 remain after this review. 📝 WalkthroughWalkthroughThe pull request removes the inert ChangesSkills catalog flag removal
Estimated code review effort: 3 (Moderate) | ~20 minutes Merge Risk: ⚪ Minimal · up to This PR removes an unused configuration flag and updates its call sites and tests; no actionable merge-blocking risk remains beyond normal checks and review. Suggested reviewers: Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
Full details: Linked Issues checkExplanation The PR satisfies issue Full details: Out of Scope Changes checkExplanation Most changes are in scope, but
Warning Your free Security trial is over. An organization admin can upgrade to Advanced for continuous pull request security review or dismiss this notice. Comment |
|
The compile break is fixed and the lane now gets past it. What is failing now is a different test, in a domain this PR does not touch: Why this PR is what surfaced it. Why it looks pre-existing rather than caused. The assertion is on process-global state: it requires the memory client to be uninitialised, and I am not asserting that from reading alone. I have the same command CI runs going against a clean I will post the result either way. If it fails on Everything else on the run is green, including |
|
Baseline result, as promised — and it does not support the conclusion I was leaning toward, so here is what I actually measured. Like-for-like on my host, same command CI runs:
Identical — same three tests, same three assertions, including the one CI flagged at Two caveats I am not going to paper over.
I was also wrong about the mechanism. I suggested this looked like an ordering/global-state dependency inside the merged What stands: nothing in this diff initialises a memory client or touches composio; the diff removes a prompt flag from I would rather you make the call than have me guess: happy to re-run the lane, to open a separate issue for the composio assertion, or to dig further if you can point me at what |
4a46070 to
b9149f0
Compare
|
Note GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer. |
How this change flows2 changed behaviours across 1 relationship. The code graph does not know these behaviours yet — normal for newly added code, and a cold index otherwise. 73 further behaviours left out to keep the diagram readable. flowchart LR
n0["AgentDefinition<br/>changed"]:::changed
n1["make_def<br/>changed"]:::changed
n1 -->|uses| n0
classDef changed fill:#0d4429,stroke:#238636,color:#e6edf3
classDef impacted fill:#161b22,stroke:#6e7681,color:#c9d1d9
classDef flagged fill:#5a1e02,stroke:#d93f0b,color:#ffffff
classDef blocking fill:#67060c,stroke:#f85149,color:#ffffff
Green: changed behaviour. Grey: surrounding behaviour. Arrows name the call, use, implementation, or test relationship. Orange: has findings. Red: has a finding that blocks the merge. |
…ansai#5699) `omit_skills_catalog` reaches exactly two places and does nothing in either. `SubagentRenderOptions::from_definition_flags` inverts it into `include_skills_catalog`, which is written and never read anywhere in `src/`; `SystemPromptBuilder::for_subagent` already takes its argument as `_omit_skills_catalog`. Thirty-four agent definitions set a flag that has no effect, which is worse than not having it: it reads as a working control. Removed end to end — the field, the `include_*` it fed, both function parameters, every call site, all 34 `agent.toml` entries, and the five places in `scripts/debug/` that still wrote the key into generated definitions. Two things worth a reviewer's attention: - `orchestrator/agent.toml` sets `omit_skills_catalog = false`, not `true` — it is asking *for* the catalog. Because the flag was never wired, it has never received one. Removing the flag makes that visible rather than silently unmet; wiring it up instead would change orchestrator's prompt, which is a product decision rather than a cleanup and belongs in its own PR. - `a_definition_carrying_the_retired_skills_catalog_key_still_loads` pins the property that makes this non-breaking for custom TOML definitions already on disk: `AgentDefinition` has no `#[serde(deny_unknown_fields)]`, so the retired key is ignored rather than rejected. Adding that attribute makes the test fail, which is the point of having it. The sweep includes 11 files under `tests/raw_coverage/`. They are reached through build.rs and a target with `required-features`, so `cargo check --lib --tests` never compiles them and a missed call site there stays invisible until the coverage lane runs. Verified with the real gate set instead: `cargo check --tests --features "$(bash scripts/ci/product-features.sh)"` — clean. Rebuilt on current main rather than rebased: main since split `definition.rs`, `prompts/mod_tests.rs`, `library/ops.rs` and others into `_part_NN` files, so the original diff no longer had anywhere to land. Verified on Windows, comparing by test name rather than count: `agent::harness` 571 passed / 1 failed against main's 570 / 1 — the extra pass is the new test and the failure is the same `offload_failure_keeps_the_inline_payload_for_the_summarizer_fallback`. `agent::orchestration` 290 / 2, identical to main. `agent::prompts` 68, `agent::registry` 139, `agent::tinyagents` 315, `channels::runtime::dispatch` 32, `tools::orchestrator` 12, `agent::library` 1 — all green.
b9149f0 to
7d68e04
Compare
Maintainer review — this one is clean; the open question is not about your codeI checked this against current
I also verified the central claim rather than taking it on trust. On current
So "threaded through both sub-agent prompt paths and read by neither" is accurate as stated. The one thing blocking this is a maintainer decision, not a change to your PR#5778 takes the opposite resolution of the same issue. #5699 explicitly offers both — honour the flag or remove it — and #5778 (opened 2026-08-25, two days before this) wires it up by reintroducing a shared For what it is worth, I think the argument in your description is the stronger one, and it is stronger because it is sourced from the repo rather than from taste: The catch worth naming honestly: your PR deletes the flag from ~50 I am not approving this — flagging it as ready-pending-that-decision so whoever picks between #5815 and #5778 does it deliberately rather than by whichever merges first. |
M3gA-Mind
left a comment
There was a problem hiding this comment.
Approved after a maintainer-side verification pass.
Verified on the current head: MERGEABLE against main, zero failing and zero pending required checks, and no unresolved, non-outdated review threads.
This is one of two required approvals; a second maintainer review is still needed before merge.
…rt-skills-catalog-flag\n\nrefactor(prompts): remove the inert omit_skills_catalog flag (tinyhumansai#5699)\n
Closes #5699.
AgentDefinition::omit_skills_catalogwas threaded through both sub-agent prompt paths and read by neither. The issue offers two resolutions — honour it or remove it — and says either is fine. This removes it, because the repo has already settled on the design that makes it redundant.Why removal, not wiring
render_helpers.rsrecords that the catalogue renderer was deliberately deleted: "render_skillsandrender_connected_integrationshelpers are gone —## Available Skillslives inintegrations_agent/prompt.rs". Honouring the flag would rebuild the layering that comment describes tearing down.true; that is not quite right —orchestrator/agent.toml:26setsomit_skills_catalog = false. It loses nothing, becauseorchestrator/prompt.rs::render_installed_skillsemits## Installed Skillsitself. So no definition in the tree changes behaviour.integrations_agent/prompt.rsdocuments dropping its own## Available Skillsblock in the skills→workflows unification, and pins the absence with a test.The flag is a fossil of a design the repo has already moved past.
A stale comment that had grown around it
config/schema/context.rscredited the flag with fixing recursive dispatch:A flag with no reader cannot gate a tool. The real guard is the summarizer's empty tool allowlist —
[tools] named = []inregistry/agents/summarizer/agent.toml. That comment justifies a production default of 4000 tokens, so leaving it pointing at the wrong mechanism was the part of this issue worth fixing carefully: anyone auditing that default would have concluded the recursion guard was being removed by this PR. It now names the allowlist.Backward compatibility
AgentDefinitiondoes not set#[serde(deny_unknown_fields)], so custom TOML definitions still carryingomit_skills_catalogkeep loading — the key is ignored, not rejected.retired_omit_skills_catalog_key_still_deserializespins that, so a futuredeny_unknown_fieldscannot break those users silently.Two changes API consumers should know about:
agent_cli's JSON dump no longer emits anomit_skills_catalogentry.SystemPromptBuilder::for_subagentandSubagentRenderOptions::from_definition_flagseach take one fewer argument, andSubagentRenderOptions::include_skills_catalogis gone.Verification
cargo check --lib --tests— clean.cargo test --lib prompts::— 68 passed.cargo test --lib— full core suite run; see the note below.cargo fmt --all— clean.Disclosure: the full
cargo test --librun on this Windows host has 9 failures, all in path/environment tests (resolve_action_dir_*,upsert_materializes_home_*,imports_*_jsonl,require_managed_worktree_path_*,absolute_leaves_absolute_paths_alone, and two others). I am baselining them against a cleanmainon the same host and will post the comparison; none touch prompts or definitions. Please read CI as the authority over my local run.Summary by CodeRabbit
Behavior Changes
Bug Fixes
Tests