1 hour ago
eb94cd0
Fix PermissionResolver: fallback for missing/empty tables; add seed migration for roles and permissions
2 hours ago
0f7a6e4
Fix production auth: disable IP/UA binding (breaks reverse-proxy), add /api/v1/auth/* aliases, prepare PHP-FPM reload
2 hours ago
65b4457
Phase 4 cleanup & polish: param migration seeds, gnexus-ui-kit LoginPage styles, single .env
3 hours ago
41187ed
Phase 3 infrastructure hardening: IP/UA binding, nginx getallheaders fallback, auth rate limiting, permission cache
3 hours ago
e7afa05
Phase 2 session stability: refresh queue, Bearer fallback, proactive refresh
3 hours ago
0958b86
Update auth-fix-plan: mark Phase 1 tasks completed
e90acee
Phase 1 auth security hotfixes: cookie-based session, bearer checks, router guard sync
3 hours ago
dc6249e
Fix OAuth callback URL: insert access_token query string BEFORE hash fragment so Vue can read it via window.location.search
4 hours ago
09e1d27
Fix OAuth callback: extract access_token in main.js before auth init, prevent 401 redirect loop in client.js
4 hours ago
b1243af
Fix OAuth callback: remove refreshToken() from init() to prevent 401 cascade that clears access_token
5 hours ago
18cca97
Add server/dist build to repository for zero-dependency prod deploy
5 hours ago
b17262b
Fix AppController and EventsHandlers to use __DIR__ instead of app()->root_folder() for prod compatibility
5 hours ago
7f7ad82
Integrate Vue webclient into server: serve SPA from /, remove proxy.php, update auth redirects
568f25e
Fix UserResolver: use ThinBuilder::insert() return value
b98fb4c
Fix ErrorHandler exception_handler type cast
18 hours ago
74d4c0f
Route all auth/login requests through proxy.php for cross-domain SPA
7cf585f
Add Bearer token persistence for cross-domain SPA auth
20 hours ago
0552de9
Phase 2: Protect Areas, Scripts, Firmware REST API endpoints with permission checks
44250a7
Phase 2: Protect DevicesRESTAPIController endpoints with permission checks
aeabd40
Update docs: guest is explicit authenticated role, no anonymous access
...
1 day ago
ed17a89
Fix text_msg call in remove_device: use FCONF instead of undefined app()-method
1 day ago
32ab262
Fix ErrorHandler to catch Throwable (not just Exception) and safe null-check in remove_device
1 day ago
2d1a3cd
Move scan debug log to sys temp dir as well
1 day ago
c4f44c7
Move scan lock file to sys temp dir to avoid prod permission issues
1 day ago
3a0b92b
Fix web proxy timeout 30s→120s to match scan duration
57b26de
Increase scan batch size 8→32 to cut usleep overhead (~54s→37s)
0b9be7b
Fix scan speed: use CURLOPT_*_MS for sub-second timeouts (was ~3s per IP on Linux)
...
1 day ago
b087ced
Revert ControlScripts back to repo-root automation/ (Phase 7 structure)
5 days ago
859091c
Use gnexus-ui-kit semantic colors for device status dot and add state components
bdcc3d6
Replace connect column with inline status dot in device table
0ac4d77
Make toast backgrounds opaque for readability
...
5 days ago
0843dc5
Phase 5: Extract reusable useAsyncRequest composable for stores
f028f7f
Improve AppErrorState with statusCode, type, and copyable details (Phase 4)
fea9f1d
Add toast notifications for mutations (Phase 3)
...
5 days ago
214ed50
PageActionsDropdown: enlarge trigger button to 44x44px / 24px icon
921e921
PageActionsDropdown: use ph class instead of ph-bold for icon
db970ba
PageActionsDropdown: use plain btn-icon instead of GnButton
...
5 days ago
de3da4a
Use class basename for scope field in script view
77677c6
Add script detail pages with scope grouping
c2e496d
Add scope field to script view output
...
10 days ago
7dd4323
Bump frontend version to 0.2.0
6d5d05a
Style fixes: timeline hover, page-header layout, toolbar sort icon
6b23a8f
Refactor detail-header to GnPageHeader and remove obsolete card hover override
...
10 days ago
6155985
Implement browser extension MVP: autofill, save prompt, popup UI
11 days ago
5227ba0
v0.4.0 — GnRepeater, redesigned checkbox/radio
1c8deba
Add GnRepeater component for dynamic field groups
57eff54
Add GnTagInput component for multi-value string input
...
11 days ago
5cdd81d
v0.3.0 — GnUserCard, NavigationShell footer slot, Vue demo partials
9a04b6d
Fix Vue demo visual issues and expand component showcase
11 days ago
c6128b4
Add GnCopyButton component and strict icon rule in docs
9c87b8e
Remove hover animations from all card variants
c2f4893
Add horizontal card to demo page
...
13 days ago
2082db2
Always set allow_mcp=true for secrets created through MCP tools
14 days ago
cd25d71
Fix MCP /mcp-protocol/ 421 error: disable DNS rebinding protection and fix SPA fallback
17 days ago
5a95c60
Serve frontend build from FastAPI
b054ec0
Fix OAuth callback expiry handling
9e55b81
Harden export import auth and MCP access
...
25 days ago
41d0743
Add inventory creation workflow guidance to MCP instructions
12e9bcf
Make docs optional in host schema and disable missing-doc-link-target validation
25 days ago
6f77f91
Include validation issue details in pending change rollback errors
25 days ago
59626b4
Describe MCP inventory write schema
25 days ago
182bd0b
Fix MCP usage parameter guidance
25 days ago
7e0a3b7
Improve MCP knowledge maintenance guidance
26 days ago
406b19b
Deploy: add nginx, systemd services, scripts, MCP info endpoint
27 days ago
aa1eca1
Document proactive MCP usage for agents
27 days ago
7d4c99d
Add pending change detail and apply controls to UI
896d6c7
Add document drill-down to UI
fb20979
Add inventory drill-down to UI
...
29 days ago
ecd76f9
Prepare package release flow
1bf7fc6
Document Vue adapter usage and package checks
...
on 7 May
c2d9f87
Add Vue form adapter components
on 7 May
1794ed3
Add Vue navigation overlay adapters
69e4f35
Harden Vue adapter smoke path
f3c13c7
Expand Vue adapter component coverage
...
on 7 May
a8375fc
Add tabs component and refresh modal/logo UI