Skip to content

docs: say plainly which registry submissions work today - #5

Merged
datlechin merged 1 commit into
mainfrom
docs/honest-submission-path
Aug 19, 2026
Merged

docs: say plainly which registry submissions work today#5
datlechin merged 1 commit into
mainfrom
docs/honest-submission-path

Conversation

@datlechin

Copy link
Copy Markdown
Member

The registry README's "Submitting a Plugin" section told contributors to "Code-sign it with a valid Apple Developer certificate". That does not work. PluginCodeSignatureVerifier.swift builds the requirement

anchor apple generic and certificate leaf[subject.OU] = "<TablePro's own team id>"

and applies it at six call sites with only a DEBUG bypass. A bundle signed with the contributor's own Developer ID has their team OU, not TablePro's, so it is rejected at load time with "Bundle failed to load executable". Anyone who followed those six steps exactly spent a day building something the app refuses to open.

So the section now says which submissions actually work:

Themes work today and are open to anyone. They are JSON, carry no executable, never touch the code-signature check, and ThemeRegistryInstaller verifies them by SHA-256 against the manifest. There were no instructions for that path at all, even though the schema has supported category: "theme" since it was written and the app has a full theme editor with export. The registry currently holds 17 entries and every one is a database driver.

Drivers and format plugins are stated as not yet possible, with the reason, and with what has to change: accepting a notarized Developer ID signature behind an explicit per-developer trust prompt, and shipping TableProPluginKit as a versioned XCFramework so a driver can live in its own repo. Contributors are pointed at the open database requests instead, which is something they can act on now.

Also fixes the repo link, which still pointed at github.com/datlechin/TablePro from before the rename.

This is documentation only. It does not change the security posture: the signature check on executable bundles is correct and stays exactly as it is.

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.

1 participant