pumuki 6.3.97 → 6.3.99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AGENTS.md +269 -0
- package/CHANGELOG.md +697 -0
- package/README.md +4 -2
- package/VERSION +1 -1
- package/docs/README.md +13 -9
- package/docs/operations/RELEASE_NOTES.md +12 -76
- package/docs/product/HOW_IT_WORKS.md +6 -0
- package/docs/product/INSTALLATION.md +1 -1
- package/docs/product/USAGE.md +41 -4
- package/docs/tracking/plan-curso-pumuki-stack-my-architecture.md +118 -0
- package/docs/validation/README.md +6 -3
- package/integrations/config/skillsCustomRules.ts +18 -99
- package/integrations/evidence/buildEvidence.ts +0 -24
- package/integrations/evidence/repoState.ts +0 -3
- package/integrations/evidence/schema.ts +0 -18
- package/integrations/evidence/writeEvidence.ts +0 -24
- package/integrations/gate/evaluateAiGate.ts +15 -232
- package/integrations/gate/remediationCatalog.ts +0 -8
- package/integrations/git/GitService.ts +44 -5
- package/integrations/git/aiGateRepoPolicyFindings.ts +0 -4
- package/integrations/git/runPlatformGate.ts +1 -9
- package/integrations/git/runPlatformGateFacts.ts +19 -1
- package/integrations/git/runPlatformGateOutput.ts +27 -36
- package/integrations/lifecycle/adapter.templates.json +7 -13
- package/integrations/lifecycle/adapter.ts +0 -24
- package/integrations/lifecycle/artifacts.ts +1 -6
- package/integrations/lifecycle/audit.ts +101 -0
- package/integrations/lifecycle/cli.ts +110 -70
- package/integrations/lifecycle/cliSdd.ts +13 -8
- package/integrations/lifecycle/doctor.ts +16 -48
- package/integrations/lifecycle/hookManager.ts +0 -77
- package/integrations/lifecycle/index.ts +2 -0
- package/integrations/lifecycle/install.ts +0 -21
- package/integrations/lifecycle/npmService.ts +3 -155
- package/integrations/lifecycle/policyValidationSnapshot.ts +8 -2
- package/integrations/lifecycle/preWriteAutomation.ts +7 -77
- package/integrations/lifecycle/state.ts +1 -8
- package/integrations/lifecycle/status.ts +2 -29
- package/integrations/mcp/aiGateCheck.ts +26 -206
- package/integrations/mcp/autoExecuteAiStart.ts +87 -94
- package/integrations/mcp/enterpriseServer.ts +7 -23
- package/integrations/mcp/enterpriseStdioServer.cli.ts +4 -31
- package/integrations/mcp/preFlightCheck.ts +5 -51
- package/integrations/platform/detectPlatforms.ts +37 -0
- package/integrations/policy/experimentalFeatures.ts +1 -1
- package/integrations/sdd/evidenceScaffold.ts +2 -109
- package/package.json +10 -2
- package/scripts/check-tracking-single-active.sh +1 -1
- package/scripts/consumer-menu-matrix-baseline-report-lib.ts +13 -38
- package/scripts/consumer-postinstall-resolve-args.cjs +44 -0
- package/scripts/consumer-postinstall.cjs +76 -21
- package/scripts/framework-menu-advanced-view-lib.ts +0 -15
- package/scripts/framework-menu-consumer-actions-lib.ts +28 -4
- package/scripts/framework-menu-consumer-preflight-hints.ts +5 -2
- package/scripts/framework-menu-consumer-preflight-render.ts +0 -10
- package/scripts/framework-menu-consumer-preflight-run.ts +0 -23
- package/scripts/framework-menu-consumer-preflight-types.ts +0 -12
- package/scripts/framework-menu-consumer-runtime-actions.ts +87 -17
- package/scripts/framework-menu-consumer-runtime-audit.ts +36 -2
- package/scripts/framework-menu-consumer-runtime-evidence-classic.ts +140 -0
- package/scripts/framework-menu-consumer-runtime-lib.ts +2 -10
- package/scripts/framework-menu-consumer-runtime-menu.ts +4 -18
- package/scripts/framework-menu-consumer-runtime-types.ts +3 -3
- package/scripts/framework-menu-evidence-summary-lib.ts +1 -0
- package/scripts/framework-menu-evidence-summary-read.ts +57 -5
- package/scripts/framework-menu-evidence-summary-severity.ts +3 -1
- package/scripts/framework-menu-evidence-summary-types.ts +7 -0
- package/scripts/framework-menu-gate-lib.ts +9 -0
- package/scripts/framework-menu-layout-data.ts +5 -0
- package/scripts/framework-menu-matrix-baseline-lib.ts +15 -14
- package/scripts/framework-menu-matrix-canary-lib.ts +22 -1
- package/scripts/framework-menu-matrix-evidence-lib.ts +1 -0
- package/scripts/framework-menu-matrix-evidence-types.ts +13 -1
- package/scripts/framework-menu-matrix-runner-lib.ts +35 -0
- package/scripts/framework-menu-system-notifications-cause.ts +0 -24
- package/scripts/framework-menu-system-notifications-macos-swift-source.ts +24 -204
- package/scripts/framework-menu-system-notifications-macos.ts +4 -0
- package/scripts/framework-menu-system-notifications-payloads-blocked.ts +1 -1
- package/scripts/framework-menu-system-notifications-remediation.ts +13 -24
- package/scripts/framework-menu-system-notifications-text.ts +1 -7
- package/scripts/framework-menu.ts +3 -2
- package/scripts/package-install-smoke-consumer-git-repo-lib.ts +1 -10
- package/scripts/package-install-smoke-consumer-npm-lib.ts +9 -46
- package/scripts/pumuki-full-surface-smoke-lib.ts +37 -0
- package/scripts/pumuki-full-surface-smoke.ts +346 -0
- package/scripts/pumuki-smoke-installed-wrapper.cjs +31 -0
- package/integrations/evidence/trackingContract.ts +0 -150
- package/integrations/gate/governanceActionCatalog.ts +0 -275
- package/integrations/lifecycle/bootstrapManifest.ts +0 -248
- package/integrations/lifecycle/cliGovernanceConsole.ts +0 -69
- package/integrations/lifecycle/governanceNextAction.ts +0 -164
- package/integrations/lifecycle/governanceObservationSnapshot.ts +0 -613
- package/integrations/mcp/alignedPlatformGate.ts +0 -232
- package/integrations/mcp/readMcpPrePushStdin.ts +0 -7
- package/scripts/build-ruralgo-s1-evidence-pack.ts +0 -85
- package/scripts/ruralgo-s1-evidence-pack-lib.ts +0 -200
package/AGENTS.md
ADDED
|
@@ -0,0 +1,269 @@
|
|
|
1
|
+
# AGENTS.md — Reglas de Codex para este repositorio
|
|
2
|
+
|
|
3
|
+
## Idioma y comunicación
|
|
4
|
+
- MUST: Responder siempre en español.
|
|
5
|
+
- MUST: Mantener trazabilidad en cada entrega (`escenario -> tests -> evidencia -> task`).
|
|
6
|
+
- MUST: Al cerrar cada iteración, responder siempre con `MD de seguimiento` y `task actual`.
|
|
7
|
+
|
|
8
|
+
## Project mode
|
|
9
|
+
- PROJECT MODE: brownfield
|
|
10
|
+
|
|
11
|
+
## Producto Pumuki (baseline vs adaptadores)
|
|
12
|
+
- MUST: La **línea base** es **agnóstica al IDE**: hooks Git gestionados, gate, lifecycle, evidencia, políticas. En **`pre-commit`** y **`pre-push`**, el bloque gestionado ejecuta **primero** `pumuki-pre-write` (SDD / stage **PRE_WRITE**) y **después** `pumuki-pre-commit` o `pumuki-pre-push`. Opt-out: `PUMUKI_SKIP_CHAINED_PRE_WRITE=1`.
|
|
13
|
+
- MUST: Tras **`pumuki install`**, si no existe, se genera **`.pumuki/adapter.json`** con comandos canónicos de hooks y **MCP stdio** (referencia en el repo para cualquier cliente MCP; no sustituye registrar el servidor en un IDE).
|
|
14
|
+
- MUST: **Ficheros propios de un IDE** (p. ej. `.cursor/mcp.json`) siguen siendo **opt-in** (`pumuki install --with-mcp --agent=…`, `bootstrap --enterprise`).
|
|
15
|
+
|
|
16
|
+
## Skills requeridos
|
|
17
|
+
- REQUIRED SKILL: enterprise-operating-system
|
|
18
|
+
- REQUIRED SKILL: ios-enterprise-rules
|
|
19
|
+
- REQUIRED SKILL: swift-concurrency
|
|
20
|
+
- REQUIRED SKILL: swiftui-expert-skill
|
|
21
|
+
- REQUIRED SKILL: android-enterprise-rules
|
|
22
|
+
- REQUIRED SKILL: backend-enterprise-rules
|
|
23
|
+
- REQUIRED SKILL: frontend-enterprise-rules
|
|
24
|
+
|
|
25
|
+
## Cadena de skills
|
|
26
|
+
- La cadena canónica es:
|
|
27
|
+
1. `AGENTS.md`
|
|
28
|
+
2. `vendor/skills/` del repo (si existe)
|
|
29
|
+
3. `skills.sources.json`
|
|
30
|
+
4. `skills.lock.json`
|
|
31
|
+
5. `~/.agents/skills` como capa global canónica
|
|
32
|
+
6. `~/.codex/skills/public` solo como compatibilidad legacy
|
|
33
|
+
- `skills.sources.json` y `skills.lock.json` son artefactos generados, no punto de entrada humano.
|
|
34
|
+
- Leer skills desde `~/.agents/skills/**` y `~/.codex/skills/public/**` está permitido.
|
|
35
|
+
- Escribir o modificar cualquier cosa bajo `~/.codex/**` o `~/.agents/**` está prohibido.
|
|
36
|
+
|
|
37
|
+
## Obligatorio (en cada iteracion)
|
|
38
|
+
Antes de realizar cualquier accion:
|
|
39
|
+
1) Confirmar workspace:
|
|
40
|
+
- `pwd`
|
|
41
|
+
- `git rev-parse --show-toplevel`
|
|
42
|
+
- `git status`
|
|
43
|
+
2) Confirmar que no estas ejecutando desde dentro de `~/.codex` ni `~/.agents`.
|
|
44
|
+
3) Enumerar skills disponibles (repo + globales):
|
|
45
|
+
- Preferir `vendor/skills/` si existe.
|
|
46
|
+
- Si no existe, resolver desde `~/.agents/skills`.
|
|
47
|
+
- Usar `~/.codex/skills/public` solo como compatibilidad legacy.
|
|
48
|
+
4) Decidir si una o mas skills aplican a la solicitud actual.
|
|
49
|
+
- Si una skill aplica, invocarla y seguir sus instrucciones de `SKILL.md`.
|
|
50
|
+
- Si no aplica ninguna skill, continuar de forma normal.
|
|
51
|
+
5) Comprobaciones legacy:
|
|
52
|
+
- Los checks legacy de gate/evidencia estan deprecados en este repositorio.
|
|
53
|
+
- No bloquear trabajo por esos checks.
|
|
54
|
+
6) Actualizar el estado real de refactor/estabilidad en el area de tracking actual (sin depender de artefactos de piloto):
|
|
55
|
+
- con el estado actual del proyecto, siguiendo el formato de ese documento.
|
|
56
|
+
- cada vez que termines una tarea, marcarla como hecha con su emoji y marcar la siguiente como en construccion; no es negociable.
|
|
57
|
+
|
|
58
|
+
## Contrato hard de skills (no negociable)
|
|
59
|
+
- Las skills activas son un CONTRATO HARD, no una guia opcional.
|
|
60
|
+
- Esta prohibido omitir, relajar o reinterpretar reglas internas de una skill por rapidez, conveniencia o contexto heredado.
|
|
61
|
+
- Resolucion de conflictos de reglas:
|
|
62
|
+
- Si hay conflicto entre skill vendorizada y skill local, aplicar la regla mas estricta.
|
|
63
|
+
- Documentar en trazabilidad que version se aplico (vendorizada/local) y por que.
|
|
64
|
+
- Reglas hard por ambito:
|
|
65
|
+
- Cambios iOS/Swift/SwiftUI: aplicar SIEMPRE y en conjunto:
|
|
66
|
+
- `ios-enterprise-rules`
|
|
67
|
+
- `swift-concurrency`
|
|
68
|
+
- `swiftui-expert-skill`
|
|
69
|
+
- Cambios Frontend web (React/Next/TypeScript/CSS/UI web): aplicar SIEMPRE:
|
|
70
|
+
- `frontend-enterprise-rules`
|
|
71
|
+
- Cambios Backend (NestJS/TypeScript/API/datos/backend services): aplicar SIEMPRE:
|
|
72
|
+
- `backend-enterprise-rules`
|
|
73
|
+
- Cambios Android (Kotlin/Compose/Android): aplicar SIEMPRE:
|
|
74
|
+
- `android-enterprise-rules`
|
|
75
|
+
- Si una tarea toca multiples ambitos, aplicar TODAS las skills relevantes en conjunto.
|
|
76
|
+
- No se permite aplicar solo una parte de esas skills ni hacer cherry-picking de reglas.
|
|
77
|
+
- Si una regla de skill entra en conflicto con codigo existente, se corrige el codigo para cumplir la regla (no al reves), salvo instruccion explicita del usuario.
|
|
78
|
+
- Si una regla no se puede cumplir tecnicamente en ese momento:
|
|
79
|
+
- detener implementacion,
|
|
80
|
+
- declarar `STATUS: BLOCKED`,
|
|
81
|
+
- explicar la regla exacta bloqueante, y
|
|
82
|
+
- pedir decision explicita del usuario antes de continuar.
|
|
83
|
+
|
|
84
|
+
## Contrato hard de GitFlow y ramas (no negociable)
|
|
85
|
+
- El ciclo GitFlow del proyecto es obligatorio.
|
|
86
|
+
- Es obligatorio respetar ramas nombradas segun la convencion acordada del repositorio.
|
|
87
|
+
- Esta prohibido trabajar en una rama que no corresponda al tipo de tarea o fase.
|
|
88
|
+
- Esta prohibido hacer commits en una rama fuera de convencion o fuera del flujo esperado.
|
|
89
|
+
- Esta prohibido mezclar trabajo de ramas distintas sin instruccion explicita del usuario.
|
|
90
|
+
- Convencion de naming hard por defecto (si el repo no define otra mas estricta):
|
|
91
|
+
- `main`
|
|
92
|
+
- `develop`
|
|
93
|
+
- `feature/<descripcion-kebab-case>`
|
|
94
|
+
- `bugfix/<descripcion-kebab-case>`
|
|
95
|
+
- `hotfix/<descripcion-kebab-case>`
|
|
96
|
+
- `release/<semver>`
|
|
97
|
+
- `chore/<descripcion-kebab-case>`
|
|
98
|
+
- `refactor/<descripcion-kebab-case>`
|
|
99
|
+
- `docs/<descripcion-kebab-case>`
|
|
100
|
+
- Flujo hard por tipo de rama:
|
|
101
|
+
- `feature/*`, `bugfix/*`, `chore/*`, `refactor/*`, `docs/*`: deben salir de `develop`.
|
|
102
|
+
- `release/*`: debe salir de `develop` y solo contener cambios de estabilizacion/release.
|
|
103
|
+
- `hotfix/*`: debe salir de `main` para fixes urgentes de produccion.
|
|
104
|
+
- Esta prohibido commitear en `main` y `develop` sin instruccion explicita del usuario.
|
|
105
|
+
- Si la rama actual no cumple naming o flujo:
|
|
106
|
+
- detener implementacion,
|
|
107
|
+
- declarar `STATUS: BLOCKED`,
|
|
108
|
+
- explicar el conflicto de rama/flujo, y
|
|
109
|
+
- pedir al usuario el cambio o confirmacion de rama antes de continuar.
|
|
110
|
+
|
|
111
|
+
## Gate operativo obligatorio (antes de editar codigo)
|
|
112
|
+
- Declarar internamente las skills aplicables y tratarlas como activas durante TODO el turno.
|
|
113
|
+
- Verificar cumplimiento minimo previo:
|
|
114
|
+
- BDD/TDD requerido por la skill correspondiente.
|
|
115
|
+
- Concurrencia y aislamiento segun `swift-concurrency` cuando haya codigo Swift.
|
|
116
|
+
- Estado/arquitectura/UI segun `swiftui-expert-skill` e `ios-enterprise-rules` cuando aplique iOS/SwiftUI.
|
|
117
|
+
- Reglas frontend segun `frontend-enterprise-rules` cuando aplique web.
|
|
118
|
+
- Reglas backend segun `backend-enterprise-rules` cuando aplique backend.
|
|
119
|
+
- Reglas Android segun `android-enterprise-rules` cuando aplique Android.
|
|
120
|
+
- Rama actual alineada con GitFlow y convencion de naming.
|
|
121
|
+
- Si no se puede garantizar este gate, no se permite editar codigo.
|
|
122
|
+
|
|
123
|
+
## Prohibiciones explicitas
|
|
124
|
+
- Prohibido avanzar con implementacion funcional si incumple cualquier regla hard de skill.
|
|
125
|
+
- Prohibido cerrar una tarea si hay violaciones conocidas de skills pendientes de corregir.
|
|
126
|
+
- Prohibido asumir permiso implicito del usuario para saltar reglas.
|
|
127
|
+
- Prohibido ejecutar `merge`, `rebase`, `cherry-pick` o `push --force` sin instruccion explicita del usuario.
|
|
128
|
+
|
|
129
|
+
## Contrato hard anti-bucle y prioridad de bugs externos (no negociable)
|
|
130
|
+
- Los bugs reportados por repos consumidores son prioridad absoluta sobre cualquier task interna del repo.
|
|
131
|
+
- Las fuentes canonicas externas son:
|
|
132
|
+
- `/Users/juancarlosmerlosalbarracin/Developer/Projects/SAAS:APP_SUPERMERCADOS/docs/pumuki/PUMUKI_BUGS_MEJORAS.md`
|
|
133
|
+
- `/Users/juancarlosmerlosalbarracin/Developer/Projects/R_GO/docs/technical/08-validation/refactor/pumuki-integration-feedback.md`
|
|
134
|
+
- `/Users/juancarlosmerlosalbarracin/Developer/Projects/Flux_training/docs/BUGS_Y_MEJORAS_PUMUKI.md`
|
|
135
|
+
- La unica fuente viva del tracking interno es `PUMUKI-RESET-MASTER-PLAN.md`.
|
|
136
|
+
- Los antiguos MDs internos bajo `docs/tracking/` quedan retirados del repo y no pueden reintroducirse como backlog fuente.
|
|
137
|
+
- El bucle previo se produjo por mantener espejos internos compitiendo con backlog externo y con el propio reset.
|
|
138
|
+
- Desde este punto, ningun documento de seguimiento fuera de `PUMUKI-RESET-MASTER-PLAN.md` puede actuar como backlog, criterio de prioridad ni prueba de avance.
|
|
139
|
+
- Regla hard nueva:
|
|
140
|
+
- si existe aunque sea un bug abierto en cualquiera de los MDs externos,
|
|
141
|
+
- la unica task `🚧` permitida en el tracking interno debe corresponder a uno de esos bugs externos,
|
|
142
|
+
- y queda prohibido arrancar, continuar o cerrar cualquier `PUMUKI-2xx` de refactor interno salvo que sea estrictamente necesaria para cerrar ese bug externo.
|
|
143
|
+
- Si el tracking interno muestra una `🚧` distinta de un bug externo mientras haya bugs externos abiertos:
|
|
144
|
+
- eso cuenta como violacion hard del proceso,
|
|
145
|
+
- el estado correcto pasa a ser `STATUS: BLOCKED`,
|
|
146
|
+
- y la unica accion permitida es corregir el tracking y volver al bug externo prioritario.
|
|
147
|
+
- Si cualquiera de esos MDs contiene items abiertos (`🚧`, `⏳`, `⛔`, `OPEN`, `REPORTED`, `STOP`), quedan congeladas todas las tasks internas `PUMUKI-2xx` que no sean estrictamente necesarias para resolver ese bug externo.
|
|
148
|
+
- Esta prohibido abrir, continuar o cerrar tareas internas de refactor, docs, tracking o modularizacion mientras exista un bug externo abierto que aun no tenga:
|
|
149
|
+
- reproduccion,
|
|
150
|
+
- fix,
|
|
151
|
+
- tests/regresion,
|
|
152
|
+
- release util si aplica,
|
|
153
|
+
- y actualizacion del MD externo correspondiente.
|
|
154
|
+
- Antes de iniciar cualquier task interna nueva, comprobar explicitamente el estado de los tres MDs externos.
|
|
155
|
+
- Si los MDs externos y el tracking interno entran en conflicto:
|
|
156
|
+
- los MDs externos ganan automaticamente,
|
|
157
|
+
- el tracking interno se considera incorrecto,
|
|
158
|
+
- y debe corregirse en el mismo turno antes de tocar codigo funcional.
|
|
159
|
+
- Si el modelo detecta que se esta desviando a trabajo interno con bugs externos abiertos:
|
|
160
|
+
- debe parar,
|
|
161
|
+
- declarar el desvio en la respuesta,
|
|
162
|
+
- corregir `PUMUKI-RESET-MASTER-PLAN.md` en ese mismo turno,
|
|
163
|
+
- corregir el tracking interno,
|
|
164
|
+
- y volver en ese mismo turno al bug externo prioritario.
|
|
165
|
+
- Si el modelo vuelve a abrir una task interna no alineada con bugs externos abiertos:
|
|
166
|
+
- declarar `STATUS: BLOCKED`,
|
|
167
|
+
- no editar mas codigo funcional,
|
|
168
|
+
- reparar primero el tracking,
|
|
169
|
+
- y solo despues continuar con el bug externo prioritario.
|
|
170
|
+
- Queda explicitamente prohibido usar el cierre de tasks internas `PUMUKI-2xx` como prueba de avance del producto mientras `SAAS`, `RuralGo` o `Flux` mantengan bugs abiertos.
|
|
171
|
+
|
|
172
|
+
## Contrato hard de release y adopcion en consumers
|
|
173
|
+
- Si un cambio ya aporta valor real a repos consumidores, tiene tests verdes y no introduce regresiones conocidas, preparar y ejecutar una nueva publicacion de `pumuki`.
|
|
174
|
+
- Tras cada publicacion util, y siempre que el usuario haya definido repos consumidores activos para rollout, ejecutar el ciclo:
|
|
175
|
+
- verificar publicacion remota,
|
|
176
|
+
- actualizar consumers a la nueva version,
|
|
177
|
+
- revalidar `status` / `doctor` / hooks segun aplique,
|
|
178
|
+
- actualizar el tracking real de esos consumers si cambia su estado.
|
|
179
|
+
- No dejar consumidores largos periodos sobre una version antigua si ya existe una release estable que corrige bugs o mejoras que les afectan directamente.
|
|
180
|
+
- Si publicar o actualizar consumers implica riesgo no obvio, explicarlo antes; si no, tratarlo como parte normal del ciclo enterprise.
|
|
181
|
+
|
|
182
|
+
## Contrato hard de higiene documental y artefactos (enterprise clean)
|
|
183
|
+
- Objetivo no negociable: mantener el repositorio limpio, trazable y sin acumulacion de basura operativa.
|
|
184
|
+
- Prohibido crear un `.md` nuevo por cada micro-paso si la informacion cabe en un documento existente.
|
|
185
|
+
- Antes de crear cualquier archivo en `docs/**`, verificar y priorizar actualizacion de:
|
|
186
|
+
- `docs/ENTERPRISE_EXECUTION_CYCLE_*.md`
|
|
187
|
+
- `docs/REFRACTOR_PROGRESS.md`
|
|
188
|
+
- `docs/README.md`
|
|
189
|
+
- `docs/validation/README.md`
|
|
190
|
+
- Crear un `.md` nuevo solo si:
|
|
191
|
+
- lo pide explicitamente el usuario, o
|
|
192
|
+
- es un hito contractual de fase/ciclo que no puede consolidarse en un documento ya existente.
|
|
193
|
+
- Si se crea un `.md` nuevo, en la misma entrega es obligatorio:
|
|
194
|
+
- indexarlo en los `README` correspondientes,
|
|
195
|
+
- consolidar o eliminar `.md` redundantes del mismo ambito funcional,
|
|
196
|
+
- dejar una sola fuente de verdad por tema.
|
|
197
|
+
- Prohibido versionar artefactos efimeros de ejecucion o diagnostico:
|
|
198
|
+
- `.audit_tmp/**`, `.audit-reports/**`, `.coverage/**`
|
|
199
|
+
- `*.out`, `*.exit`, `*.log`, `*.tmp`, `*.bak`, `*.orig`, `*.rej`
|
|
200
|
+
- Limpieza obligatoria antes de cerrar cualquier tarea:
|
|
201
|
+
- eliminar artefactos efimeros locales,
|
|
202
|
+
- eliminar directorios vacios huerfanos,
|
|
203
|
+
- verificar que `git status` no muestra basura no trackeada fuera del alcance de la tarea.
|
|
204
|
+
- Criterio de bloqueo hard:
|
|
205
|
+
- si un archivo no aporta valor profesional claro (producto, arquitectura, operacion estable o compliance), no se mantiene.
|
|
206
|
+
- si hay duda razonable, declarar `STATUS: BLOCKED` y pedir decision explicita del usuario para conservar o eliminar.
|
|
207
|
+
|
|
208
|
+
## Seguridad del repositorio
|
|
209
|
+
- Hacer cambios SOLO dentro de este repositorio.
|
|
210
|
+
- Evitar refactors amplios salvo peticion explicita.
|
|
211
|
+
- Para operaciones destructivas (`delete/drop/apply/destroy`), PARAR y preguntar.
|
|
212
|
+
|
|
213
|
+
## Secretos
|
|
214
|
+
- Nunca imprimir ni registrar secretos (API keys, tokens, service role keys o credenciales).
|
|
215
|
+
- Si detectas un secreto, reportar solo ruta del archivo + remediacion (sin mostrar el valor).
|
|
216
|
+
|
|
217
|
+
## Protocolo de entrega
|
|
218
|
+
Al finalizar cualquier tarea, siempre reportar:
|
|
219
|
+
- STATUS (`DONE`/`BLOCKED`)
|
|
220
|
+
- BRANCH
|
|
221
|
+
- FILES CHANGED
|
|
222
|
+
- COMMANDS RUN
|
|
223
|
+
- NEXT instruction
|
|
224
|
+
|
|
225
|
+
## Plantilla obligatoria de trazabilidad por turno (hard)
|
|
226
|
+
- En cada entrega final, incluir una matriz de trazabilidad por archivo con este formato minimo:
|
|
227
|
+
- `ARCHIVO | SKILL | REGLA | EVIDENCIA | ESTADO`
|
|
228
|
+
- Donde:
|
|
229
|
+
- `ARCHIVO`: ruta absoluta del archivo afectado.
|
|
230
|
+
- `SKILL`: skill o contrato aplicable (`ios-enterprise-rules`, `swift-concurrency`, `swiftui-expert-skill`, `GitFlow`, etc.).
|
|
231
|
+
- `REGLA`: regla concreta aplicada.
|
|
232
|
+
- `EVIDENCIA`: comando, test, diff, o referencia de linea que prueba cumplimiento.
|
|
233
|
+
- `ESTADO`: `OK` o `BLOCKED`.
|
|
234
|
+
- Esta prohibido cerrar una tarea sin esta matriz.
|
|
235
|
+
|
|
236
|
+
<!-- BEGIN CODEX SKILLS -->
|
|
237
|
+
## Skills de Codex (local + vendorizado)
|
|
238
|
+
|
|
239
|
+
- Precedencia:
|
|
240
|
+
- Mantener la precedencia global ya definida en `AGENTS.md`.
|
|
241
|
+
- Si no esta definida explicitamente, usar: `AGENTS.md > vendor/skills > ~/.agents/skills > ~/.codex/skills/public`.
|
|
242
|
+
- Operativa:
|
|
243
|
+
- Al inicio de cualquier fase, usar primero los archivos vendorizados en `docs/codex-skills/*.md` si existen.
|
|
244
|
+
- Si no existen, intentar leer las rutas locales canónicas.
|
|
245
|
+
- Si `docs/codex-skills/` no existe, usar rutas locales sin bloquear la tarea.
|
|
246
|
+
- Aplicar reglas de las skills siempre que no contradigan `AGENTS.md`.
|
|
247
|
+
|
|
248
|
+
- Skills:
|
|
249
|
+
- `android-enterprise-rules`
|
|
250
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/android-enterprise-rules/SKILL.md`
|
|
251
|
+
- Vendorizado: `docs/codex-skills/android-enterprise-rules.md`
|
|
252
|
+
- `backend-enterprise-rules`
|
|
253
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/backend-enterprise-rules/SKILL.md`
|
|
254
|
+
- Vendorizado: `docs/codex-skills/backend-enterprise-rules.md`
|
|
255
|
+
- `frontend-enterprise-rules`
|
|
256
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/frontend-enterprise-rules/SKILL.md`
|
|
257
|
+
- Vendorizado: `docs/codex-skills/frontend-enterprise-rules.md`
|
|
258
|
+
- `ios-enterprise-rules`
|
|
259
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/ios-enterprise-rules/SKILL.md`
|
|
260
|
+
- Vendorizado: `docs/codex-skills/ios-enterprise-rules.md`
|
|
261
|
+
- `swift-concurrency`
|
|
262
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/swift-concurrency/SKILL.md`
|
|
263
|
+
- Vendorizado: `docs/codex-skills/swift-concurrency.md`
|
|
264
|
+
- `swiftui-expert-skill`
|
|
265
|
+
- Local: `/Users/juancarlosmerlosalbarracin/.agents/skills/swiftui-expert-skill/SKILL.md`
|
|
266
|
+
- Vendorizado: `docs/codex-skills/swiftui-expert-skill.md`
|
|
267
|
+
|
|
268
|
+
- Comando de sincronizacion: `./scripts/sync-codex-skills.sh`
|
|
269
|
+
<!-- END CODEX SKILLS -->
|