Skip to content

Self-improvement: routing.json should route unsafe/Windows Rust issues away from Gemini/Codex to Claude #101

@Maleick

Description

@Maleick

Problem Observed

In TextQuest (a Rust/Windows project with unsafe, DLL injection, indirect syscalls, and nightly-only retour hooks), the current routing.json routes simple_code and medium_code to codex-spark/gemini first. These agents consistently fail on:

  • #[cfg(windows)]/#[cfg(not(windows))] platform gates requiring stub awareness
  • unsafe blocks that require understanding of raw pointer arithmetic and EQ memory layout
  • retour function hooking (nightly Rust only — won't compile on stable)
  • Windows-only crates (winapi, ntapi) that produce confusing errors on macOS/Linux

The previous AutoShip session on TextQuest reported 100% STUCK rate for codex app-server, and codex-gpt also struggled. Phase 1 was completed by direct (manual) agent, not AutoShip workers.

What to Change in AutoShip

  1. Add a rust_unsafe task type to the routing table that always routes to claude-haiku (simple) or claude-sonnet (medium/complex) — never Gemini or Codex as primary.

  2. In skills/dispatch/SKILL.md, add a routing override rule: if the issue body or title contains any of unsafe, #[cfg(windows)], retour, DLL, cdylib, or winapi, promote to Claude regardless of complexity tier.

  3. In hooks/detect-tools.sh or init.sh, add a project_language detection step (check for Cargo.toml + presence of [cfg(windows)] in source) that sets a project profile. When rust_windows profile is detected, override default routing to prefer Claude.

Expected Impact

Eliminates wasted dispatches to agents that cannot build the project, directly reducing STUCK rate for Rust/Windows issues from ~100% to near 0% for third-party agents. Routes those issues to Claude which has proven context for platform-gated Rust.

Metadata

Metadata

Assignees

No one assigned

    Labels

    self-improvementAutoShip self-improvement issues identified from real project usage

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions