{"explanation/why-ktl-registrar":{"title":"Why KTL Registrar","type":"Explanation","genre":"explanation","label":"checked by automation only, still a draft","tone":"automation","definition":"Why KTL Registrar exists: no other known tool checks the LOKF semantic layer, so it checks that layer and the OKF v0.2 base layer beneath it in the editor, reports rather than blocks, lets a person turn off Enforce OKF conformance as errors to downgrade the OKF errors to warnings, and stays independent of its sibling KTL Curator."},"glossary/diataxis-genre":{"title":"Diátaxis genre","type":"Glossary term","genre":"reference","label":"checked by automation only","tone":"automation","definition":"An optional facet (tutorial/how-to/reference/explanation) tagging how a concept's prose serves the reader, orthogonal to its LOKF type."},"glossary/lokf":{"title":"LOKF","type":"Glossary term","label":"checked by automation only","tone":"automation","definition":"Linked Open Knowledge Format - a semantic profile of OKF that binds every field, type, and relationship to a public vocabulary (schema.org/DCAT/PROV-O), so a bundle expands losslessly to JSON-LD/RDF and is queryable with SPARQL."},"glossary/okf":{"title":"OKF","type":"Glossary term","label":"checked by automation only","tone":"automation","definition":"Open Knowledge Format - a directory of Markdown files with YAML frontmatter, one concept per file, whose only hard requirement is a non-empty type."},"playbooks/contributing":{"title":"Contributing","type":"Playbook","label":"checked by automation only, still a draft","tone":"automation","definition":"How to set up KTL Registrar for development, how src/ splits into pure and Obsidian-bound modules, and the checklist before a pull request: npm run check, the changelog entry, a releasing pull request title, and the skills pin, which knowledge-sync.yaml and knowledge-sync.sh move with every template the release's knowledge-sync.manifest lists."},"playbooks/install-ktl-registrar":{"title":"Install KTL Registrar","type":"Playbook","genre":"how-to","label":"checked by automation only, still a draft","tone":"automation","definition":"How to get a LOKF bundle, open it as its own Obsidian vault, and install KTL Registrar there from a GitHub release, with BRAT or from source. The plugin is not yet in the community plugin store and needs Obsidian 1.13.0 or later."},"playbooks/knowledge-registrar-gate":{"title":"Knowledge registrar gate","type":"Playbook","genre":"how-to","label":"checked by automation only, still a draft","tone":"automation","definition":"The knowledge-registrar.yaml workflow: it validates the bundle and its relation targets and checks the sidecar conventions on every pull request that touches the bundle, and ties every human: confirmation a change adds, alters or removes to that person's approving review or verified signature, with an environment reviewer's attestation as the fallback."},"playbooks/knowledge-sources":{"title":"Knowledge Sources","type":"Playbook","label":"checked by automation only","tone":"automation","definition":"Map of the repository files and outside sources this bundle is derived from, which concepts each feeds, how a refresh re-checks each, which files are left out on purpose, and which have no concept yet."},"playbooks/knowledge-website":{"title":"Knowledge Website","type":"Playbook","label":"checked by automation only, still a draft","tone":"automation","definition":"The website/ folder and the knowledge-website.yaml workflow: an Astro Starlight site built from the bundle, the README, docs/ and the changelog, how to preview it, what to edit, and how the workflow builds it on pull requests and deploys it to GitHub Pages at `https://noelmcloughlin.github.io/obsidian-ktl-registrar/` once KNOWLEDGE_WEBSITE_ENABLED is true."},"playbooks/quality-gates":{"title":"Quality Gates","type":"Playbook","label":"checked by automation only, still a draft","tone":"automation","definition":"The lint-and-docs.yaml workflow: ShellCheck, actionlint with a check that every action is pinned to a commit, markdownlint, a link check and codespell, on pushes to main, every pull request and a weekly schedule; plus the markdownlint rule overrides and the Dependabot updates that keep the pins current."},"playbooks/releasing":{"title":"Releasing","type":"Playbook","label":"checked by automation only","tone":"automation","definition":"Semantic-release computes the version and promotes CHANGELOG.md on merge to main, behind a required-reviewer Environment; the resulting tag invokes the same hardened build-and-attest workflow a hand-pushed tag always has."},"playbooks/scheduled-librarian":{"title":"Scheduled Librarian","type":"Playbook","label":"checked by automation only, still a draft","tone":"automation","definition":"The knowledge-librarian.yaml workflow: three jobs split by privilege, so the agent proposes bundle changes as a patch under a read-only token and only a job that runs no agent pushes the branch and opens the review pull request; how it is switched on, when a scheduled week runs no agent, and the checks publish makes."},"policies/ai-covenant":{"title":"AI Covenant","type":"Policy","label":"checked by automation only, still a draft","tone":"automation","definition":"Contributors own what they submit, whichever tools helped write it; AI may support discussion but never take part on a person's behalf; a repository-owned agent commits under a bot identity, proposes every change as a reviewed pull request, runs with least privilege, and never records a person's verdict itself."},"policies/code-of-conduct":{"title":"Code of Conduct","type":"Policy","label":"checked by automation only, still a draft","tone":"automation","definition":"The project's code of conduct, adapted from Contributor Covenant 2.1, for harassment-free participation; the same file as the sibling knowledge-trust-ladder repository's."},"policies/no-telemetry":{"title":"No Telemetry","type":"Policy","label":"checked by automation only","tone":"automation","definition":"KTL Registrar makes no network requests, has no telemetry and no external services, and loads no remote code; it reads the open vault and writes only when a person runs a command that edits a note."},"references/commands-and-settings":{"title":"Commands and Settings","type":"Reference","label":"checked by automation only","tone":"automation","definition":"Every KTL Registrar command with its id and name, what the status-bar item does when clicked, and the settings groups under Settings → KTL Registrar, including Known LOKF types for a domain schema, from docs/using.md and src/main.ts."},"references/lokf-specification":{"title":"LOKF Specification","type":"Reference","label":"checked by automation only","tone":"automation","definition":"The Linked Open Knowledge Format specification - a semantic profile of OKF binding fields and relationships to schema.org/DCAT/PROV-O."},"references/lokf-toolkit":{"title":"LOKF Toolkit","type":"Reference","label":"checked by automation only","tone":"automation","definition":"The `lokf` PyPI package that the `.lokf/` sidecar depends on (`lokf[build]>=0.9.0`) and runs through the justfile recipes and the website's sync; a separate resource from the LOKF specification website."},"references/obsidian-plugin-guidelines":{"title":"Obsidian Plugin Guidelines","type":"Reference","label":"checked by automation only","tone":"automation","definition":"Obsidian's developer guidelines for community plugins, for example sentence case in UI text, setHeading in a settings tab, no innerHTML, no detaching leaves in onunload and no hardcoded styling, which eslint-plugin-obsidianmd enforces in this repository."},"references/okf-specification":{"title":"OKF Specification (v0.2)","type":"Reference","label":"checked by automation only","tone":"automation","definition":"The Open Knowledge Format v0.2 specification: a folder of Markdown files with YAML frontmatter, one concept per file, with a type as the only required field, plus the provenance, trust and lifecycle fields and attested computations."},"services/ktl-registrar-plugin":{"title":"KTL Registrar Plugin","type":"Service","label":"checked by automation only","tone":"automation","definition":"The plugin lifecycle in src/main.ts: fifteen commands, the status bar, vault-wide scanning, bundle-root resolution, and the read-only API the sibling KTL Curator may read."},"services/report-view":{"title":"Report View","type":"Service","label":"checked by automation only","tone":"automation","definition":"Collapsible side-panel view rendering the vault-wide LOKF conformance report."},"services/settings-tab":{"title":"Settings Tab","type":"Service","label":"checked by automation only","tone":"automation","definition":"The declarative settings tab in src/settings.ts (Obsidian 1.13.0 getSettingDefinitions API): its eleven groups, how list settings are stored and saved, bundle root folders and the break-glass whole-vault switch, and Known LOKF types as the domain-schema extension point."},"services/validator-engine":{"title":"Validator Engine","type":"Service","label":"checked by automation only","tone":"automation","definition":"The import-free rule engine in src/validator.ts: the LOKF semantic layer (bundle header and base_iri, type vocabulary, typed relationships, id minting, trust and lifecycle shape), the OKF v0.2 base layer behind checkOkfBaseLayer, the errors lokf validate also raises, and pure bundle-root detection."}}
