james-dashboard/data/tasks.json

158 lines
5.7 KiB
JSON

{
"tasks": [
{
"id": "234c91f5",
"text": "docker compose pull \u0026\u0026 up -d in /home/johan/services/immich/",
"title": "Update Immich to v2.5.6 on 192.168.1.253",
"priority": "low",
"status": "done",
"owner": "james",
"domain": "Infrastructure",
"notes": "Pulled latest images on 192.168.1.253 — all containers already up to date. No restarts needed.",
"created_at": "2026-02-11T08:53:12.444015411-05:00",
"updated": "2026-02-12T20:00:34-05:00"
},
{
"id": "3fe45a48",
"text": "3 domains failed to migrate to Cloudflare: zavtra.nl, busel.nl, muskepo.nl. Error: invalid DS record (DNSSEC). Need to remove DS records at registrar. NOTE: flourishevents.nl migrated successfully to Cloudflare Free plan.",
"title": "Fix Cloudflare DNSSEC DS Records",
"priority": "medium",
"status": "pending",
"owner": "james",
"domain": "Infrastructure",
"notes": "flourishevents.nl already working",
"created_at": "2026-02-17T21:06:17.765348854-05:00",
"updated": "2026-02-17T21:07:09-05:00"
},
{
"id": "b20c7a40",
"title": "WebAuthn PRF — L2 client-side key derivation",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Browser Web Crypto API. Key never touches server. Touch ID / Titan Key / YubiKey. No email fallback.",
"created_at": "2026-02-28T23:42:33.176774378-05:00"
},
{
"id": "ec8bc7d6",
"title": "L2 field encrypt/decrypt in browser",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Uses WebAuthn PRF key. Web Crypto AES-GCM. Only decryptable client-side.",
"created_at": "2026-02-28T23:42:33.182192585-05:00"
},
{
"id": "9fd52cd3",
"title": "Scoped MCP tokens — per-agent credential scoping",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Token has tags[] or entryIDs[] whitelist + readOnly flag. Key feature for Alex Finn / multi-agent use case.",
"created_at": "2026-02-28T23:42:33.187972428-05:00"
},
{
"id": "22618f42",
"title": "Extension autofill with LLM field mapping",
"priority": "medium",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "DOM snapshot → LLM → fill. Chrome Manifest V3 extension scaffold already exists.",
"created_at": "2026-02-28T23:42:33.193843841-05:00"
},
{
"id": "994ec77a",
"title": "Caddy proxy + domain for vault1984",
"priority": "medium",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Give it a proper domain. TLS via Caddy.",
"created_at": "2026-02-28T23:42:33.199524502-05:00"
},
{
"id": "f86a7c0f",
"title": "Systemd service on forge",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Currently runs manually. Needs restart on boot + persistent VAULT_KEY.",
"created_at": "2026-02-28T23:42:33.205175475-05:00"
},
{
"id": "55bf79d6",
"title": "Permanent VAULT_KEY — survive restarts",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Currently ephemeral — every restart wipes all decryptable data. Store encrypted key or in env file.",
"created_at": "2026-02-28T23:42:33.210896611-05:00"
},
{
"id": "c347670b",
"title": "Import Johans 12,623 entries (Chrome + Firefox + Proton)",
"priority": "medium",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Native parsers built. Need actual export files from Johan.",
"created_at": "2026-02-28T23:42:33.216358569-05:00"
},
{
"id": "2e863934",
"title": "Code review + test pass — all untested features",
"priority": "high",
"status": "pending",
"owner": "james",
"domain": "Vault1984",
"notes": "Most of what was built this afternoon is untested. Full review needed before trusting with real credentials.",
"created_at": "2026-02-28T23:42:33.221879708-05:00"
},
{
"id": "fc147957",
"title": "Export passwords: Chrome + Firefox + Proton Pass",
"priority": "medium",
"status": "pending",
"owner": "johan",
"domain": "Vault1984",
"notes": "Needed for import into vault1984. Chrome: Settings→Passwords→Export. Firefox: Logins→Export. Proton: Settings→Export.",
"created_at": "2026-02-28T23:42:33.227542595-05:00"
},
{
"id": "18d32000",
"title": "Discord account / token for James",
"priority": "medium",
"status": "pending",
"owner": "johan",
"domain": "Vault1984",
"notes": "Need Discord presence to reach AlexFinn 1% Club community organically.",
"created_at": "2026-02-28T23:42:33.233110598-05:00"
},
{
"id": "76c00cad",
"title": "1% Club subscription — alexfinn.ai",
"priority": "low",
"status": "pending",
"owner": "johan",
"domain": "Vault1984",
"notes": "Paid community. Discord access gated behind subscription. Path to AlexFinn audience.",
"created_at": "2026-02-28T23:42:33.238778134-05:00"
},
{
"id": "4888dc60",
"title": "Register WebAuthn authenticators for L2",
"priority": "high",
"status": "pending",
"owner": "johan",
"domain": "Vault1984",
"notes": "Touch ID + Titan Key + printed BIP39 mnemonic backup. Must be done before storing any L2 fields.",
"created_at": "2026-02-28T23:42:33.244466901-05:00"
}
]
}