chore: auto-commit (286 archivos)
- .claude/agents/fn-orquestador/SKILL.md - .claude/commands/fn_claude.md - .claude/rules/INDEX.md - .claude/rules/cpp_apps.md - .claude/rules/ids_naming.md - CHANGELOG.md - apps/dag_engine/README.md - apps/dag_engine/api.go - apps/dag_engine/dags_migrated/example.yaml - apps/dag_engine/dags_migrated/example_lineage_tracking.yaml - ... Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -59,6 +59,8 @@ func cmdDoctor(args []string) {
|
||||
} else {
|
||||
doctorCapabilities(r, jsonOut)
|
||||
}
|
||||
case "app-location":
|
||||
doctorAppLocation(r, jsonOut)
|
||||
default:
|
||||
fmt.Fprintf(os.Stderr, "unknown doctor subcommand: %s\n", sub)
|
||||
doctorUsage()
|
||||
@@ -84,6 +86,7 @@ Subcommands:
|
||||
vaults Salud de vaults: directorio, layout, índice, staleness, drift
|
||||
copied-code Detecta cuerpos de funcion del registry copiados en apps sin import (issue 0085k)
|
||||
capabilities Drift entre docs/capabilities/INDEX.md, tags de funciones, y paginas <grupo>.md (issue 0086)
|
||||
app-location Detecta artefactos (apps/analysis) en carpetas de lenguaje (cpp/apps/, etc.) - issue 0096
|
||||
|
||||
Flags:
|
||||
--json Salida JSON (para scripting/agentes)
|
||||
@@ -513,3 +516,26 @@ func doctorCopiedCode(root string, jsonOut bool) {
|
||||
w.Flush()
|
||||
fmt.Printf("\n%d suspected copy match(es).\n", len(entries))
|
||||
}
|
||||
|
||||
func doctorAppLocation(root string, jsonOut bool) {
|
||||
violations, err := infra.AuditAppLocation(root)
|
||||
if err != nil {
|
||||
fmt.Fprintf(os.Stderr, "error: %v\n", err)
|
||||
os.Exit(1)
|
||||
}
|
||||
if jsonOut {
|
||||
emit(violations)
|
||||
return
|
||||
}
|
||||
if len(violations) == 0 {
|
||||
fmt.Println("OK: no artefacts under language-named folders.")
|
||||
return
|
||||
}
|
||||
w := tabwriter.NewWriter(os.Stdout, 0, 0, 2, ' ', 0)
|
||||
fmt.Fprintln(w, "KIND\tLANG\tPATH")
|
||||
for _, v := range violations {
|
||||
fmt.Fprintf(w, "%s\t%s\t%s\n", v.Kind, v.Lang, v.Path)
|
||||
}
|
||||
w.Flush()
|
||||
fmt.Printf("\n%d violation(s): move artefact to apps/<name>/ or projects/<p>/apps/<name>/ (issue 0096).\n", len(violations))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user