Commit Graph

529 Commits

Author SHA1 Message Date
Oliver Kieselbach ddb8daceee added self-deploying mode detection and event tracking for the enrollment finalization process. 2026-03-17 19:08:48 +01:00
Oliver Kieselbach 182357cc91 cleanup 2026-03-17 18:24:01 +01:00
Oliver Kieselbach c6899cf898 fixed new gather rules and added severity override 2026-03-17 18:19:21 +01:00
Oliver Kieselbach 5e99c96821 added dev workfows 2026-03-17 18:00:07 +01:00
Oliver Kieselbach 280a413dac added centralized guardrails for easier maintenance, added some more gather rules 2026-03-17 17:17:08 +01:00
Oliver Kieselbach 13d0e0c23e fix geo drill down 2026-03-17 16:47:21 +01:00
Oliver Kieselbach 9d3e254d2e added drill down in geographic performance 2026-03-17 16:42:43 +01:00
Oliver Kieselbach ca253b190f removed backend url check, only a few critical urls to verify connectivity 2026-03-17 16:08:40 +01:00
Oliver Kieselbach bd47760060 added Network Change Detector 2026-03-17 15:54:48 +01:00
Oliver Kieselbach ec08d258c9 live validation of guard rails, mobile view fixes, enriched enrollment_type event 2026-03-17 15:12:35 +01:00
Oliver Kieselbach 2976d263ad Merge branch 'claude/fix-session-list-limit-xQYnL' 2026-03-17 14:00:37 +01:00
Oliver Kieselbach 4ebe9f7c44 re-architectured session handling with session index table 2026-03-17 13:46:43 +01:00
Oliver Kieselbach 91d46e5cde added backend workflow 2026-03-13 23:35:30 +01:00
Oliver Kieselbach b014005dec fix rules 2026-03-13 23:17:29 +01:00
Claude 9c31d21cea Sync unrestrictedMode state from server response after save
After saving tenant config, the unrestrictedMode form state variable
was not updated from the server response. This could cause UI
inconsistency where the hasChanges check gets confused about the
current vs saved state.

https://claude.ai/code/session_01Xcix9bwMXijqN7xa57Vko6
2026-03-13 20:32:06 +00:00
Claude 6c2883f833 Fix gather rules edit UI and add missing table entity mapping
1. Gather rules edit: ensure expandedRuleId is explicitly set in
   startEditing() so the card stays expanded when entering edit mode.
   Add stopPropagation to Export/Edit/Delete action buttons as a
   defensive measure against click event bubbling.

2. Add missing EnrollmentSummaryLaunchRetrySeconds to both
   ConvertToTableEntity and ConvertFromTableEntity in
   TenantConfigurationService - this property was never persisted
   to Azure Table Storage.

https://claude.ai/code/session_01Xcix9bwMXijqN7xa57Vko6
2026-03-13 20:30:24 +00:00
Oliver Kieselbach 023a76cbc7 Merge pull request #23 from okieselbach/claude/fix-tenant-config-saving-KdDPg 2026-03-13 19:39:19 +01:00
Claude f966724373 Fix tenant config saving and gather rules editing
1. UnrestrictedMode was not persisted to Azure Table Storage because
   it was missing from both ConvertToTableEntity and ConvertFromTableEntity
   mappings in TenantConfigurationService.

2. GatherRule toggle/edit destroyed rule data: the toggle sent only
   { enabled: bool } which deserialized with IsBuiltIn=false, causing
   the backend to store a near-empty custom rule instead of updating
   the rule state. Fixed by checking global rules for type determination
   in UpdateRuleAsync (backend) and including isBuiltIn/isCommunity in
   the toggle payload (frontend).

3. GatherRule edit payload was missing enabled/author/createdAt, causing
   edits to reset the enabled state to false and lose metadata.

https://claude.ai/code/session_01Xcix9bwMXijqN7xa57Vko6
2026-03-13 17:57:06 +00:00
Claude 669374ba90 Finalize plan: dual-table architecture with SessionsIndex for pagination
Dual-table approach keeps Sessions table unchanged (O(1) point queries)
and adds SessionsIndex with inverted-tick RowKey for efficient time-sorted
listing and cursor-based Load More. Includes auto-migration strategy.

https://claude.ai/code/session_015CiKa2WSHQ4C3pvXcPJ8Ww
2026-03-13 10:59:08 +00:00
Claude b79817c8c0 Add implementation plan for session table redesign with inverted-tick RowKey
Plan for cursor-based pagination: change RowKey from SessionId to
invertedTicks_SessionId so Azure Table Storage returns newest sessions
first natively, enabling efficient $top=100 queries and Load More.

https://claude.ai/code/session_015CiKa2WSHQ4C3pvXcPJ8Ww
2026-03-13 10:18:52 +00:00
Oliver Kieselbach 4b2e9e1660 Merge pull request #22 from okieselbach/claude/static-landing-page-JnDpu 2026-03-12 11:33:45 +01:00
Claude 6c6eb60ee3 Update TypeScript build info after type check
https://claude.ai/code/session_01BwtFQovtdDWzUcykXQuMYp
2026-03-12 10:27:01 +00:00
Claude 544c320769 Make landing page a Server Component for static HTML rendering
Convert page.tsx from "use client" to a Server Component so crawlers
and users without JavaScript see the full page content instead of just
a loading spinner.

Extract interactive parts into small Client Components:
- AuthGate: handles auth redirect + loading overlay (no longer blocks SSR)
- LoginButton: wraps login() calls
- PlatformStats: fetches live stats, SSRs with defaults

Move CSS animations (stepReveal, dotPulse) from styled-jsx to globals.css
so they work in Server Components.

https://claude.ai/code/session_01BwtFQovtdDWzUcykXQuMYp
2026-03-12 10:26:31 +00:00
Claude 7a0b87c206 Add plan for static landing page (no-JS fallback)
Document the approach to convert the landing page from a full
"use client" component to a Server Component, so crawlers and
users without JavaScript see the complete page content.

https://claude.ai/code/session_01BwtFQovtdDWzUcykXQuMYp
2026-03-12 08:30:42 +00:00
Oliver Kieselbach 49b6d0b59a SEO meta 2026-03-12 07:34:35 +01:00
Oliver Kieselbach 0e93d0b9a3 fix dark mode on system health 2026-03-12 01:08:30 +01:00
Oliver Kieselbach 004881fd58 fixed overall status 2026-03-12 01:00:46 +01:00
Oliver Kieselbach db0c6b9c46 changed health card details 2026-03-12 00:55:32 +01:00
Oliver Kieselbach 23b0eae9dc more healh checks 2026-03-12 00:42:17 +01:00
Oliver Kieselbach 22accf00bc changed docs order in navbar 2026-03-12 00:28:07 +01:00
Oliver Kieselbach a3875d6dcf typo 2026-03-12 00:25:39 +01:00
Oliver Kieselbach 365f940c1c status clarification in docs general 2026-03-12 00:20:41 +01:00
Oliver Kieselbach ce25c94aad added unrestricted mode to disable most guardrails (tenant decision) 2026-03-12 00:14:07 +01:00
Oliver Kieselbach 6ab9702527 added general docs 2026-03-11 23:58:31 +01:00
Oliver Kieselbach 20c2b7a196 updated checkout action to v4 2026-03-11 22:07:02 +01:00
Oliver Kieselbach cc085d5d55 re-worked notification system to support more webhook providers (current, legacyTeamsProvider, TeamsWorkflowProvider, Slack) 2026-03-11 21:59:14 +01:00
Oliver Kieselbach dce65cce0f fixed spacing + color 2026-03-11 21:06:40 +01:00
Oliver Kieselbach 61649b2db8 added header color to validation section 2026-03-11 20:45:18 +01:00
Oliver Kieselbach 42c4f28946 fix mobile views 2026-03-11 20:41:44 +01:00
Oliver Kieselbach d726845758 fix re-auth and mobile views 2026-03-11 20:03:13 +01:00
Oliver Kieselbach 5fc8c9fd55 added data processing info to privacy page 2026-03-11 13:28:00 +01:00
Oliver Kieselbach 0bcf953550 fix summary dialog to not show skipped apps 2026-03-11 13:07:22 +01:00
Oliver Kieselbach d01f7bf4c7 Added hint to participate for rules creation via GitHub 2026-03-11 12:46:00 +01:00
Oliver Kieselbach 276b5e8ab5 fix docs link 2026-03-11 12:35:55 +01:00
Oliver Kieselbach 0618b9ff96 fine tuning Operator Role 2026-03-11 12:32:11 +01:00
Oliver Kieselbach bdaa048b09 Backend Resilience & Cache Enhancements 2026-03-11 12:25:06 +01:00
Oliver Kieselbach 131b93d384 enriched agent_startup event with agent startup params 2026-03-11 11:50:46 +01:00
Oliver Kieselbach 344c8e9c5d adjusted settings page sidebar 2026-03-11 11:37:31 +01:00
Oliver Kieselbach 1edc4d5647 Update LinkedIn and GitHub links in SectionPrivatePreview
Fixed links
2026-03-11 10:48:23 +01:00
Oliver Kieselbach c1eb9ba98a sidebar for tenant settings and admin config 2026-03-10 23:03:59 +01:00