---
id: 077b9553-8426-4f62-81a5-c886549666af
title: 'R1 spike: markdown+frontmatter deps decision'
state: closed
labels:
- kind:research
assignees: []
milestone: m1-code-tab
created: 2026-09-10T03:52:24.182617057Z
updated: 2026-09-10T03:58:52.416361838Z
---
Context: DRAFT pins Rust + minimal deps but names are unconfirmed. Time-boxed spike before any render code.
Tasks:
- Spike `pulldown-cmark 0.13.4` on f0rge fixtures (issue.md, pr.md, wiki page): markdown->HTML, confirm escaping of `<script>`.
- Spike frontmatter: tiny `---` split + `serde_yaml` on real `.forge/issues/<uuid>/issue.md` files (borrow ../f0rge/.forge). Confirm unknown-field tolerance + missing-field error naming file+field.
- Confirm RFC3339 parse approach (chrono vs hand-rolled) and JSON via serde_json.
- Output: `docs/deps-decision.md` (or wiki note) locking versions + fallback if a crate is rejected.
Success rubric:
- [ ] Decision doc exists with pinned versions + why, deps total <= 5.
- [ ] Spike parses 20+ real f0rge fixture files with 0 panics; malformed file yields named error.
- [ ] No tokio/hyper needed: confirmed std-only path for later inbox work.
Swarm: one Owlette/Owl, read-only, no repo code changes except decision doc.
