/** * Record types the reference PDS validates strictly, from its knownSchemas map * in packages/pds/src/repo/prepare.ts. pds.js enforces them the same way — a * record that fails validation against one of these is rejected, so pds.js * refuses exactly what every other PDS refuses. * * published.js holds the lexicons for this list, so a write validates without * touching the network. That copy is a cache with a TTL, not the authority: * the resolver replaces each entry with the published document as it ages. * Regenerate it with scripts/gen-bundled-lexicons.mjs. * * Anything outside this list is only advisory when resolved from the network: * publishers' lexicons routinely lag the clients writing the records, and no * other PDS rejects a write over a doc it had to go fetch. Operators can pass * their own list as `enforce`, and schemas handed to the resolver up front are * always enforced. * * @type {string[]} */ export const knownRecords = [ 'app.bsky.actor.profile', 'app.bsky.actor.status', 'app.bsky.feed.generator', 'app.bsky.feed.like', 'app.bsky.feed.post', 'app.bsky.feed.postgate', 'app.bsky.feed.repost', 'app.bsky.feed.threadgate', 'app.bsky.graph.block', 'app.bsky.graph.follow', 'app.bsky.graph.list', 'app.bsky.graph.listblock', 'app.bsky.graph.listitem', 'app.bsky.graph.starterpack', 'app.bsky.graph.verification', 'app.bsky.labeler.service', 'app.bsky.notification.declaration', 'chat.bsky.actor.declaration', 'com.atproto.lexicon.schema', 'com.germnetwork.declaration', ];