fix(agent): is_verify_command_inert misses mise's "unknown command" output — INERT build-gating warning never fires
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 78/100
Línea de trabajo
Comienza en agent/src/post_hooks.py, en is_verify_command_inert(), y reproduce literalmente el stderr de mise del issue. Comprueba el manejo relacionado en agent/src/repo.py, donde se añade la advertencia de inercia, y añade una prueba de regresión que cubra el código de salida y stderr; estará terminado cuando los casos inert de build y lint muestren la advertencia y eviten falsos fallos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Component
Agent (Python runtime)
Describe the bug
is_verify_command_inert() (agent/src/post_hooks.py:77-99) fails to recognise mise's actual "task does not exist" phrasing, so a repository with no mise.toml at all is never classified as inert.
The most damaging consequence is not the wrong build_passed/lint_passed value — it is that the operator-facing warning at agent/src/repo.py:517-526 never fires:
if not config.build_command and is_verify_command_inert(result.returncode, result.stderr):
build_gate_inert = True
notes.append(
"⚠️ Build-regression gating is INERT: no runnable `mise run build` task ..."
)
Because the detector returns False, that note is never appended. A repo onboarded with no pipeline.buildCommand and no mise.toml therefore gets build-regression gating silently disabled with no warning to anyone — precisely the failure mode the warning exists to prevent.
Expected behavior
mise run build / mise run lint in a repo with no mise.toml should be detected as inert, so that:
build_gate_inert/ lint-inert is set,- the "⚠️ Build-regression gating is INERT" note is appended and surfaced on the PR, and
build_passed/lint_passedreflect inert-treated-as-passing rather than a bogus red.
Current behavior
The detector returns False, no inert warning is emitted, and lint_passed is persisted as false on every task against such a repo.
Reproduction steps
In any checkout with no mise.toml (e.g. a clone of aws-samples/sample-semantic-layer-structured):
$ mise run lint; echo "EXIT=$?"
mise ERROR unknown command: lint
Did you mean:
mise install-into
mise plugin-list
mise ERROR Version: 2026.8.4 macos-arm64
EXIT=1
Then feed that verbatim to the detector:
$ python3 -c "
import sys; sys.path.insert(0,'agent/src')
from post_hooks import is_verify_command_inert
print(is_verify_command_inert(1, 'mise ERROR unknown command: lint'))"
False
The heuristics check exit 127, "no tasks defined", "no task named", "mise" + "not found", and "command not found". Real mise emits unknown command with exit 1, matching none of them.
Observed in practice on task 01KZS7NFB480DGF2A6FZ5N3CZD and 01KZS86KNZPVK8FZXX757ADZ8S (both lint_passed=false, no inert note on the PR).
Possible solution
Add mise's real phrasing to the heuristic list in is_verify_command_inert:
or "unknown command" in s
Worth reviewing the full set of mise task-missing messages across versions rather than adding one string, and adding a regression test that feeds the verbatim stderr above. Note the mise version string is included in that stderr, so a test fixture should not match on version.
Related: the same detector is used for the post-agent gate in agent/src/post_hooks.py and for the lint inert path, so build and lint inert handling are both affected by the single missed match.
- Lenguaje dominante
- TypeScript
- Estrellas
- 170
- Forks
- 52
- Merge medio
- 2 d 21 h
- PR fusionados (30 d)
- 11
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de aws-samples/sample-autonomous-cloud-coding-agents
-
cdk: support Docker-compatible engines such as Finch (clean:disk hard-codes docker)Posiblemente ocupada @alvarohare la tomó hace 10 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
aws-samples/sample-autonomous-cloud-coding-agents#969 · 1 comentario · 1 reacción · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
aws-samples/sample-autonomous-cloud-coding-agents#968 ·
Los mantenedores suelen responder en 1 día
-
documentation P2 security
Dificultad 2/5 1-2 días Aptitud para principiantes 74/100
aws-samples/sample-autonomous-cloud-coding-agents#793 ·
Los mantenedores suelen responder en 1 día
-
Docs: How to clear previously set attributes for a blueprintQuizá libre de nuevo @rkumarus-aws la tomó hace 68 días y no hay ningún pull request abierto. Abiertodocumentation
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
aws-samples/sample-autonomous-cloud-coding-agents#767 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
enhancement P2
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
aws-samples/sample-autonomous-cloud-coding-agents#670 ·
Los mantenedores suelen responder en 1 día
Todos los issues de aws-samples/sample-autonomous-cloud-coding-agents
Issues similares
-
FR: Support CJK brackets, symbols and full-width markers in footnoteHeuristics (EBPAJ support)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
readest/readest#7413 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
content triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
eliasstravik/herdr-projects#788 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día
-
Ability to edit tagsAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día