[STD] Version-provenance sulle segnalazioni (feedback-version-provenance) — mig.062, v1.24.4

feedback_reports += client_surface/client_version/client_build; FeedbackController/Service li salvano; feedback.js li invia (surface web-v2 + version/build da version.json). Standard hub_standards id=30. Smoke verde (provenance salvata, test pulito). NB: il widget feedback.js è oggi dormiente (rimosso dall'iniezione 14/6) → plumbing pronto per la riattivazione.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
DevEnv nis2-agile
2026-06-21 09:14:13 +02:00
co-authored by Claude Opus 4.8
parent 3b1d909e6e
commit 14c4c2a7d2
6 changed files with 39 additions and 4 deletions
@@ -40,6 +40,10 @@ class FeedbackController extends BaseController
$descrizione = trim($body['descrizione'] ?? '');
$pageUrl = trim($body['page_url'] ?? '');
$attachment = $body['attachment'] ?? null; // base64 string
// version-provenance (std feedback-version-provenance): superficie + release REALE del prodotto + build
$clientSurface = substr(trim((string) ($body['client_surface'] ?? '')), 0, 16) ?: null;
$clientVersion = substr(trim((string) ($body['client_version'] ?? '')), 0, 32) ?: null;
$clientBuild = substr(trim((string) ($body['client_build'] ?? '')), 0, 64) ?: null;
if (strlen($descrizione) < 10) {
$this->jsonError('Descrizione troppo breve (minimo 10 caratteri).', 422);
@@ -67,6 +71,9 @@ class FeedbackController extends BaseController
'descrizione' => $descrizione,
'page_url' => $pageUrl,
'attachment' => $attachment,
'client_surface' => $clientSurface,
'client_version' => $clientVersion,
'client_build' => $clientBuild,
]
);