Modularisation / dé-duplication : - lib/util/text.js : `norm` canonique partagé (remplace 2 ré-implémentations : address-db, legacy-dispatch-sync). - lib/util/legacy-parse.js : parseurs/mapping PURS du pont (DEPT_JOBTYPE, DUR, jobType, prio, tzDate, startTime, coord) extraits hors I/O → testables en isolation, sans pg/mysql/erp. - legacy-dispatch-sync + address-db importent ces utils (pont vérifié en prod : preview OK, 0 erreur). Observabilité (sûr, additif, 1 seul point) : - erp.js create/update/remove : log de l'échec à la SOURCE quand HTTP≥400 → toutes les écritures ERPNext silencieuses des 50+ appelants sont désormais tracées, SANS changer aucun flux de contrôle. Tests (fondation) : - vitest + npm test ; test/util.test.js : 19 tests verts sur norm + coord(bornes QC)/prio/startTime/jobType/tzDate. Tournent sans installer les deps lourdes du hub (modules purs). Aligné docs/architecture/VISION.md (P0 hygiène). Suite : audit r.ok des appelants financiers (payments/contracts) en revue supervisée ; CI/CD minimal (Gitea Actions lint+test) ; décomposition des god-files (Phase 2). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
25 lines
517 B
JSON
25 lines
517 B
JSON
{
|
|
"name": "targo-hub",
|
|
"version": "1.0.0",
|
|
"description": "SSE relay + unified message hub for Targo/Gigafibre",
|
|
"main": "server.js",
|
|
"scripts": {
|
|
"start": "node server.js",
|
|
"test": "vitest run"
|
|
},
|
|
"devDependencies": {
|
|
"vitest": "^2.1.9"
|
|
},
|
|
"dependencies": {
|
|
"mjml": "^5.2.2",
|
|
"mongodb": "^6.12.0",
|
|
"mqtt": "^5.15.1",
|
|
"mysql2": "^3.11.0",
|
|
"net-snmp": "^3.26.1",
|
|
"nodemailer": "^6.9.16",
|
|
"pg": "^8.13.0",
|
|
"twilio": "^5.5.0",
|
|
"web-push": "^3.6.7"
|
|
}
|
|
}
|