Commit graph

29 commits

Author SHA1 Message Date
senke
43309327e6 feat(v0.501): Sprint 5 -- integration, tests, and cleanup
- INT-01: Add E2E streaming tests (upload -> HLS auth)
- INT-02: Add E2E cloud tests (CRUD auth, public gear)
- INT-03: Split track/handler.go into 4 focused sub-handlers
- INT-04: Create migration squash script + MIGRATIONS.md
- INT-05: Add Trivy container image scanning CI workflow
- INT-06: Replace production console.log with structured logger
2026-02-22 18:40:07 +01:00
senke
de2af0fb58 fix(e2e): align local E2E setup with CI or document CI-only validation 2026-02-19 19:10:15 +01:00
senke
b103a09a25 chore: consolidate CI, E2E, backend and frontend updates
- CI: workflows updates (cd, ci), remove playwright.yml
- E2E: global-setup, auth/playlists/profile specs
- Remove playwright-report and test-results artifacts from tracking
- Backend: auth, handlers, services, workers, migrations
- Frontend: components, features, vite config
- Add e2e-results.json to gitignore
- Docs: REMEDIATION_PROGRESS, audit archive
- Rust: chat-server, stream-server updates
2026-02-17 16:43:21 +01:00
senke
b3ab89acd2 docs: align FEATURE_STATUS and validation scripts with v0.101 state
- docs/FEATURE_STATUS.md: 19 operational features (Gear, Live, Analytics, Roles)
- apps/web/docs/FEATURE_STATUS.md: reference 103 report, 19 features summary
- scripts/validate-full.sh: add full validation (validate-light + go test + npm test)
2026-02-17 15:35:58 +01:00
senke
b657776892 fix(infra): HAProxy HTTPS and stats security
P1.1 - Enable HTTPS in HAProxy for production:
- HTTP to HTTPS redirect (301)
- HTTPS frontend on port 443 with veza.pem
- config/ssl/ structure with README and generate-ssl-cert.sh
- docker-compose.prod.yml volume for certs

P1.3 - Restrict HAProxy stats to internal network:
- ACL from_internal (127.0.0.1, 172.20.0.0/16)
- stats admin if from_internal

Also: remove errorfile directives (use HAProxy built-in defaults)
2026-02-15 15:58:51 +01:00
senke
cc2c5123bc fix(rust): ensure chat-server and stream-server compile in release mode
Add scripts/verify-rust-build.sh to verify all Rust crates (veza-common,
veza-chat-server, veza-stream-server) compile in release mode.
Phase 1 audit - P1.2
2026-02-15 15:54:03 +01:00
senke
22e5e21757 chore(audit 2.4, 2.5): supprimer code mort Education et cmd/modern-server
- Supprimer routes/handlers/core Education (backend)
- Supprimer handler MSW education, refs Sidebar/locales
- Basculer Makefile, make/dev.mk, scripts vers cmd/api/main.go
- Supprimer veza-backend-api/cmd/modern-server/
2026-02-15 14:39:40 +01:00
senke
ad60247f33 feat: global update including storybook setup and backend fixes
- Web: Setup Storybook, added addons, configured Tailwind, added stories for UI components.
- Backend: Updated API router, database, workers, and auth in common.
- Stream Server: Removed SQLx queries and updated auth.
- Docs & Scripts: Updated documentation and recovery scripts.
2026-02-02 19:34:14 +01:00
senke
6974c12a25 aesthetic-improvements: align spacing to 8px grid (Action 11.2.1.3)
- Created automated script (scripts/align-8px-grid.py) to align all spacing to 8px grid
- Replaced non-8px-aligned spacing: gap-3/p-3/m-3 (12px) → gap-4/p-4/m-4 (16px), gap-5/p-5/m-5 (20px) → gap-6/p-6/m-6 (24px), gap-10/p-10/m-10 (40px) → gap-12/p-12/m-12 (48px), gap-20/p-20/m-20 (80px) → gap-24/p-24/m-24 (96px)
- Preserved: 4px values (gap-1, p-1, m-1) as they may be intentional fine-tuning, responsive breakpoints (sm:, md:, lg:), test files, documentation
- Modified files across all components to ensure consistent 8px grid alignment
- Action 11.2.1.3: Align all elements to 8px grid - COMPLETE
2026-01-16 11:50:46 +01:00
senke
3fb12b2ce2 aesthetic-improvements: automated replacement of decorative cyan with steel (80/20 rule, Action 11.3.1.3)
- Created automated script (scripts/replace-decorative-cyan.py) to systematically replace decorative/informational kodo-cyan instances with kodo-steel variants
- Script intelligently preserves active/functional states, design system variants, semantic indicators, and interactive states
- Modified 85 files, replaced 145 decorative instances, preserved 47 functional instances
- No linter errors, type safety maintained
- Action 11.3.1.3 significantly advanced (total: ~302 instances replaced across ~229 files including previous batches)
2026-01-16 11:40:13 +01:00
senke
e072f2539b feat: add automated scripts for Tailwind color migration with batch processing and verification 2026-01-16 01:54:57 +01:00
senke
01f2acc718 docs: generate comprehensive list of all remaining Tailwind default color instances 2026-01-16 01:51:32 +01:00
senke
28b3733f2e api-contracts: identify endpoint response formats
- Completed Action 1.3.1.2: Tested 36 endpoints for response format consistency
- Fixed test script to handle subshell issues with RESULTS array
- Created ENDPOINT_FORMAT_AUDIT.md documenting findings
- Found 2 endpoints using wrapped format, 0 direct format
- Most endpoints require auth (22) or have errors (12)
- Limited coverage due to authentication requirements and path parameters
2026-01-11 16:36:13 +01:00
senke
c4d1aa6fa3 api-contracts: create endpoint response format testing script
- Completed Action 1.3.1.1: Created test-endpoint-formats.sh
- Script reads endpoints from Swagger spec and tests each one
- Identifies wrapped vs direct response formats
- Outputs JSON report with format categorization
- Handles auth-required endpoints gracefully
- Can be run against any base URL
2026-01-11 16:33:44 +01:00
senke
f74b020d4b api-contracts: install openapi-generator-cli and create type generation script
- Completed Action 1.1.2.1: Installed @openapitools/openapi-generator-cli
- Completed Action 1.1.2.2: Created generate-types.sh script
- Added swagger annotations to cmd/modern-server/main.go
- Regenerated swagger.yaml with proper info section
- Successfully generated TypeScript types to src/types/generated/

The script generates types from veza-backend-api/openapi.yaml using
typescript-axios generator and creates barrel exports.
2026-01-11 16:30:43 +01:00
senke
8efbb97e6f stabilisation commit A 2026-01-07 19:39:21 +01:00
senke
17a04a6b2e feat: centraliser tous les logs dans /var/log/veza avec rotation
- Configure LOG_DIR=/var/log/veza pour tous les services
- Ajoute scripts de gestion des logs (setup, view, rotate)
- Configure volume Docker partagé pour les logs
- Logs organisés par service avec fichiers séparés pour les erreurs
- Rotation automatique : 100MB, 10 backups, 30 jours, compression gzip
- Documentation dans LOGGING.md et ENV_CONFIG.md

Services configurés:
- Backend API: backend-api.log, redis.log, db.log, rabbitmq.log
- Chat Server: chat-server.log (à configurer)
- Stream Server: stream-server.log (à configurer)

Le backend API a déjà toute l'infrastructure de logging en place.
Les serveurs chat et stream utiliseront LOG_DIR depuis l'environnement.
2026-01-04 01:44:23 +01:00
senke
634d0db22f fix: resolve stream server compilation errors and integrate chat stability fixes 2026-01-04 01:44:22 +01:00
senke
1e5d30a875 [FIX] Added TokenVersion field to user creation
- Added TokenVersion: 0 to user creation in Register service
- This field is required (NOT NULL) in the database
- Backend needs to be restarted for this fix to take effect
2026-01-04 01:44:13 +01:00
senke
163d5e0890 [IMPROVE] Better error handling in test script
- Stop execution if register fails (don't try login with non-existent user)
- Add warning when register fails (backend may need restart)
- Skip login test if register failed
- Better error messages
2026-01-04 01:44:13 +01:00
senke
370a37ea3b [FIX] BUG-003: Fixed token extraction in test script
- Updated to extract from .data.token.access_token (correct format)
- Added fallback patterns for different response formats
- Added debug logging when token extraction fails
- Fixed refresh token extraction as well
2026-01-04 01:44:13 +01:00
senke
be702555ee [FIX] BUG-001: Corrected password_confirm field name in test script
- Changed password_confirmation to password_confirm in test-mvp-api.sh
- Format now matches backend DTO (password_confirm)
- Register still fails with code 9000 (DB/validation issue - BUG-004)
- Updated MVP_BUGS_TODOLIST.json with progress
2026-01-04 01:44:13 +01:00
senke
fbf0fe5b9f [TEST] MVP integration tests executed - 2/28 API passed, 0/20 E2E passed, 3 bugs found
- API Tests: 2 passed, 1 failed, 25 skipped (blocked by auth issues)
- E2E Tests: 0 passed, 1 failed (global setup timeout), 19 skipped
- Bugs found: 3 (2 critical, 1 high)
  - BUG-001: Auth register endpoint format issue (CRITICAL)
  - BUG-002: E2E global setup timeout (CRITICAL)
  - BUG-003: Token extraction in test script (HIGH)

Files added:
- MVP_TEST_REPORT.md: Complete test report with bug analysis
- MVP_BUGS_TODOLIST.json: Detailed bug tracking
- scripts/test-mvp-api.sh: API test suite
- scripts/setup-mvp-test-env.sh: Environment setup
- apps/web/e2e/mvp-integration.spec.ts: E2E test suite
- TESTS_MVP_README.md: Complete documentation
2026-01-04 01:44:13 +01:00
senke
e51942bf4b [INT-005] int: Verify all backend endpoints have frontend usage 2025-12-25 15:08:30 +01:00
senke
2dfde29f7d refonte: backend-api go first; phase 1 2025-12-12 21:34:34 -05:00
okinrev
87c6461900 report generation and future tasks selection 2025-12-08 19:57:54 +01:00
okinrev
b7955a680c P0: stabilisation backend/chat/stream + nouvelle base migrations v1
Backend Go:
- Remplacement complet des anciennes migrations par la base V1 alignée sur ORIGIN.
- Durcissement global du parsing JSON (BindAndValidateJSON + RespondWithAppError).
- Sécurisation de config.go, CORS, statuts de santé et monitoring.
- Implémentation des transactions P0 (RBAC, duplication de playlists, social toggles).
- Ajout d’un job worker structuré (emails, analytics, thumbnails) + tests associés.
- Nouvelle doc backend : AUDIT_CONFIG, BACKEND_CONFIG, AUTH_PASSWORD_RESET, JOB_WORKER_*.

Chat server (Rust):
- Refonte du pipeline JWT + sécurité, audit et rate limiting avancé.
- Implémentation complète du cycle de message (read receipts, delivered, edit/delete, typing).
- Nettoyage des panics, gestion d’erreurs robuste, logs structurés.
- Migrations chat alignées sur le schéma UUID et nouvelles features.

Stream server (Rust):
- Refonte du moteur de streaming (encoding pipeline + HLS) et des modules core.
- Transactions P0 pour les jobs et segments, garanties d’atomicité.
- Documentation détaillée de la pipeline (AUDIT_STREAM_*, DESIGN_STREAM_PIPELINE, TRANSACTIONS_P0_IMPLEMENTATION).

Documentation & audits:
- TRIAGE.md et AUDIT_STABILITY.md à jour avec l’état réel des 3 services.
- Cartographie complète des migrations et des transactions (DB_MIGRATIONS_*, DB_TRANSACTION_PLAN, AUDIT_DB_TRANSACTIONS, TRANSACTION_TESTS_PHASE3).
- Scripts de reset et de cleanup pour la lab DB et la V1.

Ce commit fige l’ensemble du travail de stabilisation P0 (UUID, backend, chat et stream) avant les phases suivantes (Coherence Guardian, WS hardening, etc.).
2025-12-06 11:14:38 +01:00
okinrev
65420e7c0d P0 UUID Phase A: migrations + backend Go UUID refactor 2025-12-04 02:15:48 +01:00
okinrev
327ac36a30 BASE: completing the initial repo state 2025-12-03 22:56:50 +01:00