36 lines
1.8 KiB
Markdown
36 lines
1.8 KiB
Markdown
# AGENTS.md
|
|
|
|
## OpenSpec
|
|
Este proyecto usa [OpenSpec](https://openspec.dev/) para desarrollo spec-driven.
|
|
- Cambios activos: `openspec/changes/`
|
|
- Cambios archivados: `openspec/changes/archive/`
|
|
- Especificaciones: `openspec/specs/`
|
|
- Comandos: `/opsx-propose`, `/opsx-apply`, `/opsx-archive` en .opencode/
|
|
|
|
## Agent Skills
|
|
Skills del proyecto en `skills/`:
|
|
- `toldo-architecture-solid` - Arquitectura limpia, SOLID, separación lógica/presentación
|
|
- `toldo-domain-modeling` - Modelo de dominio CESTA
|
|
- `toldo-tdd-vitest` - TDD con Vitest
|
|
- `toldo-offline-export-import` - Export/Import JSON versionado
|
|
|
|
## Arquitectura
|
|
- Monorepo: `apps/`, `packages/` (core, data, services, ui)
|
|
- Tecnologías: Vite + Vue 3 + TypeScript + Vuetify 3 + Capacitor + Dexie.js
|
|
- Principios: SOLID, componentes pequeños/reutilizables, separación lógica/presentación
|
|
- Testing: TDD con Vitest, Playwright para E2E
|
|
- Offline-first, APK Android
|
|
|
|
## Desarrollo
|
|
Seguir OpenSpec workflow: propose -> apply -> archive
|
|
Usar skills cuando aplique al contexto
|
|
Mantener código siguiendo arquitectura limpia
|
|
|
|
## Release Android
|
|
- Antes de publicar una APK, ejecutar `npm run test:run`, `npm run test:e2e`, `npm exec vue-tsc -- --noEmit` y `npm run build`.
|
|
- Ejecutar `npx cap sync android` y `./gradlew assembleDebug` usando el builder Android del repositorio cuando el host no tenga Java.
|
|
- Verificar el APK con `scripts/verify-apk.sh <apk> <versionName> <versionCode>` antes de adjuntarlo a Gitea.
|
|
- El script debe confirmar `applicationId`, `versionName`, `versionCode`, bundle JavaScript, fuentes MDI y textos críticos de la versión.
|
|
- Incrementar `versionCode` para cada APK publicable; mantener la misma firma y publicar versiones beta como prerelease.
|
|
- Después de subir un asset, comparar su SHA256 con el APK verificado localmente y comprobar el asset de la release mediante la API de Gitea.
|