6000x-input-contract — Auto-refresh + DIEU-35 re-verify
07 — Auto-refresh durability + DIEU-35 real corpus re-verify
Branch: Auto-refresh + Directus / API smoke + DIEU-35 real corpus. Status: PASS (read-only; non-mutating SELECTs).
1. Auto-refresh id 18 still durable
SELECT id, actor, outcome, view_count_pre, table_count_pre,
table_count_post, started_at
FROM iu_three_axis_envelope_refresh_log WHERE id=18;
id | actor | outcome | vpre | tpre | tpost | started_at
----+----------------------+-----------------+------+------+-------+---------------------------
18 | iu_lifecycle_trigger | skipped_in_sync | 163 | 163 | 163 | 2026-05-23 14:20:20.986+00
The id-18 row from 6000x is byte-identical to its 6000x snapshot (same actor, same outcome, same counts, same timestamp).
2. Refresh-status dashboard view
SELECT * FROM v_iu_three_axis_envelope_refresh_status;
last_actor | iu_lifecycle_trigger
last_outcome | skipped_in_sync
last_started_at | 2026-05-23 14:20:20.986+00
last_table_count | 163
seconds_since_last | 43610
current_drift | {"in_sync": true, "view_count": 163,
"table_count": 163,
"missing_in_view": 0,
"missing_in_table": 0,
"content_diff_count": 0}
current_in_sync | t
current_view_count | 163
current_table_count | 163
cache_healthy | t
seconds_since_last_refresh=43610 (~12h) is expected — no enabled
lifecycle write between 6000x and now, so the auto-refresh trigger
hasn't had reason to fire again. The gate stays false; the trigger
remains armed; the cache is in sync.
3. Trigger error log — still empty
SELECT COUNT(*) FROM iu_three_axis_envelope_trigger_error_log;
-- 0
4. Healthcheck — 7/7 GREEN (live, this macro)
$ python3 -m cutter_agent.iu_core.healthcheck | jq .overall_ok,(.surfaces[]|"\(.surface): \(.reason)")
true
"three_axis_cache: in_sync"
"directus_collection: 163 rows / 1 read-permission"
"qdrant_collection: iu_core_iu_chunks (61 indexed)"
"auto_refresh_trigger: gate=false fires_24h=4"
"vector_boundary: 61 pts / 60 unique"
"write_gates: all 6 inert"
"operator_runtime: open_runs=0 failed_24h=0 active_leases=0"
fires_24h=4 matches the 4 cron-emitted healthcheck samples in §6
report 05 — the auto_refresh_trigger surface counts statement-level
fires, and the 4 Mac-cron healthcheck runs each emitted the same
fires_24h reading (trigger has not fired between samples; only the
cron observed it).
5. DIEU-35 real corpus axes A / B / C — re-verified
Axis A — axis_a_doc_code envelope
SELECT axis_a_doc_code, COUNT(*), MIN(axis_c_depth), MAX(axis_c_depth)
FROM iu_three_axis_envelope WHERE axis_a_doc_code='DIEU-35'
GROUP BY axis_a_doc_code;
axis_a_doc_code | count | min | max
-----------------+-------+-----+-----
DIEU-35 | 36 | 0 | 2
Axis B — axis_b_tags dict keys (5000x defect-fix preserved)
SELECT jsonb_object_keys(axis_b_tags) AS key, COUNT(*)
FROM iu_three_axis_envelope WHERE axis_a_doc_code='DIEU-35'
GROUP BY jsonb_object_keys(axis_b_tags) ORDER BY key;
key | count
----------------+-------
legal_document | 36
section_type | 36
unit_kind | 36
All three axis_b keys present on every DIEU-35 row — the 5000x dict-shape fix (jsonb={group:[tags]}, not array) still holds.
Axis C — depth distribution
SELECT axis_c_depth, COUNT(*)
FROM iu_three_axis_envelope WHERE axis_a_doc_code='DIEU-35'
GROUP BY axis_c_depth ORDER BY axis_c_depth;
depth | count
-------+-------
0 | 17
1 | 16
2 | 3
Total 36 — matches axis A row count exactly. Same distribution as 5500x + 6000x.
6. Directus read-only smoke
Implicit via healthcheck surface directus_collection:
detail: { permission_rows: 1, table_rows: 163 }
reason: "163 rows / 1 read-permission"
i.e. the live Directus permission id 1485 (action=read,
collection=iu_three_axis_envelope, role=Administrator from 6000x)
still serves the 163-row table behind it.
7. Constitutional close
- No mutation in this branch (all
SELECTqueries). - All 6 IU Core write gates inert end of macro.
- Auto-refresh trigger remains armed but unfired since 6000x (expected — no enabled lifecycle write happened).
- Vector boundary intact (61 pts / 60 unique IUs — same as 6000x); Qdrant onboarding deferred under exact gap (see report 03).
- DIEU-35 axes A/B/C numerically identical to 6000x — no schema drift, no data drift in the 36-IU corpus.