Commit Graph

  • bc6bac6242 fix(mcp-security): count cached deny verdicts against the pre-auth limiter Oliver Kieselbach 2026-06-30 14:22:55 +02:00
  • 84fe7575ba fix(mcp-security): host-spoof fail-fast, auth-fetch timeout, layered rate-limit + bounded cache Oliver Kieselbach 2026-06-30 12:30:36 +02:00
  • 44203423ec feat(rules): ANALYZE-ESP-004 soft-failure for ESP-timeout + Continue-anyway Oliver Kieselbach 2026-06-30 00:47:11 +02:00
  • 87f54e1523 fix(mcp-oauth): force Entra account picker (prompt=select_account) Oliver Kieselbach 2026-06-29 23:00:33 +02:00
  • e6c570c3c0 fix(mcp-oauth): RFC 9728 resource identifier = <base>/mcp (fixes VS Code) Oliver Kieselbach 2026-06-29 22:23:06 +02:00
  • 2e1ce68a30 chore(mcp): bump to 1.4.1 + log /mcp auth-failure paths for diagnostics Oliver Kieselbach 2026-06-29 21:55:12 +02:00
  • f783d609cf fix(mcp-oauth): RFC 8252 redirect_uri match (fixes VS Code initialize stall) Oliver Kieselbach 2026-06-29 21:45:36 +02:00
  • 384ac0d380 fix(mcp-oauth): require client_id, reject empty callback code, test callback Oliver Kieselbach 2026-06-29 21:19:45 +02:00
  • bbb2f444aa refactor(mcp-oauth): stateless signed client_id (multi-replica safe) Oliver Kieselbach 2026-06-29 21:06:52 +02:00
  • b2cc3182c8 fix(mcp-oauth): tolerate unknown client_id at /authorize (cold-start) Oliver Kieselbach 2026-06-29 20:47:35 +02:00
  • 75d49a8db4 feat(mcp-oauth): allow VS Code / GitHub Copilot DCR redirect hosts Oliver Kieselbach 2026-06-29 19:50:07 +02:00
  • 0abccf1fe0 refactor(delegated): rename TenantTemplate -> TenantGroup across the full stack Oliver Kieselbach 2026-06-29 19:47:05 +02:00
  • bce5d90c2a refactor(web): rename Tenant Templates -> Tenant Groups in the UI Oliver Kieselbach 2026-06-29 19:30:51 +02:00
  • 3e827fbb92 fix(delegated): tenant-template membership write failed (Edm.DateTime out of range) Oliver Kieselbach 2026-06-29 18:53:39 +02:00
  • 3d6933c3f4 updated modified timestamps Oliver Kieselbach 2026-06-29 16:33:47 +02:00
  • 10cb8820ac feat(global-scope): persist tenant-switcher selection across pages (sessionStorage) Oliver Kieselbach 2026-06-29 16:33:17 +02:00
  • 86f8fd5ace feat(delegated): tenant templates — app-internal tenant bundles for MSP delegated admins Oliver Kieselbach 2026-06-29 16:17:04 +02:00
  • ecb1e14cf5 fix(ui): align script-execution duration after status on remediation cycle header Oliver Kieselbach 2026-06-29 15:40:31 +02:00
  • 11fc0560fc feat(remediation): surface run duration on remediation scripts Oliver Kieselbach 2026-06-29 12:22:30 +02:00
  • 4dddce6326 fix(global-reader): treat GlobalReader exactly like a GA in the sidebar (read-only aside) Oliver Kieselbach 2026-06-29 12:18:44 +02:00
  • a41715105d fix(global-reader): show platform nav on global scope regardless of the Global View toggle Oliver Kieselbach 2026-06-29 11:47:19 +02:00
  • 7742113b29 fix(delegated): pass ?tenantId= on dashboard session links so delegated detail drill-in resolves Oliver Kieselbach 2026-06-29 10:43:09 +02:00
  • 4c6e63cefd changed default Audit view Oliver Kieselbach 2026-06-28 14:23:46 +02:00
  • 3a4291336a Merge pull request #79 from okieselbach/feature/delegated-scoped-global-reader Oliver Kieselbach 2026-06-26 23:28:11 +02:00
  • 9f367cea0c fix(delegated): exclude platform-operational reads from delegated scope (least-privilege) Oliver Kieselbach 2026-06-26 23:21:39 +02:00
  • 8871259446 fix(delegated): MCP Disabled-row kill-switch + web tenant-bound defense-in-depth Oliver Kieselbach 2026-06-26 23:21:19 +02:00
  • 15cd5fd140 fix(delegated): bind SignalR notify-group authz to the group tenant (home-role escalation) Oliver Kieselbach 2026-06-26 19:38:00 +02:00
  • 51c0987b00 fix(delegated): enforce allow-list on the single-tenant drill (home-tenant escalation) Oliver Kieselbach 2026-06-26 19:13:36 +02:00
  • aad3522dab fix(delegated): bound the aggregate fallback + correct override-page banner subtitle Oliver Kieselbach 2026-06-26 18:59:02 +02:00
  • aa2e066055 feat(delegated): scoped audit log + geographic session drill-in Oliver Kieselbach 2026-06-26 18:20:48 +02:00
  • 8dd45b20fb feat(delegated): scoped-global reader — dashboard + analytics + fleet overview Oliver Kieselbach 2026-06-26 18:06:25 +02:00
  • 250560ce25 reduced auth cache timing alignments Oliver Kieselbach 2026-06-26 13:18:58 +02:00
  • 3f88f88a0c reduced auth caching times Oliver Kieselbach 2026-06-26 13:11:14 +02:00
  • ec3f6e931f feat(web): device name in session-detail browser tab title Oliver Kieselbach 2026-06-26 12:50:23 +02:00
  • a5075b2236 feat(mcp): delegated-admin (MSP) support over MCP — tenant-bounded cross-tenant reads Oliver Kieselbach 2026-06-26 10:54:45 +02:00
  • 0ad08d8185 Merge pull request #78 from okieselbach/feature/delegated-admin-msp-mode Oliver Kieselbach 2026-06-26 01:01:44 +02:00
  • 8505309980 fix(web): session-suggestion click respects sessionLinkTarget [Phase 5 follow-up] Oliver Kieselbach 2026-06-26 00:39:22 +02:00
  • 104a56a07b feat(web): fleet drill-in reuses the dashboard session browser [Phase 5 follow-up] Oliver Kieselbach 2026-06-26 00:22:46 +02:00
  • 106f075216 feat(web): fleet session-list pagination + dedupe SessionStatusBadge [Phase 5 follow-up] Oliver Kieselbach 2026-06-26 00:08:53 +02:00
  • 104c70ae58 feat(web): MSP session-detail drill-in for managed tenants [Phase 5] Oliver Kieselbach 2026-06-26 00:01:50 +02:00
  • b2abe0e74a feat(web+backend): delegated-admin (MSP) grant/revoke management [Phase 4] Oliver Kieselbach 2026-06-25 23:41:33 +02:00
  • 82184efbe7 fix(web): clear session rows on tenant switch in fleet drill-in [Phase 3d follow-up] Oliver Kieselbach 2026-06-25 23:18:33 +02:00
  • 7dd3f19d9e feat(web): fleet tenant drill-in (switcher) for MSP admins [Phase 3d] Oliver Kieselbach 2026-06-25 23:04:58 +02:00
  • 8192ff1aa8 fix(web): fleet roll-up success rate is terminal-only, matching the cards [Phase 3c follow-up] Oliver Kieselbach 2026-06-25 22:36:41 +02:00
  • 7c2b5d10cb feat(web): per-tenant health + roll-up on the fleet overview [Phase 3c] Oliver Kieselbach 2026-06-25 22:24:33 +02:00
  • e2ce43a2d0 fix(web): no broken Dashboard nav path for delegated-only MSP users [Phase 3b follow-up] Oliver Kieselbach 2026-06-25 22:14:49 +02:00
  • 23f554f5ac feat(web): fleet area gate + nav + landing grid for MSP admins [Phase 3b] Oliver Kieselbach 2026-06-25 22:06:03 +02:00
  • 261d5df5e1 fix(backend): don't onboard MSP home tenant on delegated-only login [Phase 3a follow-up] Oliver Kieselbach 2026-06-25 21:49:53 +02:00
  • ab9b3d6211 feat(web+backend): surface delegated (MSP) scope on /auth/me + AuthContext [Phase 3a] Oliver Kieselbach 2026-06-25 21:34:01 +02:00
  • a4f071a836 fix(bootstrap): correct scalar-unwrap in OOBE-relax profile age check Oliver Kieselbach 2026-06-25 21:04:49 +02:00
  • 588ef08fdf fix(bootstrap): correct scalar-unwrap in OOBE-relax profile age check Oliver Kieselbach 2026-06-25 21:04:49 +02:00
  • 4bb6dd59f7 test(backend): cover delegated config/all subset + redaction seams [Phase 2b follow-up] Oliver Kieselbach 2026-06-25 20:58:11 +02:00
  • 43a87ff747 perf(backend): read-bound delegated config/all to point-reads [Phase 2b follow-up] Oliver Kieselbach 2026-06-25 20:53:38 +02:00
  • 87711e1261 feat(backend): bounded tenant list for delegated admins (MSP fleet) [Phase 2b] Oliver Kieselbach 2026-06-25 20:40:50 +02:00
  • d44dbe7ec0 feat(backend): delegated single-tenant access to /api/global/* reads (MSP switcher) [Phase 2a] Oliver Kieselbach 2026-06-25 20:16:49 +02:00
  • 967faf47ee fix(backend): side-effect-free role resolution in auth middleware [Phase 1 follow-up] Oliver Kieselbach 2026-06-25 19:50:37 +02:00
  • e1a40c52c3 feat(backend): delegated-admin cross-tenant gate (MSP mode) [Phase 1] Oliver Kieselbach 2026-06-25 19:34:39 +02:00
  • 05a591e1d4 feat(backend): delegated-admin (MSP mode) data model + scope service [Phase 0] Oliver Kieselbach 2026-06-25 18:50:56 +02:00
  • f37ee3e6b1 perf(backend): cache Graph app token + stream-parse V2 ingest Oliver Kieselbach 2026-06-25 17:24:27 +02:00
  • 62d8d4d9d3 updated dev bootstrap script Oliver Kieselbach 2026-06-25 12:41:59 +02:00
  • d0486de21e perf(backend): push app-install-summary time window server-side + parallelize session join Oliver Kieselbach 2026-06-25 12:16:04 +02:00
  • 12dabbeab9 fix(backend): bound QuickSearch typeahead scan (recent window + row cap) Oliver Kieselbach 2026-06-25 11:07:29 +02:00
  • 27ef527e80 fix(backend): server-bound retention fanout read to per-run cap Oliver Kieselbach 2026-06-25 10:54:32 +02:00
  • 71a86a48a9 fix(backend): monitor session-deletion + tenant-offboarding poison queues Oliver Kieselbach 2026-06-25 10:35:42 +02:00
  • 6e78291100 fix(backend): reject non-GUID tid before OIDC metadata fetch in auth middleware Oliver Kieselbach 2026-06-25 10:33:16 +02:00
  • fe64b38e7d new dev bootstrap scripts Oliver Kieselbach 2026-06-25 09:30:38 +02:00
  • 5ba4fb7dc9 feat(backend): retention/cleanup for previously-unbounded append-only tables Oliver Kieselbach 2026-06-24 17:11:03 +02:00
  • 7c1f14c66b feat(backend+web): GA "Active Users" live presence dashboard + UserActivity retention Oliver Kieselbach 2026-06-23 19:44:30 +02:00
  • 5e136b696f Merge branch 'main' of https://github.com/okieselbach/Autopilot-Monitor Oliver Kieselbach 2026-06-23 12:47:27 +02:00
  • b3954b7b4d feat(agent+web): agent_late_start + script_timeout_suspected detectors + per-script run duration Oliver Kieselbach 2026-06-23 12:44:53 +02:00
  • 876a2f2c37 Merge pull request #76 from okieselbach/claude/mcp-whitelist-error-message-d2t7cm Oliver Kieselbach 2026-06-23 00:15:39 +02:00
  • c8ec1378ec Clarify MCP denial: tell non-whitelisted users they need to be enabled Claude 2026-06-22 22:12:06 +00:00
  • 5cd268e88c fix(backend): derive AuthenticationMiddleware JWT-exempt set from policy catalog Oliver Kieselbach 2026-06-22 23:40:18 +02:00
  • 781cf0fb9b updated allowlist for anonymous requests Oliver Kieselbach 2026-06-22 23:27:05 +02:00
  • 12d67380e9 feat(mcp+backend): session_debug — client-side diag-ZIP analysis via HMAC ticket Oliver Kieselbach 2026-06-22 21:29:29 +02:00
  • 474af7f78c fix(agent): ESP-Apps failure correlation + platform-script stdout/exit contamination Oliver Kieselbach 2026-06-22 20:37:44 +02:00
  • 2d3853c38f feat(rbac): add read-only GlobalReader platform role (backend + MCP + web) Oliver Kieselbach 2026-06-22 19:07:10 +02:00
  • 3eabeedf48 feat(web): GA can set Admin/Operator role in tenant admin management Oliver Kieselbach 2026-06-22 17:24:11 +02:00
  • c9067f3ee1 update deps Oliver Kieselbach 2026-06-22 13:44:50 +02:00
  • cfb896e4f7 fix(mcp): review quick-wins M1/M5/M9/M10/M11/M12 Oliver Kieselbach 2026-06-22 13:39:01 +02:00
  • 9a0211e17f fix(agent): emit platform-script completion from AgentExecutor exit code when IME result is late Oliver Kieselbach 2026-06-19 16:32:10 +02:00
  • 1f61f6c4fb feat(web): dedicated Templates tab for analyze rules Oliver Kieselbach 2026-06-19 15:28:43 +02:00
  • 2d1db6c897 feat(backend+web): generic JSON webhook provider + custom headers Oliver Kieselbach 2026-06-19 14:34:18 +02:00
  • fb5c206018 fix(agent): harden Shift+F10 console watcher (review round 2) Oliver Kieselbach 2026-06-19 13:15:32 +02:00
  • d5cb5ef532 fix(agent): rework Shift+F10 console detection — parent-free discriminator + desktop-arrival gate Oliver Kieselbach 2026-06-19 12:47:07 +02:00
  • 2e3c0b8db6 feat(agent+backend+web): OOBE-console / Shift+F10 detection (default-on opt-out) Oliver Kieselbach 2026-06-19 11:29:41 +02:00
  • b71df9fc18 fix(backend): correct webhook session URL to /sessions/{id} Oliver Kieselbach 2026-06-19 10:54:43 +02:00
  • 04c2482f33 fix(web): vertically center sidebar nav icons (root cause) Oliver Kieselbach 2026-06-19 10:26:22 +02:00
  • a60ef54a23 fix(web): increase sidebar nav label vertical nudge to 1px Oliver Kieselbach 2026-06-19 10:05:32 +02:00
  • e285e93b00 fix(web): sidebar nav vertical alignment + stray list marker Oliver Kieselbach 2026-06-19 09:40:10 +02:00
  • 8862d73eed feat(backend+web): detect pre-approved consent for rights-less admins Oliver Kieselbach 2026-06-18 18:41:34 +02:00
  • b515db07d7 fix(backend): enable diagnostics upload for Hosted-destination tenants Oliver Kieselbach 2026-06-18 18:04:07 +02:00
  • ecd8036dc0 updated guardrails Oliver Kieselbach 2026-06-18 17:40:07 +02:00
  • 7c55ee6d0c small ui fix for SLA Oliver Kieselbach 2026-06-18 12:49:29 +02:00
  • 5775c7c176 fix(web+backend): Progress Portal live updates for end users + sidebar Dashboard gate Oliver Kieselbach 2026-06-18 11:21:59 +02:00
  • 879bd0c59b feat(backend): optional per-tenant Entra app-role RBAC (Admin/Operator) Oliver Kieselbach 2026-06-17 18:54:39 +02:00
  • 83ce5f9fdf Merge pull request #74 from okieselbach/fix/v2-snapshot-corruption-and-tenant-scan Oliver Kieselbach 2026-06-16 17:31:43 +02:00
  • f67341dd70 perf(backend): derive maintenance tenant list from TenantConfiguration, not a Sessions scan Oliver Kieselbach 2026-06-16 17:30:11 +02:00
  • ea81b1eca0 fix(backend): normalize V2 ingest event data to prevent DeviceSnapshot corruption Oliver Kieselbach 2026-06-16 17:29:35 +02:00
  • a55a7c65af fix(agent-v2): include Win32_Process key (Handle) in WMI GetOwner projection Oliver Kieselbach 2026-06-16 16:07:43 +02:00