Files
innovatieplatform/wiki/SCHEMA.md
znetsixe 926872a082 Add document converter, seeder data structure, and project wiki
- ai-service/convert.py: converts Office/PDF files to markdown with frontmatter
- database/seeders/data/: folder structure for themas, projects, documents, etc.
- database/seeders/data/raw/: drop zone for Office/PDF files to convert
- wiki/: project architecture, concepts, and knowledge graph documentation
- Remove unused Laravel example tests

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 08:33:42 +02:00

3.0 KiB

Project Wiki Schema

Purpose

LLM-maintained knowledge base for this project. The LLM writes and maintains everything. You read it (ideally in Obsidian). Knowledge compounds across sessions instead of being lost in chat history.

Directory Structure

wiki/
  SCHEMA.md          — this file (how to maintain the wiki)
  index.md           — catalog of all pages with one-line summaries
  log.md             — chronological record of updates
  overview.md        — project overview and current status
  metrics.md         — all numbers with provenance
  knowledge-graph.yaml — structured data, machine-queryable
  tools/             — search, lint, query scripts
  concepts/          — core ideas and mechanisms
  architecture/      — design decisions, system internals
  findings/          — honest results (what worked AND what didn't)
  sessions/          — per-session summaries

Page Conventions

Frontmatter

Every page starts with YAML frontmatter:

---
title: Page Title
created: YYYY-MM-DD
updated: YYYY-MM-DD
status: proven | disproven | evolving | speculative
tags: [tag1, tag2]
sources: [path/to/file.py, commit abc1234]
---

Status values

  • proven: tested and verified with evidence
  • disproven: tested and honestly shown NOT to work (document WHY)
  • evolving: partially working, boundary not fully mapped
  • speculative: proposed but not yet tested

Cross-references

Use [[Page Name]] Obsidian-style wikilinks.

Contradictions

When new evidence contradicts a prior claim, DON'T delete the old claim. Add:

> [!warning] Superseded
> This was shown to be incorrect on YYYY-MM-DD. See [[New Finding]].

Honesty rule

If something doesn't work, say so. If a result was a false positive, document how it was discovered. The wiki must be trustworthy.

Operations

Ingest (after a session or new source)

  1. Read outputs, commits, findings
  2. Update relevant pages
  3. Create new pages for new concepts
  4. Update index.md, log.md, knowledge-graph.yaml
  5. Check for contradictions with existing pages

Query

  1. Use python3 wiki/tools/query.py for structured lookup
  2. Use wiki/tools/search.sh for full-text
  3. Read index.md to find relevant pages
  4. File valuable answers back into the wiki

Lint (periodically)

bash wiki/tools/lint.sh

Checks: orphan pages, broken wikilinks, missing frontmatter, index completeness.

Data Layer

  • knowledge-graph.yaml — structured YAML with every metric and data point
  • metrics.md — human-readable dashboard
  • When adding new results, update BOTH the wiki page AND the knowledge graph
  • The knowledge graph is the single source of truth for numbers

Source of Truth Hierarchy

  1. Test results (actual outputs) — highest authority
  2. Code (current state) — second authority
  3. Knowledge graph (knowledge-graph.yaml) — structured metrics
  4. Wiki pages — synthesis, may lag
  5. Chat/memory — ephemeral, may be stale