Vikunja Board Mirror Technical Specification¶
Overview & System Role¶
Vikunja operates as a single Docker container instance hosted on the greatroom PC (http://127.0.0.1:3456). It serves as the third leg of the fleet's board-redundancy architecture:
1. Jira: Primary source of truth.
2. BOARD.md: Canonical, git-replicated repository board.
3. Vikunja: Derived one-way read-only mirror.
This documentation addresses a visibility gap where fleet operators and automated readers were unaware of Vikunja's existence and operating parameters.
Data Flow & Sync Governance¶
Vikunja holds zero unique state. All task data is derived via one-way synchronization from Jira.
- Sync Agent:
FleetBoardSyncscheduled task located atfleet-harness/ops/board-sync. - Single-Writer Constraint:
FleetBoardSyncMUST run exclusively on thegreatroomPC. Never invoke sync tasks from secondary machines. - Immutability: Manual edits inside the Vikunja UI/API are strictly forbidden as they will be overwritten during sync cycles.
Authentication & Project Mapping¶
- API Token Location:
~/.fleet-secrets/vikunja.json(Bearer token authentication). - Security Rule: Never log, print, or expose token values in CLI output or telemetry.
- Project IDs:
7=FLT(Fleet Harness / Core infrastructure)8=WING(WorkWingman)
Disaster Recovery & Operations (FLT-142)¶
Per the FLT-142 council decision (2026-07-19), hot High Availability (HA) was evaluated and rejected in favor of a lightweight disaster recovery model:
- Nightly Backups: VikunjaNightlyBackup scheduled task outputs dumps to OneDrive.
- Restore Verification: VikunjaRestoreVerify scheduled task routinely tests dump integrity.
- Rebuild Strategy: Rebuild directly from Jira using:
pwsh -File fleet-harness/ops/board-sync/Rehydrate-Vikunja.ps1 -FromJira
Critical Hazard: Database Restores¶
[!CAUTION] The
-FromDumpparameter inRehydrate-Vikunja.ps1drops and restores the database after validating the dump (size/header/version — validation added post-2026-07-29; an earlier version dropped before validating and once wiped the primary). It remains inherently destructive. Treat-FromDumpas inherently destructive and strongly prefer-FromJirafor all recovery operations.
Operational Verification¶
- TODO(verify): Confirm exact cron/timer schedule intervals for
FleetBoardSync,VikunjaNightlyBackup, andVikunjaRestoreVerify.