Commit Graph

  • 4f1b4f8c03 fix(mcp): URL-encode the registration id in the tenant-client lookup path Oliver Kieselbach 2026-09-24 18:33:32 +02:00
  • 869580c9df feat(web): progress portal deep link /progress?serial= Oliver Kieselbach 2026-09-24 17:14:39 +02:00
  • 1a96cd20da feat(web,backend): AI Integration settings page; one self-hosted client per tenant, raisable by a Global Admin Oliver Kieselbach 2026-09-24 15:00:15 +02:00
  • 8e637cf86a feat(web): docs link of the self-hosted AI clients section points at its own docs section Oliver Kieselbach 2026-09-24 14:47:47 +02:00
  • 93c6e1facb feat(mcp): tenant-bound registrations for self-hosted MCP clients (D-280) Oliver Kieselbach 2026-09-24 14:10:13 +02:00
  • 4a4bbc056a fix(mcp): the OAuth proxy advertises and returns token auth method none Oliver Kieselbach 2026-09-24 13:35:47 +02:00
  • c59b366560 feat(auth): client-app binding for delegated tokens - measured always, enforced behind a switch (D-279) Oliver Kieselbach 2026-09-24 13:28:21 +02:00
  • d0aded5401 chore: bump internal (D-278, MCP client plan draft) Oliver Kieselbach 2026-09-24 12:41:21 +02:00
  • 8f9c683b7c chore: bump infra (redirect-allowlist parameter description) Oliver Kieselbach 2026-09-24 09:45:42 +02:00
  • e82878af57 feat(mcp): name the rejected token's aud/azp/tid and the rejected redirect targets in the auth log lines Oliver Kieselbach 2026-09-24 09:44:20 +02:00
  • d60e858e95 chore: bump internal (signature-check lesson) Oliver Kieselbach 2026-09-23 14:27:04 +02:00
  • f6ce9ae0a0 chore: bump internal (web perf audit released, first RUM comparison) Oliver Kieselbach 2026-09-23 13:38:15 +02:00
  • b4f26401f5 perf(web): stop recording own-origin non-API fetches as dependencies (D-277) v2.0.1464 Oliver Kieselbach 2026-09-23 12:42:00 +02:00
  • 2b5004fb33 perf(web): web perf audit 2026-09-23 - cache headers, intent prefetch, seeds, SignalR refcount, lazy telemetry Oliver Kieselbach 2026-09-23 12:10:11 +02:00
  • 00f4cb1f26 fix(agent,web): a script run duration is judged from both lines' provenance; an offset-error span is omitted, never shown (D-273) Oliver Kieselbach 2026-09-23 09:50:49 +02:00
  • e091e50862 chore: bump internal (plan and backlog on the commit state) Oliver Kieselbach 2026-09-23 09:47:29 +02:00
  • 27ce07b111 chore: bump internal and .claude/commands (IME wait states D-271, ime-diffs note D-272) Oliver Kieselbach 2026-09-23 09:46:10 +02:00
  • f06fe5afc0 feat(agent): registry observer surfaces IME install-deadline waits and app-in-use deferrals (D-271) Oliver Kieselbach 2026-09-23 09:46:07 +02:00
  • 37e920237c chore: bump internal (Web-Performance-Audit 2026-09-23) Oliver Kieselbach 2026-09-23 09:30:14 +02:00
  • 7279650772 Merge branch 'main' of https://github.com/okieselbach/AutopilotMonitor Oliver Kieselbach 2026-09-23 08:32:03 +02:00
  • d8ab70b166 chore(rules): override fast-json-patch to 3.1.1 (Dependabot #103) Oliver Kieselbach 2026-09-23 08:29:58 +02:00
  • fb8703a4c6 chore(deps): bump the actions group with 3 updates (#160) dependabot[bot] 2026-09-23 08:18:43 +02:00
  • ac3fa8b2b6 chore: bump internal (B-2am deployed) Oliver Kieselbach 2026-09-22 21:29:42 +02:00
  • efcb4f9ca1 fix(offboarding): farewell feedback reaches the backend again; farewell mail leaves an ops event; suspended page instead of alert Oliver Kieselbach 2026-09-22 21:18:44 +02:00
  • 7a7a31e8e3 chore: bump internal (B-z9d root cause) Oliver Kieselbach 2026-09-22 20:26:59 +02:00
  • 3fdcbabd48 chore: bump internal (backlog B-az5, B-z9d) Oliver Kieselbach 2026-09-22 20:11:31 +02:00
  • b2e8c7627f chore: bump internal and .claude/commands (context diet) Oliver Kieselbach 2026-09-22 20:02:27 +02:00
  • bd08d13011 chore: bump internal (mcp catalog sight check in Claude Code done) Oliver Kieselbach 2026-09-22 19:55:11 +02:00
  • 10c69f592e chore: bump internal (mcp-catalog-context-audit released) Oliver Kieselbach 2026-09-22 18:41:06 +02:00
  • fe0b2dc7fe refactor(mcp): catalog diet — shared argument texts, scope-first instructions, $schema stripped (D-269) Oliver Kieselbach 2026-09-22 18:14:52 +02:00
  • a0f007fd43 fix(mcp): synthetic tenant examples, catalog budget test and audit script (D-269) Oliver Kieselbach 2026-09-22 14:02:35 +02:00
  • 1b27babd17 ci: zizmor gate for the workflow files plus a clean baseline (D-268) Oliver Kieselbach 2026-09-22 12:56:03 +02:00
  • 100d2242fa chore: regenerate shared manifest and wire types (TenantManagerItem.Name doc) Oliver Kieselbach 2026-09-22 10:02:11 +02:00
  • 089b1b38fd Merge branch 'main' of https://github.com/okieselbach/AutopilotMonitor Oliver Kieselbach 2026-09-22 09:53:24 +02:00
  • ac465839a5 chore: bump internal (backlog B-umq for D-267) Oliver Kieselbach 2026-09-22 09:52:35 +02:00
  • ef280b7bb5 fix(backend): managed tenants see operator-provisioned access as "Platform support" Oliver Kieselbach 2026-09-22 09:52:00 +02:00
  • 233737f333 chore(deps-dev): bump the web group (#159) dependabot[bot] 2026-09-22 09:29:05 +02:00
  • 909904e928 chore(deps): bump the mcp group (#158) dependabot[bot] 2026-09-22 09:28:50 +02:00
  • 59ab47de8c chore: bump internal (D-266 network link changes are not activity) v2.0.1463 Oliver Kieselbach 2026-09-22 00:48:51 +02:00
  • f252a0709f fix(agent): network link changes no longer count as enrollment activity Oliver Kieselbach 2026-09-22 00:48:50 +02:00
  • d6d9638981 chore: bump internal (D-265 recurring health-script runs, backlog B-c6h) Oliver Kieselbach 2026-09-22 00:38:55 +02:00
  • 020248fbda feat(agent): collapse recurring health-script runs into one summary per policy Oliver Kieselbach 2026-09-22 00:38:00 +02:00
  • a06a0dbfff chore: bump internal (D-264 emergency break stays a start-time check, backlog B-drn) Oliver Kieselbach 2026-09-22 00:08:22 +02:00
  • 96c24e0688 chore: bump internal (D-263 excessive-events recount, backlog B-7wp) Oliver Kieselbach 2026-09-21 23:46:03 +02:00
  • c156350183 fix(backend): excessive-events sweep warns and blocks on recounted rows Oliver Kieselbach 2026-09-21 23:45:11 +02:00
  • 15b25ff509 chore: bump internal (D-261 typed wrapper bodies, D-262 req.Query, backlog B-t5z) Oliver Kieselbach 2026-09-21 22:31:15 +02:00
  • 5163d7d6a0 refactor(backend): read the request query through req.Query only Oliver Kieselbach 2026-09-21 22:28:11 +02:00
  • 9fd343d328 fix(backend): typed bodies and error envelope for backup, session-restore and delegation wrappers Oliver Kieselbach 2026-09-21 22:19:38 +02:00
  • aef88f3337 chore: bump internal (IME archiver pre-walk check doc, backlog B-ryg) Oliver Kieselbach 2026-09-21 20:59:13 +02:00
  • 12af1d6c76 fix(backend): IME archiver accepts an existing archive entry before walking the hosts Oliver Kieselbach 2026-09-21 20:58:49 +02:00
  • 5433bff3db chore: bump internal (navbar profile photo plan and backlog) Oliver Kieselbach 2026-09-21 17:40:00 +02:00
  • 355509aa7c feat(web): show the signed-in user's profile photo in the navbar avatar Oliver Kieselbach 2026-09-21 17:39:41 +02:00
  • 7fb78a7e29 update pointer v2.0.1462 Oliver Kieselbach 2026-09-21 15:31:59 +02:00
  • bfd8d58142 chore: bump internal (WNS deck plan) Oliver Kieselbach 2026-09-21 15:27:26 +02:00
  • 8ad472d1bc fix(agent): single-instance guard counts a same-named process only in session 0 Oliver Kieselbach 2026-09-21 15:23:23 +02:00
  • fc5e2cd751 chore: bump internal (D-259 final, SLA plan and backlog) Oliver Kieselbach 2026-09-21 15:10:00 +02:00
  • 9540791441 fix(web): SLA page headlines the window the alerts judge and shows "No data" for an empty period Oliver Kieselbach 2026-09-21 15:08:38 +02:00
  • 058da1627f fix(sla): alert and dashboard judge one rolling 30-day window; an empty period is no data; a lasting breach repeats only on new enrollments Oliver Kieselbach 2026-09-21 15:08:16 +02:00
  • cb9b3fe404 fix(agent): diagnostics paths collect exactly the folder the guard validated, and never the hard-blocked event logs Oliver Kieselbach 2026-09-21 14:58:03 +02:00
  • 12315b2f2d fix(web): Monitoring nav is ordered by admin usage, Progress Portal moves to the end Oliver Kieselbach 2026-09-21 13:56:38 +02:00
  • 0a4a051866 feat(web): dashboard stat cards get one descriptive icon per metric, red only when sessions failed Oliver Kieselbach 2026-09-21 13:40:13 +02:00
  • f47d961947 fix(web): rule pages tell non-admins that contributing is admin-only instead of failing with 403 Oliver Kieselbach 2026-09-21 13:27:25 +02:00
  • c701d0d694 Merge branch 'main' of https://github.com/okieselbach/AutopilotMonitor Oliver Kieselbach 2026-09-19 14:40:22 +02:00
  • d4a3edf849 fix(offboarding): a completed run removes the tenant's superseded dead letters (D-256) Oliver Kieselbach 2026-09-19 14:09:28 +02:00
  • e164eac1eb feat(backend,web): manual maintenance trigger answers 202, the run is single-flight (D-255) Oliver Kieselbach 2026-09-19 13:50:06 +02:00
  • c81591b498 feat(offboarding): operator retry of a Failed tenant offboarding from Tenant Management Claude 2026-09-18 10:30:06 +00:00
  • d8c03d9d95 fix(web): manual maintenance trigger waits for the run instead of timing out at 30 s Oliver Kieselbach 2026-09-18 11:18:50 +02:00
  • ffb133f0b9 fix(backend): platform counters no longer freeze under retention (D-254) Oliver Kieselbach 2026-09-18 10:48:49 +02:00
  • b3fe321f0d fix(offboarding): owned-group wipe no longer poisons every tenant offboarding Oliver Kieselbach 2026-09-18 09:40:51 +02:00
  • 69d210c51d chore(deps): bump the mcp group (#156) dependabot[bot] 2026-09-15 11:33:51 +02:00
  • 06a88e9897 chore(deps): bump the web group (#157) dependabot[bot] 2026-09-15 11:33:35 +02:00
  • aee30f68e8 chore(submodule): tenant-management-filters plan and deploy item B-h7n Oliver Kieselbach 2026-09-15 11:29:25 +02:00
  • 3db9a884de feat(web): facet filters for the Tenant Management list Oliver Kieselbach 2026-09-15 11:28:57 +02:00
  • 0037b8cb12 chore(submodule): WDP docs push and Cloud PC automatic-mode backlog items Oliver Kieselbach 2026-09-12 23:59:48 +02:00
  • 205b13dbb9 chore(submodule): backlog items for the ARM64 requirements docs push Oliver Kieselbach 2026-09-12 23:24:54 +02:00
  • b938a03367 chore(submodule): backlog item for the published-DPA deploy Oliver Kieselbach 2026-09-11 23:36:09 +02:00
  • d474c2be9f fix(web): privacy and terms point to the published DPA instead of "available on request" Oliver Kieselbach 2026-09-11 23:35:59 +02:00
  • 96390beeb9 chore(submodule): drop the separate todo file from the working-file rules Oliver Kieselbach 2026-09-11 23:29:23 +02:00
  • fe63a0a352 chore(submodule): park the zone-anchoring plan behind B-ugv Oliver Kieselbach 2026-09-11 22:02:00 +02:00
  • 2e36e9c234 fix(web): Fleet Health model rows without failures link to all sessions of the model — the "Health by Device Model" deep link carried status=Failed unconditionally, so a 100 % row landed on a list that is empty by definition; the Failed filter now travels only when the bucket has failed sessions, and the link title says which list opens Oliver Kieselbach 2026-09-11 22:00:47 +02:00
  • b83aa6d97d chore(submodule): plan for the AgentExecutor.log zone-anchoring defect Oliver Kieselbach 2026-09-11 21:52:17 +02:00
  • f42fcbcb3c fix(web): the app/script panel divider names the ESP phase, not the assignment — sections read "Device Setup" / "Account Setup" from the phase timeline's table with a tooltip that device-assigned work runs under Account Setup too (a Cloud PC runs its device scripts after the user signed in), Device Preparation sessions get no divider, and user-assigned app and download rows carry a User pill from the extension's own targeting Oliver Kieselbach 2026-09-11 21:48:20 +02:00
  • f70ba354f8 feat(web): additional managed tenants are add-ons — the Pro plan card reads "2 managed tenants included, additional tenants as add-ons" and a full slot count in Delegated Access suggests buying add-ons instead of asking for a larger package Oliver Kieselbach 2026-09-11 20:03:51 +02:00
  • fc17047290 feat(web): plan cards — the Pro MSP line says 2 managed tenants are included and more are available on request Oliver Kieselbach 2026-09-11 19:54:21 +02:00
  • 7bbc2cbddf feat(backend): the tenant row records the accepted DPA version — HandleNewTenantDomainAsync writes Constants.CurrentDpaVersion (2026-09-1.7) into TenantConfiguration.DpaVersion in the same first write as OnboardedBy, once, and later logins never touch it; the field is system-owned (patch deny-list, PUT preserve, revert-protected), projected by config/all, the MCP tenant list and the GA tenant report; no backfill (D-252) Oliver Kieselbach 2026-09-11 19:30:16 +02:00
  • 9a78daa880 chore(submodule): work files — D-251 settled (DPA accepted with the onboarding) Oliver Kieselbach 2026-09-11 19:05:10 +02:00
  • 5d532d3dbc feat(web): Pro is available — /buy hands off to Microsoft Marketplace and Cleverbridge (no price on the page), the plan cards show the list price of €149 / month, the self-service 30-day trial opens in the portal Plan section, and the get-started sign-in waits for a Terms of Use + DPA tick (D-251) Oliver Kieselbach 2026-09-11 18:45:56 +02:00
  • a22c26eb9d feat(web): session detail — the Download, Install and Script panels mark where the user phase begins: a quiet "Device phase" caption over the first row and a "User phase" divider before the first row that started after the device entered Account Setup, so user-targeted apps and user-context scripts stand out; sessions without a user phase render unchanged Oliver Kieselbach 2026-09-11 17:28:41 +02:00
  • b84c467255 chore(web): admin settings nav — Config Reseed and Usage Plans move up behind Diagnostics Log Paths so the MCP-related entries (Usage Plans, MCP Users, Delegated Admins, Tenant Groups) sit together Oliver Kieselbach 2026-09-11 17:02:10 +02:00
  • 53124e94a6 feat(web): Optional Graph capabilities — tick features in the table to build the grant command (all ticked ⇒ -Features All, ScriptDisplayNames pre-ticked), Copy permissions follows the selection, and the grant card names Azure Cloud Shell as a run location Oliver Kieselbach 2026-09-11 16:48:16 +02:00
  • 838068fd31 chore(submodule): work files for the MCP quota build (D-250) — commit hashes and the staging-list lesson Oliver Kieselbach 2026-09-11 16:46:56 +02:00
  • 71282f3556 feat(backend,web,mcp): the MCP quota follows the delegating tenant — every request is checked and counted on the caller's home tenant, a managed tenant is never charged or blocked by its manager's reads, and every delegation slot bought beyond the edition's included ones grows both the account and the organization windows by operator-editable per-slot values (D-250) Oliver Kieselbach 2026-09-11 16:46:27 +02:00
  • 7080dcc45a fix(backend): rule catalogs — a GitHub reseed newer than the deployed build closes the embedded self-seed (RuleCatalogStamp), the IME self-seed sunsets retired patterns, and IME pattern health reads the global partition instead of the embedded catalog (D-249) Oliver Kieselbach 2026-09-11 12:07:23 +02:00
  • 5a62714dc2 chore(submodule): fleet baseline for the IME overwrite fix (40.7 % fallback before, 0 % after) and the P6 todo v2.0.1461 Oliver Kieselbach 2026-09-11 03:46:37 +02:00
  • c930d18f1e feat(agent,mcp): the IME log tracker's poll-loop pauses become measurable — longest pass and longest gap between passes as session maxima in agent_metrics_snapshot, ime_pattern_hits and the MCP coverage block (B-wr4) Oliver Kieselbach 2026-09-11 03:41:43 +02:00
  • 583c81c9a8 chore(submodule): IME overwrite fix verified in the field (2.0.1460, five held results), B-pd2/B-2rs closed, B-wr4 opened Oliver Kieselbach 2026-09-11 03:26:40 +02:00
  • 483ec8b8e0 Merge branch 'main' of https://github.com/okieselbach/AutopilotMonitor v2.0.1460 Oliver Kieselbach 2026-09-11 02:55:29 +02:00
  • 328446864a chore(submodule): todo for P5 of the IME overwrite fix Oliver Kieselbach 2026-09-11 02:53:02 +02:00
  • 106480ef52 fix(agent,rules): health-script lines never feed a platform-script slot — PS-SCRIPT-EXITCODE deleted, HS-INVOCATION opens an unowned invocation in the IME log, the no-marker fallback stays within files platform runs open in (D-248) Oliver Kieselbach 2026-09-11 02:52:43 +02:00
  • d3a45f958d chore: regenerate rules/dist + generated TS from individual files github-actions[bot] 2026-09-11 00:29:54 +00:00