- Before committing data changes, validate touched YAML parses.
- Check
_finder/schema.ymlbefore adding new top-level fields. Prefer existing canonical fields over aliases. - Use plural schema fields where they already exist:
authors,publishers,directors,writers,producers,editors,developers,composers,designers. - Do not add singular aliases like
authororpublisher; normalize them toauthorsandpublishers. - If CI reports
Unknown field, either fix the content to an existing field or add the field to_finder/schema.ymlwhen it is legitimate reusable metadata. - Keep commits scoped by content area when possible (
Movies,People,Shows,Games, schema/workflow fixes separately). Do not mix unrelated staged changes into a commit. - Use Conventional Commits for commit messages, for example
fix: model comic issues as objectsorchore: update schema docs. - Never skip commit verification. Do not use
git commit --no-verify; fix the failing check instead. - When asked to review or commit a subset of directories, inspect and stage only those paths.
- Avoid committing generated/local/project-noise files unless explicitly requested.
- No
ref: Characters/...entries in movie/show character lists unless the user explicitly asks for them. Keep charactername,actor, andvoicefields.
- Repository references are root-relative paths without
.ymlwhen they refer to actual files. - Some fields, especially
series, may be plain strings rather than file references; do not force them to resolve unless the surrounding data uses paths. - Missing-reference scans are useful, but not every missing reference is a blocker. Franchise strings like
Star Wars,Rocky, orAvatarmay be intentional plain metadata. - If a concrete target exists, prefer the precise path (for example
Movies/Series/Pitch Perfect) over a bare string when the local pattern supports it.
_finder/schema.ymlis the source for finder schema validation and unknown-field annotations.- GitHub Actions Node runtime warnings should be fixed by moving actions to Node 24-compatible major versions when available.
- Meilisearch
521errors fromsearch.alsosee.infoare usually upstream/proxy runtime failures, not content schema failures. If schema annotations are clean and521persists, retry CI or fix retry/backoff in the finder service.
Files live at Companies/{Company Name}.yml.
Fields (from Warner Bros. Pictures.yml):
name— display namedescription— one-line description (plain string, not block scalar)website— official site URLfounded— YYYY-MM-DDfounders— list of founder nameswikipedia— Wikipedia URLtwitter/instagram/facebook/youtube— social URLs
Show season files live at Shows/{year}/{Show Name}.yml for the first season or limited/standalone entry, and Shows/{year}/{Show Name}, Season {N}.yml for later seasons.
Fields (from CriticalRole.yml):
name— display namewebsite— official site URL- Other social/streaming fields may apply (infer from existing files)
- For multi-season shows, use
series: Show Nameas a plain string. Do not point it to aSeriessubdirectory underShows; generated series pages infer the path fromShows.
Files live at Games/Video/{year}/{title}.yml.
Also: Games/Tabletop/{title}.yml, Games/Awards/{award}/{year}.yml.
Fields (from The Last of Us.yml):
name,description,released,genres(list)wikipedia,metacritic,fandom,ign,spotify— source/review URLs (no imdb/tmdb)website— official sitedevelopers— string or listpublishers— string or listdirectors,designer,writers,composers— production creditscharacters— list withname+actor:(usesactor:notvoice:per existing game data)
Album files live at Music/{year}/{Album Name}.yml.
Fields:
name,description,released(YYYY-MM-DD),genres(list)artists— path(s) toPeople/orBands/entries (string or list)label— record label (string, or path toCompanies/)wikipedia,spotify,apple_music,discogs,metacritic,pitchfork,rateyourmusic— external refstracks— list withname,length(e.g.3m54s), optionalfeaturing,wikipedia,spotify
Solo artists live in People/ (same as actors/directors). Add spotify field for music-specific link.
Files live at Bands/{Band Name}.yml.
Fields:
name— display namedescription— one-line descriptionformed— year (integer)disbanded— year (integer, omit if still active)members— canonical/classic lineup (informal, not a complete roster — actual credits live on album/concert files)wikipedia,spotify,website— external refstwitter/instagram/facebook/youtube— social URLs
Concert files live at Events/{year}/{YYYY-MM-DD} {Artist} at {Venue}.yml.
Fields:
name— display name (e.g. "Prince at Madison Square Garden")date— YYYY-MM-DDdescription— summaryartist— path toPeople/orBands/entryvenue— path toLocations/entry or plain stringwikipedia,setlist(setlist.fm URL) — external refs
references/fields.md lives in the skill bundle at /Users/chuhlomin/.Codex/skills/alsosee-add/references/fields.md, not in this repo.