Hartmut
|
a36bca7ca7
|
refactor(admin): split system settings into section modules
|
2026-03-30 20:04:06 +02:00 |
|
Hartmut
|
a19d2cbae0
|
refactor(settings): adopt environment-only runtime secret flow
|
2026-03-30 19:55:06 +02:00 |
|
Hartmut
|
fed7aa5b61
|
refactor(runtime): prefer env-backed secrets at runtime
|
2026-03-30 19:17:32 +02:00 |
|
Hartmut
|
4f5d410b94
|
docs(architecture): refresh hardening status
|
2026-03-30 18:56:53 +02:00 |
|
Hartmut
|
dd71e8f80b
|
fix(comment): align mention audience with entity visibility
|
2026-03-30 18:50:36 +02:00 |
|
Hartmut
|
34067f1576
|
fix(tooling): harden database env loading
|
2026-03-30 14:42:44 +02:00 |
|
Hartmut
|
be6be64e3d
|
test(web): cover timeline and estimate fallback flows
|
2026-03-30 14:37:10 +02:00 |
|
Hartmut
|
8655cb5bfa
|
test(api): cover timeline fallback paths
|
2026-03-30 14:26:47 +02:00 |
|
Hartmut
|
82466a4e34
|
fix(api): derive secure sse subscriptions
|
2026-03-30 14:20:18 +02:00 |
|
Hartmut
|
27b0e38b93
|
fix(web): portal remaining overlay menus
|
2026-03-30 14:20:05 +02:00 |
|
Hartmut
|
ea2efabd7f
|
fix(web): portal autocomplete overlays
|
2026-03-30 14:14:15 +02:00 |
|
Hartmut
|
f0bea6235d
|
fix(web): reuse project combobox in timeline popovers
|
2026-03-30 13:34:59 +02:00 |
|
Hartmut
|
9268a38df4
|
fix(web): restore comment typing and portal combobox menus
|
2026-03-30 13:32:51 +02:00 |
|
Hartmut
|
5b60cf5553
|
fix(web): portal skill tag suggestions
|
2026-03-30 13:29:28 +02:00 |
|
Hartmut
|
fcfe09ac1d
|
fix(web): open project demand strips in demand popover
|
2026-03-30 13:26:54 +02:00 |
|
Hartmut
|
5a345cd2e4
|
fix(web): portal timeline hover tooltips
|
2026-03-30 13:19:43 +02:00 |
|
Hartmut
|
e20bf64eef
|
fix(web): portal timeline overlays above stacked panels
|
2026-03-30 13:18:08 +02:00 |
|
Hartmut
|
58824545fc
|
fix(assistant): align tool metadata with router audiences
|
2026-03-30 13:18:00 +02:00 |
|
Hartmut
|
01e5f273c6
|
test(resource): cover self-service linked resource access
|
2026-03-30 13:15:16 +02:00 |
|
Hartmut
|
94ad3004b7
|
docs(scope): mark notification follow-up complete
|
2026-03-30 12:33:54 +02:00 |
|
Hartmut
|
a0fcc0afbb
|
test(notification): expand audience auth coverage
|
2026-03-30 12:33:10 +02:00 |
|
Hartmut
|
019c267435
|
test(api): harden estimate races and user auth boundaries
|
2026-03-30 12:32:51 +02:00 |
|
Hartmut
|
3c4894a966
|
docs(scope): refresh backlog status after hardening batch
|
2026-03-30 12:25:56 +02:00 |
|
Hartmut
|
d7c295b51c
|
test(project): cover image config checks
|
2026-03-30 12:24:33 +02:00 |
|
Hartmut
|
732538857b
|
test(api): cover remaining timeline and broadcast fallback races
|
2026-03-30 12:23:46 +02:00 |
|
Hartmut
|
a9a01e8df0
|
test(resource): cover chapter and skill import access
|
2026-03-30 12:23:35 +02:00 |
|
Hartmut
|
d3ad350821
|
test(assistant): document self-service approval access
|
2026-03-30 12:20:55 +02:00 |
|
Hartmut
|
c9a35452dc
|
fix(blueprint): require planning access for global field defs
|
2026-03-30 12:18:59 +02:00 |
|
Hartmut
|
649c8feb22
|
fix(api): harden broadcast transactions and estimate fallbacks
|
2026-03-30 12:18:10 +02:00 |
|
Hartmut
|
c82a146f84
|
docs(scope): add audience scoping backlog
|
2026-03-30 12:16:16 +02:00 |
|
Hartmut
|
016f862405
|
fix(holiday-calendar): scope resource holiday reads
|
2026-03-30 12:10:52 +02:00 |
|
Hartmut
|
c7434c968e
|
fix(vacation): scope preview requests to owned resources
|
2026-03-30 12:07:26 +02:00 |
|
Hartmut
|
6a6e98b5f7
|
fix(api): harden broadcast and assistant fallback errors
|
2026-03-30 12:03:27 +02:00 |
|
Hartmut
|
22cff9648e
|
test(entitlement): cover self-service and role boundaries
|
2026-03-30 12:01:34 +02:00 |
|
Hartmut
|
3a29ce4332
|
fix(blueprint): require planning access for detailed reads
|
2026-03-30 11:55:43 +02:00 |
|
Hartmut
|
7aa32f8a5c
|
test(api): harden assistant tool error handling
|
2026-03-30 11:51:59 +02:00 |
|
Hartmut
|
4ce8577824
|
test(api): cover notification and user edge cases
|
2026-03-30 11:51:26 +02:00 |
|
Hartmut
|
4c542d0015
|
fix(assistant): dedupe missing approval storage warnings
|
2026-03-30 11:49:05 +02:00 |
|
Hartmut
|
978cd9184d
|
test(assistant): align admin tool descriptions
|
2026-03-30 11:45:29 +02:00 |
|
Hartmut
|
b254ab70ba
|
test(auth): cover notification and user router audiences
|
2026-03-30 11:08:14 +02:00 |
|
Hartmut
|
c8e82ac221
|
feat(settings): restrict AI readiness checks to admins
|
2026-03-30 11:00:42 +02:00 |
|
Hartmut
|
81a46c81bd
|
feat(blueprint): scope summary reads to planning audience
|
2026-03-30 10:55:28 +02:00 |
|
Hartmut
|
9b764008c3
|
feat(management-level): scope reads to planning audience
|
2026-03-30 10:45:44 +02:00 |
|
Hartmut
|
c2ca6a6d0d
|
feat(holiday-calendar): restrict catalog reads to admins
|
2026-03-30 10:36:05 +02:00 |
|
Hartmut
|
54769ca0f5
|
feat(utilization-category): scope reads to planning audience
|
2026-03-30 10:29:40 +02:00 |
|
Hartmut
|
ae74700f7c
|
feat(client): scope planning reads to explicit audience
|
2026-03-30 10:24:52 +02:00 |
|
Hartmut
|
2b514ea962
|
feat(org-unit): scope structural reads to resource overview
|
2026-03-30 10:17:57 +02:00 |
|
Hartmut
|
65fe7ce04f
|
feat(assistant): align resource tool visibility with read audiences
|
2026-03-30 10:11:55 +02:00 |
|
Hartmut
|
bd654251f7
|
feat(master-data): scope detail reads to resource overview
|
2026-03-30 10:08:44 +02:00 |
|
Hartmut
|
8495b83b3e
|
docs(security): document audience scoping rollout rules
|
2026-03-30 09:59:33 +02:00 |
|