obsidian/wiki/log.md
2026-05-10 22:48:50 +01:00

397 lines
37 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Build Log
## [2026-05-10T23:59:59+02:00] compile | daily/2026-05-10.md (final — missing file created)
- Source: daily/2026-05-10.md
- Articles created: [[wiki/concepts/overflow-hidden-clips-positioned-children]]
- Articles updated: none
- Index updates: none (already indexed at row 213 of concepts/_index)
- Note: File was listed in _index.md but missing on disk. Created marquee-buttons-outside-overflow variant of the overflow-hidden clipping rule, with See Also link to overflow-hidden-clips-absolute-children (glass header variant).
## [2026-05-10T23:59:00+02:00] compile | daily/2026-05-10.md (addendum — Shumiland workflow concepts)
- Source: daily/2026-05-10.md
- Articles created:
- [[wiki/concepts/eslint-flatcompat-next16-circular-reference]] — FlatCompat wraps eslint-config-next v16 → circular reference crash; drop FlatCompat, import nextConfig directly
- [[wiki/concepts/active-component-import-verification]] — grep import chain before editing; HeaderClient.tsx vs Header.tsx lesson
- [[wiki/concepts/figma-code-connect-plan-requirements]] — MCP `send_code_connect_mappings` requires Org/Enterprise; CLI works on all plans
- Articles updated: none
- Index updates: [[wiki/concepts/_index]] (226→229, +3 entries); [[wiki/_master-index]] (concepts 174→177)
- Note: Three concepts from the Shumiland Code Connect + ESLint + header editing sessions that were missed in prior compilation passes. ESLint FlatCompat is the most actionable — pre-commit hook blocker. Active component import verification is a workflow lesson (editing Header.tsx while app renders HeaderClient.tsx). Code Connect plan requirements clarify when MCP vs CLI is usable.
## [2026-05-10T12:00:00+02:00] compile | daily/2026-05-09.md
- Source: daily/2026-05-09.md
- Articles created (8):
- [[wiki/concepts/payload-cms-overrideaccess-bypass]] — `overrideAccess: true` bypasses all Payload access control; critical anti-pattern in webhook handlers
- [[wiki/concepts/nextjs-unstable-cache-force-dynamic]] — `unstable_cache` + tag revalidation vs `force-dynamic`; ISR for shared rarely-changing data
- [[wiki/concepts/map-ratelimiter-memory-leak]] — in-memory Map rate limiters grow unbounded; `setInterval` eviction with `.unref()`
- [[wiki/concepts/vitest-module-level-env-testing]] — `vi.stubEnv` + `vi.resetModules()` + dynamic `await import()` for env-at-load-time modules
- [[wiki/concepts/webhook-replay-attack-prevention]] — timestamp ±5min validation + callId deduplication to prevent replay attacks
- [[wiki/concepts/secrets-git-history-purge]] — `git-filter-repo --invert-paths --path .env` permanent secret removal; force push + re-clone required
- [[wiki/concepts/payload-cms-push-dev-prod]] — conditional `push: NODE_ENV === 'development'`; `push: false` default silently breaks fresh DB
- [[wiki/concepts/cloudflare-proxied-domain-npm-subpath]] — Cloudflare-only domains have no NPM vhost; Custom Locations fail; separate subdomain required
- Articles updated: none
- Index updates: [[wiki/concepts/_index]] (166→174, +8 entries); [[wiki/_master-index]] (concepts 166→174)
- Session coverage: Nextcloud signaling server config path mismatch, NPM Custom Location limitation for Cloudflare-proxied domains, Payload CMS security audit (overrideAccess, secrets in git, HMAC logging, replay attacks), Payload CMS performance (force-dynamic, N+1 queries, O(N×M) map lookup, rate limiter leak), Vitest env-at-load-time testing patterns, docker-compose credential mismatch, payload push:false gotcha
## [2026-05-10T23:00:00+02:00] compile | daily/2026-05-03.md (addendum — Glance widgets + dual AdGuard)
- Source: daily/2026-05-03.md
- Articles created: [[wiki/concepts/adguard-parallel-instances-diagnostic]]
- Articles updated: [[wiki/concepts/glance-dashboard-config]] (added hot-reload, Jellyfin sessions widget fix, Prometheus path mismatch, Habr RSS URL format `hubs/` vs `hub/`)
- Index updates: [[wiki/concepts/_index]] (+1 new row, adguard-parallel-instances-diagnostic)
- Note: Two prior passes (2026-05-08T22:00 and 2026-05-08T23:30) had captured the main debugging patterns but noted dual AdGuard and Glance widget fixes as "handled as notes" without actually writing them. This pass captures them properly: (1) CT101 empty AdGuard placeholder vs CT102 Docker production instance — router DNS pointed to wrong one; (2) Glance hot-reload confirmed, Jellyfin sessions widget `.Exists "NowPlayingItem"` fix, Prometheus `/mnt/media` vs `/mnt/data` path mismatch, Habr `hubs/` plural URL format.
## [2026-05-11T00:45:00+01:00] compile | daily/2026-05-10.md (addendum — Vite BASE_URL slash concatenation)
- Source: daily/2026-05-10.md
- Articles created: [[wiki/concepts/vite-base-url-slash-concatenation]]
- Articles updated: none
- Index updates: [[wiki/concepts/_index]] (165→166, +1 entry)
- Note: One concept missed in prior passes — session 16:19 barclays-banner-builder: `${BASE_URL}filename` silently works in dev (BASE_URL="/") but fails in prod when base is a sub-path or empty. Fix: always use explicit slash or `new URL(file, BASE_URL).href`. Now captured.
## [2026-05-11T00:30:00+01:00] compile | daily/2026-05-10.md (addendum — Figma .fig binary format)
- Source: daily/2026-05-10.md
- Articles created: [[wiki/concepts/figma-fig-binary-format]]
- Articles updated: none
- Index updates: [[wiki/concepts/_index]] (164→165, +1 entry); [[wiki/_master-index]] (concepts 164→165)
- Note: One concept missed in prior pass — session 16:41 research on Figma `.fig` file internals: ZIP archive with proprietary `canvas.fig` binary (magic bytes `fig-kiwij`); image assets accessible via `unzip`, but layer/component/text data requires Figma REST API or Desktop. Now captured.
## [2026-05-10T23:59:00+01:00] compile | daily/2026-05-06.md (addendum — BAIC client knowledge)
- Source: daily/2026-05-06.md
- Articles created: (none — all major concepts already existed from prior compilation pass)
- Articles updated: [[wiki/client-knowledge/baic]] (added Deploy Process section, Deploy Gotchas table, Per-User Report feature; systemd service underscore naming; rsync-only deploy pattern confirmed)
- Index updates: none (article count unchanged)
- Note: Prior compilation pass had already created fastapi-root-path-route-stripping, sse-jwt-query-param, spa-index-html-cache-control, pinia-storeftorefs-array-reactivity, memory-compiler-lesson-signal, workflow-approve-dispatch-completeness, security-middleware-json-key-regex. Only BAIC-specific deployment facts from session 13:29 were missing — added to client-knowledge article.
## [2026-05-10T23:00:00+01:00] compile | daily/2026-05-10.md (Shumiland + Payload CMS + banner-tool session)
- Source: daily/2026-05-10.md
- Articles created: [[wiki/concepts/pydantic-exclude-none-null-clearing-conflict]], [[wiki/concepts/payload-cms-root-layout-requirement]], [[wiki/concepts/payload-cms-node26-esm-workaround]], [[wiki/concepts/css-marquee-animation-gpu-pattern]], [[wiki/concepts/css-animation-js-scroll-conflict]], [[wiki/concepts/overflow-hidden-clips-absolute-children]], [[wiki/concepts/react-state-playwright-css-hover]], [[wiki/concepts/figma-mcp-oauth-reconnect-restart]], [[wiki/concepts/nextjs16-lint-command-removed]]
- Articles updated: none
- Index updates: [[wiki/concepts/_index]] (192→201, +9 entries); [[wiki/_master-index]] (concepts 192→201)
- Note: Long multi-project session — Shumiland (GallerySlider marquee animation debugging: JS scroll vs CSS animation conflict, overflow:hidden button clipping, animationDelay phase-shift for navigation), kvytky/Payload CMS setup (RootLayout crash, Node 26 ESM seed workaround, Turbopack incompatibility), banner-tool (DELETE variant endpoint + confirm dialog), Barclays logo URL fix, Figma MCP OAuth reconnect quirk
## [2026-05-10T22:00:00+01:00] compile | daily/2026-05-08.md (resumed — additional articles)
- Source: daily/2026-05-08.md
- Articles created (this pass): [[wiki/concepts/google-cloud-tts-ai-studio-separation]], [[wiki/concepts/pydantic-mongodb-patch-missing-fields]], [[wiki/concepts/celery-inflight-tasks-lost-on-restart]], [[wiki/concepts/caption-aligner-cursor-drift]], [[wiki/concepts/cmux-ghostty-wrapper-config]]
- Articles updated: [[wiki/concepts/poetry-docker-version-mismatch]] (added server-side poetry.lock conflict resolution: `git checkout backend/poetry.lock && git pull`)
- Index updates: [[wiki/concepts/_index]] (184→190, +6 entries); [[wiki/_master-index]] (184→190)
- Note: Resumed after context break. Previous session pass (below) created 8 files but ran out of context before creating comprehensive merged articles; this pass added google-cloud-tts comprehensive article (covers TTS service separation + model_name version gate + IAM role), merged pydantic/mongo and celery/restart articles, caption aligner cursor drift, and cmux/Ghostty config split. Some conceptual overlap exists with previous pass files — both sets are indexed.
## [2026-05-10T21:00:00+01:00] compile | daily/2026-05-08.md (video-accessibility session)
- Source: daily/2026-05-08.md
- Articles created: [[wiki/concepts/async-def-without-await-silent-coroutine]], [[wiki/concepts/google-cloud-tts-vs-ai-studio-tts]], [[wiki/concepts/google-cloud-texttospeech-version-gate]], [[wiki/concepts/caption-aligner-cursor-stall-cascade]], [[wiki/concepts/celery-worker-restart-inflight-task-loss]], [[wiki/concepts/poetry-lock-server-conflict-resolution]], [[wiki/concepts/silent-exception-swallow-falsy-guard]], [[wiki/concepts/pydantic-required-fields-manual-mongodb-patch]]
- Articles updated: [[wiki/tech-patterns/redis-celery-worker-queue]] (added worker restart orphans in-flight tasks gotcha)
- Index updates: [[wiki/concepts/_index]] (171→178, added 7 new rows + 1 auto-added by hook); [[wiki/_master-index]] (concepts 171→178)
- Note: Heavy video-accessibility debugging session — migrated from AI Studio TTS to Google Cloud TTS (separate endpoint, IAM role, library version bump, MP3 direct); fixed `await` omission in Redis `get_redis()` call; fixed NL VTT silent skip (exception swallow + falsy guard); fixed caption aligner cursor stall (bisect time fallback); deploy-triggered in-flight task loss pattern documented
## [2026-05-10T00:00:00+01:00] compile | daily/2026-05-07.md (addendum 2)
- Source: daily/2026-05-07.md
- Articles created: [[wiki/concepts/fastapi-orm-property-json-column]]
- Articles updated: [[wiki/concepts/fastapi-response-model-silent-field-strip]] (added Vue list-field null crash section and dual-layer fix requirement)
- Index updates: [[wiki/concepts/_index]] (added 1 new row, updated fastapi-response-model-silent-field-strip date); [[wiki/_master-index]] (count already at 169 from prior sync)
- Note: Session 12:09 — Vue 3 + FastAPI + Planka + Azure DevOps integration; `tags` surfaced via ORM `@property` from `fields_json` without DB migration; Vue template crashed with TypeError on null list field requiring both schema fix and `?.` optional chaining
## [2026-05-10T21:00:00+01:00] compile | daily/2026-05-06.md
- Source: daily/2026-05-06.md
- Articles created: (none — all concepts already compiled in prior runs)
- Articles updated: [[wiki/client-knowledge/baic]] (deployment operational details: service underscore naming, deploy.sh setup-only caveat, rsync path, benign "failed to set times" warning, stale Vite hash accumulation)
- Index updates: none (wiki indexes already accurate per compiler instruction)
- Note: Sessions covered BAIC Dashboard bugs — Pinia storeToRefs array reactivity, Vue auth race condition, FastAPI root_path route stripping, Apache mod_alias vs mod_proxy conflict, SSE JWT query param, SPA index.html cache-control, security middleware word boundary regex, MS SSO non-UUID IDs, workflow approve dispatch completeness, TypeScript literal union compile-time removal
## [2026-05-08T23:59:00+01:00] compile | daily/2026-05-08.md
- Source: daily/2026-05-08.md
- Articles created: [[wiki/concepts/macos-windows-usb-wimlib]], [[wiki/concepts/rspamd-mailcow-whitelist]], [[wiki/concepts/apple-mail-trust-junk-headers]], [[wiki/concepts/dovecot-expunge-irreversible]], [[wiki/concepts/apple-silicon-usb-passthrough]]
- Articles updated: (none)
- Index updates: [[wiki/concepts/_index]] (134→139, added 5 new rows); [[wiki/_master-index]] (concepts 134→139)
- Note: Sessions covered Windows 11 USB creation on macOS (install.wim FAT32 limit → wimlib split), Mailcow email delivery incident (rspamd SBL+BAYES → Apple Mail auto-delete → bookkeeper-agent expunge → permanent loss of axilaccountants.co.uk emails), Kingston USB read-only lock after dd on Apple Silicon, UTM vs OrbStack USB passthrough
## [2026-05-08T00:00:00+01:00] compile | daily/2026-05-07.md
- Source: daily/2026-05-07.md
- Articles created: [[wiki/concepts/macos-cron-sleep-missed-jobs]], [[wiki/concepts/macos-launchd-catchup-cron-replacement]]
- Articles updated: (none)
- Index updates: [[wiki/concepts/_index]] (132→134, added 2 new rows); [[wiki/_master-index]] (concepts 132→134)
- Note: Sessions covered diagnosing Forgejo sync script missed cron runs (Mac asleep at 10:00 Mon/Thu) and migrating to launchd with RunCatchUpIfMissed; also removed sync_devops_to_clickup.py cron job
## [2026-05-08T00:01:00+01:00] compile | daily/2026-05-07.md (addendum)
- Source: daily/2026-05-07.md
- Articles created: [[wiki/concepts/macos-full-disk-access-external-volume]]
- Articles updated: (none)
- Index updates: [[wiki/concepts/_index]] (146→147, added 1 new row); [[wiki/_master-index]] (concepts 139→147, also corrected prior drift)
- Note: FDA concept missed in initial compile — macOS Full Disk Access must be granted to Terminal/Claude Code AND app restarted to read /Volumes/SSD/ paths
## [2026-05-08T22:00:00+01:00] compile | daily/2026-05-03.md
- Source: daily/2026-05-03.md
- Articles created: [[wiki/concepts/docker-lxc-gpu-device-node-mismatch]], [[wiki/concepts/qbittorrent-slow-speed-checklist]], [[wiki/concepts/docker-bridge-subnet-whitelist]], [[wiki/concepts/jellyfin-client-bitrate-limit]], [[wiki/concepts/proxmox-lxc-disk-fstrim]]
- Articles updated: (none)
## [2026-05-08T23:45:00+01:00] compile | 2026-05-05.md
- Source: daily/2026-05-05.md
- Articles created: (none)
- Articles updated: (none)
- Note: Daily log was empty (FLUSH_OK only — no session content captured)
## [2026-05-08T23:30:00+01:00] compile | 2026-05-03.md
- Source: daily/2026-05-03.md
- Articles created: [[wiki/concepts/gpu-device-node-lxc-docker]], [[wiki/concepts/qbittorrent-proxy-profile-blocking]], [[wiki/concepts/docker-bridge-network-whitelist]], [[wiki/concepts/proxmox-lxc-disk-trim]], [[wiki/concepts/jellyfin-client-bitrate-limit]], [[wiki/concepts/jellyfin-library-path-mismatch]]
- Articles updated: [[wiki/concepts/authentik-homelab-tradeoffs]] (added OIDC cleanup section — apps using Authentik OIDC need manual cleanup after removal)
- Index updates: [[wiki/concepts/_index]] (122→128, added 6 new rows); [[wiki/_master-index]] (concepts 122→128)
- Note: Items 3 (dual AdGuard), 9 (OIDC cleanup), 10 (Glance Habr URLs) handled as updates/notes; 6 standalone concept articles created for the primary debugging patterns
## [2026-05-08T22:30:00+01:00] compile | 2026-05-01.md (re-verify)
- Source: daily/2026-05-01.md
- Articles already existed from prior compile: [[wiki/concepts/documenso-vs-libresign-esignature]], [[wiki/concepts/paperless-ngx-docker-exec-permission-bug]], [[wiki/concepts/paperless-ngx-mail-rule-attachment-only]]
- No new articles or updates needed — all content fully captured
- Index fix: sonarr-custom-formats-quality-profile (broken slug) corrected to sonarr-custom-format-quality-profile in concepts/_index.md
- Index updated: concepts count corrected 117→122 in _master-index.md
## [2026-05-08T22:00:00+01:00] compile | 2026-04-30.md (sessions 10:2211:48)
- Source: daily/2026-04-30.md
- Articles already existed from prior compile: [[wiki/concepts/jellyseerr-setup-wizard-sqlite]], [[wiki/concepts/ssh-agent-passphrase-key]], [[wiki/concepts/linux-cpu-frequency-fan-noise]]
- Duplicates removed: jellyseerr-setup-configuration.md, ssh-agent-passphrase-keys.md, cpu-frequency-throttling-fan-noise.md (created by stale sub-agent in previous context window)
- Index updated: concepts count corrected 120→117
## [2026-05-08T21:56:26+01:00] compile | 2026-05-01.md
- Source: daily/2026-05-01.md
- Articles created: [[wiki/concepts/paperless-ngx-docker-exec-permission-bug]], [[wiki/concepts/paperless-ngx-mail-rule-attachment-only]], [[wiki/concepts/documenso-vs-libresign-esignature]]
- Articles updated: (none)
## [2026-05-08T21:00:00+01:00] compile | 2026-04-30.md (sessions 10:48, 11:45, 17:17)
- Source: daily/2026-04-30.md
- Articles created: [[wiki/concepts/jellyseerr-setup-configuration]], [[wiki/concepts/ssh-agent-passphrase-keys]], [[wiki/concepts/cpu-frequency-throttling-fan-noise]]
- Articles updated: (none)
## [2026-05-08T21:00:00+01:00] compile | daily/2026-04-30.md
- Source: daily/2026-04-30.md
- Articles created: [[wiki/concepts/vaultwarden-master-password-encryption]], [[wiki/concepts/jellyseerr-setup-wizard-sqlite]], [[wiki/concepts/ssh-agent-passphrase-key]], [[wiki/concepts/linux-cpu-frequency-fan-noise]]
- Articles updated: (none)
## [2026-05-08T22:00:00+01:00] compile | 2026-04-29.md (supplement)
- Source: daily/2026-04-29.md
- Articles created: [[wiki/concepts/prowlarr-flaresolverr-get-only]], [[wiki/concepts/npm-sqlite-admin-reset]], [[wiki/concepts/glance-dashboard]], [[wiki/concepts/sonarr-custom-format-quality-profile]]
- Articles updated: [[wiki/concepts/prowlarr-flaresolverr-limitation]] (added link to new prowlarr-flaresolverr-get-only article)
- Index updates: [[wiki/concepts/_index]] (111→113, added prowlarr-flaresolverr-get-only and npm-sqlite-admin-reset rows); [[wiki/_master-index]] (concepts 111→113)
## [2026-05-08T21:00:00+01:00] compile | 2026-04-29.md
- Source: daily/2026-04-29.md
- Articles created: [[wiki/concepts/glance-dashboard-config]], [[wiki/concepts/sonarr-custom-formats-quality-profile]]
- Articles updated: [[wiki/concepts/prowlarr-flaresolverr-limitation]] (added DoLogin bypass + SQLite cookie injection for RuTracker)
## [2026-05-06T22:00:00+01:00] compile | 2026-05-06.md (supplement)
- Articles updated: [[wiki/client-knowledge/baic]] (BAIC deploy pattern: rsync only, baic_dashboard.service, deploy.sh is setup-only)
- Note: concepts/connections from earlier compile already captured fastapi-root-path-route-stripping, sse-jwt-query-param, spa-index-html-cache-control, microsoft-sso-non-uuid-ids, memory-compiler-lesson-signal, pinia-storeftorefs-array-reactivity
## [2026-05-06T23:00:00+01:00] compile | Daily Log 2026-05-06
- Source: daily/2026-05-06.md
- Articles created: [[wiki/concepts/pinia-storeftorefs-array-reactivity]]
- Articles updated: [[wiki/client-knowledge/baic]] (deploy pattern, service name, Per-User Report)
## [2026-05-06T21:30:00] compile | 2026-05-06.md (pass 2)
- Articles created: [[wiki/concepts/memory-compiler-lesson-signal]], [[wiki/tech-patterns/public-share-link-review]]
- Articles updated: [[wiki/client-knowledge/baic]] (added Deploy Gotchas section: no .env, rsync warning benign, deploy.sh initial-setup-only, assets accumulation)
## [2026-05-06T21:00:00+01:00] compile | 2026-05-06.md
- Source: daily/2026-05-06.md
- Articles created: [[wiki/concepts/fastapi-root-path-route-stripping]], [[wiki/concepts/sse-jwt-query-param]], [[wiki/concepts/spa-index-html-cache-control]], [[wiki/concepts/microsoft-sso-non-uuid-ids]], [[wiki/client-knowledge/baic]]
- Articles updated: [[wiki/concepts/security-middleware-json-key-regex]] (added command injection `\b` word boundary section with false-positive table for `sh`, `rm`, `nc`); [[wiki/concepts/apache-mod-alias-proxy-priority]] (added Fix 3: ProxyPassMatch stripping pattern for FastAPI-behind-prefix)
- Index updates: [[wiki/concepts/_index]] (123→127); [[wiki/client-knowledge/_index]] (6→7, BAIC added to table); [[wiki/_master-index]] (concepts 103→127, client-knowledge 6→7)
## [2026-05-05T21:00:00+01:00] compile | 2026-05-05.md (pass 2)
- Source: daily/2026-05-05.md
- Articles created: [[wiki/concepts/icloud-space-2-duplicate-files]], [[wiki/concepts/one2edit-username-format]], [[wiki/concepts/sqlite-not-null-as-boolean]]
- Articles updated: [[wiki/tech-patterns/one2edit-api]] (added Users API section + username=email gotcha); [[wiki/client-knowledge/3m]] (added One2Edit user identity note)
## [2026-05-05T23:59:00+01:00] compile | 2026-05-05.md
- Source: daily/2026-05-05.md
- Articles created: [[wiki/concepts/vite-prebuilt-subpath-workaround]], [[wiki/concepts/llamaextract-data-none-gotcha]]
- Articles updated: [[wiki/client-knowledge/loreal]] (added loreal-timelog-viewer project row; added `<base href>` subpath workaround quirk)
## [2026-05-05T12:00:00+01:00] compile | 2026-05-01.md
- Articles created: [[wiki/concepts/docker-compose-restart-no-code-reload]], [[wiki/concepts/mongodb-unwind-preservenullandemptyarrays]], [[wiki/concepts/fastapi-response-model-silent-field-strip]], [[wiki/concepts/react-useref-event-handler-state]]
- Articles updated: [[wiki/concepts/native-track-blob-url]]
## [2026-04-30T23:59:00+01:00] compile | 2026-04-30.md (pass 3)
- Source: daily/2026-04-30.md
- Articles created: [[wiki/concepts/react-query-enabled-falsy-value]], [[wiki/concepts/mongodb-cross-collection-id-confusion]], [[wiki/concepts/browser-sequential-download-blocking]], [[wiki/concepts/mongodb-schema-validator-migration-verification]]
- Articles updated: [[wiki/concepts/celery-prefork-pool-startup-memory]] (added Real Incident section: CONCURRENCY=20, ~120 MB/process, 2.4 GB total, OOM before first task, 15-minute stall)
- Index updates: [[wiki/concepts/_index]] (89→93); [[wiki/_master-index]] (concepts 89→93)
## [2026-04-30T23:30:00+01:00] compile | 2026-04-30.md (pass 2)
- Source: daily/2026-04-30.md
- Articles created: [[wiki/concepts/celery-prefork-pool-startup-memory]], [[wiki/concepts/sudo-git-clone-root-ownership]], [[wiki/concepts/python-fastapi-module-level-singletons]], [[wiki/connections/celery-prefork-faster-whisper-memory-stacking]]
- Articles updated: (none)
- Index updates: [[wiki/concepts/_index]] (86→89); [[wiki/connections/_index]] (9→10); [[wiki/_master-index]] (concepts 86→89, connections 9→10)
## [2026-04-30T21:00:00+01:00] compile | 2026-04-30.md
- Source: daily/2026-04-30.md
- Articles created: [[wiki/concepts/pydub-ffmpeg-silent-dependency]], [[wiki/concepts/lameenc-bytearray-gcs-upload]], [[wiki/concepts/apache-mod-alias-proxy-priority]], [[wiki/concepts/faster-whisper-startup-memory]], [[wiki/concepts/celery-redis-queue-flush-on-deterministic-error]], [[wiki/concepts/cline-lm-studio-openai-compatible]], [[wiki/concepts/celery-queue-worker-specialization]], [[wiki/concepts/gcs-resumable-upload-pattern]]
- Articles updated: [[wiki/concepts/apache-proxypass-include-files-ignored]] (added missing Include silently stops processing section), [[wiki/concepts/docker-compose-cpu-limits-env]] (added memory reservation > limit error across override files), [[wiki/architecture/troubleshooting-playbooks]] (added sudo git clone root-owned files playbook)
- Index updates: [[wiki/concepts/_index]] (75→83); [[wiki/_master-index]] (concepts 75→83)
<!-- Append-only chronological record of compile, query, and lint operations -->
## [2026-04-29T22:00:00+01:00] compile | 2026-04-29.md (pass 2)
- Source: daily/2026-04-29.md
- Articles created: [[wiki/architecture/cloud-run-jobs-celery]], [[wiki/concepts/docker-compose-cpu-limits-env]], [[wiki/concepts/etag-optimistic-locking]], [[wiki/concepts/double-submit-cookie-csrf]], [[wiki/concepts/time-sleep-blocks-asyncio]]
- Articles updated: [[wiki/client-knowledge/ford]] (added SSH alias callout, QC server directory confusion table, GPAS zip naming change)
- Index updates: [[wiki/concepts/_index]] (69→73); [[wiki/architecture/_index]] (10→11); [[wiki/_master-index]] (concepts 69→73, architecture 10→11)
## [2026-04-29T21:00:00+01:00] compile | 2026-04-29.md
- Source: daily/2026-04-29.md
- Articles created: [[wiki/concepts/poetry-docker-version-mismatch]], [[wiki/concepts/pydantic-default-factory-type-alias]], [[wiki/concepts/security-middleware-json-key-regex]], [[wiki/concepts/multitenant-fail-open-authz]], [[wiki/concepts/gemini-embedding-api-channel]], [[wiki/concepts/native-track-blob-url]], [[wiki/concepts/claude-code-plugin-marketplace]]
- Articles updated: [[wiki/client-knowledge/ford]] (added Ford QC server path confusion, BnP WERS allowlist pattern, service real working directory discovery); [[wiki/tech-patterns/redis-celery-worker-queue]] (added AI queue separation pattern — dedicated ai-queue for ingest/translate/render tasks)
- Index updates: [[wiki/concepts/_index]] (62→69); [[wiki/_master-index]] (concepts 62→69)
## [2026-04-29T21:00:00+01:00] compile | 2026-04-28.md (pass 3)
- Source: daily/2026-04-28.md
- Articles created: [[wiki/concepts/localstorage-key-migration-rebrand]]
- Articles updated: [[wiki/client-knowledge/barclays]] (added Banner Builder UI rebrand section: Oliver Modcomms design system, vertical sidebar, theme picker, localStorage key intentionally kept)
## [2026-04-28T23:15:00+01:00] compile | 2026-04-28.md (pass 2)
- Source: daily/2026-04-28.md
- Articles created: (none — all primary knowledge captured in pass 1)
- Articles updated: [[wiki/concepts/jellyfin-tmdb-thetvdb-plugin]] (added Sonarr root folder path gotcha and Jellyfin naming flexibility note)
## [2026-04-28T22:30:00+01:00] compile | 2026-04-28.md
- Source: daily/2026-04-28.md
- Articles created: [[wiki/concepts/jellyfin-tmdb-thetvdb-plugin]], [[wiki/concepts/azure-ad-yaml-allowlist-pattern]], [[wiki/concepts/zustand-async-hydration]], [[wiki/concepts/pydantic-model-dict-interface]]
- Articles updated: [[wiki/concepts/prowlarr-flaresolverr-limitation]] (added trailing slash bug, SQLite direct edit workaround, Docker Cloudflare TLS fingerprint detection section), [[wiki/client-knowledge/barclays]] (added "Lessons from banner-builder" section: DB seed silent skip, Zustand hydration bug, Pydantic/dict interface bug, LoginPage hardcoded redirect)
## [2026-04-28T22:30:00+01:00] compile | 2026-04-27.md
- Source: daily/2026-04-27.md
- Articles created: [[wiki/concepts/asyncio-contextvar-task-boundary]], [[wiki/concepts/pydantic-v2-alias-id-gotcha]], [[wiki/concepts/php-display-errors-json-leak]]
- Articles updated: [[wiki/concepts/litellm-pricing-source]] (added Gemini vertex_ai-language-models provider key gotcha)
## [2026-04-14T00:00:00] init | Knowledge Base Initialized
- System set up from coleam00/claude-memory-compiler
- Based on Karpathy's LLM Wiki architecture
- Hooks: SessionStart (inject), PreCompact (safety net), SessionEnd (capture)
## [2026-04-15T00:00:00] migrate | Knowledge Base Moved to Obsidian Vault
- KNOWLEDGE_DIR relocated from ~/.claude/memory-compiler/knowledge/ to <vault>/wiki/
- All three hooks promoted to global (fire from any project directory)
- Compile time set to 21:00 (9 PM) BST
## [2026-04-18T22:10:00+01:00] compile | 2026-04-17.md
- Source: daily/2026-04-17.md
- Articles created: [[wiki/concepts/openai-max-completion-tokens]], [[wiki/concepts/fish-abbr-patterns]], [[wiki/concepts/bitbucket-mcp-atlassian]]
- Articles updated: (none)
## [2026-04-18T23:00:00+01:00] compile | 2026-04-18.md
- Source: daily/2026-04-18.md
- Articles created: [[wiki/concepts/proxmox-mcp-server]], [[wiki/concepts/proxmox-vm-management-methods]]
- Articles updated: (none)
## [2026-04-18T21:53:15+01:00] compile | 2026-04-16.md
- Source: daily/2026-04-16.md
- Articles created: [[wiki/concepts/microsoft-graph-api-mailbox-migration]], [[wiki/concepts/mailcow-maildir-import]], [[wiki/concepts/fastapi-mongodb-role-migration]], [[wiki/concepts/monorepo-deploy-script-pitfall]], [[wiki/concepts/nextjs-basepath-auth-redirects]], [[wiki/concepts/python-service-deployment-dotenv]], [[wiki/connections/graph-api-vs-msal-app-vs-delegated]]
- Articles updated: [[wiki/dotfiles/wezterm-config]] (added Personal Setup section — Catppuccin Mocha, FiraCode, WebGpu, leader key)
## [2026-04-24T10:52:44+01:00] compile | 2026-04-19.md
- Source: daily/2026-04-19.md
- Articles created: [[wiki/concepts/home-assistant-proxmox-install]], [[wiki/concepts/homepage-proxmox-widget-quirks]], [[wiki/concepts/lxc-arp-cache-api-failures]], [[wiki/concepts/nodejs-ssl-system-trust-store]], [[wiki/concepts/tailscale-dns-homelab]], [[wiki/concepts/remote-server-dotfiles-bootstrap]], [[wiki/concepts/homarr-proxmox-integration]], [[wiki/connections/lxc-networking-api-failures]]
- Articles updated: [[wiki/concepts/_index]] (indexed 7 previously-unindexed articles from 2026-04-19), [[wiki/connections/_index]] (added lxc-networking-api-failures), [[wiki/_master-index]] (concepts 15→23, connections 2→3)
## [2026-04-24T11:10:00+01:00] compile | 2026-04-20.md
- Source: daily/2026-04-20.md
- Articles created: [[wiki/concepts/export-endpoint-filter-pattern]]
- Articles updated: [[wiki/concepts/_index]] (concepts count 23→24), [[wiki/_master-index]] (concepts 23→24)
## [2026-04-24T11:30:00+01:00] compile | 2026-04-21.md
- Source: daily/2026-04-21.md
- Articles created: [[wiki/concepts/ollama-lxc-ram-requirements]], [[wiki/concepts/beszel-monitoring-deployment]], [[wiki/concepts/adguard-dns-rewrites-homelab]], [[wiki/concepts/prometheus-joules-watts-gotcha]], [[wiki/concepts/old-gpu-sysfs-metrics]], [[wiki/concepts/chartjs-time-axis-adapter]], [[wiki/concepts/uptime-kuma-socketio-management]], [[wiki/concepts/proxmox-container-502-misdiagnosis]]
- Articles updated: [[wiki/concepts/_index]] (concepts 24→32), [[wiki/_master-index]] (concepts 24→32)
## [2026-04-24T11:45:00+01:00] compile | 2026-04-22.md
- Source: daily/2026-04-22.md
- Articles created: (none)
- Articles updated: (none)
- Note: Log contained only flush errors (exit code 1) — no session content to compile
## [2026-04-24T12:00:00+01:00] compile | 2026-04-23.md
- Source: daily/2026-04-23.md
- Articles created: [[wiki/concepts/git-includeif-per-remote]], [[wiki/concepts/dns-youtube-ad-blocking]], [[wiki/concepts/adguard-blocklist-setup]]
- Articles updated: [[wiki/concepts/_index]] (concepts 32→35), [[wiki/_master-index]] (concepts 32→35)
- Note: Grafana LXC CT109 permanently deleted — noted in session but no article changes needed (beszel article still reflects correct architecture)
## [2026-04-24T13:00:00+01:00] compile | 2026-04-24.md
- Source: daily/2026-04-24.md
- Articles created: [[wiki/concepts/claude-code-schedule-skill-account-type]], [[wiki/concepts/memory-compiler-mac-migration]]
- Articles updated: [[wiki/concepts/_index]] (concepts 35→37), [[wiki/_master-index]] (concepts 35→37)
## [2026-04-25T21:18:46+01:00] compile | 2026-04-20.md (re-run)
- Source: daily/2026-04-20.md
- Articles created: (none — already compiled 2026-04-24)
- Articles updated: (none)
- Note: Log contained only commit confirmation (3d2893a) and a failed push attempt; all content was captured in [[wiki/concepts/export-endpoint-filter-pattern]] on prior compile
## [2026-04-25T21:19:34+01:00] compile | 2026-04-21.md (re-run)
- Source: daily/2026-04-21.md
- Articles created: none - already compiled
- Articles updated: none
- Note: All 8 articles verified present on disk (proxmox-container-502-misdiagnosis, ollama-lxc-ram-requirements, beszel-monitoring-deployment, adguard-dns-rewrites-homelab, prometheus-joules-watts-gotcha, old-gpu-sysfs-metrics, chartjs-time-axis-adapter, uptime-kuma-socketio-management); originally compiled 2026-04-24
## [2026-04-25T21:25:00+01:00] compile | 2026-04-22.md (re-compile with content)
- Source: daily/2026-04-22.md
- Articles created: [[wiki/concepts/fish-fisher-conf-d-conflict]], [[wiki/concepts/macos-python-version-hooks]]
- Articles updated: [[wiki/concepts/memory-compiler-mac-migration]] (added Python 3.9 issue, Fisher conf.d conflict, time_tracker.py fix, rsync stats); [[wiki/concepts/_index]] (concepts 37→39); [[wiki/_master-index]] (concepts 37→39)
- Note: Prior compile 2026-04-24 had no content (flush errors only); this re-compile used the actual session log captured in the session-start context
## [2026-04-25T21:23:03+01:00] compile | 2026-04-24.md (Immich/systemd/autostart)
- Source: daily/2026-04-24.md
- Articles created: [[wiki/concepts/immich-lxc-ram-oom]], [[wiki/concepts/systemd-memory-oom-policy]], [[wiki/concepts/proxmox-lxc-autostart]]
- Articles updated: [[wiki/concepts/_index]] (concepts 39→42), [[wiki/_master-index]] (concepts 39→42)
## [2026-04-17T16:03:42+01:00] compile | 2026-04-15.md
- Source: daily/2026-04-15.md
- Articles created: [[wiki/concepts/librechat-openid-auth]], [[wiki/concepts/msal-vanilla-js-pkce]], [[wiki/concepts/shell-static-deploy-patterns]], [[wiki/concepts/fish-shell-path-config]], [[wiki/connections/oauth-state-mismatch-debugging]]
- Articles updated: [[wiki/tech-patterns/azure-ad-msal-auth]] (added SPA platform type gotcha, OAuth state mismatch gotcha, daily/2026-04-15.md source)
## [2026-04-25T21:25:48+01:00] compile | 2026-04-25.md
- Source: daily/2026-04-25.md
- Articles created: (none)
- Articles updated: (none)
- Note: No sessions in daily log; memory flush returned FLUSH_OK
## [2026-04-26T21:28:00+01:00] compile | 2026-04-26.md
- Source: daily/2026-04-26.md
- Articles created: (none)
- Articles updated: (none)
- Note: No sessions in daily log; memory flush failed with FLUSH_ERROR (exit code 1) — no knowledge to extract
## [2026-04-28T21:46:04+01:00] compile | 2026-04-27.md
- Source: daily/2026-04-27.md
- Articles created: [[wiki/concepts/authentik-homelab-tradeoffs]], [[wiki/concepts/icloud-git-sync-conflict]]
- Articles updated: [[wiki/concepts/_index]] (concepts 45→47), [[wiki/_master-index]] (concepts 45→47)
## [2026-04-28T22:00:00+01:00] compile | 2026-04-28.md
- Source: daily/2026-04-28.md
- Articles created: [[wiki/concepts/homarr-sqlite-integration-cleanup]], [[wiki/concepts/docker-lxc-dns-configuration]], [[wiki/concepts/mac-address-randomization-dhcp]], [[wiki/concepts/prowlarr-flaresolverr-limitation]], [[wiki/connections/docker-dns-adguard-split-horizon]]
- Articles updated: [[wiki/concepts/adguard-blocklist-setup]] (added OOM risk section: exit code 137, RAM recommendations, fix); [[wiki/concepts/_index]] (concepts 47→51); [[wiki/connections/_index]] (connections 8→9); [[wiki/_master-index]] (concepts 47→51, connections 8→9)
## [2026-04-28T22:11:43+01:00] compile | 2026-04-24.md
- Source: daily/2026-04-24.md
- Articles created: [[wiki/concepts/bash-and-or-short-circuit]], [[wiki/concepts/python-iso-z-suffix]], [[wiki/concepts/gemini-conversation-cost-scaling]]
- Articles updated: [[wiki/concepts/_index]] (concepts 51→54); [[wiki/_master-index]] (concepts 51→54)
- Note: Kling tech-pattern article already up-to-date from prior session; dotfiles Ghostty gotchas deferred (low reuse value vs 3 broadly applicable concepts)
## [2026-04-29T23:00:00+01:00] compile | 2026-04-29.md (pass 2)
- Source: daily/2026-04-29.md
- Articles created: [[wiki/architecture/cloud-run-jobs-celery]], [[wiki/concepts/docker-compose-cpu-limits-env]], [[wiki/concepts/etag-optimistic-locking]], [[wiki/concepts/double-submit-cookie-csrf]], [[wiki/concepts/time-sleep-blocks-asyncio]]
- Articles updated: [[wiki/client-knowledge/ford]] (SSH alias box-cli/not box-cli-01, full directory paths with /home/box-cli/FORD_SCRIPTS/ prefix, service names dev vs prod, GPAS zip naming, git stash deploy pattern, ford-gechub-sftp path)
- Index updates: [[wiki/concepts/_index]] (69→73); [[wiki/architecture/_index]] (10→11); [[wiki/_master-index]] (concepts 69→73, architecture 10→11)
## [2026-04-30T21:00:00+01:00] compile | 2026-04-29.md (pass 3)
- Source: daily/2026-04-29.md
- Articles created: [[wiki/concepts/mongodb-enum-deserialization]], [[wiki/concepts/websocket-react-token-guard]], [[wiki/concepts/docker-builder-prune-safe]]
- Articles updated: (none — ford.md already current from prior passes)
- Index updates: [[wiki/concepts/_index]] (75→78)
## [2026-04-29T23:00:00+01:00] compile | 2026-04-29.md
- Articles created: [[wiki/concepts/apache-proxypass-include-files-ignored]], [[wiki/concepts/cookie-domain-migration-auth-loop]]
- Articles updated: [[wiki/client-knowledge/ford]] (service path, GPAS naming, SSH alias), [[wiki/architecture/cloud-run-jobs-celery]] (USE_CELERY_FALLBACK, optical-dev override), [[wiki/architecture/optical-dev-server-deploy]] (ProxyPass include limitation)
- Index updates: [[wiki/concepts/_index]] (73→75); [[wiki/_master-index]] (concepts 73→75)
## [2026-05-10T21:00:00+03:00] compile | 2026-05-10.md
- Source: daily/2026-05-10.md
- Sessions: kvytky/shumiland Next.js+Payload CMS, banner-tool
- Articles created: [[wiki/concepts/payload-cms-root-layout-requirement]], [[wiki/concepts/payload-cms-node26-esm-workaround]], [[wiki/concepts/overflow-hidden-clips-absolute-children]], [[wiki/concepts/pydantic-exclude-none-null-clearing-conflict]], [[wiki/concepts/css-marquee-animation-gpu-pattern]], [[wiki/concepts/css-animation-js-scroll-conflict]], [[wiki/concepts/nextjs16-lint-command-removed]], [[wiki/concepts/figma-mcp-oauth-reconnect-restart]], [[wiki/concepts/react-state-playwright-css-hover]]
- Index updates: [[wiki/concepts/_index]] (187→196); [[wiki/_master-index]] (concepts 187→196)