{ "date": "2026-03-30", "day_number": 69, "weekday": "Montag", "commits": 47, "authors": [ { "name": "Till JS", "count": 47 } ], "additions": 26473, "deletions": 10152, "net_lines": 16321, "files_changed": 400, "new_files": 0, "deleted_files": 0, "session": { "first_commit_at": "2026-03-30T08:40:24.000Z", "last_commit_at": "2026-03-30T20:39:46.000Z", "total_span_minutes": 719, "active_minutes": 234, "pauses": [ { "from": "10:56", "to": "12:14", "minutes": 78 }, { "from": "12:14", "to": "15:02", "minutes": 168 }, { "from": "15:48", "to": "18:29", "minutes": 161 }, { "from": "20:44", "to": "21:31", "minutes": 47 }, { "from": "22:09", "to": "22:39", "minutes": 31 } ], "longest_focus_minutes": 135 }, "top_dirs": [ { "path": "apps-archived/moodlit/apps", "pct": 35 }, { "path": "apps/{taktik => times}/apps/web", "pct": 10 }, { "path": "apps/manacore/apps/web", "pct": 5 }, { "path": "{apps-archived => apps}/moodlit/apps", "pct": 5 }, { "path": "apps/todo/apps/web", "pct": 4 } ], "top_extensions": [ { "ext": ".ts", "count": 171 }, { "ext": ".svelte", "count": 162 }, { "ext": ".json", "count": 53 }, { "ext": ".tsx", "count": 42 }, { "ext": ".md", "count": 30 }, { "ext": ".yml", "count": 17 } ], "tags": ["docker", "monitoring", "infra", "startup", "inventar"], "commits_list": [ { "hash": "de6af12", "short": "feat(calendar): integrate NL parser into QuickEventOverlay", "type": "feat", "scope": "calendar", "additions": 8284, "deletions": 1, "timestamp": "2026-03-30T10:40:24+02:00" }, { "hash": "aee0934", "short": "feat(manacore): migrate all remaining widgets to local-first IndexedDB", "type": "feat", "scope": "manacore", "additions": 779, "deletions": 956, "timestamp": "2026-03-30T10:45:30+02:00" }, { "hash": "06e5d9e", "short": "feat(todo,calendar): auto-apply smart duration, add settings toggle", "type": "feat", "scope": "todo,calendar", "additions": 146, "deletions": 72, "timestamp": "2026-03-30T10:52:51+02:00" }, { "hash": "1bbf0ef", "short": "feat: integrate shared-links into Calendar, Contacts, and ManaCore", "type": null, "scope": null, "additions": 66, "deletions": 2, "timestamp": "2026-03-30T10:53:44+02:00" }, { "hash": "fbe3c95", "short": "feat(shared-links): add ManaLinkPicker for cross-app search and linking", "type": "feat", "scope": "shared-links", "additions": 479, "deletions": 2, "timestamp": "2026-03-30T10:56:44+02:00" }, { "hash": "4cee74e", "short": "feat(shared-links): deep-link navigation to target app detail views", "type": "feat", "scope": "shared-links", "additions": 114, "deletions": 11, "timestamp": "2026-03-30T12:14:29+02:00" }, { "hash": "7f2b9f8", "short": "docs(todo,calendar): document smart duration settings", "type": "docs", "scope": "todo,calendar", "additions": 981, "deletions": 4, "timestamp": "2026-03-30T15:02:53+02:00" }, { "hash": "72da55d", "short": "feat(moodlit): restore from git history, migrate to local-first + Hono", "type": "feat", "scope": "moodlit", "additions": 5607, "deletions": 5877, "timestamp": "2026-03-30T15:03:19+02:00" }, { "hash": "45a1718", "short": "feat(manavoxel): complete game engine with behavior system, NPCs, lighting, and dialog", "type": "feat", "scope": "manavoxel", "additions": 2486, "deletions": 110, "timestamp": "2026-03-30T15:04:07+02:00" }, { "hash": "ad82a83", "short": "feat(manavoxel): add merchant trading UI and NPC loot drops", "type": "feat", "scope": "manavoxel", "additions": 308, "deletions": 3, "timestamp": "2026-03-30T15:06:51+02:00" }, { "hash": "451ab03", "short": "feat(contacts): add NL quick-input and live duplicate detection", "type": "feat", "scope": "contacts", "additions": 425, "deletions": 0, "timestamp": "2026-03-30T15:15:11+02:00" }, { "hash": "5f9c2a6", "short": "docs(contacts): document NL quick-input and duplicate detection", "type": "docs", "scope": "contacts", "additions": 28, "deletions": 0, "timestamp": "2026-03-30T15:15:33+02:00" }, { "hash": "1eb370e", "short": "feat(manacore): tiling layout — resizable, splittable dashboard panels", "type": "feat", "scope": "manacore", "additions": 996, "deletions": 83, "timestamp": "2026-03-30T15:43:19+02:00" }, { "hash": "c33339b", "short": "rename(taktik): rebrand to Times", "type": "rename", "scope": "taktik", "additions": 970, "deletions": 1263, "timestamp": "2026-03-30T15:44:18+02:00" }, { "hash": "ff19c7f", "short": "feat(times): add NL time entry parser with multi-entry and quick-input", "type": "feat", "scope": "times", "additions": 649, "deletions": 0, "timestamp": "2026-03-30T15:48:17+02:00" }, { "hash": "d0c2302", "short": "fix(docker): fix multiline entrypoint YAML bug + searxng entrypoint path", "type": "fix", "scope": "docker", "additions": 6, "deletions": 42, "timestamp": "2026-03-30T18:29:44+02:00" }, { "hash": "e21e09b", "short": "fix(docker): fix vmalert rules scope + disable synapse OIDC", "type": "fix", "scope": "docker", "additions": 11, "deletions": 22, "timestamp": "2026-03-30T18:33:56+02:00" }, { "hash": "667d8cf", "short": "fix(infra): simplify alertmanager config mount (direct file mount)", "type": "fix", "scope": "infra", "additions": 2, "deletions": 2, "timestamp": "2026-03-30T18:36:10+02:00" }, { "hash": "aeef352", "short": "fix(startup): force-recreate synapse on boot to avoid stale config cache", "type": "fix", "scope": "startup", "additions": 5, "deletions": 0, "timestamp": "2026-03-30T18:37:00+02:00" }, { "hash": "c866c42", "short": "fix(startup): add /Users/mana mount to colima start (root cause fix)", "type": "fix", "scope": "startup", "additions": 1, "deletions": 0, "timestamp": "2026-03-30T18:42:33+02:00" }, { "hash": "dee4480", "short": "fix(docker): add shared-links package to sveltekit-base image", "type": "fix", "scope": "docker", "additions": 1, "deletions": 0, "timestamp": "2026-03-30T18:51:15+02:00" }, { "hash": "b46cbe4", "short": "fix(startup): remove colima delete --force to prevent image loss on reboot", "type": "fix", "scope": "startup", "additions": 1, "deletions": 2, "timestamp": "2026-03-30T19:12:51+02:00" }, { "hash": "abb7712", "short": "fix(forgejo): fix SSH port mapping + add Forgejo CD pipeline", "type": "fix", "scope": "forgejo", "additions": 416, "deletions": 1, "timestamp": "2026-03-30T19:31:18+02:00" }, { "hash": "0968c84", "short": "feat(ci): GitHub→Forgejo mirror + Forgejo CD pulls from forgejo remote", "type": "feat", "scope": "ci", "additions": 30, "deletions": 1, "timestamp": "2026-03-30T19:32:16+02:00" }, { "hash": "222094d", "short": "fix(monitoring): promtail depends_on service_started instead of healthy", "type": "fix", "scope": "monitoring", "additions": 1, "deletions": 1, "timestamp": "2026-03-30T19:33:48+02:00" }, { "hash": "961cdfb", "short": "fix(promtail): add default tier label to prevent empty label stream errors", "type": "fix", "scope": "promtail", "additions": 6, "deletions": 0, "timestamp": "2026-03-30T19:35:28+02:00" }, { "hash": "79c6ab1", "short": "fix(citycorners): move @const outside HTML element to satisfy Svelte 5 rules", "type": "fix", "scope": "citycorners", "additions": 2, "deletions": 2, "timestamp": "2026-03-30T19:35:33+02:00" }, { "hash": "8049a53", "short": "fix(todo): fix DnD reorder flicker and remove project dot indicator", "type": "fix", "scope": "todo", "additions": 58, "deletions": 48, "timestamp": "2026-03-30T19:37:42+02:00" }, { "hash": "9de71c4", "short": "fix(citycorners): declare searchQuery and searching as $state", "type": "fix", "scope": "citycorners", "additions": 2, "deletions": 0, "timestamp": "2026-03-30T19:39:14+02:00" }, { "hash": "aa26ae1", "short": "fix(manadeck): switch web adapter from adapter-auto to adapter-node", "type": "fix", "scope": "manadeck", "additions": 267, "deletions": 235, "timestamp": "2026-03-30T19:48:39+02:00" }, { "hash": "5fc34da", "short": "fix(promtail): move monitoring drop from relabel to pipeline_stages", "type": "fix", "scope": "promtail", "additions": 4, "deletions": 5, "timestamp": "2026-03-30T19:50:04+02:00" }, { "hash": "be1096e", "short": "fix(monitoring): update disk alerts to use mac_disk_used_percent metrics", "type": "fix", "scope": "monitoring", "additions": 21, "deletions": 11, "timestamp": "2026-03-30T20:01:46+02:00" }, { "hash": "4e37091", "short": "feat(monitoring): disk metrics via Pushgateway, Loki in Master Overview, Colima move script", "type": "feat", "scope": "monitoring", "additions": 244, "deletions": 4, "timestamp": "2026-03-30T20:03:33+02:00" }, { "hash": "7ff72d6", "short": "feat(monitoring): auto-prune Docker + node_modules, 15-min disk check interval", "type": "feat", "scope": "monitoring", "additions": 46, "deletions": 13, "timestamp": "2026-03-30T20:14:13+02:00" }, { "hash": "81ae60d", "short": "refactor(infra): remove Forgejo CD, keep as mirror-only", "type": "refactor", "scope": "infra", "additions": 6, "deletions": 435, "timestamp": "2026-03-30T20:17:41+02:00" }, { "hash": "b44bd44", "short": "fix(ci): stash local changes before mirror pull to prevent merge conflicts", "type": "fix", "scope": "ci", "additions": 2, "deletions": 0, "timestamp": "2026-03-30T20:33:21+02:00" }, { "hash": "dffb5eb", "short": "docs(infra): update Forgejo docs to mirror-only, remove obsolete workflows", "type": "docs", "scope": "infra", "additions": 26, "deletions": 225, "timestamp": "2026-03-30T20:44:54+02:00" }, { "hash": "df19d3a", "short": "fix: Docker build failures for mana-media and inventar-web", "type": null, "scope": null, "additions": 9, "deletions": 4, "timestamp": "2026-03-30T21:31:52+02:00" }, { "hash": "b923243", "short": "fix: nested button in inventar list view, uload-server port 3041→3070", "type": null, "scope": null, "additions": 10, "deletions": 7, "timestamp": "2026-03-30T21:37:18+02:00" }, { "hash": "4a5fe3b", "short": "feat(ux): notepad design, keyboard navigation, contenteditable across todo/calendar/contacts", "type": "feat", "scope": "ux", "additions": 1151, "deletions": 366, "timestamp": "2026-03-30T21:37:56+02:00" }, { "hash": "4f68215", "short": "fix(docker): symlink all @manacore packages in sveltekit-base image", "type": "fix", "scope": "docker", "additions": 13, "deletions": 0, "timestamp": "2026-03-30T21:49:46+02:00" }, { "hash": "b737240", "short": "feat(auth): add access tier system for phased app releases", "type": "feat", "scope": "auth", "additions": 494, "deletions": 39, "timestamp": "2026-03-30T21:50:06+02:00" }, { "hash": "0d6005d", "short": "fix(inventar): import FeedbackPage from @manacore/feedback, not shared-ui", "type": "fix", "scope": "inventar", "additions": 213, "deletions": 42, "timestamp": "2026-03-30T21:56:19+02:00" }, { "hash": "8ffd2ce", "short": "fix(mana-auth): add session-to-token endpoint and return JWT from login", "type": "fix", "scope": "mana-auth", "additions": 85, "deletions": 3, "timestamp": "2026-03-30T21:56:35+02:00" }, { "hash": "9df8b59", "short": "fix(inventar): import HelpPage from @manacore/help, not shared-ui", "type": "fix", "scope": "inventar", "additions": 1, "deletions": 1, "timestamp": "2026-03-30T22:05:42+02:00" }, { "hash": "2783cc3", "short": "fix(inventar): import ThemePage from @manacore/shared-theme-ui", "type": "fix", "scope": "inventar", "additions": 1, "deletions": 1, "timestamp": "2026-03-30T22:09:11+02:00" }, { "hash": "69915a7", "short": "feat(todo): horizontal paper pages with inline edit mode", "type": "feat", "scope": "todo", "additions": 1020, "deletions": 256, "timestamp": "2026-03-30T22:39:46+02:00" } ], "review_state": "auto", "llm": { "model": null, "generated_at": null } }