Commit Graph

519 Commits

Author SHA1 Message Date
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
Oliver Kieselbach c76684cbb7 added retry logic on backend and agent on transient errors, fix cache handling (no session id included anymore) 2026-03-10 22:52:30 +01:00
Oliver Kieselbach 3e58975afa added docs agent site 2026-03-10 18:31:56 +01:00
Oliver Kieselbach 30a2900256 enhanced logging on every level, adressed domain issues everywhere the correct https domain is now used with www 2026-03-10 18:17:18 +01:00
Oliver Kieselbach 20f84722d8 added --run-ime-matching parameter to agent 2026-03-10 17:24:27 +01:00
Oliver Kieselbach 8ef67f2cb8 added trace messages in RegistryWatcher and in UI for agent config 2026-03-10 16:15:30 +01:00
Oliver Kieselbach ec7d76db75 Changed RegistryWatcher to Thread agnostic 2026-03-10 15:37:32 +01:00
Oliver Kieselbach c65426e317 Re-worked RegistryWatcher more stable now 2026-03-10 15:04:30 +01:00
Oliver Kieselbach 61b1c2c948 fix summary cleanup - wrong CWD caused open handle and no cleanup 2026-03-10 14:54:20 +01:00
Oliver Kieselbach 6bceae5f9b fis summary dialog cleanup 2026-03-10 14:04:29 +01:00
Oliver Kieselbach fbd8b68a26 fix registry watcher again 2026-03-10 14:02:19 +01:00