KB-2BCF

S145-M3 Pivot Results Report

3 min read Revision 1
reports145pivot-resultsdirectusnuxt-dynamic

S145-M3: Pivot Results — PG + Directus Report

Date: 2026-03-29 | OR: v7.1 | §0-BA: Nuxt = màn hình, KHÔNG CODE


Step 0: Checkpoint

  • OR v7.1: §0-BA Nuxt = màn hình. AP-11: KHÔNG tạo Nuxt page.
  • Assembly Gate: 6/6 ✅. Q1: UI KHÔNG — Nuxt dynamic page tự hiện.

Targets

# Target Status
1 PG: pivot_results table + refresh_pivot_results() DONE ✅ — 48 rows, 26 pivots
2 Dual-trigger: cron */10min + PG trigger DONE ✅
3 Directus: registered + public read DONE ✅ — API 200
4 meta_catalog: CAT-152 DONE ✅
5 Nuxt: 0 files changed DONE ✅ — AP-11 compliant
6 Production: /knowledge/registries shows pivot_results DONE ✅

Changes

PG

  • pivot_results table: 7 columns, unique(pivot_code, source_object, group_values)
  • refresh_pivot_results(): loops 26 active pivots → UPSERT results → clean stale
  • trg_pivot_def_refresh() updated: now calls BOTH refresh_meta_catalog_from_pivot() + refresh_pivot_results()
  • trg_birth_pivot_results: AFTER INSERT birth trigger (via DOT-119)

Cron

  • */10 * * * * — refresh_pivot_results() (parallel to existing pivot-refresh)

Khai sinh (4 giấy tờ)

  • meta_catalog: CAT-152 (molecule, managed)
  • collection_registry: COL-145 (observed, derived)
  • entity_species: SPE-PVR (pivot_result, molecule, observed)
  • species_collection_map: pivot_result → pivot_results (primary)
  • birth_registry trigger: trg_birth_pivot_results ✅

Nuxt: 0 FILES CHANGED

  • Dynamic page at /knowledge/registries tự hiện pivot_results
  • Confirmed: grep 'pivot_result' trên Nuxt page output → CÓ

Verify

  • PG: 48 rows ✅
  • Directus API: 200, data returned ✅
  • Nuxt /knowledge/registries: pivot_results visible ✅
  • Scanner ODM: 0 orphans ✅
  • Pending approvals: 0 ✅

§0-AW AUTOMATION CHECK

  1. refresh_pivot_results() tự động? CÓ — cron */10min + PG trigger on pivot_definitions change + on-demand.
  2. DUAL-TRIGGER? CÓ — cron + trigger + on-demand SELECT.
  3. End-to-end? PG → Directus (auto-discovered) → Nuxt (dynamic page, 0 code). CÓ ✅

Data Sample

pivot_code pivot_name source_object group_values metric_values
PIV-001 Danh mục hệ thống — Total meta_catalog {} {count: 151}
PIV-101 Danh mục theo Lớp meta_catalog {level: atom} {total: 62}
PIV-104 DOT Tools theo Nhóm dot_tools {category: vận_hành} {total: 50}

S145-M3 DONE | pivot_results 48 rows | 0 Nuxt files | Scanner CLEAN | §0-BA compliant