feat: registry_api + fn sync — sincronización de registry.db entre PCs

Nuevo sistema para mantener datos no regenerables (proposals, apps, projects,
analysis, vaults, pc_locations) sincronizados entre múltiples máquinas via
una API HTTP central desplegada en organic-machine.com.

- Migración 011: tabla pc_locations (mapa de ubicaciones por PC)
- registry/models.go: struct PcLocation
- registry/store.go: CRUD PcLocation + helpers de sync
- cmd/fn/sync.go: subcomando fn sync (push+pull, status, locations)
- bash/functions/infra/setup_registry_api: pipeline de deploy Docker+Traefik
- CLAUDE.md: documentación de sync y pc_locations

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-15 02:12:38 +02:00
parent 295ab491a3
commit 28364cf212
9 changed files with 820 additions and 2 deletions
+4 -1
View File
@@ -43,6 +43,8 @@ func main() {
cmdApp(os.Args[2:])
case "analysis":
cmdAnalysis(os.Args[2:])
case "sync":
cmdSync(os.Args[2:])
case "help", "-h", "--help":
printUsage()
default:
@@ -67,7 +69,8 @@ Usage:
fn proposal <add|list|show|update> Gestiona proposals
fn project <init|list|show|status> Gestiona proyectos
fn app <list|clone|pull> Gestiona apps externas (Gitea)
fn analysis <list|clone|pull> Gestiona analyses externas (Gitea)`)
fn analysis <list|clone|pull> Gestiona analyses externas (Gitea)
fn sync [status|locations] Sincroniza con servidor central`)
}
func root() string {