Commit Graph

  • 3137d4c16d [glm-grade=B] fix(logging): surface AggregateError causes + .cause chains in error.log (DC-056) feature/dc-056-aggregate-error-diagnostics Hermes 2026-08-18 01:59:14 -07:00
  • ab87c10355 Merge feature/dc-055-journald-viewer: host journald log viewer Hermes 2026-08-18 01:29:45 -07:00
  • 3a74cc423a [glm-grade=B] feat(monitoring): host journald log viewer (DC-055) feature/dc-055-journald-viewer Hermes 2026-08-18 01:27:57 -07:00
  • 901df8608b [glm-grade=B] fix(monitoring): restore dead-detection for verified loopback upstreams (DC-054) Krystie 2026-08-18 00:13:58 -07:00
  • 71e04d0a86 [glm-grade=B] fix(monitoring): remap loopback upstream probes to host gateway (DC-053) Hermes 2026-08-17 22:46:32 -07:00
  • 72c82713b5 DC-052: error-log filter + pagination Krystie 2026-08-17 20:53:21 -07:00
  • 60852ee1ef [glm-grade=A] feat(api): error-log filter + pagination + distinct-contexts (DC-052) DashCaddy Polish Loop 2026-08-17 20:53:13 -07:00
  • d79d19b769 chore(start): mount /etc/caddy/sites into container for upstream watcher (DC-049 fixup) DashCaddy-Polish 2026-08-17 19:54:31 -07:00
  • d9286b3be7 fix(http): auto-inject Origin header for Caddy admin API requests (DC-051) [glm-grade=A] Hermes 2026-08-17 19:51:59 -07:00
  • 99bb3f6db8 feat(logs): error-log parser fix + dedicated /logs page (DC-051) [UNJUDGED] dc/DC-051 Hermes 2026-08-17 19:10:44 -07:00
  • 5f95fdcf70 feat(api): audit-log viewer route + UI enhancements (DC-050) [glm-grade=A] Hermes 2026-08-17 18:19:41 -07:00
  • 45cfa83bad feat(monitoring): dead-upstream surfacing + mute toggle (DC-049) [mm-grade=B+] Sami Ahmed 2026-08-17 17:11:27 -07:00
  • 6d875e4631 fix(api): rehydrate process.env from disk-settings.json on boot (DC-048) [glm-grade=A] Hermes 2026-08-17 16:04:18 -07:00
  • 4555d829ac [glm-grade=A] feat: add disk-safety warning to setup wizard + health retention settings Hermes 2026-08-13 17:31:16 -07:00
  • e99413150e [glm-grade=B] fix: dead dashboard WS, corrupted error.log, auth-polling storm, re-auth freeze + CVE bumps Krystie 2026-08-16 04:18:07 -07:00
  • 295c63ce94 ops: lock-caddyfile.sh — chattr +i guard that respects the container bind mount Krystie 2026-08-15 00:01:17 -07:00
  • ef685e515e [glm-grade=B+] feat(i18n): complete card/filter/action translation keys for 31 languages Krystie 2026-08-15 00:01:17 -07:00
  • bd40fb1c17 [glm-grade=A-] refactor: extract /api/v1/version into routes/version.js + npm ci build Krystie 2026-08-15 00:01:16 -07:00
  • 86cc21c7a4 [glm-grade=B+] ops: self-healing watchdog for DNS2 (container, port 3001, Caddyfile, caddy) Krystie 2026-08-14 23:59:50 -07:00
  • ff92706f8a [glm-grade=A-] fix: drift test walker recognizes buildRouter() object exports (routes/version.js) Krystie 2026-08-14 23:46:23 -07:00
  • e8ab0e09a0 [mm-grade=A] DC-058: Stripe license + invoice email automation Hermes 2026-08-14 21:58:07 -07:00
  • b5e23d8e3f [grade=B] fix: i18n detectLanguage RFC 7231 q-value compliance + stale test fixes Krystie 2026-08-13 16:30:20 -07:00
  • 87054e55d9 [grade=B] feat: add Vintage Stereo radio app template Hermes Agent 2026-08-13 14:29:10 -07:00
  • ec96060b2e [grade=A] deploy: rebuild dist with 31-language i18n + disk safety wizard + health settings Krystie 2026-08-13 13:55:51 -07:00
  • e6ec9c901b feat: Jellyfin/Emby recommendations + piracy disclaimer + TOTP fix + AI chat Krystie 2026-08-13 03:38:46 -07:00
  • 3da8463cef feat: AI intent router live + TOTP repeat-auth fix Krystie 2026-08-13 03:33:28 -07:00
  • d25343000f feat: 31 languages + disk safety panel + electron auto-updater + VM uninstall Krystie 2026-08-13 03:04:48 -07:00
  • 8ac1937784 fix: recursive data nesting guard + VM destroy in uninstall wizard Krystie 2026-08-13 02:49:25 -07:00
  • 2ff6c05a45 cleanup: remove stale SAMI Caddy files + add download landing page Krystie 2026-08-13 01:32:07 -07:00
  • 4894e07469 wire disk budget step + VM provisioning into installer wizard Krystie 2026-08-13 01:27:43 -07:00
  • 2a5b1736b8 feat: VM disk sandboxing with full VM isolation Krystie 2026-08-12 23:47:22 -07:00
  • cd3d0cd8ff feat: VM disk sandboxing — bounded virtual disk per platform Krystie 2026-08-12 23:02:51 -07:00
  • 7ebb1b1a01 feat: Log Insights panel — plain English activity summary + safe log disposal Krystie 2026-08-12 20:44:59 -07:00
  • ae54927210 Merge: 92 app templates + Authelia deployment on test server Krystie 2026-08-12 18:07:13 -07:00
  • 9a1998288e Merge latest main (87dd2712 AI Intent Router) with QA sprint work Krystie 2026-08-12 17:37:17 -07:00
  • 503de258b8 [grade=pending] QA sprint: commit 103 at-risk files from multi-agent sprint work Krystie 2026-08-12 17:34:10 -07:00
  • 87dd2712a0 [grade=A] AI Intent Router — natural language → structured actions Hermes 2026-08-12 16:32:44 -07:00
  • 8f4883bfcd [grade=A] DashCaddy MCP Server — AI-native self-hosting control plane Hermes 2026-08-12 16:30:17 -07:00
  • 77a94d55d2 DC-083: mark license-manager.js done in backlog Hermes 2026-08-12 16:11:26 -07:00
  • a468e0f480 [grade=B] DC-083: comprehensive license-manager.js test coverage (77 tests, revenue path) Hermes 2026-08-12 16:11:15 -07:00
  • 43d9c0e1d0 DC-083: claim license-manager.js coverage for Hermes Hermes 2026-08-12 15:56:53 -07:00
  • 96a6e8ac6a DC-106: auto-claim (autonomous build pick tick) Hermes 2026-08-12 15:24:45 -07:00
  • fa6c4c6b20 Add i18n route tests (5 tests for language listing + translations) Hermes 2026-08-12 13:13:44 -07:00
  • 6fe1af28ae Add tests for DC-100 discover + DC-107 disaster recovery endpoints Hermes 2026-08-12 13:12:38 -07:00
  • 82f14ba663 Update CHANGELOG with all P3-P5 features (DC-076 through DC-108) Hermes 2026-08-12 13:11:07 -07:00
  • 0d21cbb93b Fix: Catalog handles APP_TEMPLATES as object map (not just array) Hermes 2026-08-12 13:06:07 -07:00
  • 842097df8f Fix: Destructure APP_TEMPLATES from app-templates module export Hermes 2026-08-12 13:02:24 -07:00
  • 671a6cc93c Add tests for DC-105/106/108 endpoints + fleet env fix Hermes 2026-08-12 13:00:14 -07:00
  • 2e07053dca [grade=B] DC-108: Multi-host fleet management foundation Hermes 2026-08-12 12:55:59 -07:00
  • 7f831510bd [grade=B] DC-106: Caddyfile-as-code — visual reverse proxy builder API Hermes 2026-08-12 12:54:17 -07:00
  • 2966a19aef Mark DC-103/104/105/107 as done in backlog Hermes 2026-08-12 12:52:39 -07:00
  • 184ec2e49f [grade=B] DC-107: Disaster recovery — one-click full backup + restore Hermes 2026-08-12 12:52:16 -07:00
  • 0cda298651 [grade=B] DC-105: Smart defaults wizard — 'What do you want to self-host?' Hermes 2026-08-12 12:50:39 -07:00
  • 2595b6a456 DC-087: Refactor SDK to compact spec-table pattern (326 lines, 39 methods) Hermes 2026-08-12 12:49:10 -07:00
  • 677fb41f97 [grade=B] DC-104: App catalog API — browse 38 curated templates Hermes 2026-08-12 12:47:50 -07:00
  • f68a5afe73 [grade=B] DC-103: One-click adopt — auto-generate Caddy route + DNS + service Hermes 2026-08-12 12:40:21 -07:00
  • 29831ad0b2 Update backlog: 40 items marked done/partial from sprint session Hermes 2026-08-12 12:38:21 -07:00
  • 6b3f6ebeb6 [grade=A] DC-068: Fix all 3 ESLint errors + auto-fix warnings Hermes 2026-08-12 12:35:58 -07:00
  • ccaa923a5a [grade=B] DC-071: Error tracking integration framework (Sentry-compatible) Hermes 2026-08-12 12:30:57 -07:00
  • d45dc8d3b7 [grade=B] DC-100: Service discovery — auto-detect running containers Hermes 2026-08-12 12:27:57 -07:00
  • a38d1350eb [grade=B] DC-080: Plugin/extension system framework Hermes 2026-08-12 12:25:26 -07:00
  • 78bfc13cf0 [grade=B] DC-077: i18n framework with 5 languages (en/es/fr/de/ar) Hermes 2026-08-12 12:23:34 -07:00
  • 5e5b572199 [grade=B] DC-086: Structured error code system (framework + 80 codes) Hermes 2026-08-12 12:17:17 -07:00
  • aaea3bd5d4 [grade=B] DC-076: WebSocket server for real-time dashboard updates Hermes 2026-08-12 12:15:17 -07:00
  • 2feeff7d12 DC-063: auto-claim (autonomous build pick tick) Hermes 2026-08-12 11:24:30 -07:00
  • 1528fd1a35 DC-067: [WIP] jest failing at grade time dc/DC-067 Hermes 2026-08-12 07:24:29 -07:00
  • df37b95ff7 DC-062: auto-claim (autonomous build pick tick) Hermes 2026-08-12 07:23:54 -07:00
  • 388a1fe487 [grade=B] DC-081: Input validation for 20 highest-risk mutating routes Hermes 2026-08-12 06:20:48 -07:00
  • 37b2630525 [grade=B] Fix DC-064: Bump Docker memory limit from 512m to 1g Hermes 2026-08-12 06:16:37 -07:00
  • 306aff5ccf [grade=A] Fix DC production crash-loop: await listen()+close() in startup-validator port check Hermes 2026-08-12 06:13:38 -07:00
  • a21e06bf5b [grade=B] DC-098: Update CHANGELOG with production-grade hardening sprint Hermes 2026-08-12 05:52:48 -07:00
  • 95d4b3f4bc [grade=A] DC-066: End-to-end billing integration test Hermes 2026-08-12 05:47:27 -07:00
  • acc2e1939e [grade=B] DC-093: Workflow engine retry with exponential backoff Hermes 2026-08-12 05:34:49 -07:00
  • f3934fd257 [grade=B] DC-097+DC-092: Prometheus metrics export + dependency health checks Hermes 2026-08-12 05:33:03 -07:00
  • 27beae22a8 [grade=B] DC-073: Debug request logger middleware (LOG_LEVEL=debug) Hermes 2026-08-12 05:25:30 -07:00
  • 30acd6a237 [grade=B] DC-074+DC-091: Multi-stage Dockerfile + Dependabot config Hermes 2026-08-12 05:10:01 -07:00
  • dad6af4003 [grade=B] DC-072: Enable source maps in production esbuild bundles Hermes 2026-08-12 05:08:52 -07:00
  • 84374aab38 [grade=B] DC-063: Coverage threshold adjustment + toDockerMountPath edge case test Hermes 2026-08-12 05:07:24 -07:00
  • 3be4cda695 [grade=B] DC-070: Add CI/CD pipeline — GitHub Actions workflow Hermes 2026-08-12 05:02:59 -07:00
  • 6891b51a1e [grade=A] DC-075: System health endpoint + DC-069 notification cooldown verified Hermes 2026-08-12 04:59:03 -07:00
  • f6feb0184d [grade=A] DC-062: Update OpenAPI spec from v1.0.0 to v1.15.0 — 112→276 paths (329 ops) Hermes 2026-08-12 04:52:35 -07:00
  • 92482980dd [grade=A] DC-065: Sweep 15 console.* calls to process.stderr.write Hermes 2026-08-12 04:50:16 -07:00
  • a1d7208686 [grade=A] DC-085: Replace Math.random() with crypto for security-sensitive IDs Hermes 2026-08-12 04:45:19 -07:00
  • cdf9e8d3ef [grade=A] DC-082+DC-064: eliminate command injection surface + add Docker resource limits Hermes 2026-08-12 04:35:15 -07:00
  • 432e9635bc DC-067: fix force-exit + listener exception handling per Codex D-grade feedback hermes 2026-08-12 03:59:11 -07:00
  • 5b74536472 DC-067: harden shutdown per Codex C-grade feedback hermes 2026-08-12 03:52:34 -07:00
  • bb01a77ae7 DC-067: fix shutdown sequencing — stop managers AFTER server.close drains hermes 2026-08-12 03:46:42 -07:00
  • 88ff260e5e DC-067: graceful shutdown coordinator (EventEmitter, 10s drain, idempotent) hermes 2026-08-12 03:36:49 -07:00
  • ff81d99021 DC-101: Disk Space Monitor + Product Vision Hermes 2026-08-12 02:41:40 -07:00
  • 5c02bfba1d DC-084/085/089/090: Quick wins batch Hermes 2026-08-12 02:24:28 -07:00
  • bb20f02cbf Expand production backlog: 19 → 39 tasks (DC-081–DC-100) Hermes 2026-08-12 02:13:55 -07:00
  • dc788e5dd3 DC-061: healthCheckUrl override + v2 production-grade backlog Hermes 2026-08-12 02:05:08 -07:00
  • 04f90d1505 DC-061: Add healthCheckUrl override to URL resolver Hermes 2026-08-12 01:52:37 -07:00
  • bd13104362 DC-037: install.sh creates /opt/dashcaddy/dashcaddy-api -> /etc/dashcaddy/sites/dashcaddy-api symlink Krystie 2026-08-11 05:27:54 -07:00
  • dcf252e515 P2-5 through P2-7: mark done — all backlog items complete Hermes 2026-08-10 21:19:43 -07:00
  • a7512b4a56 [grade=A] P2-7: refactor tailscaleAuthMiddleware (complexity 24→7, nesting 6→3) Hermes 2026-08-10 21:19:28 -07:00
  • f5fc688185 [grade=A] P2-6: refactor config-schema.js validateConfig (complexity 44→8 sub-validators) Hermes 2026-08-10 21:18:09 -07:00
  • 1bc41bb2bc [grade=A] P2-5: fix 4 test handle leaks in log-digest.js + sweep remaining console calls Hermes 2026-08-10 21:16:22 -07:00
  • 4dda005eb1 P2-1 through P2-4: mark done in backlog Hermes 2026-08-10 20:28:56 -07:00
  • 140aa5d4b1 [grade=A] P2-1 through P2-4: version sync, dead file cleanup, ESLint fixes Hermes 2026-08-10 20:28:36 -07:00