chore(supplier): csv_reconcile.unparseable_project_skipped warning→info

Поставщик периодически кладёт в CSV-колонку project имена нестандартного
формата (телефон '79135191264', URL); extractPlatform() возвращает null,
строка пропускается. Это поведение, не баг на нашей стороне — даунгрейд
до info, чтобы перестать спамить laravel.log warning'ами по 13+ раз/день
(не actionable, processing продолжается).

Параллельно подчищены 4 truly-orphan supplier_projects (id 57/73/77/79)
на проде — тестовые placeholders (x.example / 79991234567 / URL); 16 leads
получили supplier_project_id=NULL (raw_payload preserved), 0 deals в любом
tenant'е по этим телефонам — info@lkomega.ru/client1 не затронут.
This commit is contained in:
Дмитрий
2026-05-22 20:08:01 +03:00
parent ce314034b4
commit 146501bae9
2 changed files with 7 additions and 5 deletions
+3 -1
View File
@@ -129,7 +129,9 @@ final class CsvReconcileJob implements ShouldQueue
foreach ($missing as $row) {
$platform = $this->extractPlatform((string) $row['project']);
if ($platform === null) {
Log::warning('csv_reconcile.unparseable_project_skipped', [
// Поставщик иногда кладёт в `project` нестандартные имена (телефон, URL).
// Не warning — это не наш баг, processing продолжается, paper-trail на info уровне.
Log::info('csv_reconcile.unparseable_project_skipped', [
'project' => $row['project'],
]);
+4 -4
View File
@@ -1,6 +1,6 @@
# Brain Status (auto-generated)
Last updated: 2026-05-22T16:05:00.709Z
Last updated: 2026-05-22T16:47:17.889Z
| Контролёр | Состояние | Детали |
|---|---|---|
@@ -8,15 +8,15 @@ Last updated: 2026-05-22T16:05:00.709Z
| C2 Cross-ref consistency | ✅ | [cross-ref-checker] OK — 0 drift in 4 files |
| C3 Observer-of-observer | ✅ | [observer-of-observer] OK — last read 0 week(s) ago |
| C4 Сигнальный статус | ✅ | This file (self-reference) |
| C5 Observer-coverage | ⚠️ | 79 episode(s) this month · Stop-hook + post-commit OK · 29 missed activation(s) — see /brain-retro |
| C5 Observer-coverage | ⚠️ | 84 episode(s) this month · Stop-hook + post-commit OK · 30 missed activation(s) — see /brain-retro |
| C6 Chain map sync | 🔴 | В .md есть цепочки без записи в JSON: L16 — добавьте узлы в tools/observer-chain-map.json |
## Метрики (информационные, не алерты)
- Observer evidence: 79 episodes this month, 0 observer_error markers, 10 PII matches before filter
- Observer evidence: 84 episodes this month, 0 observer_error markers, 14 PII matches before filter
- Legacy v1 episodes (not in factor analysis): 5
- Last /brain-retro: 3 day(s) ago
- Использование узлов: см. `/brain-retro` (раз в спринт). missed_activations: 29. **Неиспользованные узлы — не алерт, если профильной задачи не было** (Pravila §16.4 v1.36; capability-readiness; см. memory `feedback_brain_unused_tools_not_problem` — outside-repo memory store).
- Использование узлов: см. `/brain-retro` (раз в спринт). missed_activations: 30. **Неиспользованные узлы — не алерт, если профильной задачи не было** (Pravila §16.4 v1.36; capability-readiness; см. memory `feedback_brain_unused_tools_not_problem` — outside-repo memory store).
## Алерт-индикаторы