feat(tools): sync bidireccional vault OSINT <-> Xandikos CardDAV
- sync_dav_to_osint.py (NUEVO): reverse sync Xandikos->vault. Trae contactos nuevos del movil (contexto: movil, dedup por tel/email) y ediciones de agenda (nombre/tel/email/aliases) PRESERVANDO la capa OSINT (relaciones/dni/contexto/ fuente/tags). Estado persistente .sync_state.json (UID->etag/vault_mtime). Reconciliacion por etag; --dry-run (default) / --apply. - sync_osint_to_dav.py: anade --check (audit read-only vault<->Xandikos: fichas sin vCard, vCards huerfanos, agendas divergentes) y optimiza build_existing_index con dav_get_collection (1 REPORT, ~9s->~0.5s) en vez del patron N+1. Usa las funciones del registry: dav_get_collection, dav_delete_resource, carddav_put_vcard, obsidian CRUD, pass_get_secret. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -3,3 +3,8 @@ analysis/*/
|
||||
vaults/*
|
||||
!vaults/.gitkeep
|
||||
!vaults/vault.yaml
|
||||
|
||||
# Estado local del sync DAV (per-PC, no secretos pero efimero) y caches.
|
||||
tools/.sync_state.json
|
||||
tools/__pycache__/
|
||||
**/__pycache__/
|
||||
|
||||
Reference in New Issue
Block a user