# Pathwright vocabulary

The kinds of Sources collected here. A file's last dotted segment is its type,
such as `make-it-easy.article.md`. Every imported Source records where it came
from: `source` (the origin system), `original` (its URL there), `retrieved` (the
day it was copied), and `visibility`.

Everything here is public information. `visibility` accepts only `public`, so
lint reports any Source that came from a team-only system. Internal material
(Basecamp, Linear, the team repository) is reference for writing public content,
kept outside `paths/`.

---

# Article

A Pathwright blog post.

```yaml
type: article
icon: file-text
color: violet
props:
  source: { enum: [framer] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
  series: { type: string }
```

---

# Update

A dated item from the Pathwright website's updates feed: product notes, events,
and reposted articles.

```yaml
type: update
icon: flag
color: amber
props:
  source: { enum: [framer] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
```

---

# Edition

One issue of the Collider newsletter.

```yaml
type: edition
icon: mail
color: rose
props:
  source: { enum: [mailchimp] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
```

---

# Link

One link shared in Collider, with the editor's headline and commentary.

```yaml
type: link
icon: external-link
color: rose
props:
  source: { enum: [mailchimp] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
  url: { type: string, format: uri }
  edition: { type: link, targets: [edition] }
  position: { type: integer, minimum: 1 }
```

---

# Help article

A Pathwright help center article.

```yaml
type: help
icon: circle-help
color: teal
props:
  source: { enum: [intercom] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
  intercom-id: { type: string }
  collection: { type: string }
  section: { type: string }
```

---

# Change

An entry in Pathwright's public product changelog. Entries from 2025 on are
written here; imported entries from the earlier changelog carry `source`. Every
entry has a `status`. Only `published` entries appear in the changelog, its feeds
and the Pathwright app; `draft` marks one awaiting the team's review. An entry's
`date` is the day it went public, because the app's unread indicator compares it
with when each person last opened the changelog.

```yaml
type: change
icon: zap
color: emerald
props:
  status: { enum: [draft, published] }
  source: { enum: [paths-app] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
  date: { type: string, format: date }
  author: { type: link, targets: [person] }
```

---

# Person

Someone on the Pathwright team who wrote or edited material here.

```yaml
type: person
icon: circle-user
color: slate
props:
  visibility: { enum: [public] }
```

---

# Guide

Practical instructions for a task.

```yaml
type: guide
icon: route
color: teal
props:
  source: { enum: [npm] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
```

---

# Reference

Durable product or developer knowledge for lookup.

```yaml
type: reference
icon: clipboard-list
color: cyan
props:
  source: { enum: [npm] }
  original: { type: string, format: uri }
  retrieved: { type: string, format: date }
  visibility: { enum: [public] }
```

---

# Shape

A project's proposal: outcome, boundaries, and open decisions.

```yaml
type: shape
icon: folder-kanban
color: violet
```
