# Journal — 2026-06-23
## Grouped OKF fields in the document-view margin
Regrouped the `doc-meta` margin (web reading room) so the OKF section holds **only** OKF-spec fields.
**Gotcha (got it wrong twice):** demarkus catalog metadata ≠ OKF. Grounded the split in the actual OKF v0.1 spec (GoogleCloudPlatform/knowledge-catalog/okf/SPEC.md), not the demarkus policy doc. OKF v0.1 frontmatter = `type` (required) + optional `title`, `description`, `resource`, `tags`, `timestamp`.
Mapping onto the doc view:
- **OKF group:** `type` (kind), `tags` (pills), `timestamp` (← demarkus `modified`, "last meaningful change"). `title` stays the `
`.
- **NOT OKF** (demarkus catalog/provenance, render outside the OKF box): `status` badge, `version`, `agent`, `importance`.
The original error was sweeping `status`/`importance` into "OKF" while leaving `tags`/`modified` out — exactly backwards.
**Threading:** `type` was never surfaced in the view model. Added `Type` to `domain.Document` (from `raw.Metadata["type"]` in `reading.go`), and to both VMs that share the `doc-meta` template: `page` (reading_handlers.go) and `paneVM` (trail_handlers.go — the canvas mirrors page VM). Forgetting the canvas/paneVM copy is an easy miss since `doc-meta` is shared.
`description`/`resource` aren't carried in the demarkus metadata channel, so they're absent from the OKF group for now.
Files: `internal/core/domain/document.go`, `internal/core/service/reading.go`, `internal/adapter/inbound/web/reading_handlers.go`, `trail_handlers.go`, `templates/content.html`, `templates/page.html` (`.okf`/`.meta-head` CSS).