Optimizare scripturi build/CI si functionalitati noi Lot 2

- CI/CD GitLab (.gitlab-ci.yml): verify -> test -> build -> publish ->
  deploy cu health-gate (/api/v3/health/all) + rollback manual
- Publicare pe retele sociale (LinkedIn/Facebook) din Analysis History
  (social.ts, linkedin.ts, facebook.ts, SocialPostModal)
- Specificatii OpenAPI: agent-v3 (87 op.) si didi-framework (287 op.)
- Matrice testare acceptanta beneficiar + script dovezi API
- Fix nginx SSL: redirect port 3001 (error_page 497, absolute_redirect off)
- Adrese interne inlocuite cu hostname-uri generice (.local)
This commit is contained in:
EVOTECH IT SRL 2026-07-12 13:36:08 -07:00
parent 8ecc78e729
commit 7e4f23d4c4
22 changed files with 19477 additions and 110 deletions

View file

@ -83,7 +83,7 @@ router.get('/health/all', async (req: Request, res: Response) => {
}
// Brain (didi_brain) — fail-open dependency
const brainUrl = process.env.DIDI_BRAIN_URL || 'http://10.11.10.12:8090';
const brainUrl = process.env.DIDI_BRAIN_URL || 'http://didi.local:8090';
try {
const t = Date.now();
const r = await fetch(`${brainUrl}/health`, { signal: AbortSignal.timeout(3000) });
@ -93,7 +93,7 @@ router.get('/health/all', async (req: Request, res: Response) => {
}
// LLM router
const llmUrl = process.env.LLM_ROUTER_URL || 'http://10.11.10.17:14011';
const llmUrl = process.env.LLM_ROUTER_URL || 'http://llm.local:14011';
try {
const t = Date.now();
const r = await fetch(`${llmUrl}/health`, { signal: AbortSignal.timeout(5000) });

View file

@ -13,7 +13,7 @@ import { log } from '../logger';
// Internal URL for local models that can't reach didi365.eu
// Points to MinIO directly since public URLs use /storage/ path (Kong→MinIO)
const INTERNAL_MEDIA_BASE = process.env.INTERNAL_MEDIA_URL || 'http://10.11.10.12:9000';
const INTERNAL_MEDIA_BASE = process.env.INTERNAL_MEDIA_URL || 'http://didi.local:9000';
// Vision LLMs may have training cutoffs; without an explicit current date they
// can flag content dated e.g. "September 2025" as a "future date" while the
@ -79,7 +79,7 @@ const DEFAULT_VISION_MODELS: VisionModel[] = [
model: 'Qwen3.5-397B-A17B',
provider: 'qwen-local',
// Configurabil per deployment (Lot 1 pe mașina nouă). Fallback = LLM_ROUTER_URL, apoi IP didi.
endpoint: (process.env.VISION_LLM_URL || process.env.LLM_ROUTER_URL || 'http://10.11.10.17:14011')
endpoint: (process.env.VISION_LLM_URL || process.env.LLM_ROUTER_URL || 'http://llm.local:14011')
.replace(/\/+$/, '') + '/v1/chat/completions',
auth_type: 'none',
timeout: 60000,