Volver a la wiki

Partición del method-doctor (09-09-2026): núcleo genérico + extensión de equipo

Qué se decidió

Segunda pieza del escalón grande (tras la partición de los function hooks de s315): el doctor del harness, harness/method-doctor.ps1, mezclaba lo transversal (repo del método al día, plugins activos, paridad de reglas, Python, hooks de git, Biblioteca viva, simulacro) con lo que presupone pertenecer al equipo CreaRack (identidad edu/dani/txell, plugins de equipo, token y publicación al rollup, repos de la organización). El plan v7 (public/supercontext/doctor-split/PLAN_DOCTOR_SPLIT.md, tres paneles fríos, 29 objeciones) lo APROBÓ Edu en s317 con dos decisiones: el núcleo se queda en harness/ y -NoExtensions es modo genérico de verdad. Se ejecutó en s318.

Qué se hizo

PiezaDóndeQué
Núcleo genéricoharness/method-doctor.ps1Capas A-E, G, H en cualquier repo de cualquier perfil. Parámetros nuevos -NoExtensions (sin extensiones y capa B al suelo fijo) y -UserClaude <dir> (pruebas contra una copia; excluye -Repair). Descubre extensiones por declaración y las carga por dot-source en try/catch con sello de completitud: declarada y ausente, o cargada a medias, = issue high de la capa extension, se descarta lo que fijó y no se publica
Extensión de equipoplugins/crearack/harness/doctor-crearack.ps1 (declarada en plugin.json → doctorExtension)Identidad, team-plugins.txt, plugin v1 retirado, capa F, publicador al rollup, patrón de la org para el barrido de hooks, remotos que “declaran Biblioteca”, scope team del simulacro. Escribe solo seis variables $script:Ext*; la última línea es el sello
Fuente única de pluginsharness/method-plugins.txtQué plugins del método lleva el perfil; la leen el instalador (habilita) y el núcleo (vigila). Suelo fijo method + method-hooks escrito en ambos; vacío o sin suelo = aviso + critical, nunca verde falso. Decidir qué perfil lleva crearack* es editar este fichero
Simulacroharness/gate_selftest.py --scope generic,teamgeneric = hooks fuera de plugins/crearack/; hook ausente se salta, no falla
Skills/method:doctor (plugin method 3.5.0) · /crearack:method-doctor puntero (plugin crearack 2.3.0)iniciar-proyecto manda /method:doctor en el proyecto nuevo

Commits en claude-method: 5017a08 (parámetros + reordenación, JSON idéntico) y f96628f (extensión, fuente única, skills, guía). Tag de marcha atrás pre-doctor-split-2026-09-09; snapshot en claude-backups/edu/harness-snapshots/2026-09-09-pre-doctor-split.

Qué cambia para los tres perfiles

Nada observable: los tres siguen llevando los cuatro plugins (method-plugins.txt los lista) y el doctor imprime el mismo veredicto, ahora con el sello “extensión: crearack”. Lo que se gana: el doctor sirve en un perfil sin crearack (perfil general, otro equipo, un proyecto del Iniciador), y el código de equipo vive en su plugin, como los function hooks.

Verificado (PC de Edu, 09-09-2026)

Trampas cazadas al ejecutar

Piezas siguientes (anotadas, sin fecha)

Mover reject_powershell_herestring.py y guarda_modelo_subagentes.py al plugin method (hoy scope team); partir session-start.ps1 en genérico/equipo. Apuesta #20 en WAGERS.md (vence 09-10-2026).

Subir