asw/docs/frontmatter.md
Vigilio Desto 4f2b0a67e1
frontmatter spec + dorveille tags + dynamic AI disclosure in templates
- docs/frontmatter.md: canonical frontmatter reference for all content types
- dorveille.md: add tags, ai-disclosure fields
- single.html: AI meta tags now read from frontmatter instead of hardcoded
2026-04-10 18:28:03 +02:00

148 lines
3.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ASW Frontmatter Reference
Canonical reference for frontmatter in `~/projects/asw/content/`. Developer docs — not site content.
---
## Required (all content)
```yaml
title: "Page Title"
description: "One-line summary — drives <meta name=description> and OG tags."
date: 2026-02-01 # ISO 8601
tags: [essay, automation] # Hugo taxonomies, 24 per page
```
---
## Content-type fields
```yaml
type: post # docs | paper | post | vault — selects layout
weight: 10 # sort order within section (used in docs especially)
draft: true # omit from build until ready
author: "Wasily" # human author name (overrides site default)
```
---
## AI transparency layer
Three fields declare how AI was involved in producing the content.
```yaml
ai-disclosure: assisted # assisted | generated | human-only
ai-model: claude-sonnet-4-5
ai-provider: Anthropic
```
Maps to `<meta>` tags in the rendered `<head>`:
```html
<meta name="ai-content-disclosure" content="assisted">
<meta name="ai-model" content="claude-sonnet-4-5">
<meta name="ai-provider" content="Anthropic">
```
Values for `ai-disclosure`:
- `human-only` — no AI involvement
- `assisted` — human-written, AI-edited or AI-reviewed
- `generated` — AI-authored, human-directed
---
## Extended fields (essays / papers)
```yaml
eyebrow: "Essay" # label rendered above <h1> ("Essay", "Paper", "Reference")
abstract: "Longer summary for listing pages and paper headers."
footer: "Published in the dorveille. Written by a human, edited with LLM assistance."
canonical: "https://elsewhere.com/original" # if published elsewhere first
```
---
## Examples by content type
### `type: post` — essay or article
```yaml
---
title: "On the Craft of Invisible Systems"
description: "The best automation is the kind you never notice."
date: 2026-02-01
type: post
eyebrow: "Essay"
author: "Wasily"
tags: [automation, craft, agents]
ai-disclosure: assisted
ai-model: claude-sonnet-4-5
ai-provider: Anthropic
footer: "Written by a human, edited with LLM assistance."
---
```
### `type: docs` — reference documentation
```yaml
---
title: "Frontmatter Reference"
description: "All supported frontmatter fields for ASW content."
date: 2026-04-10
type: docs
weight: 20
tags: [reference, authoring]
ai-disclosure: generated
ai-model: claude-sonnet-4-5
ai-provider: Anthropic
---
```
### `type: paper` — long-form structured writing
```yaml
---
title: "The Agentic Semantic Web"
description: "An agent-first architecture for web publishing."
date: 2026-03-01
type: paper
eyebrow: "Paper"
abstract: "Extended summary for listing pages and the paper's own header section."
tags: [architecture, agents, semantic-web]
ai-disclosure: assisted
ai-model: claude-sonnet-4-5
ai-provider: Anthropic
canonical: "https://trentuna.com/papers/asw"
---
```
### `type: vault` — vault-sourced content (exported notes)
```yaml
---
title: "Dorveille"
description: "The liminal waking hour — a metaphor for autonomous agents."
date: 2026-01-15
type: vault
tags: [concept, agents, metaphor]
ai-disclosure: assisted
ai-model: claude-sonnet-4-5
ai-provider: Anthropic
---
```
---
## Relationship to vault frontmatter
The vault (`~/.napkin/`) and the public site share aligned concepts but use different field names:
| Concept | Vault field | Site field |
|---------|-------------|------------|
| Publication state | `status: draft/active` | `draft: true/false` |
| Related content | `related: ["[[Note]]"]` | Hugo's `related` config (automatic) |
| Discovery keywords | `keywords: [...]` | `tags: [...]` (Hugo taxonomy) |
| Content type | `type:` (free-form) | `type:` (maps to layout) |
| AI involvement | not tracked | `ai-disclosure`, `ai-model`, `ai-provider` |
The vault tracks operational state (`active`, `draft`, `archived`). The site tracks publication state (`draft: true/false`). A vault note exported to the site loses its `status`, `related` wikilinks, and `keywords` — these are replaced by Hugo-native equivalents during the port.