shenlan
3777ba22ca
Ensure html2canvas loads only in browser ( #652 )
2025-11-09 16:34:54 +08:00
shenlan
9aec855a22
fix: lazily load html2canvas in poster export ( #651 )
2025-11-09 16:15:11 +08:00
shenlan
2d11e439b6
Align dynamic slug names for tenant and product routes ( #650 )
2025-11-09 15:59:20 +08:00
shenlan
b06cf2de3e
feat(dashboard): add marketing product pages ( #649 )
2025-11-09 15:44:38 +08:00
shenlan
0da7de8cb7
Rename CloudNative Suite to Cloud-Neutral in dashboards ( #648 )
2025-11-09 10:06:34 +08:00
Haitao Pan
2263707d13
fix(dashboard): resolve @types/react version conflict
...
- Downgrade @types/react from 19.1.8 → 18.3.26
- Align with @types/react-dom and @testing-library/react
- No build errors, all dependencies compatible
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2025-11-06 11:49:09 +08:00
Haitao Pan
4976ca1efd
fix(dashboard): eliminate middleware deprecation warning
...
- Rename middleware.ts → proxy.ts
- Update to use default proxy export (Next.js 16)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2025-11-06 11:40:15 +08:00
Haitao Pan
f3d0a7f931
fix(dashboard): resolve npm run build errors
...
- Fix module path in prebuild script (../../scripts → ../scripts)
- Update API routes to use Promise-based params for Next.js 16
- Install @types/sanitize-html and @types/js-yaml
- Fix component prop naming (loading → isLoading, saving → isSaving, etc.)
- Update VLESS config type definition with missing 'id' property
- Fix TypeScript type conflicts and export declarations
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2025-11-06 11:07:30 +08:00
Haitao Pan
5f82e984b4
fix: update cookies() API for Next.js 16 compatibility
...
- Updated 6 API route handlers to use await cookies()
- Fixed: auth/session, auth/login, auth/mfa/* endpoints
- Resolves "cookies().get is not a function" errors
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 10:35:56 +08:00
Haitao Pan
288a049141
feat(dashboard): add REGION env variable support
...
- Enable REGION environment variable to control regional config overrides
- Prioritize RUNTIME_ENV and REGION over file-based configuration
- Supports: RUNTIME_ENV=prod|sit and REGION=cn|global|default
- Loads from dashboard/config/runtime-service-config.{env}.yaml
- Fixes configuration loading with Turbopack compatibility
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 10:28:35 +08:00
Haitao Pan
b4696470f6
feat(dashboard): upgrade Next.js 14 → 16 with Turbopack support
...
- Fix @theme module resolution for Turbopack
- Add external image domain config (dl.svc.plus)
- Resolve YAML file module type errors
- Support RUNTIME_ENV env var for config selection
- Optimize next.config.mjs for Next.js 16 compatibility
Closes #upgrade-next16
2025-11-06 10:21:19 +08:00
Haitao Pan
0b3fab7d28
cleanup(auth): remove test/docs files from internal/auth
...
- Deleted non-essential files from rag-server/account internal/auth:
- Removed: test files, docs (README, IMPLEMENTATION), cache/client modules
- Kept: core JWT auth middleware and token_service only
- Simplified to JWT service-to-service authentication
- Claims retain UserID/Email/Roles business info
2025-11-05 22:58:39 +08:00
Haitao Pan
a1e4cc9146
remove: remove internal/auth/mfa_service.go
...
• Deleted unused mfa_service.go file
• Fixed import in api/api.go for auth package
• Build verified and working
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 22:25:15 +08:00
Haitao Pan
3a4f7105c7
update TOKEN_AUTH_SUMMARY.md
2025-11-05 22:16:18 +08:00
Haitao Pan
96e4c8d719
feat(auth): implement rag-server remote auth middleware
...
Implement complete authentication middleware for rag-server:
- Remote token verification via accounts-service
- 60s TTL cache with background GC
- Gin middleware integration
- Role-based access control
- Zero-trust architecture (no private keys)
- Health check endpoint
Files:
- internal/auth/client.go (350 lines)
- internal/auth/middleware_verify.go (280 lines)
- internal/auth/cache.go (180 lines)
- internal/auth/example_test.go (150 lines)
- internal/auth/README.md (550 lines)
- cmd/xcontrol-server/main.go (updated)
- config/config.go (added AuthCfg)
- config/server.yaml (removed secrets)
🤖 Generated with [Claude Code](https://claude.com/claude-code )
2025-11-05 21:01:20 +08:00
Haitao Pan
8edeb75391
feat(auth): implement dual-layer token authentication with config support
...
- Add auth.enable configuration field (default: true)
- Add TokenService initialization in account service
- Implement token exchange endpoint (/api/auth/token/exchange)
- Implement token refresh endpoint (/api/auth/token/refresh)
- Protect routes with JWT authentication middleware
- Update configuration structures for all services
- Support accessSecret with configurable expiry times
- Update token management script to handle all token types
- Validate auth configuration consistency across services
2025-11-05 20:11:23 +08:00
Haitao Pan
c1a26852ae
feat(test): add test suite for services (build, dry-run, local-test)
2025-11-05 19:42:45 +08:00
Haitao Pan
7ef1f960fb
feat(auth): implement token authentication system across services
...
- Add token service and MFA service to account service
- Implement auth middleware for request validation
- Add token-based auth to dashboard and RAG server
- Update configuration files for auth settings
2025-11-05 19:28:23 +08:00
Haitao Pan
097b88c0a8
fix(auth): resolve panel redirect loops and clean up authentication flow
...
- Fix middleware redirect path from /auth/login to /login
- Remove duplicate authentication checks from panel routes (index, account, mail)
- Configure public routes: only /, /download, /docs are public
- All other pages including /panel require authentication
- Streamline auth flow: middleware handles auth, pages render directly
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-05 17:22:24 +08:00
Haitao Pan
36dcb53256
update: account/config/sync.yaml
2025-11-05 16:36:08 +08:00
Haitao Pan
9e1112758a
feat(dashboard-fresh): migrate and integrate dashboard source
...
- Add fresh app structure (auth, tenant, mail, insight, docs, panel)
- Include CMS content, API routes, scripts, and config
- Migrate UI components, themes, and extensions to fresh runtime
2025-11-04 18:06:21 +08:00
shenlan
3368bfb4c1
docs: align dashboard plan with fresh deno migration ( #644 )
2025-11-04 12:57:02 +08:00
Haitao Pan
34edab39de
fix(account): add timeout and email validation for verification sending
2025-11-04 09:38:15 +08:00
shenlan
3da17828bb
feat: enable mail demo preview and fix extension import ( #643 )
2025-11-03 07:56:18 +08:00
shenlan
c3e0268a24
Add email verification auth page ( #642 )
2025-11-02 23:09:51 +08:00
shenlan
e48a20a01d
Simplify verification step notice ( #641 )
2025-11-02 22:43:00 +08:00
shenlan
fda6865f70
Improve registration feedback and verification flow ( #640 )
2025-11-02 19:34:26 +08:00
shenlan
b8e79a3c38
Keep registration code inputs enabled ( #639 )
2025-11-02 18:44:34 +08:00
shenlan
392925460e
Fix runtime loader search path for sit env ( #638 )
2025-11-02 18:11:33 +08:00
shenlan
120878ee96
Merge pull request #637 from Cloud-Neutral/codex/refactor-runtime-loader-for-server-only
2025-11-02 15:42:57 +08:00
shenlan
993fead726
refactor runtime loader to server module
2025-11-02 15:41:55 +08:00
root
5bd01fae54
update prod runtime config and cleanup: adjust .gitignore, remove account-export.yaml
2025-11-02 12:07:13 +08:00
shenlan
55a2f052c6
Limit SMTP send duration with request-scoped timeouts ( #636 )
2025-11-02 11:54:59 +08:00
shenlan
9c1a4c2652
Simplify runtime config loading ( #635 )
2025-11-02 11:51:46 +08:00
Haitao Pan
bb437c0c63
add docs/account-test-cases.md
2025-11-02 11:50:12 +08:00
shenlan
7565fe2632
Fix runtime env detection for SIT domains ( #634 )
2025-11-02 11:00:56 +08:00
shenlan
ebcac64939
Detect implicit TLS when auto mode uses port 465 ( #633 )
2025-11-02 10:47:20 +08:00
Haitao Pan
3500c3ad78
merged: refactor-project-for-environment-auto-detection
2025-11-02 10:42:26 +08:00
shenlan
2fb788bd22
feat: add runtime config loader
2025-11-02 10:38:06 +08:00
Haitao Pan
69ad6d18e4
Adjust SIT environment configuration: runtime-service-config + dev Nginx
2025-11-02 10:35:37 +08:00
shenlan
eaf893cef9
Disable caching in SIT Nginx config ( #631 )
2025-11-02 09:06:57 +08:00
shenlan
3f77622388
feat: align svc.plus gateway layering ( #630 )
2025-11-02 07:11:11 +08:00
shenlan
62db081501
fix(next): rewrite API trailing slashes ( #629 )
2025-11-01 23:52:34 +08:00
shenlan
68f54ae2e3
fix(next): rewrite trailing api slashes in config ( #628 )
2025-11-01 23:44:51 +08:00
shenlan
197ad603da
fix(next): rewrite API trailing slashes ( #627 )
2025-11-01 23:25:55 +08:00
Haitao Pan
baa1ca14af
fix(next): disable trailingSlash to restore API route matching for /api/auth/*
2025-11-01 23:14:12 +08:00
shenlan
59b005adb8
Fix register send proxy handler ( #626 )
2025-11-01 22:41:26 +08:00
shenlan
e3a5d4f75c
feat: show real-time register validation hints ( #625 )
2025-11-01 22:14:59 +08:00
shenlan
4fd281f2b6
Fix account service API URL joining ( #624 )
2025-11-01 21:53:15 +08:00
shenlan
f915c46915
Refine registration flow with verification gate ( #623 )
2025-11-01 21:34:35 +08:00