Skip to content

docs(plugins): .tabularium is the canonical manifest, not manifest.json - #595

Merged
debba merged 2 commits into
TabularisDB:mainfrom
NewtTheWolf:docs/tabularium-canonical-manifest
Aug 7, 2026
Merged

docs(plugins): .tabularium is the canonical manifest, not manifest.json#595
debba merged 2 commits into
TabularisDB:mainfrom
NewtTheWolf:docs/tabularium-canonical-manifest

Conversation

@NewtTheWolf

Copy link
Copy Markdown
Collaborator

Companion to the website-side fix (tabularis.dev/wiki/plugins already stopped presenting manifest.json as canonical). The host has treated .tabularium as the canonical on-disk manifest for a while (installer.rs MANIFEST_FILE = ".tabularium", manifest.json legacy fallback in compat.rs, ConfigManifest.id: Option<String> with identity falling back to name) — the docs in plugins/ still described the old world.

Changes

  • PLUGIN_GUIDE.md — § 2 reframed around .tabularium: directory trees, example manifest (slug name, no id, registry $schema with ?kind=driver, matching what @tabularis/create-plugin scaffolds since fix(create-plugin): make the scaffolded .tabularium pass registry validation; point docs at tabularis.dev #594), manifest-fields table (name = slug; id documented as optional legacy), lifecycle wording, install-locally step, and § 8 publishing now points at registry.tabularis.dev/submit with the registry.json PR labeled as the legacy path.
  • PLUGIN_TUTORIAL.md — scaffold excerpts updated to the actual scaffold output (.tabularium, registry $schema, kind/engine/paradigms).
  • README.md — startup scan, directory tree, registry-field note and publishing steps updated the same way.
  • manifest.schema.jsonid removed from required (kept as optional property, documented as legacy), matching the host's actual behavior. The copy served at tabularis.dev/schemas/plugin-manifest.json updates automatically on the next website build.

Docs + one schema-required-list change; no code touched.

The host loads .tabularium first (installer MANIFEST_FILE) and reads
manifest.json only as a legacy fallback; id is optional and identity
falls back to name. Guide, tutorial and README still framed
manifest.json with a required id + display name as the format.

- guide/tutorial examples are now .tabularium (slug name, registry
  $schema, scaffold-matching kind/engine/paradigms)
- manifest.schema.json no longer requires id, matching the host
  (ConfigManifest id: Option<String>)
- publishing sections point at registry.tabularis.dev/submit; the
  registry.json PR is labeled the legacy path
…sh rules

- registry.spitzli.dev (dead) -> registry.tabularis.dev in deep-link test
  fixture and type doc comment; tabularium.wiki/docs/#/... (404) ->
  docs.tabularium.wiki
- document what the registry actually enforces: name slug pattern (pinned),
  version == tag minus v-prefix, description <= 280 chars, HTTP 422
  hard-reject on invalid manifests
- publishing steps now include the standalone .tabularium release asset
  (GitHub renames dotfiles to default.tabularium; registry accepts both)
  and client-side sha256 + JWS install verification
- manifest-checklist: drop nonexistent id core field, .tabularium instead
  of manifest.json, add constraints + publishing section
- tutorial example manifest was missing required version (would 422)
@kilo-code-bot

kilo-code-bot Bot commented Aug 6, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Files Reviewed (10 files)
  • plugins/manifest.schema.json
  • plugins/PLUGIN_GUIDE.md
  • plugins/PLUGIN_TUTORIAL.md
  • plugins/README.md
  • .claude/skills/tabularis-plugin-driver/references/manifest-checklist.md
  • packages/create-plugin/README.md
  • src-tauri/src/config.rs
  • src-tauri/src/plugins/deep_link.rs
  • src-tauri/src/plugins/installer.rs
  • src/types/plugins.ts

Reviewed by step-3.7-flash · Input: 127.8K · Output: 31K · Cached: 2.4M

@debba
debba merged commit b3dd9d2 into TabularisDB:main Aug 7, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants