managarten/devlog/2026-04-03/data.json
Till JS ad776c1a1c
Some checks are pending
CI / Build mana-api-gateway (push) Blocked by required conditions
CI / Build mana-crawler (push) Blocked by required conditions
CD Mac Mini / Detect Changes (push) Waiting to run
CD Mac Mini / Deploy (push) Blocked by required conditions
CI / Detect Changes (push) Waiting to run
CI / Validate (push) Waiting to run
CI / Build mana-search (push) Blocked by required conditions
CI / Build mana-sync (push) Blocked by required conditions
Mirror to Forgejo / Push to Forgejo (push) Waiting to run
devlog: 107 Tage backfilled (2025-11-22 → 2026-05-15)
Vollständige Bau-Geschichte des Monorepos in der Tages-Devlog-
Konvention (mana/docs/DEVLOG.md). Bodies sind heuristik-
generiert aus den Commit-Subjects pro Tag (Lead-Satz +
Highlights/Commit-Bullets, kein LLM-Pfad). Tage mit hand-
curate-Bedarf können nachträglich überarbeitet werden — der
Auto-Stub-Marker ist weg, die Bodies sind editierbar.

321 Files (data.json + spieler.md + macher.md pro Tag).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-15 22:24:29 +02:00

764 lines
19 KiB
JSON

{
"date": "2026-04-03",
"day_number": 73,
"weekday": "Freitag",
"commits": 74,
"authors": [
{
"name": "Till JS",
"count": 74
}
],
"additions": 16622,
"deletions": 248970,
"net_lines": -232348,
"files_changed": 2443,
"new_files": 0,
"deleted_files": 0,
"session": {
"first_commit_at": "2026-04-03T09:36:26.000Z",
"last_commit_at": "2026-04-03T19:39:31.000Z",
"total_span_minutes": 603,
"active_minutes": 345,
"pauses": [
{
"from": "15:23",
"to": "16:06",
"minutes": 43
},
{
"from": "17:03",
"to": "20:04",
"minutes": 180
},
{
"from": "20:04",
"to": "20:38",
"minutes": 35
}
],
"longest_focus_minutes": 227
},
"top_dirs": [
{
"path": "apps/manacore/apps/web",
"pct": 11
},
{
"path": "apps/memoro/apps/web-archived",
"pct": 7
},
{
"path": "apps/calendar/apps/web-archived",
"pct": 6
},
{
"path": "apps/todo/apps/web-archived",
"pct": 5
},
{
"path": "apps/contacts/apps/web-archived",
"pct": 5
}
],
"top_extensions": [
{
"ext": ".svelte",
"count": 1071
},
{
"ext": ".ts",
"count": 1024
},
{
"ext": ".json",
"count": 197
},
{
"ext": ".js",
"count": 35
},
{
"ext": ".png",
"count": 34
},
{
"ext": ".css",
"count": 30
}
],
"tags": ["manacore/web", "ui", "docker", "infra", "mana-notify"],
"commits_list": [
{
"hash": "794424d",
"short": "fix(ui): open all AppDrawer apps in new tab",
"type": "fix",
"scope": "ui",
"additions": 2,
"deletions": 18,
"timestamp": "2026-04-03T11:36:26+02:00"
},
{
"hash": "019f3eb",
"short": "feat(manacore/web): show tags in detail views with click-to-remove",
"type": "feat",
"scope": "manacore/web",
"additions": 215,
"deletions": 2,
"timestamp": "2026-04-03T11:37:41+02:00"
},
{
"hash": "f7ee9ea",
"short": "fix(branding): rename ManaContacts to Kontakte",
"type": "fix",
"scope": "branding",
"additions": 3,
"deletions": 3,
"timestamp": "2026-04-03T11:38:53+02:00"
},
{
"hash": "9966e9e",
"short": "fix(ui): remove Observatory, API Keys, Gifts from PillNav",
"type": "fix",
"scope": "ui",
"additions": 0,
"deletions": 3,
"timestamp": "2026-04-03T11:40:32+02:00"
},
{
"hash": "c5906e4",
"short": "fix: update all dev scripts to use unified API server",
"type": null,
"scope": null,
"additions": 49,
"deletions": 70,
"timestamp": "2026-04-03T11:51:46+02:00"
},
{
"hash": "1245fdc",
"short": "feat(manacore/web): enhance Times & Zitare pages, add DetailViews, clean up homepage",
"type": "feat",
"scope": "manacore/web",
"additions": 981,
"deletions": 127,
"timestamp": "2026-04-03T11:52:27+02:00"
},
{
"hash": "2bd8f0b",
"short": "fix: change unified API default port from 3050 to 3060",
"type": null,
"scope": null,
"additions": 1,
"deletions": 1,
"timestamp": "2026-04-03T11:54:07+02:00"
},
{
"hash": "c21793b",
"short": "fix: resolve all 40 Svelte dev warnings for clean startup",
"type": null,
"scope": null,
"additions": 55,
"deletions": 133,
"timestamp": "2026-04-03T12:01:17+02:00"
},
{
"hash": "81d5e83",
"short": "fix: revert @const to svelte:component (invalid placement in div)",
"type": null,
"scope": null,
"additions": 3,
"deletions": 5,
"timestamp": "2026-04-03T12:04:18+02:00"
},
{
"hash": "9534d29",
"short": "fix: revert client sync from per-app SSE to HTTP polling",
"type": null,
"scope": null,
"additions": 14,
"deletions": 17,
"timestamp": "2026-04-03T12:31:53+02:00"
},
{
"hash": "d368bd3",
"short": "fix: replace bind:clientHeight with calculated bottom chrome height",
"type": null,
"scope": null,
"additions": 5,
"deletions": 14,
"timestamp": "2026-04-03T12:34:42+02:00"
},
{
"hash": "f0d5ba2",
"short": "fix: allow localhost in CSP connect-src during development",
"type": null,
"scope": null,
"additions": 3,
"deletions": 0,
"timestamp": "2026-04-03T12:37:13+02:00"
},
{
"hash": "d735918",
"short": "fix: move bottomChromeHeight after isTagStripVisible declaration",
"type": null,
"scope": null,
"additions": 3,
"deletions": 2,
"timestamp": "2026-04-03T12:39:14+02:00"
},
{
"hash": "7ee57b7",
"short": "feat(manacore/web): add entity descriptor system with cross-module drag-and-drop",
"type": "feat",
"scope": "manacore/web",
"additions": 450,
"deletions": 4,
"timestamp": "2026-04-03T12:42:38+02:00"
},
{
"hash": "d8ce4ea",
"short": "refactor: consolidate codebase — remove archived code, deduplicate packages, standardize middleware",
"type": null,
"scope": null,
"additions": 172,
"deletions": 21667,
"timestamp": "2026-04-03T12:55:58+02:00"
},
{
"hash": "e1077e2",
"short": "fix(manacore/web): fix entity registration hang + registry type errors",
"type": "fix",
"scope": "manacore/web",
"additions": 25,
"deletions": 10,
"timestamp": "2026-04-03T12:57:59+02:00"
},
{
"hash": "6ced238",
"short": "chore: delete 25 web-archived directories, remove stale stubs, clean workspace config",
"type": null,
"scope": null,
"additions": 41,
"deletions": 223288,
"timestamp": "2026-04-03T13:03:49+02:00"
},
{
"hash": "f819b24",
"short": "fix: revert guestMode $state() — caused effect_update_depth_exceeded",
"type": null,
"scope": null,
"additions": 0,
"deletions": 19,
"timestamp": "2026-04-03T13:10:21+02:00"
},
{
"hash": "1bd001e",
"short": "fix(manacore/web): restrict page drag to handle only, allow item DnD",
"type": "fix",
"scope": "manacore/web",
"additions": 7,
"deletions": 2,
"timestamp": "2026-04-03T13:11:58+02:00"
},
{
"hash": "9b8814e",
"short": "fix(ui): make homepage PageCarousel full-width (no side padding)",
"type": "fix",
"scope": "ui",
"additions": 17,
"deletions": 0,
"timestamp": "2026-04-03T13:14:08+02:00"
},
{
"hash": "a15b027",
"short": "fix(shared-ui): block click event after drag to prevent detail view opening",
"type": "fix",
"scope": "shared-ui",
"additions": 9,
"deletions": 0,
"timestamp": "2026-04-03T13:15:53+02:00"
},
{
"hash": "ec7c563",
"short": "fix: remove stale references to deleted packages (shared-auth-stores, shared-profile-ui, shared-app-onboarding)",
"type": null,
"scope": null,
"additions": 10,
"deletions": 18,
"timestamp": "2026-04-03T13:15:58+02:00"
},
{
"hash": "cf03743",
"short": "fix(ui): add left scroll offset to PageCarousel",
"type": "fix",
"scope": "ui",
"additions": 1,
"deletions": 1,
"timestamp": "2026-04-03T13:16:20+02:00"
},
{
"hash": "d7b146a",
"short": "fix(ui): add top padding to workbench on desktop",
"type": "fix",
"scope": "ui",
"additions": 1,
"deletions": 0,
"timestamp": "2026-04-03T13:17:20+02:00"
},
{
"hash": "e8a4b98",
"short": "fix(ui): full-width draggable header bar on PageShell",
"type": "fix",
"scope": "ui",
"additions": 30,
"deletions": 14,
"timestamp": "2026-04-03T13:20:53+02:00"
},
{
"hash": "a60799d",
"short": "fix(ui): reduce drag handle bar height",
"type": "fix",
"scope": "ui",
"additions": 1,
"deletions": 1,
"timestamp": "2026-04-03T13:21:46+02:00"
},
{
"hash": "2529c91",
"short": "feat(manacore/web): show item title + app color in drag preview",
"type": "feat",
"scope": "manacore/web",
"additions": 69,
"deletions": 14,
"timestamp": "2026-04-03T13:24:58+02:00"
},
{
"hash": "ad9bbec",
"short": "feat(ui): add left/right arrow buttons to PageShell drag bar",
"type": "feat",
"scope": "ui",
"additions": 107,
"deletions": 1,
"timestamp": "2026-04-03T13:25:51+02:00"
},
{
"hash": "339e3d3",
"short": "feat(ui): move window controls (minimize, maximize, close) into drag bar",
"type": "feat",
"scope": "ui",
"additions": 71,
"deletions": 32,
"timestamp": "2026-04-03T13:28:37+02:00"
},
{
"hash": "0af8c7c",
"short": "fix(ui): make all drag bar icons always visible (not hover-only)",
"type": "fix",
"scope": "ui",
"additions": 0,
"deletions": 11,
"timestamp": "2026-04-03T13:30:20+02:00"
},
{
"hash": "5828f60",
"short": "feat(manacore/web): add habits module with tally board, inline create, and detail view",
"type": "feat",
"scope": "manacore/web",
"additions": 2455,
"deletions": 1,
"timestamp": "2026-04-03T13:34:07+02:00"
},
{
"hash": "18a94b9",
"short": "feat(manacore/web): clickable cross-module links with overlay stacking",
"type": "feat",
"scope": "manacore/web",
"additions": 143,
"deletions": 39,
"timestamp": "2026-04-03T13:36:40+02:00"
},
{
"hash": "66d6196",
"short": "fix: add missing closing brace in PageShell CSS (.move-btn)",
"type": null,
"scope": null,
"additions": 1,
"deletions": 0,
"timestamp": "2026-04-03T13:38:12+02:00"
},
{
"hash": "df74029",
"short": "fix(manacore/web): fix cross-module drop — sync entity registration, lazy store imports",
"type": "fix",
"scope": "manacore/web",
"additions": 13,
"deletions": 10,
"timestamp": "2026-04-03T13:42:31+02:00"
},
{
"hash": "a8480f6",
"short": "fix(ui): allow multiple detail views open across AppPages",
"type": "fix",
"scope": "ui",
"additions": 11,
"deletions": 2,
"timestamp": "2026-04-03T13:48:25+02:00"
},
{
"hash": "9abbf9c",
"short": "feat(manacore/web): add notes and finance modules",
"type": "feat",
"scope": "manacore/web",
"additions": 2962,
"deletions": 12,
"timestamp": "2026-04-03T13:57:37+02:00"
},
{
"hash": "c01eccb",
"short": "refactor(manacore/web): merge entity + app registries into unified AppDescriptor",
"type": "refactor",
"scope": "manacore/web",
"additions": 617,
"deletions": 699,
"timestamp": "2026-04-03T14:01:27+02:00"
},
{
"hash": "4ec4694",
"short": "fix(manacore/web): make notes and finance workbench panels directly usable",
"type": "fix",
"scope": "manacore/web",
"additions": 316,
"deletions": 379,
"timestamp": "2026-04-03T14:02:00+02:00"
},
{
"hash": "b63829a",
"short": "fix(manacore/web): redesign notes workbench — compact input, click-to-edit",
"type": "fix",
"scope": "manacore/web",
"additions": 174,
"deletions": 204,
"timestamp": "2026-04-03T14:04:24+02:00"
},
{
"hash": "09eef96",
"short": "fix(manacore/web): align notes and finance ListViews with workbench design system",
"type": "fix",
"scope": "manacore/web",
"additions": 363,
"deletions": 265,
"timestamp": "2026-04-03T14:08:01+02:00"
},
{
"hash": "e17d622",
"short": "fix(manacore/web): fix getTagsByIds missing allTags param in zitare, fix TagDragData cast",
"type": "fix",
"scope": "manacore/web",
"additions": 7,
"deletions": 3,
"timestamp": "2026-04-03T14:20:34+02:00"
},
{
"hash": "8f5727f",
"short": "feat(manacore/web): add places module with GPS location tracking",
"type": "feat",
"scope": "manacore/web",
"additions": 1656,
"deletions": 2,
"timestamp": "2026-04-03T14:33:56+02:00"
},
{
"hash": "3fa7073",
"short": "fix(docker): remove stale clock/packages/shared COPY from mana-web Dockerfile",
"type": "fix",
"scope": "docker",
"additions": 0,
"deletions": 1,
"timestamp": "2026-04-03T14:36:11+02:00"
},
{
"hash": "4e5709a",
"short": "fix(docker): add shared-logger to sveltekit-base Dockerfile",
"type": "fix",
"scope": "docker",
"additions": 1,
"deletions": 0,
"timestamp": "2026-04-03T14:41:17+02:00"
},
{
"hash": "a673a69",
"short": "feat(manacore/web): add overlay close animation + Escape key support",
"type": "feat",
"scope": "manacore/web",
"additions": 65,
"deletions": 22,
"timestamp": "2026-04-03T14:42:02+02:00"
},
{
"hash": "8171672",
"short": "feat(manacore/web): add undo toasts for delete and tag removal",
"type": "feat",
"scope": "manacore/web",
"additions": 92,
"deletions": 18,
"timestamp": "2026-04-03T14:50:32+02:00"
},
{
"hash": "543e705",
"short": "feat(manacore/web): add undo toasts to all 14 DetailViews + task completion",
"type": "feat",
"scope": "manacore/web",
"additions": 84,
"deletions": 11,
"timestamp": "2026-04-03T14:55:30+02:00"
},
{
"hash": "62d9eb1",
"short": "fix(infra): update status page, prometheus, and cloudflared for unified app",
"type": "fix",
"scope": "infra",
"additions": 106,
"deletions": 158,
"timestamp": "2026-04-03T14:59:15+02:00"
},
{
"hash": "b2adaaa",
"short": "refactor(mana-auth): route emails through mana-notify instead of Nodemailer",
"type": "refactor",
"scope": "mana-auth",
"additions": 26,
"deletions": 48,
"timestamp": "2026-04-03T15:01:27+02:00"
},
{
"hash": "0bac7e1",
"short": "fix(docker): align mana-notify service key with mana-auth",
"type": "fix",
"scope": "docker",
"additions": 1,
"deletions": 1,
"timestamp": "2026-04-03T15:05:03+02:00"
},
{
"hash": "c7908e9",
"short": "fix(infra): prevent race condition in status-page-gen script execution",
"type": "fix",
"scope": "infra",
"additions": 2,
"deletions": 1,
"timestamp": "2026-04-03T15:06:13+02:00"
},
{
"hash": "18d4f84",
"short": "fix(docker): add Brevo SMTP_USER default for mana-notify",
"type": "fix",
"scope": "docker",
"additions": 1,
"deletions": 1,
"timestamp": "2026-04-03T15:07:24+02:00"
},
{
"hash": "0a6fe57",
"short": "feat(infra): add Stalwart mail server, route mana-notify SMTP through it",
"type": "feat",
"scope": "infra",
"additions": 26,
"deletions": 2,
"timestamp": "2026-04-03T15:20:23+02:00"
},
{
"hash": "ed78c34",
"short": "fix(docker): correct Stalwart image name to stalwartlabs/stalwart",
"type": "fix",
"scope": "docker",
"additions": 7,
"deletions": 4,
"timestamp": "2026-04-03T15:21:55+02:00"
},
{
"hash": "f070d02",
"short": "fix(docker): correct Stalwart port mapping and healthcheck",
"type": "fix",
"scope": "docker",
"additions": 2,
"deletions": 2,
"timestamp": "2026-04-03T15:23:16+02:00"
},
{
"hash": "4825aef",
"short": "feat(mana-auth): add /api/v1/settings endpoint for user settings sync",
"type": "feat",
"scope": "mana-auth",
"additions": 225,
"deletions": 0,
"timestamp": "2026-04-03T16:06:11+02:00"
},
{
"hash": "d5b76bd",
"short": "feat(docker): connect mana-notify to Stalwart SMTP",
"type": "feat",
"scope": "docker",
"additions": 3,
"deletions": 1,
"timestamp": "2026-04-03T16:08:33+02:00"
},
{
"hash": "3714b3a",
"short": "fix(mana-notify): support insecure TLS for internal SMTP (Stalwart)",
"type": "fix",
"scope": "mana-notify",
"additions": 58,
"deletions": 19,
"timestamp": "2026-04-03T16:17:57+02:00"
},
{
"hash": "6a75f3f",
"short": "fix(workbench): make page width responsive on mobile",
"type": "fix",
"scope": "workbench",
"additions": 19,
"deletions": 2,
"timestamp": "2026-04-03T16:18:08+02:00"
},
{
"hash": "f592464",
"short": "fix(analytics): update Umami website ID after database reset",
"type": "fix",
"scope": "analytics",
"additions": 2,
"deletions": 2,
"timestamp": "2026-04-03T16:23:09+02:00"
},
{
"hash": "7ac4e09",
"short": "fix(mana-notify): rewrite SMTP sender with LOGIN auth and better error logging",
"type": "fix",
"scope": "mana-notify",
"additions": 88,
"deletions": 53,
"timestamp": "2026-04-03T16:27:26+02:00"
},
{
"hash": "de91094",
"short": "chore(manacore): remove legacy per-app IndexedDB migration",
"type": "chore",
"scope": "manacore",
"additions": 0,
"deletions": 175,
"timestamp": "2026-04-03T16:29:59+02:00"
},
{
"hash": "504a686",
"short": "fix(docker): use Stalwart admin account for SMTP sending",
"type": "fix",
"scope": "docker",
"additions": 2,
"deletions": 2,
"timestamp": "2026-04-03T16:33:04+02:00"
},
{
"hash": "7efe542",
"short": "chore: remove legacy migration and compat code (no users yet)",
"type": null,
"scope": null,
"additions": 4,
"deletions": 119,
"timestamp": "2026-04-03T16:45:49+02:00"
},
{
"hash": "3b4dfb1",
"short": "fix(docker): use noreply account with user role for Stalwart SMTP",
"type": "fix",
"scope": "docker",
"additions": 2,
"deletions": 2,
"timestamp": "2026-04-03T16:59:45+02:00"
},
{
"hash": "7797930",
"short": "fix(mana-notify): add Message-ID and Date headers to outgoing emails",
"type": "fix",
"scope": "mana-notify",
"additions": 4,
"deletions": 0,
"timestamp": "2026-04-03T17:03:46+02:00"
},
{
"hash": "2241663",
"short": "docs: add Stalwart mail server documentation",
"type": null,
"scope": null,
"additions": 215,
"deletions": 0,
"timestamp": "2026-04-03T20:04:09+02:00"
},
{
"hash": "ee03782",
"short": "feat(manacore/web): add cross-module trigger registry for automations",
"type": "feat",
"scope": "manacore/web",
"additions": 236,
"deletions": 1,
"timestamp": "2026-04-03T20:38:41+02:00"
},
{
"hash": "0f38a56",
"short": "feat(manacore/web): add automations module with UI for trigger rules",
"type": "feat",
"scope": "manacore/web",
"additions": 764,
"deletions": 0,
"timestamp": "2026-04-03T20:44:20+02:00"
},
{
"hash": "2dd0812",
"short": "feat(manacore/web): proactive automation suggestions (discovery + inline)",
"type": "feat",
"scope": "manacore/web",
"additions": 589,
"deletions": 3,
"timestamp": "2026-04-03T21:00:23+02:00"
},
{
"hash": "2f87cf9",
"short": "feat(manacore/web): add unified context menu system for workbench and app pages",
"type": "feat",
"scope": "manacore/web",
"additions": 920,
"deletions": 178,
"timestamp": "2026-04-03T21:18:05+02:00"
},
{
"hash": "ebfc2fa",
"short": "fix(manacore/web): redesign automations ListView for better readability",
"type": "fix",
"scope": "manacore/web",
"additions": 393,
"deletions": 375,
"timestamp": "2026-04-03T21:22:28+02:00"
},
{
"hash": "8218037",
"short": "feat: add shared Phosphor IconPicker, migrate habits from emoji to icons, add photos upload",
"type": null,
"scope": null,
"additions": 1440,
"deletions": 672,
"timestamp": "2026-04-03T21:37:01+02:00"
},
{
"hash": "46dae20",
"short": "feat(manacore/web): localize app names with i18n (5 languages)",
"type": "feat",
"scope": "manacore/web",
"additions": 182,
"deletions": 4,
"timestamp": "2026-04-03T21:39:31+02:00"
}
],
"review_state": "auto",
"llm": {
"model": null,
"generated_at": null
}
}