docs
.obsidian-qidocs/
plugins/
auto-classifier/
manifest.json
{
"id": "auto-classifier",
"name": "Auto Classifier",
"version": "1.3.0",
"minAppVersion": "1.1.1",
"description": "This plugin automatically classify tag from your notes using ChatGPT API or Jina Classifier. It analyze your note (It can be title, frontmatter, content or selected area) and automatically insert tag where you set.",
"author": "Hyeonseo Nam",
"authorUrl": "https://github.com/HyeonseoNam/auto-classifier",
"isDesktopOnly": false
}
better-export-pdf/
manifest.json
{
"id": "better-export-pdf",
"name": "Better Export PDF",
"version": "1.11.0",
"minAppVersion": "0.15.0",
"description": "Export your notes to PDF, support export preview, add bookmarks outline and header/footer.",
"author": "l1xnan",
"authorUrl": "https://github.com/l1xnan",
"fundingUrl": "https://www.buymeacoffee.com/l1xnan",
"isDesktopOnly": true
}
book-smith/
manifest.json
{
"id": "book-smith",
"name": "Book Smith",
"version": "1.0.5",
"minAppVersion": "0.15.0",
"description": "Simplify long-form writing and book creation. Organize chapters, track progress, and export your manuscript in various formats for a seamless publishing workflow.",
"author": "Yeban",
"isDesktopOnly": false
}
dataview/
manifest.json
{
"id": "dataview",
"name": "Dataview",
"version": "0.5.68",
"minAppVersion": "0.13.11",
"description": "Complex data views for the data-obsessed.",
"author": "Michael Brenan <blacksmithgu@gmail.com>",
"authorUrl": "https://github.com/blacksmithgu",
"helpUrl": "https://blacksmithgu.github.io/obsidian-dataview/",
"isDesktopOnly": false
}
export-to-html/
manifest.json
{
"id": "export-to-html",
"name": "Export to HTML",
"version": "1.2.0",
"minAppVersion": "0.15.0",
"description": "Export your Markdown notes as HTML, directly in the clipboard or as a file.",
"author": "kalvn",
"authorUrl": "https://kalvn.net",
"fundingUrl": "https://paypal.me/kalvn/5",
"isDesktopOnly": true
}
file-tree-alternative/
data.json
{
"openViewOnStart": true,
"ribbonIcon": true,
"showRootFolder": true,
"showFilesFromSubFolders": true,
"searchFunction": true,
"allSearchOnlyInFocusedFolder": false,
"showFilesFromSubFoldersButton": true,
"revealActiveFileButton": false,
"excludedExtensions": "",
"hideAttachments": false,
"attachmentsFolderName": "attachments",
"folderIcon": "default",
"folderCount": true,
"folderCountOption": "notes",
"evernoteView": "Vertical",
"filePreviewOnHover": false,
"iconBeforeFileName": true,
"sortFilesBy": "name",
"sortReverse": false,
"sortFoldersBy": "name",
"fixedHeaderInFileList": true,
"createdYaml": false,
"fileNameIsHeader": false,
"folderNote": false,
"deleteFileOption": "trash",
"showFileNameAsFullPath": false,
"bookmarksEvents": false
}
manifest.json
{
"id": "file-tree-alternative",
"name": "File Tree Alternative",
"version": "2.6.0",
"minAppVersion": "0.15.0",
"description": "This plugin allows you to have an alternative file tree view.",
"author": "Ozan Tellioglu",
"authorUrl": "https://www.ozan.pl",
"fundingUrl": "https://ko-fi.com/ozante",
"isDesktopOnly": false
}
homepage/
manifest.json
{
"id": "homepage",
"name": "Homepage",
"version": "4.4.2",
"minAppVersion": "1.12.2",
"description": "Open a specified note, canvas, base, or workspace on startup, or set it for quick access later.",
"author": "novov",
"authorUrl": "https://novov.me",
"isDesktopOnly": false,
"fundingUrl": {
"Ko-fi": "https://ko-fi.com/novov"
}
}
local-graphql/
manifest.json
{
"id": "local-graphql",
"name": "Local GraphQL",
"version": "1.0.2",
"minAppVersion": "0.15.0",
"description": "Export Obsidian data as a local GraphQL server.",
"author": "Hawtian Wang",
"authorUrl": "https://twistoy.cn",
"isDesktopOnly": true
}
nexus-ai-chat-importer/
data.json
{
"settings": {
"conversationFolder": "Nexus/Conversations",
"reportFolder": "Nexus/Reports",
"attachmentFolder": "Nexus/Attachments",
"addDatePrefix": false,
"dateFormat": "YYYY-MM-DD",
"useCustomMessageTimestampFormat": false,
"messageTimestampFormat": "locale",
"lastConversationsPerPage": 50,
"hasShownUpgradeNotice": false,
"hasSeenClaude132UpgradeNotice": false,
"hasCompletedUpgrade": false,
"currentVersion": "1.6.3",
"previousVersion": "1.6.3"
},
"importedArchives": {},
"upgradeHistory": {
"completedUpgrades": {
"1_6_3": {
"version": "1.6.3",
"date": "2026-05-12T09:24:16.795Z",
"completed": true
}
},
"completedOperations": {}
},
"lastVersion": "1.6.3",
"hasCompletedUpgrade": true,
"upgradeDate": "2026-05-12T09:24:16.795Z",
"versionTrackingEnabled": true
}
manifest.json
{
"id": "nexus-ai-chat-importer",
"name": "Nexus AI Chat Importer",
"version": "1.6.3",
"author": "Superkikim",
"authorUrl": "https://github.com/Superkikim",
"minAppVersion": "0.15.0",
"description": "Import and organize AI chat exports from ChatGPT, Claude, Mistral Le Chat, Perplexity, and more in your local vault, so you stay in control of your data."
}
obsidian-enhancing-export/
lua/
textemplate/
manifest.json
{
"id": "obsidian-enhancing-export",
"name": "Enhancing Export",
"version": "1.11.1",
"minAppVersion": "1.6.3",
"description": "This is a enhancing export plugin for Obsidian. It allows to export to formats like Html, DOCX, ePub and PDF or Markdown(Hugo) etc.",
"author": "YISH",
"authorUrl": "https://github.com/mokeyish",
"isDesktopOnly": true
}
obsidian-icon-folder/
data.json
{
"settings": {
"migrated": 6,
"iconPacksPath": ".obsidian/icons",
"fontSize": 16,
"emojiStyle": "native",
"iconColor": null,
"recentlyUsedIcons": [],
"recentlyUsedIconsSize": 5,
"rules": [],
"extraMargin": {
"top": 0,
"right": 4,
"bottom": 0,
"left": 0
},
"iconInTabsEnabled": false,
"iconInTitleEnabled": false,
"iconInTitlePosition": "above",
"iconInFrontmatterEnabled": false,
"iconInFrontmatterFieldName": "icon",
"iconColorInFrontmatterFieldName": "iconColor",
"iconsBackgroundCheckEnabled": false,
"iconsInNotesEnabled": true,
"iconsInLinksEnabled": true,
"iconIdentifier": ":",
"lucideIconPackType": "native",
"debugMode": false,
"useInternalPlugins": false
}
}
manifest.json
{
"id": "obsidian-icon-folder",
"name": "Iconize",
"version": "2.14.7",
"minAppVersion": "0.9.12",
"description": "Add icons to anything you desire in Obsidian, including files, folders, and text.",
"author": "Florian Woelki",
"authorUrl": "https://florianwoelki.com/",
"isDesktopOnly": false
}
obsidian-importer/
manifest.json
{
"id": "obsidian-importer",
"name": "Importer",
"version": "1.8.6",
"minAppVersion": "0.15.0",
"description": "Import data from Notion, Evernote, Apple Notes, Microsoft OneNote, Google Keep, Bear, Roam, Textbundle, CSV, and HTML files.",
"author": "Obsidian",
"authorUrl": "https://obsidian.md",
"isDesktopOnly": false
}
obsidian-linter/
data.json
{
"ruleConfigs": {
"add-blank-line-after-yaml": {
"enabled": false
},
"dedupe-yaml-array-values": {
"enabled": false,
"dedupe-alias-key": true,
"dedupe-tag-key": true,
"dedupe-array-keys": true,
"ignore-keys": ""
},
"escape-yaml-special-characters": {
"enabled": false,
"try-to-escape-single-line-arrays": false
},
"force-yaml-escape": {
"enabled": false,
"force-yaml-escape-keys": ""
},
"format-tags-in-yaml": {
"enabled": false
},
"format-yaml-array": {
"enabled": false,
"alias-key": true,
"tag-key": true,
"default-array-style": "single-line",
"default-array-keys": true,
"force-single-line-array-style": "",
"force-multi-line-array-style": ""
},
"insert-yaml-attributes": {
"enabled": false,
"text-to-insert": "aliases: \ntags: "
},
"move-tags-to-yaml": {
"enabled": false,
"how-to-handle-existing-tags": "Nothing",
"tags-to-ignore": ""
},
"remove-yaml-keys": {
"enabled": false,
"yaml-keys-to-remove": ""
},
"sort-yaml-array-values": {
"enabled": false,
"sort-alias-key": true,
"sort-tag-key": true,
"sort-array-keys": true,
"ignore-keys": "",
"sort-order": "Ascending Alphabetical"
},
"yaml-key-sort": {
"enabled": false,
"yaml-key-priority-sort-order": "",
"priority-keys-at-start-of-yaml": true,
"yaml-sort-order-for-other-keys": "None"
},
"yaml-timestamp": {
"enabled": false,
"date-created": true,
"date-created-key": "date created",
"date-created-source-of-truth": "file system",
"date-modified": true,
"date-modified-key": "date modified",
"date-modified-source-of-truth": "file system",
"format": "dddd, MMMM Do YYYY, h:mm:ss a",
"convert-to-utc": false,
"update-on-file-contents-updated": "never"
},
"yaml-title": {
"enabled": false,
"title-key": "title",
"mode": "first-h1-or-filename-if-h1-missing"
},
"yaml-title-alias": {
"enabled": false,
"preserve-existing-alias-section-style": true,
"keep-alias-that-matches-the-filename": false,
"use-yaml-key-to-keep-track-of-old-filename-or-heading": true,
"alias-helper-key": "linter-yaml-title-alias"
},
"capitalize-headings": {
"enabled": false,
"style": "Title Case",
"ignore-case-words": true,
"ignore-words": "macOS, iOS, iPhone, iPad, JavaScript, TypeScript, AppleScript, I",
"lowercase-words": "a, an, the, aboard, about, abt., above, abreast, absent, across, after, against, along, aloft, alongside, amid, amidst, mid, midst, among, amongst, anti, apropos, around, round, as, aslant, astride, at, atop, ontop, bar, barring, before, B4, behind, below, beneath, neath, beside, besides, between, 'tween, beyond, but, by, chez, circa, c., ca., come, concerning, contra, counting, cum, despite, spite, down, during, effective, ere, except, excepting, excluding, failing, following, for, from, in, including, inside, into, less, like, minus, modulo, mod, near, nearer, nearest, next, notwithstanding, of, o', off, offshore, on, onto, opposite, out, outside, over, o'er, pace, past, pending, per, plus, post, pre, pro, qua, re, regarding, respecting, sans, save, saving, short, since, sub, than, through, thru, throughout, thruout, till, times, to, t', touching, toward, towards, under, underneath, unlike, until, unto, up, upon, versus, vs., v., via, vice, vis-à-vis, wanting, with, w/, w., c̄, within, w/i, without, 'thout, w/o, abroad, adrift, aft, afterward, afterwards, ahead, apart, ashore, aside, away, back, backward, backwards, beforehand, downhill, downstage, downstairs, downstream, downward, downwards, downwind, east, eastward, eastwards, forth, forward, forwards, heavenward, heavenwards, hence, henceforth, here, hereby, herein, hereof, hereto, herewith, home, homeward, homewards, indoors, inward, inwards, leftward, leftwards, north, northeast, northward, northwards, northwest, now, onward, onwards, outdoors, outward, outwards, overboard, overhead, overland, overseas, rightward, rightwards, seaward, seawards, skywards, skyward, south, southeast, southwards, southward, southwest, then, thence, thenceforth, there, thereby, therein, thereof, thereto, therewith, together, underfoot, underground, uphill, upstage, upstairs, upstream, upward, upwards, upwind, west, westward, westwards, when, whence, where, whereby, wherein, whereto, wherewith, although, because, considering, given, granted, if, lest, once, provided, providing, seeing, so, supposing, though, unless, whenever, whereas, wherever, while, whilst, ago, inasmuch, even, whether, whose, whoever, why, how, whatever, what, both, and, or, either, neither, nor, just, rather, such, that, yet, is, it"
},
"file-name-heading": {
"enabled": false
},
"header-increment": {
"enabled": false,
"start-at-h2": false
},
"headings-start-line": {
"enabled": false
},
"remove-trailing-punctuation-in-heading": {
"enabled": false,
"punctuation-to-remove": ".,;:!。,;:!"
},
"footnote-after-punctuation": {
"enabled": false
},
"move-footnotes-to-the-bottom": {
"enabled": false,
"include-blank-line-between-footnotes": false
},
"re-index-footnotes": {
"enabled": false
},
"auto-correct-common-misspellings": {
"enabled": false,
"ignore-words": "",
"skip-words-with-multiple-capitals": false,
"extra-auto-correct-files": []
},
"blockquote-style": {
"enabled": false,
"style": "space"
},
"convert-bullet-list-markers": {
"enabled": false
},
"default-language-for-code-fences": {
"enabled": false,
"default-language": ""
},
"emphasis-style": {
"enabled": false,
"style": "consistent"
},
"no-bare-urls": {
"enabled": false,
"no-bare-uris": false
},
"ordered-list-style": {
"enabled": false,
"number-style": "ascending",
"list-end-style": "."
},
"proper-ellipsis": {
"enabled": false
},
"quote-style": {
"enabled": false,
"single-quote-enabled": true,
"single-quote-style": "''",
"double-quote-enabled": true,
"double-quote-style": "\"\""
},
"remove-consecutive-list-markers": {
"enabled": false
},
"remove-empty-list-markers": {
"enabled": false
},
"remove-hyphenated-line-breaks": {
"enabled": false
},
"remove-multiple-spaces": {
"enabled": false
},
"strong-style": {
"enabled": false,
"style": "consistent"
},
"two-spaces-between-lines-with-content": {
"enabled": false,
"line-break-indicator": " "
},
"unordered-list-style": {
"enabled": false,
"list-style": "consistent"
},
"compact-yaml": {
"enabled": false,
"inner-new-lines": false
},
"consecutive-blank-lines": {
"enabled": false
},
"convert-spaces-to-tabs": {
"enabled": false,
"tabsize": 4
},
"empty-line-around-blockquotes": {
"enabled": false
},
"empty-line-around-code-fences": {
"enabled": false
},
"empty-line-around-horizontal-rules": {
"enabled": false
},
"empty-line-around-math-blocks": {
"enabled": false
},
"empty-line-around-tables": {
"enabled": false
},
"heading-blank-lines": {
"enabled": false,
"bottom": true,
"empty-line-after-yaml": true
},
"line-break-at-document-end": {
"enabled": false
},
"move-math-block-indicators-to-their-own-line": {
"enabled": false
},
"paragraph-blank-lines": {
"enabled": false
},
"remove-empty-lines-between-list-markers-and-checklists": {
"enabled": false
},
"remove-link-spacing": {
"enabled": false
},
"remove-space-around-characters": {
"enabled": false,
"include-fullwidth-forms": true,
"include-cjk-symbols-and-punctuation": true,
"include-dashes": true,
"other-symbols": ""
},
"remove-space-before-or-after-characters": {
"enabled": false,
"characters-to-remove-space-before": ",!?;:).’”]",
"characters-to-remove-space-after": "¿¡‘“(["
},
"space-after-list-markers": {
"enabled": false
},
"space-between-chinese-japanese-or-korean-and-english-or-numbers": {
"enabled": false,
"english-symbols-punctuation-before": "-+;:'\"°%$)]",
"english-symbols-punctuation-after": "-+'\"([¥$"
},
"trailing-spaces": {
"enabled": false,
"two-space-line-break": false
},
"add-blockquote-indentation-on-paste": {
"enabled": false
},
"prevent-double-checklist-indicator-on-paste": {
"enabled": false
},
"prevent-double-list-item-indicator-on-paste": {
"enabled": false
},
"proper-ellipsis-on-paste": {
"enabled": false
},
"remove-hyphens-on-paste": {
"enabled": false
},
"remove-leading-or-trailing-whitespace-on-paste": {
"enabled": false
},
"remove-leftover-footnotes-from-quote-on-paste": {
"enabled": false
},
"remove-multiple-blank-lines-on-paste": {
"enabled": false
}
},
"lintOnSave": false,
"recordLintOnSaveLogs": false,
"displayChanged": true,
"suppressMessageWhenNoChange": false,
"lintOnFileChange": false,
"displayLintOnFileChangeNotice": false,
"settingsConvertedToConfigKeyValues": true,
"additionalFileExtensions": [],
"foldersToIgnore": [],
"filesToIgnore": [],
"linterLocale": "system-default",
"logLevel": "ERROR",
"lintCommands": [],
"customRegexes": [],
"commonStyles": {
"aliasArrayStyle": "single-line",
"tagArrayStyle": "single-line",
"minimumNumberOfDollarSignsToBeAMathBlock": 2,
"escapeCharacter": "\"",
"removeUnnecessaryEscapeCharsForMultiLineArrays": false
}
}
manifest.json
{
"id": "obsidian-linter",
"name": "Linter",
"version": "1.31.2",
"minAppVersion": "1.12.0",
"description": "Formats and styles your notes. It can be used to format YAML tags, aliases, arrays, and metadata; footnotes; headings; spacing; math blocks; regular markdown contents like list, italics, and bold styles; and more with the use of custom rule options as well.",
"author": "Victor Tao",
"authorUrl": "https://github.com/platers",
"helpUrl": "https://platers.github.io/obsidian-linter/",
"isDesktopOnly": false
}
obsidian-markmind/
data.json
{
"canvasSize": 8000,
"headLevel": 2,
"fontSize": 16,
"background": "transparent",
"layout": "mindmap",
"layoutDirect": "mindmap",
"protocol": "jump-to-pdf",
"registerPdfEvent": true,
"viewerTheme": 2,
"mindmapmode": "basic",
"parseMindMap": true,
"annotateTop": 0,
"annotateBottom": 0,
"showNodeBoard": true,
"useCustomShortcut": false,
"highlightFormat": "\nPage:{{page}}\n<span style=\"color:rgb({{color}})\">■</span>:{{highlightText}}\nComment:{{comment}}\n[📌]({{link}})\n^{{id}}\n",
"uid": "00p01101101200t01101101201301000r00s013"
}
manifest.json
{
"id": "obsidian-markmind",
"name": "Markmind",
"version": "3.5.0",
"minAppVersion": "0.9.12",
"description": "This is a mindmap , outline tool for obsidian.",
"author": "Mark",
"authorUrl": "https://github.com/MarkMindCkm/obsidian-markmind",
"isDesktopOnly": false
}
obsidian-mind-map/
manifest.json
{
"id": "obsidian-mind-map",
"name": "Mind Map",
"version": "1.1.0",
"description": "A plugin to preview notes as Markmap mind maps",
"isDesktopOnly": false,
"js": "main.js"
}
obsidian-pandoc/
manifest.json
{
"id": "obsidian-pandoc",
"name": "Pandoc Plugin",
"version": "0.4.1",
"minAppVersion": "0.12.5",
"description": "This is a Pandoc export plugin for Obsidian. It provides commands to export to formats like DOCX, ePub and PDF.",
"author": "Oliver Balfour",
"authorUrl": "https://github.com/OliverBalfour/obsidian-pandoc",
"isDesktopOnly": true
}
obsidian-style-settings/
manifest.json
{
"id": "obsidian-style-settings",
"name": "Style Settings",
"version": "1.0.9",
"minAppVersion": "0.11.5",
"description": "Offers controls for adjusting theme, plugin, and snippet CSS variables.",
"author": "mgmeyers",
"authorUrl": "https://github.com/mgmeyers/obsidian-style-settings",
"isDesktopOnly": false
}
obsidian-tasks-plugin/
manifest.json
{
"id": "obsidian-tasks-plugin",
"name": "Tasks",
"version": "8.0.0",
"minAppVersion": "1.8.7",
"description": "Track tasks across your vault. Supports due dates, recurring tasks, done dates, sub-set of checklist items, and filtering.",
"helpUrl": "https://publish.obsidian.md/tasks/",
"author": "Clare Macrae and Ilyas Landikov (created by Martin Schenck)",
"authorUrl": "https://github.com/obsidian-tasks-group",
"fundingUrl": "https://github.com/sponsors/claremacrae",
"isDesktopOnly": false
}
omnisearch/
data.json
{
"useCache": true,
"hideExcluded": false,
"recencyBoost": "0",
"downrankedFoldersFilters": [],
"ignoreDiacritics": true,
"ignoreArabicDiacritics": false,
"indexedFileTypes": [],
"indexFilesWithoutExtension": false,
"displayTitle": "",
"PDFIndexing": false,
"officeIndexing": false,
"imagesIndexing": false,
"aiImageIndexing": false,
"unsupportedFilesIndexing": "default",
"splitCamelCase": false,
"openInNewPane": false,
"vimLikeNavigationShortcut": false,
"ribbonIcon": true,
"showExcerpt": true,
"maxEmbeds": 5,
"renderLineReturnInExcerpts": true,
"showCreateButton": false,
"highlight": true,
"showPreviousQueryResults": true,
"simpleSearch": false,
"tokenizeUrls": false,
"fuzziness": "1",
"weightBasename": 10,
"weightDirectory": 7,
"weightH1": 6,
"weightH2": 5,
"weightH3": 4,
"weightUnmarkedTags": 2,
"weightCustomProperties": [],
"httpApiEnabled": false,
"httpApiPort": "51361",
"httpApiNotice": true,
"welcomeMessage": "1.21.0",
"verboseLogging": false,
"DANGER_httpHost": null,
"DANGER_forceSaveCache": false
}
manifest.json
{
"id": "omnisearch",
"name": "Omnisearch",
"version": "1.29.2",
"minAppVersion": "1.7.2",
"description": "A search engine that just works.",
"author": "Simon Cambier",
"authorUrl": "https://scambier.xyz",
"fundingUrl": {
"Github": "https://github.com/sponsors/scambier",
"Ko-fi": "https://ko-fi.com/scambier"
},
"isDesktopOnly": false
}
smart-connections/
data.json
{
"installed_at": 1778577863950,
"last_version": "4.5.0"
}
manifest.json
{
"id": "smart-connections",
"name": "Smart Connections",
"author": "Brian Petro",
"description": "Chat with your notes & see links to related content with Local or Remote models.",
"minAppVersion": "1.1.0",
"authorUrl": "https://smartconnections.app",
"isDesktopOnly": false,
"version": "4.5.0"
}
table-editor-obsidian/
data.json
{
"formatType": "normal",
"showRibbonIcon": true,
"bindEnter": true,
"bindTab": true
}
manifest.json
{
"id": "table-editor-obsidian",
"name": "Advanced Tables",
"author": "Tony Grosinger",
"authorUrl": "https://grosinger.net",
"description": "Improved table navigation, formatting, manipulation, and formulas.",
"isDesktopOnly": false,
"minAppVersion": "1.0.0",
"version": "0.23.2",
"fundingUrl": {
"Github Sponsor": "https://github.com/sponsors/tgrosinger",
"Buy me a Coffee": "https://buymeacoffee.com/tgrosinger",
"Paypal": "https://paypal.me/tgrosinger"
}
}
tag-wrangler/
manifest.json
{
"id": "tag-wrangler",
"name": "Tag Wrangler",
"author": "PJ Eby",
"authorUrl": "https://github.com/pjeby",
"version": "0.6.4",
"minAppVersion": "1.5.8",
"description": "Rename, merge, toggle, and search tags from the tags view",
"fundingUrl": "https://dirtsimple.org/tips/tag-wrangler",
"isDesktopOnly": false
}
templater-obsidian/
manifest.json
{
"id": "templater-obsidian",
"name": "Templater",
"version": "2.20.4",
"description": "Advanced templating and automation using handlebars-like syntax.",
"minAppVersion": "1.12.2",
"author": "SilentVoid",
"authorUrl": "https://github.com/SilentVoid13",
"fundingUrl": {
"GitHub Sponser (Zachatoo, maintainer)": "https://github.com/sponsors/Zachatoo",
"Ko-fi (Zachatoo, maintainer)": "https://ko-fi.com/zachatoo",
"GitHub Sponser (SilentVoid13, creator)": "https://github.com/sponsors/SilentVoid13",
"Paypal (SilentVoid13, creator)": "https://www.paypal.com/donate?hosted_button_id=U2SRGAFYXT32Q"
},
"helpUrl": "https://silentvoid13.github.io/Templater/",
"isDesktopOnly": false
}
webpage-html-export/
data.json
{
"settingsVersion": "0.0.0",
"exportOptions": {
"createDocumentContainer": true,
"keepModHeaderFooter": false,
"addPageIcon": true,
"unifyTitleFormat": true,
"createPusherElement": true,
"makeHeadersTrees": true,
"postProcess": true,
"displayProgress": true,
"inlineHTML": false,
"exportPath": "C:\\Users\\codyr\\Downloads",
"filesToExport": [],
"useFallbackRenderer": false,
"addBodyClasses": true,
"addMathjaxStyles": true,
"addHeadTag": true,
"backlinkOptions": {
"featureId": "backlinks",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": ".footer",
"type": "start"
},
"displayTitle": "Backlinks"
},
"tagOptions": {
"featureId": "tags",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": ".header .data-bar",
"type": "end"
},
"displayTitle": "",
"showInlineTags": true,
"showFrontmatterTags": true
},
"aliasOptions": {
"featureId": "aliases",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": ".header .data-bar",
"type": "start"
},
"displayTitle": "Aliases"
},
"propertiesOptions": {
"featureId": "properties",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": ".header",
"type": "start"
},
"displayTitle": "Properties"
},
"fileNavigationOptions": {
"featureId": "file-navigation",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "#left-sidebar-content",
"type": "end"
},
"showCustomIcons": false,
"showDefaultFolderIcons": false,
"showDefaultFileIcons": false,
"defaultFolderIcon": "lucide//folder",
"defaultFileIcon": "lucide//file",
"defaultMediaIcon": "lucide//file-image",
"exposeStartingPath": true,
"includePath": "site-lib/html/file-tree.html"
},
"searchOptions": {
"featureId": "search",
"enabled": false,
"unavailable": true,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "#left-sidebar .topbar-content",
"type": "start"
},
"displayTitle": "Search..."
},
"outlineOptions": {
"featureId": "outline",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "#right-sidebar-content",
"type": "end"
},
"displayTitle": "Outline",
"startCollapsed": false,
"minCollapseDepth": 0
},
"themeToggleOptions": {
"featureId": "theme-toggle",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "#right-sidebar .topbar-content",
"type": "start"
},
"displayTitle": ""
},
"graphViewOptions": {
"featureId": "graph-view",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "#right-sidebar-content",
"type": "start"
},
"displayTitle": "Graph View",
"showOrphanNodes": true,
"showAttachments": false,
"allowGlobalGraph": true,
"allowExpand": true,
"attractionForce": 1,
"linkLength": 15,
"repulsionForce": 80,
"centralForce": 2,
"edgePruning": 100,
"minNodeRadius": 3,
"maxNodeRadius": 7
},
"sidebarOptions": {
"featureId": "sidebar",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"allowResizing": true,
"allowCollapsing": true,
"rightDefaultWidth": "20em",
"leftDefaultWidth": "20em"
},
"customHeadOptions": {
"featureId": "custom-head",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": false,
"featurePlacement": {
"selector": "head",
"type": "end"
},
"sourcePath": "",
"includePath": "site-lib/html/custom-head.html"
},
"documentOptions": {
"featureId": "obsidian-document",
"enabled": true,
"unavailable": false,
"alwaysEnabled": true,
"hideSettingsButton": false,
"allowFoldingLists": true,
"allowFoldingHeadings": true,
"documentWidth": "40em"
},
"rssOptions": {
"featureId": "rss",
"enabled": false,
"unavailable": true,
"alwaysEnabled": false,
"hideSettingsButton": false,
"siteUrl": "",
"authorName": ""
},
"linkPreviewOptions": {
"featureId": "link-preview",
"enabled": true,
"unavailable": false,
"alwaysEnabled": false,
"hideSettingsButton": true
},
"relativeHeaderLinks": false,
"includeJS": true,
"includeCSS": true,
"inlineMedia": true,
"inlineCSS": true,
"inlineJS": true,
"inlineFonts": true,
"inlineOther": true,
"combineAsSingleFile": true,
"offlineResources": false,
"themeName": "",
"slugifyPaths": true,
"flattenExportPaths": false,
"fixLinks": true,
"faviconPath": "",
"siteName": "docs",
"iconEmojiStyle": "Native",
"exportRoot": "",
"includePluginCss": [],
"includeStyleCssIds": [],
"autoDisposeWebpages": true
},
"logLevel": "warning",
"titleProperty": "title",
"rssDateProperty": "date",
"onlyExportModified": true,
"deleteOldFiles": true,
"exportPreset": "local",
"openAfterExport": true,
"filePickerBlacklist": [
"(^|\\/)node_modules\\/",
"(^|\\/)dist\\/",
"(^|\\/)dist-ssr\\/",
"(^|\\/)\\.vscode\\/"
],
"filePickerWhitelist": [
"\\.\\w+$"
]
}
manifest.json
{
"id": "webpage-html-export",
"name": "Webpage HTML Export",
"version": "1.9.2",
"minAppVersion": "1.6.0",
"description": "Export html from single files, canvas pages, or whole vaults. Direct access to the exported HTML files allows you to publish your digital garden anywhere. Focuses on flexibility, features, and style parity.",
"author": "Nathan George",
"authorUrl": "https://github.com/KosmosisDire/obsidian-webpage-export",
"isDesktopOnly": true,
"fundingUrl": "https://www.buymeacoffee.com/nathangeorge",
"updateNote": "- Local and global graph view\n- Backlinks view!\n- Show tags, properties, and aliases views\n- Hover previews of pages\n- Local exports will now export only a single file containing the whole vault!\n- Notifications system\n- Place components anywhere you want on the page."
}
app.json
{
"showUnsupportedFiles": true
}
appearance.json
{
"accentColor": "#7033ff",
"nativeMenus": true
}
canvas.json
{
"snapToObjects": true,
"snapToGrid": true,
"newFileLocation": "current"
}
community-plugins.json
[
"table-editor-obsidian",
"auto-classifier",
"better-export-pdf",
"book-smith",
"dataview",
"obsidian-enhancing-export",
"export-to-html",
"file-tree-alternative",
"homepage",
"obsidian-icon-folder",
"obsidian-importer",
"obsidian-linter",
"obsidian-mind-map",
"local-graphql",
"obsidian-markmind",
"nexus-ai-chat-importer",
"obsidian-pandoc",
"omnisearch",
"smart-connections",
"obsidian-style-settings",
"obsidian-tasks-plugin",
"templater-obsidian",
"webpage-html-export",
"tag-wrangler"
]
core-plugins.json
{
"file-explorer": true,
"global-search": true,
"switcher": true,
"graph": true,
"backlink": true,
"canvas": true,
"outgoing-link": true,
"tag-pane": true,
"footnotes": false,
"properties": true,
"page-preview": true,
"daily-notes": true,
"templates": true,
"note-composer": true,
"command-palette": true,
"slash-command": false,
"editor-status": true,
"bookmarks": true,
"markdown-importer": false,
"zk-prefixer": false,
"random-note": false,
"outline": true,
"word-count": true,
"slides": true,
"audio-recorder": true,
"workspaces": true,
"file-recovery": true,
"publish": false,
"sync": true,
"bases": true,
"webviewer": true
}
file-recovery.json
{
"intervalMinutes": 7,
"keepDays": 7
}
graph.json
{
"collapse-filter": false,
"search": "",
"showTags": true,
"showAttachments": true,
"hideUnresolved": false,
"showOrphans": true,
"collapse-color-groups": true,
"colorGroups": [],
"collapse-display": true,
"showArrow": false,
"textFadeMultiplier": 0,
"nodeSizeMultiplier": 1,
"lineSizeMultiplier": 1,
"collapse-forces": true,
"centerStrength": 0.518713248970312,
"repelStrength": 10,
"linkStrength": 1,
"linkDistance": 250,
"scale": 0.258838685344349,
"close": true
}
templates.json
{
"dateFormat": "YYYY-MM-DD_",
"timeFormat": "HH:mm"
}
types.json
{
"types": {
"aliases": "aliases",
"cssclasses": "multitext",
"tags": "tags",
"TQ_explain": "checkbox",
"TQ_extra_instructions": "text",
"TQ_short_mode": "checkbox",
"TQ_show_backlink": "checkbox",
"TQ_show_cancelled_date": "checkbox",
"TQ_show_created_date": "checkbox",
"TQ_show_depends_on": "checkbox",
"TQ_show_done_date": "checkbox",
"TQ_show_due_date": "checkbox",
"TQ_show_edit_button": "checkbox",
"TQ_show_id": "checkbox",
"TQ_show_on_completion": "checkbox",
"TQ_show_postpone_button": "checkbox",
"TQ_show_priority": "checkbox",
"TQ_show_recurrence_rule": "checkbox",
"TQ_show_scheduled_date": "checkbox",
"TQ_show_start_date": "checkbox",
"TQ_show_tags": "checkbox",
"TQ_show_task_count": "checkbox",
"TQ_show_toolbar": "checkbox",
"TQ_show_tree": "checkbox",
"TQ_show_urgency": "checkbox"
}
}
webviewer.json
{
"openExternalURLs": true,
"enableAdblocking": true,
"homepage": "https://access.qially.com",
"markdownPath": "",
"searchEngine": "google"
}
workspace.json
{
"main": {
"id": "e42de5678b7c834c",
"type": "split",
"children": [
{
"id": "a91203219f82db07",
"type": "tabs",
"children": [
{
"id": "4aded6cadaeae4fb",
"type": "leaf",
"state": {
"type": "empty",
"state": {},
"icon": "lucide-file",
"title": "New tab"
}
}
]
}
],
"direction": "vertical"
},
"left": {
"id": "46ca87a0aa7ee909",
"type": "split",
"children": [
{
"id": "eaa0601179bc0d77",
"type": "tabs",
"children": [
{
"id": "efdd58f9f63c6474",
"type": "leaf",
"state": {
"type": "file-explorer",
"state": {
"sortOrder": "alphabetical",
"autoReveal": false
},
"icon": "lucide-folder-closed",
"title": "Files"
}
},
{
"id": "91fea2a05100bcba",
"type": "leaf",
"state": {
"type": "search",
"state": {
"query": "path:",
"matchingCase": false,
"explainSearch": false,
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical"
},
"icon": "lucide-search",
"title": "Search"
}
},
{
"id": "d512fe8488818f5c",
"type": "leaf",
"state": {
"type": "bookmarks",
"state": {},
"icon": "lucide-bookmark",
"title": "Bookmarks"
}
},
{
"id": "ba6b80d2048c7b96",
"type": "leaf",
"state": {
"type": "book-smith-view",
"state": {},
"icon": "book",
"title": "Book manager"
}
},
{
"id": "740dec4cebf04cbb",
"type": "leaf",
"state": {
"type": "file-tree-view",
"state": {},
"icon": "sheets-in-box",
"title": "File Tree"
}
}
],
"currentTab": 3
}
],
"direction": "horizontal",
"width": 200
},
"right": {
"id": "30afd54f909cbadb",
"type": "split",
"children": [
{
"id": "925c75a038b91fcc",
"type": "tabs",
"children": [
{
"id": "e03176b579c28c78",
"type": "leaf",
"state": {
"type": "backlink",
"state": {
"collapseAll": false,
"extraContext": false,
"sortOrder": "alphabetical",
"showSearch": false,
"searchQuery": "",
"backlinkCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-coming-in",
"title": "Backlinks"
}
},
{
"id": "778fe0be6beff35f",
"type": "leaf",
"state": {
"type": "outgoing-link",
"state": {
"file": "10_blueprint/10_governance/02_agent_rules.md",
"linksCollapsed": false,
"unlinkedCollapsed": true
},
"icon": "links-going-out",
"title": "Outgoing links from 02_agent_rules"
}
},
{
"id": "3cab842fc962c292",
"type": "leaf",
"state": {
"type": "tag",
"state": {
"sortOrder": "frequency",
"useHierarchy": true,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-tags",
"title": "Tags"
}
},
{
"id": "f513b66c75a6fd95",
"type": "leaf",
"state": {
"type": "all-properties",
"state": {
"sortOrder": "frequency",
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-archive",
"title": "All properties"
}
},
{
"id": "68e4de8fd85b086a",
"type": "leaf",
"state": {
"type": "outline",
"state": {
"followCursor": false,
"showSearch": false,
"searchQuery": ""
},
"icon": "lucide-list",
"title": "Outline"
}
},
{
"id": "b4e7a6c24c4213f6",
"type": "leaf",
"state": {
"type": "book-smith-tool",
"state": {},
"icon": "wrench",
"title": "Writing toolbox"
}
}
],
"currentTab": 5
}
],
"direction": "horizontal",
"width": 494.5
},
"left-ribbon": {
"hiddenItems": {
"switcher:Open quick switcher": true,
"graph:Open graph view": false,
"canvas:Create new canvas": false,
"daily-notes:Open today's daily note": false,
"templates:Insert template": false,
"command-palette:Open command palette": false,
"bases:Create new base": true,
"audio-recorder:Start/stop recording": false,
"workspaces:Manage workspace layouts": false,
"table-editor-obsidian:Advanced Tables Toolbar": false,
"book-smith:Open book panel": false,
"file-tree-alternative:File Tree Alternative Plugin": false,
"graphic-organizer:Open visual hierarchy": false,
"homepage:Open homepage": false,
"obsidian-importer:Open Importer": false,
"nexus-ai-chat-importer:Nexus AI Chat Importer - Import new file": false,
"omnisearch:Omnisearch": false,
"smart-connections:Smart Connections: Open connections view": false,
"smart-connections:Toggle Footer Connections": false,
"smart-connections:Smart Connections: Open random connection": false,
"smart-connections:Smart Lookup: Open lookup view": false,
"templater-obsidian:Templater": false,
"webpage-html-export:Export as HTML": false
}
},
"active": "ba6b80d2048c7b96",
"lastOpenFiles": [
"blueprint_master_map-mindmap.md",
"10_core/Untitled mindmap.md",
"20_qinexus/90_assets/master_map.md",
"20_qinexus/30_life/50_tech/_index.md",
"20_qinexus/30_life/50_tech",
"20_qinexus/30_life/40_finance_legal/_index.md",
"20_qinexus/30_life/40_finance_legal",
"20_qinexus/30_life/30_business/_index.md",
"20_qinexus/30_life/30_business",
"20_qinexus/30_life/20_people/_index.md",
"20_qinexus/30_life/20_people",
"20_qinexus/30_life/10_life/_index.md",
"20_qinexus/30_life/10_life",
"20_qinexus/10_workbench/30_timeline/_index.md",
"20_qinexus/10_workbench/30_timeline",
"20_qinexus/10_workbench/20_workbench/_index.md",
"20_qinexus/10_workbench/20_workbench",
"20_qinexus/10_workbench/10_inbox/_index.md",
"20_qinexus/10_workbench/10_inbox",
"10_core/50_operations/40_dev_testing/momscare/2026-05-17_momcare_app_qa_checklist.md",
"10_core/50_operations/40_dev_testing/qiaccessstart/2026-05-17_qiaccess_start_qa_checklist.md",
"10_core/50_operations/40_dev_testing/qiaccessstart",
"10_core/50_operations/40_dev_testing/momscare/2026-05-16_dev_testing_session_MomsCare.md",
"10_core/50_operations/30_dev_history/2026-05-16_dev_session_directory_markmind_mapper.md",
"10_core/50_operations/40_dev_testing/momscare",
"10_blueprint/10_governance/01_principles.md",
"10_blueprint/10_governance/02_agent_rules.md",
"10_blueprint/40_compute/07_tech_stack/gethomepage.md",
"10_blueprint/50_applications/06_qiledger.md",
"10_blueprint/50_applications/QiLedger.md",
"10_blueprint/10_governance/_index.md",
"10_blueprint/40_compute/07_tech_stack.md",
"30_audits/docs_alignment_audit_20260512_052716.md",
"30_audits/docs_alignment_audit_20260512_052243.md",
"10_blueprint/40_compute/07_tech_stack/activitywatch.md",
"10_blueprint/40_compute/07_tech_stack/qdrant.md"
]
}
.smart-env/
embedding_models/
event_logs/
multi/
smart_components/
smart_contexts/
smart_env.json
{
"is_obsidian_vault": true,
"smart_blocks": {
"embed_blocks": true,
"min_chars": 200
},
"smart_sources": {
"min_chars": 200,
"embed_model": {
"adapter": "transformers",
"transformers": {
"model_key": "TaylorAI/bge-micro-v2"
}
},
"excluded_headings": "",
"file_exclusions": "Untitled",
"folder_exclusions": ""
},
"language": "en",
"re_import_wait_time": 13,
"smart_chat_threads": {
"chat_model": {
"adapter": "ollama",
"ollama": {}
}
},
"smart_notices": {},
"smart_view_filter": {
"expanded_view": false,
"render_markdown": true,
"show_full_path": false
},
"version": "",
"new_user": true,
"models": {
"embedding_platform": "transformers",
"chat_completion_platform": "open_router"
},
"connections_lists": {
"results_collection_key": "smart_blocks",
"score_algo_key": "similarity",
"connections_post_process": "none",
"results_limit": 20,
"connections_view_location": "right",
"exclude_frontmatter_blocks": true,
"connections_list_component_key": "connections_list_v4",
"connections_list_item_component_key": "connections_list_item_v3",
"frontmatter_filter_include": "",
"frontmatter_filter_exclude": "",
"components": {
"connections_list_v4": {
"show_graph": true
},
"connections_list_item_v3": {
"render_markdown": true,
"show_full_path": false
}
},
"expanded_view": true,
"footer_connections": false
},
"context_items": {
"template_preset": "xml_structured",
"template_before": "<item loc=\"{{KEY}}\" at=\"{{TIME_AGO}}\">",
"template_after": "</item>"
},
"event_logs": {
"native_notice_info": false,
"native_notice_warning": true,
"native_notice_error": true,
"native_notice_attention": false,
"native_notice_milestone": true
},
"lookup_lists": {
"results_collection_key": "smart_blocks",
"score_algo_key": "similarity",
"results_limit": 20
},
"smart_contexts": {
"template_preset": "xml_structured",
"template_before": "<context>\n{{FILE_TREE}}",
"template_after": "</context>"
},
"embedding_models": {
"default_model_key": "transformers#1778577867038"
}
}
10_core/
10_governance/
10_principles/
_index.md
# Founding Principles
QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
## Retained Constitutional Principles
These remain non-negotiable:
1. **One canonical identity per object**
2. **One clear home per concern**
3. **Metadata precedes automation**
4. **Lineage survives transformation**
5. **Human-readable naming with machine-stable identity**
6. **Local-first where appropriate; cloud-backed where strategic**
7. **Systems compose cleanly without collision**
## QiAccess Start Operating Principles
These govern the active portal:
1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
2. **Seven roots only.** Home, Start, Capture, Knowledge, Memory, Insights, and System are the top-level navigation contract.
3. **Capture is first-class.** If offloading thoughts, files, or observations is slow, the system is failing its primary job.
4. **System stays nested.** Admin, infrastructure, storage, blueprint, and diagnostics belong under System rather than becoming parallel roots.
5. **Knowledge, Memory, and Insights are different.** Knowledge is curated source material, Memory is continuity and context, Insights are derived interpretation.
6. **Derived AI is never truth by itself.** Every summary, link, pattern, or suggestion must point back to a source.
7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
## Non-Negotiable Rules
- Important files and system records need clear ownership.
- Identity cannot be redefined downstream.
- Logic must not be silently duplicated across apps, workers, and scripts.
- Automation requires minimum structure first.
- Derived layers cannot become truth sources.
- Informal notes cannot override active doctrine.
- Legacy material must be labeled before reuse.
## Retained Constitutional Rules
1. one canonical identity per object
2. one clear home per concern
3. metadata precedes automation
4. lineage survives transformation
5. derived systems are not truth sources
6. exposure boundaries must be explicit
7. structural changes earn ADR review
20_rules/
_index.md
# Agent Governance Layer
Version: 1.1
Status: Active
Scope: All AI-assisted systems, IDE agents, automation workers, and code generators
## Purpose
This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
Agents do not get to invent the architecture.
Agents must enforce the active doctrine.
## Core Principle
> Agents do not create architecture.
> Agents enforce architecture.
## Agent Behavioral Modes
### 1. Doctrine Alignment Mode
- load and interpret active blueprint pages first
- validate constraints before action
### 2. Implementation Mode
- execute within approved structure
- avoid structural invention
### 3. Audit Mode
- detect violations, drift, and contradictions
### 4. Escalation Mode
- stop when ownership, truth, or root placement is unclear
## Mandatory Pre-Action Validation
Before any action, agents must determine:
- Which root or system subroute owns this?
- Which layer or governance control applies?
- What schema, file, or service is the owner?
- Is this canonical or derived?
- Does the active runtime require owner-scoped access or protected system scope?
- Is the referenced doctrine active, future-state, or quarantined legacy?
- Does this intake path require capture or registration before downstream use?
If any answer is unclear:
`HARD STOP - escalate`
## Non-Negotiable System Laws
### 1. Seven-Root Integrity
No new top-level root may be introduced without blueprint approval.
### 2. Single Domain Ownership
Each canonical object has one clear home.
### 3. Public Schema Restriction
Do not move domain logic or sensitive control into public, weakly governed surfaces.
### 4. Active Runtime Isolation
Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### 5. Capture or Registration Before Derivation
Externally ingested signals, files, messages, and observations must enter through an approved intake path before derived processing.
### 6. Canonical Versus Derived Separation
AI, vectors, exports, and graph layers cannot define truth.
### 7. No Parallel Systems
Do not create duplicate pipelines, schemas, roots, or shadow logic.
### 8. Schema Authority
Migrations and approved runtime contracts define reality, not speculative code structure.
### 9. Migration-First Enforcement
Do not present ORM models or inline DDL as the source of truth for canonical schema changes.
### 10. No Implicit Doctrine Promotion
Do not promote legacy or informal material into active doctrine without explicit blueprint alignment.
## Out-of-Bounds Protocol
If a violation is detected, agents must return:
1. Deviation
2. Ripple impact
3. Pros and cons
4. Approval request
Agents must not continue with partial structural work once they know the request is out of bounds.
## ADR Trigger Rule
Agents must recommend ADR creation when:
- a rule is intentionally bypassed
- a new structural pattern emerges
- a repeated exception becomes normal behavior
- a root, ownership, or boundary changes
## Enforcement Priority
Resolve conflicts in this order:
1. Active master blueprint doctrine
2. Approved ADRs
3. Migrations and implementation truth
4. Quarantined legacy material
User requests that conflict with higher-priority doctrine must be treated as escalation triggers.
30_standards/
_index.md
content_metadata_profile.yaml
# Content Metadata Profile (Front Matter Schema)
#
# DOCTRINE:
# Front matter is supportive metadata only.
# It may assist rendering, filtering, search, and lifecycle display.
# It must not issue canonical identity, schema placement, routing truth,
# graph relationships, or cross-domain ownership.
# Meaning is determined by the `layout` field, but the field vocabulary is singular.
profile: content_front_matter
version: 2.0.0
description: "Universal front matter profile for blueprint docs and related markdown assets."
doctrine:
system_of_record: false
notes:
- "Canonical identity comes from QiArchive or the owning system of record."
- "Schema placement and routing truth do not come from front matter."
- "Front matter may not redefine ownership, graph truth, or cross-domain relationships."
- "Required fields vary by layout, but the field vocabulary remains singular."
display_modes:
- always_show
- hide_if_empty
- always_hidden
sections:
- id: core
label: Core
order: 10
- id: lifecycle
label: Lifecycle
order: 20
- id: classification
label: Classification
order: 30
- id: context
label: Context
order: 40
- id: relations
label: Relations
order: 50
- id: system
label: System
order: 60
- id: layout_specific
label: Layout Specific
order: 70
field_order:
- layout
- title
- slug
- summary
- status
- created_at
- updated_at
- author
- owner
- sensitivity
- classification
- realm_label
- context
- aliases
- tags
- keywords
- references
- target_system
- target_scope
- canonical_ref
- uid
- template_key
- source_type
- adr_id
- supersedes
- artifact_kind
- registry_key
- standard_key
fields:
layout:
type: string
required: true
section: core
display: always_show
description: "Document/layout type. Determines required conditional fields."
options:
- home
- section
- page
- adr
- standard
- registry
- appendix
- template
- artifact
title:
type: string
required: true
section: core
display: always_show
description: "Human-readable title."
slug:
type: string
required: false
section: core
display: hide_if_empty
description: "URL-friendly identifier. Does not control canonical identity."
summary:
type: string
required: false
section: core
display: hide_if_empty
description: "Short summary for humans/search. Non-canonical."
status:
type: string
required: true
section: core
display: always_show
description: "Document lifecycle state."
options:
- draft
- active
- proposed
- accepted
- superseded
- archived
created_at:
type: string
required: false
section: lifecycle
display: hide_if_empty
description: "Creation date or timestamp."
updated_at:
type: string
required: false
section: lifecycle
display: always_show
description: "Last substantive update date or timestamp."
author:
type: string
required: false
section: lifecycle
display: hide_if_empty
description: "Human or system author."
owner:
type: string
required: false
section: lifecycle
display: hide_if_empty
description: "Maintainer or accountable owner."
sensitivity:
type: string
required: false
section: classification
display: hide_if_empty
description: "Must map to registry/sensitivity_classification.yaml."
classification:
type: string
required: false
section: classification
display: hide_if_empty
description: "Must map to registry/sensitivity_classification.yaml."
realm_label:
type: string
required: false
section: classification
display: hide_if_empty
description: "Optional UI/workspace filter label only. Does not dictate placement."
context:
type: string
required: false
section: context
display: hide_if_empty
description: "Brief reasoning or context statement."
aliases:
type: array
items: string
required: false
section: context
display: hide_if_empty
description: "Alternative titles or natural language handles."
tags:
type: array
items: string
required: false
section: context
display: hide_if_empty
description: "Semantic grouping tags."
keywords:
type: array
items: string
required: false
section: context
display: hide_if_empty
description: "Search descriptors."
references:
type: array
items: string
required: false
section: context
display: hide_if_empty
description: "Related document refs or external references."
target_system:
type: string
required: false
section: relations
display: hide_if_empty
description: "Primary system/module affected, if applicable."
target_scope:
type: string
required: false
section: relations
display: hide_if_empty
description: "Optional narrower scope such as schema, app, or feature."
canonical_ref:
type: string
required: false
section: relations
display: always_hidden
description: "Optional pointer to an external canonical ID. Referential only."
uid:
type: string
required: false
section: system
display: always_hidden
description: "Document-local stable identifier. Not canonical system identity."
template_key:
type: string
required: false
section: system
display: always_hidden
description: "Template used to create the document."
source_type:
type: string
required: false
section: system
display: always_hidden
description: "manual | generated | imported"
options:
- manual
- generated
- imported
adr_id:
type: string
required: false
section: layout_specific
display: hide_if_empty
description: "ADR identifier when layout=adr."
supersedes:
type: string
required: false
section: layout_specific
display: hide_if_empty
description: "Document or ADR superseded by this file."
artifact_kind:
type: string
required: false
section: layout_specific
display: hide_if_empty
description: "Artifact subtype when layout=artifact."
options:
- implementation_plan
- walkthrough
- task
- architecture
- report
- other
registry_key:
type: string
required: false
section: layout_specific
display: hide_if_empty
description: "Registry identifier when layout=registry."
standard_key:
type: string
required: false
section: layout_specific
display: hide_if_empty
description: "Standard identifier when layout=standard."
layouts:
home:
required:
- layout
- title
- status
section:
required:
- layout
- title
- status
page:
required:
- layout
- title
- status
adr:
required:
- layout
- title
- status
- adr_id
standard:
required:
- layout
- title
- status
- standard_key
registry:
required:
- layout
- title
- status
- registry_key
appendix:
required:
- layout
- title
- status
template:
required:
- layout
- title
- status
artifact:
required:
- layout
- title
- status
- artifact_kind
retired_fields:
- qi_decimal
- qid
- type
- node
- system
- naming_strategy
- sort
- related
- parents
- children
- siblings
- graph_weight
- orbit
- entangled
- realm
- realm_slug
- id
- short_code
- domain_prefix
metadata_rules.yaml
naming_rules.yaml
standard: naming_rules
version: 2.0
description: >
Canonical namespace and routing contract for the QiOS ecosystem.
Enforces a chart-of-accounts style node router with strict 3-level depth limits.
file_naming:
format: "{node}.{decimal}_{YYYY-MM-DD}_{title_detail}.{ext}"
example: "0330LGL.011_2026-03-27_initial_observation.md"
rules:
- filename must start with a valid structural node and decimal sub-route
- snake_case for the title detail
- dates must be YYYY-MM-DD format
- preserve extension in lowercase
folder_naming:
format: "{node}_{Label_Name}"
example: "0330LGL_Impact"
rules:
- Structural node is 4 digits + 3 uppercase letters (e.g., 0300LGL)
- Labels are Title_Case with underscores
- Maximum structural depth is 3 levels from root
- Do not use folders for grouping below level 3; use decimal buckets instead
decimal_rules:
format: "###"
rules:
- ".000" is the base/default/index for a node
- Trailing zeroes (".010", ".020") are grouping buckets
- Leaf artifacts must not end in zero unless explicitly serving as an index
validation_constraints:
max_depth: 3
prohibit_semantic_overlap: true
enforce_strict_artifact_format: true
schema_naming:
format: "qi{domain}"
examples: [qicase, qiarchive, qione, qigraph]
rules:
- all lowercase
- no underscores in schema name
- prefix must be "qi" for all QiOS schemas
table_naming:
format: "snake_case"
rules:
- all lowercase
- use underscores as separators
- prefer plurals for entity tables
- avoid generic names like "data" or "records"
column_naming:
required_columns:
- id (uuid or bigint, primary key)
- created_at (timestamptz)
- updated_at (timestamptz, where mutability applies)
- tenant_id (uuid FK to qione.tenants, for all domain-scoped tables)
pdf_standards.yaml
repo_rules.yaml
rules:
- id: RR-001
name: Blueprint Canonical Authority
description: This repo is the sole canonical home for QiOS constitutional doctrine, structure law, architecture law, schema/data/object law, operational map, and decision history.
- id: RR-002
name: Machine-Readable Constraint Placement
description: Machine-readable constraints must live in standards/ or registry/; they must not be embedded only in prose docs.
- id: RR-003
name: Canonical Repo Topology
description: Repos must follow the canonical topology. Approved root directories are /apps, /sites, /python/qiarchive, /workers, /packages, /infra, and /data.
- id: RR-004
name: No Undocumented Root Directories
description: No undocumented root directory may be added without documentation and an ADR when required.
- id: RR-005
name: Migration Required for Schema Changes
description: Every schema change must ship with a migration file and be applied through Supabase migration tooling.
- id: RR-006
name: ADR Before Structural Change
description: Changes affecting namespace, schema, topology, runtime boundaries, delivery surfaces, or identity rules require an ADR before merge.
- id: RR-007
name: Drift Must Be Flagged
description: Drift between formal architecture and implemented code must be identified and resolved; implementation may not silently diverge from doctrine.
- id: RR-008
name: No Parallel Root Structures
description: New root structures must not be introduced when an approved canonical location already exists.
- id: RR-009
name: Build Steps Must Be Documented
description: All build-critical setup, bootstrap, and execution steps must be documented in the canonical docs.
- id: RR-010
name: Clarity Over Cleverness
description: Repository structure and naming must optimize for legibility, operational ownership, and maintainability over clever abstractions.
- id: RR-011
name: Repos, Stacks, Data Split
description: /srv/qios/repos is for git/coding, /srv/qios/stacks is for docker-compose, /srv/qios/data is for persistent app data.
- id: RR-012
name: No Nested Git in Stacks
description: Do not create nested Git repos inside /srv/qios/stacks.
- id: RR-013
name: Aider Runs Only In Repos
description: Aider should be used inside cloned repos under /srv/qios/repos, not directly inside live runtime stack folders.
- id: RR-014
name: Admin Services Private
description: Admin/control services must stay private/protected.
- id: RR-015
name: Supabase Requires Specific Job
description: Supabase is not active unless it has a specific job.
- id: RR-016
name: MkDocs Legacy Not Active
description: MkDocs is legacy/superseded and should not be restored.
- id: RR-017
name: Paperless 10 Doc Test Before Bulk Import
description: Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
- id: RR-018
name: Toolbox Tool Module Structure
description: Standalone/proven tools must use folder-name-is-tool-name structure with README.md, __init__.py, <tool_name>.py, and manifest.yaml.
40_policies/
_index.md
# Policies
Policies define how the QiAccess Start master blueprint is operated and changed.
## Merge Policy
- Prefer formal sources over informal ones.
- ADRs must exist before merging structural changes to roots, routing, schema ownership, or topology.
- Drift between doctrine and implementation must be flagged and resolved.
## Root Navigation Policy
- The active portal has seven top-level roots only.
- New user-facing concerns belong inside an existing root unless a blueprint change explicitly approves a new root.
- System subroutes remain nested under `System`.
## Placement Policy
- Placement is based on operational ownership, not technical convenience.
- A file, record, or page belongs to the layer that owns its lifecycle.
- When ownership is ambiguous, escalate to an ADR before placing.
## Lifecycle Policy
Objects and records progress through lifecycle states:
```text
active -> deprecated -> archived
- Active: in use, maintained, and part of current truth
- Deprecated: retained but not extended; must be marked clearly
- Archived: no longer active; preserved for lineage only
Documentation quarantine is an additional handling rule for legacy doctrine. Quarantined material may be retained for salvage, but it is not active doctrine.
Bootstrap Policy
- No undocumented dependencies allowed at bootstrap.
- Every environment variable and runtime dependency should be documented before it is treated as required.
- Every service dependency should be verified before a page claims it is operational.
Registry Policy
- Classification happens via explicit registry or documented ownership, not assumptions.
- No governed object should enter the system without a canonical identifier or clear owning reference.
- Registry issuance and naming decisions must be traceable.
Contribution Policy
All contributors, human or AI, must:
- avoid parallel schemas or shadow structures without ADR review
- avoid creating new root structures without blueprint approval
- maintain single ownership for canonical objects
- treat exports and AI outputs as derived
- respect registry and naming rules where used
- document build and validation steps
- prioritize clarity over cleverness
Active Runtime Policy
- The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
- Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
- Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
Security and Data Access Policy
- Anon Zero-Write Law: Public unauthenticated access is read-only by default and must not write to canonical records directly.
- System Role Isolation: Elevated service credentials belong only to trusted backend, worker, or controlled automation paths.
- Protected Surface Rule: Private infrastructure such as server admin, storage internals, diagnostics, and raw runtime control stays behind explicit protection boundaries.
- Derived Truth Rule: Search, AI, graph, and export layers may assist but may not silently replace canonical sources.
Legacy Quarantine Policy
- Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
- When such material conflicts with the active seven-root portal, it must be moved to or referenced from the quarantine appendix.
- Quarantined pages are reference-only until revalidated by blueprint update or ADR.
Agent Governance Policy
QiAccess Start still enforces an Agent Governance Layer.
Agents must:
- validate doctrine before making structural changes
- preserve canonical versus derived boundaries
- treat external or reconciled notes as non-authoritative until checked against the active blueprint
- escalate when ownership, route, or truth status is unclear
Phase 0 � Freeze and protect (QiNexus)
Goal: prevent accidental loss during reorganization.
Mandatory Rules: - Do not delete anything. - Do not let an AI move files directly. - Create and use the \130_system/qinexus_cleanup\ folder. - Generate manifests and reports before any moves.
Cleanup System Structure
Located at \G:\My Drive\QiNexus\130_system\qinexus_cleanup\: - \ ules/\: Governance and movement criteria. - \ eports/\: Audit results and analysis. - \manifests/\: Snapshots of directory state. - \quarantine/\: Staging for disputed or risky items. - \scripts/\: Automation for audit and verification. - \pproved_moves/\: Verified move instructions for human execution.
#### 50_decisions/
##### _index.md
```text
# Decisions (ADR)
<sub>Architectural Decision Records</sub>
This section contains the canonical record of architectural and operational decisions for the QiOS system.
## Active Decisions
- [ADR-0000: Template](ADR-0000_template.md)
- [ADR-0001: Blueprint Scope](ADR-0001_blueprint_scope.md)
- [ADR-0002: Single Domain Rule](ADR-0002_single_domain_rule.md)
- [ADR-0003: Band Model](ADR-0003_band_model.md)
- [ADR-0004: Single Account Modular Mode](ADR-0004_single_account_modular_mode.md)
- [ADR-0005: Fleet Orchestration](ADR-0005_fleet_orchestration.md)
- [ADR-0006: Narrative and Knowledge Consolidation](ADR-0006_narrative_and_knowledge_consolidation.md)
- [ADR-0007: Unified Front Matter and Progressive Doc Topology](ADR-0007_unified_front_matter_and_progressive_doc_topology.md)
- [ADR-0008: QiLabs Root](ADR-0008_qilabs_root.md)
- [ADR-0009: Backup Server Control Plane and Public Edge Pattern](ADR-0009_backup_server_control_plane_and_public_edge_pattern.md)
adr-0000_template.md
---
title: 'ADR-[XXXX]: [Short, descriptive title]'
status:
proposed ...
created_at: ''
updated_at: ''
author: ''
source_type:
manual ...
supersedes: ''
id: ''
short_code: ''
domain_prefix: ''
document_type:
adr ...
context_domain: ''
---
# ADR-[XXXX]: [Short, descriptive title]
**Status:** [Proposed | Accepted | Rejected | Deprecated | Superseded]
**Date:** [YYYY-MM-DD]
## Context
[What is the technical or business issue we are trying to solve? Explain the current state of the QiOS Blueprint and why an out-of-bounds exception was requested.]
## Decision
[What is the specific change we are making? Be direct and receipt-ready. Detail the exact rule, schema, or structural placement that is being altered or introduced.]
## Consequences
### Positive
* [Pro 1]
* [Pro 2]
### Negative (Ripple Effects)
* [Con 1]
* [Con 2]
## Affected Documents
[List the specific files updated in `docs/`, `standards/`, `schemas/`, or `registry/` to support this decision.]
adr-0001_blueprint_scope.md
# ADR-0001: Blueprint Scope
**Date**: 2026-03-27
**Status**: Accepted
## Context
The QiOS doctrine was previously scattered across README files, working notes, and ad-hoc markdown documents inside the main monorepo. This created ambiguity about what was governing truth vs working notes.
## Decision
The `qios-master-blueprint` repo (this repo) is the **sole canonical home** for QiOS constitutional doctrine. It is:
- Constitutional doctrine
- Structure law
- Architecture law
- Schema/data/object law
- Operational map
- Decision history
It is **not**:
- App code
- Runtime code
- Experimental notes
- A random ADR graveyard
## Consequences
- All future governance decisions must be captured here, not in app repos
- The README is the entry point only — doctrine lives in `docs/`
- Machine-readable constraints go in `standards/` and `registry/`
- Decision history goes in `adr/`
adr-0002_single_domain_rule.md
---
uid:
49fa3aba-6764-49f2-ba0b-05995fe4d24b ...
...
---
# ADR-0002: Single Domain Rule
**Date**: 2026-03-27
**Status**: Accepted
## Context
Early schema design placed domain logic in the `public` schema and mixed concerns across tables. This created unclear ownership and made RLS enforcement fragile.
## Decision
Every domain in QiOS gets **one canonical Postgres schema**. No domain logic lives in `public`. The mapping is enforced in `registry/domain_registry.yaml`.
Rules:
- One schema per domain (e.g., `qicase`, `qivault`, `qihome`)
- All domain tables must carry `tenant_id` for RLS isolation
- `public` schema is reserved for legacy stubs and global auth-adjacent data only
- Cross-domain access must go through the Platform RBAC layer
## Consequences
- All new tables are created in their domain schema, never in `public`
- Domain registry must be updated when a new schema is created
- Existing `public` tables (`todos`, `nods_page`) are marked legacy and will not be extended
adr-0003_band_model.md
# ADR-0003: Band Model
**Date**: 2026-03-27
**Status**: Accepted
## Context
As the number of schemas grew, it became unclear which components depended on which. There was no formal structural tier model to describe the dependency hierarchy between system infrastructure, platform services, and business domains.
## Decision
QiOS adopts a **3-band structural model**:
| Band | ID | Schemas |
|---|---|---|
| Core | `b_core` | `qiarchive`, `qigraph`, `qially`, `qisys` |
| Platform | `b_platform` | `qione`, `public` |
| Domain | `b_domain` | `qicase`, `qichronicle`, `qicms`, `qihome`, `qiknowledge`, `qitax`, `qivault` |
Dependency direction:
Domain → Platform → Core
No band may create a dependency in the reverse direction.
## Consequences
- Every new schema must be assigned a band in `registry/band_registry.yaml`
- Core schemas must not reference Domain schemas
- The `enforce_structure.py` script validates band assignments on every PR
adr-0004_single_account_modular_mode.md
# ADR-0004: Single-Account Modular Mode
Date: 2026-04-04
Status: Proposed
## Context
QiOS v0.4 currently defines a Platform layer centered on multi-tenancy through the `qione` schema, including `tenants`, `tenant_members`, `member_roles`, `tenant_modules`, and `module_role_access`.
That model is valid for a hosted multi-tenant portal, but it adds significant implementation overhead for the current runtime goal: a standard authenticated app with strict per-user isolation and incremental module growth.
The current system does not require organization containers, cross-user shared workspaces, tenant billing, or tenant-scoped administration in order to deliver the first working product.
At the same time, the Core Spine remains correct and should be preserved:
- canonical identity
- archive-first registration
- lineage continuity
- modular domains
- applications as delivery surfaces rather than schema owners
## Decision
QiOS adopts a **Single-Account Modular Mode** for the current implementation.
### 1. Runtime mode
The active runtime is **single-account / user-scoped**, not multi-tenant.
### 2. Ownership model
For current domain-scoped records, `tenant_id` is replaced by `owner_user_id` referencing `auth.users(id)`.
### 3. Platform simplification
The following `qione` concerns are deferred from the active runtime:
- tenants
- tenant membership
- tenant role mapping
- tenant module assignment
- tenant-scoped access resolution
`qione` is no longer required as the active container model for the first working app.
### 4. Module model
Modules remain valid, but are redefined as:
- domain packages
- navigation surfaces
- optional user-level feature flags or app-level config
Modules do **not** require tenant infrastructure.
### 5. Preserved architecture
The following remain mandatory:
- one canonical identity per object
- one canonical schema home per concern
- archive registration before advanced automation
- derived layers remain non-canonical
- applications do not redefine business logic or schema truth
### 6. Future compatibility
Multi-tenancy is **deferred**, not rejected.
If later required, the system may introduce an account/container layer above user-owned records through a future ADR and migration plan.
## Consequences
### Positive
- faster implementation
- simpler RLS
- fewer joins
- simpler auth resolution
- easier debugging
- modules can ship independently
### Tradeoffs
- no shared tenant workspace model yet
- no org-level RBAC yet
- future collaboration features require later migration
### Implementation rule changes
Replace:
- "All domain tables must carry `tenant_id`"
With:
- "All user-scoped domain tables must carry `owner_user_id`"
Replace:
- "Cross-band data access must go through Platform RBAC"
With:
- "Current runtime access is enforced through `auth.uid()` ownership policies; any future shared-container access model requires a new ADR."
## Follow-up actions
1. Update docs that describe the active runtime as multi-tenant.
2. Mark hosted multi-tenant portal language as future-state only.
3. Update schema guidance from `tenant_id` to `owner_user_id` for current implementation.
4. Simplify RLS examples accordingly.
5. Create migration files for active domain schemas.
adr-0005_fleet_orchestration.md
# ADR-0005: Hosted Fleet Orchestration with Enrolled Edge Nodes
## Context
The documentation previously outlined a "Local Admin Control Plane" consisting of a local fastAPI server running on the developer workstation directing jobs and controlling files. As the system scales to ingest files and run jobs across multiple nodes, keeping the control plane tied to the individual local machine becomes an operational bottleneck and architectural flaw.
## Decision
* **Hosted Admin** is the singular orchestration authority and fleet control plane.
* **Local Nodes** are redefined as agents/runtimes for execution only, not as orchestration centers.
* Devices are conceptually "enrolled". Devices ingest data strictly from their assigned paths or a drop zone.
* All promoted records must still enter the system through explicitly governed `QiArchive` processes.
* Local APIs are strictly internal agent execution endpoints, no longer the primary administration control plane.
## Rationale
This establishes a cleaner separation of concerns. The server-side Admin dictates jobs, configurations, and fleet monitoring, whilst multiple generic edge nodes simply report health and ingest content from their given assignments. This formalizes a master/worker "control model flip", solving discrepancies between the local-control phrasing and the actual fleet needs.
adr-0006_narrative_and_knowledge_consolidation.md
---
title: 'ADR-0006: Narrative and Knowledge Layer Consolidation'
status:
accepted ...
...
created_at: '2026-03-30'
updated_at: '2026-03-30'
author:
Antigravity ...
...
source_type:
manual ...
...
supersedes: ''
id: '0006'
short_code:
NARRATIVE_CONSOLIDATION ...
...
domain_prefix:
core ...
...
document_type:
adr ...
...
context_domain:
core ...
...
---
# ADR-0006: Narrative and Knowledge Layer Consolidation
**Status:** Accepted
**Date:** 2026-03-30
## Context
The QiOS / QiOne ecosystem has accumulated overlapping top-level product namespace terminology over time, leading to collisions and lack of clarity. Concepts like `QiHistory`, `QJournal`, `QsaysIt`, `Qistory`, `QiArchive`, `QiNote`, `QiNode`, and `QiObjects` have been used inconsistently. To formalize the QiOS ontology and comply with the Master Blueprint rules (one canonical home per concern, no silent duplication), we must officially define the canonical roles of these concepts and retire redundancies.
## Decision
We establish the following canonical merge map and definitions:
- **QiArchive**: The exclusive canonical archival identity spine and raw file ingest layer.
- **QiNote**: The exclusive canonical knowledge and local-first markdown note layer.
- **QiNode**: The derived semantic and structural intelligence layer (never a canonical source of truth for records).
- **QiHistory**: The consolidated top-level narrative/history umbrella and chronological event log.
The following terms are formally retired and stripped from the active ontology:
- **QJournal** (Merged into `QiHistory`)
- **Qistory** (Merged into `QiHistory`)
- **QsaysIt** (Retired / Out of Scope for canonical ontology)
- **QiObjects** (Retired as a top-level functional namespace)
## Consequences
### Positive
* Eliminates conceptual duplication and namespace collisions.
* Reinforces the "single domain rule" by giving chronological events, knowledge, and archives explicitly unique, non-overlapping names.
* Simplifies onboarding and architectural referencing.
### Negative (Ripple Effects)
* Any existing code, scripts, or legacy `.legacy` folders using the retired terms might need renaming or archival, causing minor path update friction.
* Users accustomed to the old nomenclature will need to adopt the canonical terms.
## Affected Documents
* `docs/02_architecture/index.md`
* `docs/02_architecture/system_model.md`
* `docs/appendices/changelog.md`
adr-0007_unified_front_matter_and_progressive_doc_topology.md
---
layout: adr ... ...
title: "ADR-0007: Unified Front Matter and Progressive Documentation Topology"
slug: adr-0007-unified-front-matter-and-progressive-doc-topology ... ...
summary: Adopts one universal front matter schema with layout-based meaning, canonical field ordering, and a second-layer documentation topology so blueprint sections read progressively instead of as flat page buckets. ... ...
status: proposed
created_at: 2026-04-01
updated_at: 2026-04-01
author: Cody / AI ... ...
owner: Cody ... ...
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: The blueprint has grown large enough that flat section folders are creating navigation friction. Prior front matter attempts also produced overlapping taxonomies, retired ontology fields, and drift between human-readable metadata and canonical system truth. ... ...
aliases: []
tags:
- governance
- front-matter
- documentation
- templates
- topology
keywords:
- front matter
- layout
- templates
- doc structure
- blueprint topology
references: []
target_system: QiOS Master Blueprint
target_scope: docs, templates, standards, scripts, mkdocs navigation ... ...
canonical_ref: ""
uid: ""
template_key:
- adr-template
source_type: manual ... ...
adr_id: ADR-0007 ... ...
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# ADR-0007: Unified Front Matter and Progressive Documentation Topology
## Status
Proposed
## Context
The blueprint documentation has expanded beyond a comfortable flat structure. Several sections now contain enough material that readers must hop between sibling pages without a clear progressive path.
At the same time, earlier front matter systems introduced overlapping and now-retired concepts such as `qid`, `qi_decimal`, graph-poetry attributes, and realm-driven structural meaning. The current blueprint doctrine already establishes that front matter is supportive metadata only, not the system of record, and that canonical truth comes from governed system layers rather than file headers. :contentReference[oaicite:1]{index=1} :contentReference[oaicite:2]{index=2}
A unified, lean, enforceable front matter profile is required, along with a documentation topology that preserves reading order and reduces cognitive load.
## Decision
QiOS adopts the following documentation and metadata rules:
1. **Universal Front Matter Vocabulary**
- All markdown documentation within the blueprint uses one shared front matter vocabulary.
- The `layout` field determines document intent and conditional requirements.
- Required fields may vary by `layout`, but the field vocabulary remains singular.
2. **Front Matter Is Supportive Metadata Only**
- Front matter does not issue canonical identity.
- Front matter does not define schema placement, routing truth, or graph truth.
- Legacy fields tied to retired identity/ontology models are removed from active doctrine.
3. **Canonical Field Order**
- Front matter fields must appear in a governed order.
- Fields are grouped into human-readable sections.
- A formatter/linter will normalize order and validate layout-specific requirements.
4. **Progressive Documentation Topology**
- Each major blueprint section may contain ordered subfolders.
- Subfolders must support a progressive reading path from overview to model to rules to reference.
- Documentation should read linearly within a section rather than as a flat bucket of peer pages.
5. **Canonical Source Separation**
- `docs/` remains the rendered doctrine layer.
- `standards/`, `registry/`, `adr/`, and `schemas/` remain canonical source layers outside `docs/`.
- The documentation site may render or summarize those sources through pages in `docs/`, but they do not move into `docs/` merely for visibility.
## Consequences
### Positive
- Reduces front matter drift and overlapping taxonomies.
- Makes documentation easier to read in sequence.
- Preserves separation between rendered doctrine and machine-readable source-of-truth files.
- Creates a stable template and validation model for future growth.
### Negative
- Existing docs will need normalization and partial folder moves.
- MkDocs navigation must be updated to reflect second-layer section structure.
- Some legacy front matter fields and earlier taxonomy experiments will be formally retired.
## Affected Documents
- `standards/content_metadata_profile.yaml`
- `standards/metadata_rules.yaml`
- `templates/page_template.md`
- `templates/adr_template.md`
- `templates/artifact_template.md`
- `scripts/normalize_front_matter.py`
- `mkdocs.yml`
- `docs/01_governance/*`
- `docs/02_architecture/*`
- `docs/03_structure/*`
- `docs/04_data/*`
- `docs/05_compute/*`
- `docs/06_applications/*`
- `docs/07_operations/*`
adr-0008_qilabs_root.md
# ADR-0008: QiLabs as Canonical Local Workstation Root
## Context
The architecture historically defined the developer/operator machine with a local state rooted at `C:/QiData/`. However, the ecosystem has evolved to encompass `QiArchive` (the system/spine concept) as well as the monorepo platform (`QiOne`). These are not simply sibling root folders but need to be part of a structured canonical machine-local ecosystem.
## Decision
* `QiLabs` will serve as the canonical machine root for local workstations.
* `QiData` (the state directory) will live directly under `QiLabs` (`C:/QiLabs/QiData`).
* `_QiOne_MonoRepo` will live under `QiLabs` (`C:/QiLabs/_QiOne_MonoRepo`).
* `QiArchive` represents a system/spine concept, not a literal sibling root directory.
## Rationale
This aligns the workstation filesystem with the system architecture model. By encapsulating everything within `QiLabs`, `QiOne` functions fully as the monorepo platform and `QiData` functions as local state, while preventing fragmentation across the machine.
adr-0009_backup_server_control_plane_and_public_edge_pattern.md
# ADR-0009: Backup Server Control Plane & Internet Access Layer
## Context
QiOS requires a pattern for deploying user-controlled, internet-accessible backup servers on secondary hardware. These nodes provide infrastructure services like local AI runtimes, data storage, and public application hosting. Historically, exposing such services often involved insecure port forwarding or mixing administrative and public traffic.
## Decision
QiOS adopts a dual-path access model for self-hosted infrastructure nodes:
1. **Private Control Plane**: Administrative access (SSH, Docker Management, DB Admin) must occur exclusively over a secure private network overlay (e.g., Tailscale/WireGuard).
2. **Public Edge Exposure**: Intentionally public services (portals, webhooks) must be exposed via an outbound tunnel (e.g., Cloudflare Tunnels) and routed through a local reverse proxy.
The node shall be organized into four conceptual runtime zones:
* **Zone A (Private Admin)**: No public routing.
* **Zone B (Public App)**: Governed tunnel/proxy path.
* **Zone C (Data Services)**: Internal-only state services.
* **Zone D (AI Execution)**: Internal-only model runtimes.
## Rationale
This approach:
* Minimizes the attack surface for administrative tools.
* Eliminates the need for inbound port forwarding on local networks.
* Separates internal data and AI concerns from public application exposure.
* Aligns with the QiOS doctrine of modular, governed device nodes.
## Consequences
* Increased security for self-hosted infrastructure.
* Requirement for a private network overlay and tunnel provider.
* Clearer operational boundaries for service deployment on infrastructure nodes.
60_registry/
_index.md
band_registry.yaml
registry: bands
version: 1.0
description: >
Bands represent structural tiers in the QiOS ecosystem.
Every domain, schema, and module must belong to exactly one band.
bands:
- id: b_core
name: Core
description: >
Fundamental system infrastructure. Identity backbone, graph, AI memory,
archive spine, system operations. Other bands depend on Core — Core
does not depend on other bands.
schemas: [qiarchive, qigraph, qially, qisys]
- id: b_platform
name: Platform
description: >
Multi-tenant platform kernel and shared operational services.
Auth, tenancy, module access control, and global profiles.
schemas: [qione, public]
- id: b_domain
name: Domain
description: >
Specific business domain services. Each domain is bounded and should not
reach into other domains without explicit cross-domain contracts.
schemas: [qicase, qichronicle, qicms, qihome, qiknowledge, qitax, qivault]
deprecation_registry.yaml
domain_registry.yaml
registry: domains
version: 1.0
description: >
Reference registry for historical and future-conditional relational domain boundaries.
The active doctrine is QiAccess Start plus qiserver plus QiNexus plus Markdown/YAML docs.
Supabase/Postgres schemas are not active unless a specific job requires them.
domains:
- id: qione
schema: qione
name: QiOne Core Platform
description: Legacy/future platform kernel reference. Tenants, members, roles, and modules are not current active doctrine.
tables: [tenants, tenant_members, tenant_modules, member_roles, module_role_access]
band: b_platform
status: future_conditional
- id: qiarchive
schema: qiarchive
name: QiArchive
description: File registration and archival identity spine. Canonical identity for all ingested objects.
tables: [archive_files, archive_chunks, ingest_jobs, file_history]
band: b_core
status: active
- id: qicase
schema: qicase
name: QiCase
description: Legal and operational case management. Cases, phases, issues, documents.
tables: [cases, phases, issues, deadlines, case_documents, document_issues]
band: b_domain
status: active
- id: qichronicle
schema: qichronicle
name: QiChronicle
description: Time, events, and calendar intelligence layer.
tables: [events, calendar_feeds]
band: b_domain
status: active
- id: qicms
schema: qicms
name: QiCMS
description: Content management. Posts and structured content.
tables: [posts]
band: b_domain
status: active
- id: qigraph
schema: qigraph
name: QiGraph
description: Derived knowledge graph reference. Nodes, edges, and master index remain downstream only and are not current active doctrine.
tables: [edges, master_index]
band: b_core
status: future_conditional
- id: qihome
schema: qihome
name: QiHome
description: Household and personal finance management.
tables: [chores, chore_assignments, expenses, expense_shares, settlements]
band: b_domain
status: active
- id: qiknowledge
schema: qiknowledge
name: QiKnowledge
description: Notes, knowledge, and local-first writing layer.
tables: [notes]
band: b_domain
status: active
- id: qially
schema: qially
name: QiAlly
description: AI assistant relational reference. Sessions, messages, and memory embeddings are future/conditional rather than active doctrine.
tables: [sessions, messages, memory_embeddings]
band: b_core
status: future_conditional
- id: qisys
schema: qisys
name: QiSys
description: System operations. Jobs, events, and worker status.
tables: [jobs, system_events, worker_status]
band: b_core
status: active
- id: qitax
schema: qitax
name: QiTax
description: Tax return management. Returns and associated files.
tables: [returns, return_files]
band: b_domain
status: active
- id: qievidence
schema: qievidence
name: QiEvidence
description: Local-first evidence intelligence. Transcription, visual extraction, and neutral narration.
tables: [evidence_records, evidence_segments, evidence_entities, evidence_entity_mentions, evidence_events, evidence_claims, evidence_observations, evidence_links, evidence_conflicts, evidence_timelines, evidence_timeline_items, evidence_reviews]
band: b_domain
status: active
- id: qivault
schema: qivault
name: QiVault
description: Secure document vault reference. Document storage remains a domain concept; tenant-scoped assumptions are legacy/future only.
tables: [documents]
band: b_domain
status: future_conditional
- id: public
schema: public
name: Public / Legacy
description: >
Legacy stubs and global auth-adjacent data. Contains profiles, todos (legacy),
nods_page (legacy docs search). Do not place new domain logic here.
tables: [profiles, todos, nods_page, nods_page_section]
band: b_platform
status: legacy
folder_registry.yaml
version: 1.1.0
root_allowlist:
- apps
- workers
- components
- workflows
- data
- realms
- rules
- security
- connections
- sites
- docs
- darkmatter
- templates
- projects
# System files (protected by Layer 1 Dark Matter Physics)
- .git
- .obsidian
- .gitignore
- .env
- env.example
- .cursorrules
- '*.canvas'
- '*kanban*.md'
required_roots:
- apps
- workers
- components
- workflows
- data
- realms
- rules
- security
- connections
- sites
- docs
- darkmatter
- templates
- projects
realm_required_subtrees:
common:
- kb
- data
- assets
- assets/images
- assets/videos
- assets/audio
- assets/documents
qibusiness:
- kb
- data
- assets
- assets/images/branding
- assets/images/social
- assets/videos/ads
- assets/videos/demos
- sites/astro/src
- sites/astro/content
- sites/astro/public
- sites/astro/scripts
qiclients_template:
- kb
- data
- data/sheets
- data/cache
- assets
- assets/images
- assets/videos
- assets/audio
- assets/documents
- apps
- workers
- workflows
- rules
- security
- connections
- sites/astro/src
- sites/astro/content
- sites/astro/public
- sites/astro/scripts
- projects/active
- projects/archived
- sys/config
- sys/policies
- sys/routing
- .meta
- .archive
folders:
- path: "QiOS/"
title: "QiOS Root"
qi_decimal: "0.00.00-SYS"
purpose: "Top-level universe root for the Qi Operating System."
owned_by: "qios"
realm_bound: false
realm_mirror: false
client_excluded: false
allowed_types: [".md", ".yaml", ".csv", ".sql"]
workers: ["gina-orchestrator", "tree-compiler"]
rules: ["ROT.001"]
examples: ["QiOS_v1/0.00.00-qios_genesis.md"]
- path: "realms/qivault/kb/"
title: "Knowledge Base"
qi_decimal: "1.00.00-KB"
purpose: "Canonical knowledge text for the realm."
owned_by: "realm"
realm_bound: true
realm_mirror: true
client_excluded: false
allowed_types: [".md", ".pdf"]
workers: ["semantic-ingestion", "embedder"]
rules: ["RLM.010", "FID.020"]
examples: ["policies.md", "sops.md"]
infrastructure_registry.yaml
registry: infrastructure
version: 1.0
description: >
Registry for infrastructure node classes, exposure enums, and service types
used within the QiOS fleet.
node_classes:
- id: infra.qiserver
name: qiserver Primary Runtime
description: The current active runtime and cognitive/operational host.
- id: infra.backup_server
name: Backup Server Infrastructure Node
description: A user-controlled server providing local AI, data services, and public app hosting.
enums:
exposure_class:
- private_only
- public_restricted
- public_open
- internal_only
runtime_zone:
- zone_admin
- zone_public_app
- zone_data
- zone_ai
service_type:
- reverse_proxy
- tunnel_connector
- remote_access
- relational_db
- vector_db
- ai_runtime
- ai_ui
- automation_runner
- container_admin
- monitoring
# TODO: Schema for defining local port bindings (127.0.0.1:3000, 127.0.0.1:8010, etc.) is not obvious yet. Add service port mapping facts here when schema is defined.
realms_registry.yaml
# QiOS Realm Registry v1.1
# Realms are meaning universes (ownership/context), not file-type buckets.
version: 1.1.0
default_enabled: true
realms:
- realm: QiVault
realm_slug: qivault
enabled: true
description: "Knowledge universe. Canonical notes, specs, SOPs, diagrams."
routing_priority: 90
default_sensitivity: internal
- realm: QiPersonal
realm_slug: qipersonal
enabled: true
description: "Private life universe. Personal docs, journals, home ops."
routing_priority: 80
default_sensitivity: confidential
- realm: QiBusiness
realm_slug: qibusiness
enabled: true
description: "Business universe for all ventures + founders docs + brand assets."
routing_priority: 85
default_sensitivity: internal
- realm: QiClients
realm_slug: qiclients
enabled: true
description: "Client universes. Each client is a realm instance under this root."
routing_priority: 95
default_sensitivity: client_confidential
- realm: QiPlayground
realm_slug: qiplayground
enabled: true
description: "Semi-organized sandbox for experiments, random projects, prototypes."
routing_priority: 60
default_sensitivity: internal
- realm: QiResearch
realm_slug: qiresearch
enabled: true
description: "Raw intake + sources + research notes. Keeps QiVault clean."
routing_priority: 70
default_sensitivity: internal
- realm: Archives
realm_slug: archives
enabled: true
description: "Cold/retired universes. Read-only by default."
routing_priority: 10
default_sensitivity: restricted
# Pre-allowed future realms (disabled until you flip them on)
- realm: QiPublish
realm_slug: qipublish
enabled: false
description: "Public release candidates, outbound content, publishing surfaces."
routing_priority: 50
default_sensitivity: public
- realm: QiLegal
realm_slug: qilegal
enabled: false
description: "High-stakes legal/immigration universe. Extra access controls."
routing_priority: 75
default_sensitivity: restricted
sensitivity_classification.yaml
# Sensitivity & Classification Registry
#
# DOCTRINE:
# This enforces the allowable spectrum of security and categorical classification.
# It strips legacy inconsistencies and defines the singular truth for these attributes.
version: 1.0.0
sensitivity_levels:
public:
description: "Safe for unauthenticated or external viewing."
default_visibility: true
internal:
description: "Safe for authenticated internal tenants."
default_visibility: false
confidential:
description: "Restricted to specific cases/members."
default_visibility: false
restricted:
description: "High-risk data. Requires explicit role approval to view."
default_visibility: false
secret:
description: "Environment/system level secrets or cryptography."
default_visibility: false
classifications:
- id: personal_health
description: "PHI, medical records, physical health tracking."
- id: personal_finance
description: "Banking records, ledgers, home expense data."
- id: legal
description: "Contracts, litigation, court filings, attorney communications."
- id: immigration
description: "USCIS documents, forms, biometric records."
- id: client_confidential
description: "Consulting artifacts belonging to an external client/tenant."
- id: business_internal
description: "QiLabs or commercial operating procedures."
- id: marketing_public
description: "Drafts or finals of outbound media."
- id: system_darkmatter
description: "Internal architecture config, DB dumps, worker logs."
- id: other
description: "Uncategorized. Should trigger human review."
subdomain_registry.yaml
workspace_realms.yaml
# Workspace Realms
#
# DOCTRINE:
# Realms are strictly non-canonical UX/workspace labels used for filtering views,
# folders, or dashboards. They DO NOT override the Band -> Domain -> Subdomain
# object placement model or the QiArchive ID model.
version: 1.0.0
realms:
- id: personal
display_name: "Personal Life"
- id: work
display_name: "Professional"
- id: legal
display_name: "Legal & Case"
- id: infrastructure
display_name: "System & Core"
rules:
- "Realms cannot be used to determine database schema routing."
- "Realms are optional UI-layer attributes."
_index.md
# 10 Governance
<sub>System Rules + Intent Layer</sub>
Documentation for the rules, principles, and decisions that govern the QiOS ecosystem.
## Progression
1. [Principles](10_principles.md): Core values and intent
2. [Rules](20_rules.md): Hard constraints for systems and agents
3. [Standards](30_standards/): Technical standards and patterns
4. [Policies](40_policies/): Operational policies
5. [Decisions](50_decisions/_index.md): Architectural Decision Records (ADR)
6. [Registry](60_registry/): System asset registry
20_structure/
10_identity.md
# Identity and Multi-Tenancy Architecture
> Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
## Single Source of Truth
Auth and Identity are completely delegated to **Supabase Auth**.
## Namespace Isolation & Schema Separation
Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
* **`public`**: Reserved only for global operational data, internal system profiles, and generalized reference tables (e.g., `profiles`, `todos`).
* **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
## The RBAC & Tenant Structure
Identity operates through three primary tables:
1. **`auth.users`**: Managed natively by Supabase.
2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
## Row Level Security (RLS) Strategy
Every mapped table in the tenant domain must contain a `tenant_id`.
RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
20_system_model.md
# System Model
QiAccess Start is the active system model.
> QiAccess is the portal. The map is the interface. The knowledge base is the memory behind each node.
## Core Runtime Parts
| Part | Role |
|---|---|
| **QiAccess Start** | Daily-use portal and navigation shell |
| **qiserver** | Protected runtime host for internal services |
| **QiNexus** | Storage backbone and folder discipline |
| **Wiki.js** | Readable knowledge base |
| **Repo docs** | Build doctrine, implementation notes, and technical references |
| **Memory** | Future continuity layer for timeline, decisions, and relationships |
| **Insights** | Future derived analysis layer |
## Seven-Root Navigation Contract
The active portal has seven roots only:
1. Home
2. Start
3. Capture
4. Knowledge
5. Memory
6. Insights
7. System
## Root Intent
- **Home**: what needs attention now
- **Start**: what needs to be opened
- **Capture**: what must leave the head immediately
- **Knowledge**: what is known and where the source lives
- **Memory**: what happened, why it mattered, and how it connects
- **Insights**: what it means and what deserves notice
- **System**: how the stack runs, stays safe, and remains governable
## System Subroutes
System owns nested surfaces for:
- access
- server
- storage
- integrations
- settings
- blueprint
- roadmap
- security
- diagnostics
These are not top-level roots.
## Current Operating Phase
The current phase is stabilization and prototype validation.
The system is considered healthy when:
1. the SPA builds and routes cleanly
2. Start opens real tools and services
3. Capture is fast enough to use without friction
4. Knowledge points to real docs and references
5. System exposes honest runtime and infrastructure visibility
6. Memory and Insights remain clearly marked when they are placeholders
## Source of Truth Stack
| Layer | Rule |
|---|---|
| Canonical sources | owned documents, governed records, verified runtime facts |
| Knowledge | curated readable explanation of sources |
| Memory | continuity and relationship layer built from sources |
| Insights | derived interpretation that must link back to sources |
No derived layer becomes truth by itself.
## Legacy Boundary
Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
- identity discipline
- metadata and naming controls
- ADR-backed structural change
- explicit security boundaries
When it conflicts with the active portal, it belongs in quarantine rather than in the live system model.
## Purpose
QiAccess Start is Cody's cognitive front door.
It exists to:
1. reduce cognitive load
2. capture what matters before it disappears
3. open the right tool fast
4. store knowledge in the right place
5. retrieve context when needed
6. surface patterns and insights
7. build toward AI-assisted wisdom
## Root Model
QiAccess Start has seven top-level roots only:
1. \Home\`n2. \Start\`n3. \Capture\`n4. \Knowledge\`n5. \Memory\`n6. \Insights\`n7. \System\`n
30_component_map.md
# Component Map
> Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
## System Components
┌─────────────────────────────────────────────┐ │ DELIVERY LAYER │ │ QiPortals · Web · Admin · Search · Setup │ └────────────────────┬────────────────────────┘ │ ┌────────────────────▼────────────────────────┐ │ APPLICATION LAYER │ │ QiOne Portal · Tools · Interfaces │ └────────────────────┬────────────────────────┘ │ ┌────────────────────▼────────────────────────┐ │ PLATFORM LAYER │ │ qione: tenants · members · RBAC │ │ Supabase Auth: identity │ └────────────────────┬────────────────────────┘ │ ┌────────────────────▼────────────────────────┐ │ DOMAIN LAYER │ │ qicase · qihome · qitax · qivault │ │ qichronicle · qicms · qiknowledge │ └────────────────────┬────────────────────────┘ │ ┌────────────────────▼────────────────────────┐ │ CORE LAYER │ │ qiarchive: registration + identity spine │ │ qigraph: derived graph (Neo4j projection) │ │ qially: AI sessions + memory embeddings │ │ qisys: jobs + workers + system events │ └─────────────────────────────────────────────┘
## Local ↔ Cloud Component Boundary
LOCAL MACHINE CLOUD (Supabase) ───────────────── ──────────────── File watcher → qiarchive.archive_files Ingest pipeline → qiarchive.ingest_jobs OCR + Extractor → qiarchive.archive_chunks Embedding engine → pgvector (archive_chunks.embedding) Local API ↔ App APIs
## Key Component Relationships
| From | To | Relationship |
|---|---|---|
| `qiarchive` | All domain schemas | Provides `archive_id` FK anchor |
| `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
| `auth.users` | `qione.tenant_members` | Identity mapping |
| `qiarchive.archive_chunks` | `qilly.memory_embeddings` | Embedding lineage |
| `qigraph.master_index` | All schemas | Cross-domain object index |
40_service_boundaries.md
# Service Boundaries
## Public vs. Private Boundaries
- The public side is heavily locked down.
- The internal tailnet runs unauthenticated surfaces safely.
- Application frontends handle public-facing operations.
### The Two Launch Surfaces
To maintain this boundary, there are strictly two separate launch surfaces:
1. **`access.qially.com`**: The external/public static React app deployed through Cloudflare. Service links are maintained in the app's source code data files.
2. **`qiserver-1.cerberus-sirius.ts.net`**: The private Tailscale server utility (`gethomepage`). Its configuration lives at `/srv/qios/stacks/_qiaccess_start/config/services.yaml`. Editing this server file does *not* update the public landing page.
## Administrative Boundaries
- Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
## System Subroutes
System owns:
- /system/access
- /system/server
- /system/storage
- /system/integrations
- /system/settings
- /system/blueprint
- /system/roadmap
- /system/security
- /system/diagnostics
## Legacy Boundaries (Quarantined)
*Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
50_data_flow.md
# Data Flow
## Canonical Ingestion Flow
SOURCE FILE │ ▼ DEVICE DROP ZONE / ASSIGNED WATCH PATH │ ▼ LOCAL AGENT DETECT │ ▼ RESOLVE DOMAIN (namespace + prefix lookup) │ ▼ REGISTER IN QiARCHIVE - assign canonical ID (UUID/ULID) - assign short visible code (Q + 6 hex) - normalize filename: {domain}{name}{QXXXXXX}.ext - calculate checksum │ ▼ EXTRACT / INSPECT - detect MIME type - choose parser - extract text - OCR if needed - store extraction method + raw text │ ▼ ENRICH METADATA - infer document type - extract entities - tag confidence values - assign semantic metadata │ ▼ CHUNK - split text deterministically - assign chunk indices - link chunks to archive_id │ ▼ EMBED (local) - generate embedding vectors - push to pgvector (qiarchive.archive_chunks) │ ▼ INDEX - update search index - update qigraph.master_index if applicable │ ▼ ROUTE / REVIEW / ACT - suggest route based on doc type + confidence - human review or auto-confirm - finalize placement - update archive record
## RAG / AI Query Flow
USER QUERY │ ▼ Metadata filter in Postgres (Supabase) │ ▼ Semantic retrieval in pgvector │ ▼ (optional) Graph expansion in Neo4j / qigraph │ ▼ Assemble evidence with provenance references │ ▼ Generate answer citing archive_id / chunk_id / entity_id
## Infrastructure Edge Ingress (Local Node Hosting)
PUBLIC REQUEST (Internet) │ ▼ EDGE PROVIDER (DNS / Policy / Tunnel Endpoint) │ ▼ OUTBOUND TUNNEL CONNECTOR (Local Node) │ ▼ LOCAL REVERSE PROXY (Routing / Auth Check) │ ▼ TARGET SERVICE (App Container / Webhook) │ ▼ INTERNAL DATA SERVICE (Postgres / Vector DB)
## Flow Invariants
* Every record entering the system carries a canonical ID **before** extraction begins
* Derived layers (graph, vector, AI) only receive data **after** the archive ID is assigned
* Failure at any stage is visible, stateful, and retryable — it never silently drops data
* **Provenance**: Every ingest must carry `source_device_id`, `source_agent_id`, `source_path`, and `ingest_mode` because ingestion happens across nodes.
60_device_model.md
# Device Model
Rather than architecting everything around a singular developer or operator machine, the system uses a scalable, fleet-managed node structure with cloud orchestration.
## Fleet Model Components
* **QiLabs**: The canonical local workstation root (`C:/QiLabs/`) on physical devices.
* **Device Node**: An enrolled machine in the fleet.
* **Local Agent**: The installed thin control service, reporting health and executing assigned jobs locally.
* **Local Runtime**: The machine-local execution layer for OCR, extraction, file chunking, and vectors.
* **Watch Assignment**: A configuration assigned from the hosted admin instructing a particular node to monitor specific directories or pipelines.
* **Drop Zone**: Specified ingress pathways (e.g. specialized folders) defined and assigned by the hosted admin.
* **Primary Dev Node**: A device node designated specifically for primary operator deployment, configuration, and structural adjustments.
* **Ingest Edge Node**: A specialized device node strictly responsible for watching paths/drop zones, reading local files, and ingesting them into the archive pipeline without administrative overhead.
* **Infrastructure Node**: A user-controlled server (e.g., `infra.backup_server`) providing local AI runtimes, secondary data services, and public application hosting under governed control.
* **Fleet Control Plane**: The hosted Admin platform authorizing and orchestrating action across the fleet of device nodes.
* **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
70_runtime_zones.md
# Runtime Zones
QiOS has a clear local/cloud boundary. Crossing that boundary without explicit intent is an architectural violation.
> ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j remain correct for queue and graph layers respectively. This doc reflects the current actual implementation.
## Local Runtime
Runs on an **enrolled device node** (not necessarily the developer/operator machine):
| Component | Responsibility |
|---|---|
| File watcher | Detect new files in assigned watch paths or drop zones |
| Local Agent | Thin control service for health, assignments, and job taking |
| Ingest pipeline | Orchestrate the full intake flow on that node |
| OCR subprocess | Extract text from scanned documents |
| Extraction subprocess | Parse structured file types |
| Chunking | Split extracted text deterministically |
| Embedding subprocess | Generate vectors locally |
| Local API | Agent execution endpoints (internal node control only) |
| Local state | `C:/QiLabs/QiData/` working directory |
### Local Working Directory
The canonical local root is `C:/QiLabs/`. The runtime state root is `C:/QiLabs/QiData/`.
C:/QiLabs/ ├── QiData/ │ ├── inbox/ │ ├── processing/ │ ├── reviewed/ │ ├── failed/ │ ├── manifests/ │ ├── extracted_text/ │ ├── embeddings_cache/ │ ├── logs/ │ └── model_cache/ └── _QiOne_MonoRepo/
Nodes may be provisioned by role such as `PRIMARY_DEV`, `INGEST_EDGE`, `GPU_WORKER`, or `ARCHIVE_NODE`.
## Cloud Runtime
Runs on hosted infrastructure:
| Component | Technology | Responsibility |
|---|---|---|
| Canonical metadata | **Supabase Postgres** | System of record |
| Vector retrieval | **pgvector** (in Supabase) | Embedding index |
| Queues + cache | **Redis** | Job state and ephemeral control |
| Knowledge graph | **Neo4j** | Derived graph (not canonical) |
| Admin surface | **NocoDB** | Human-friendly ops over Postgres |
| App APIs | Cloud-hosted | Frontend interaction |
| Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
## Infrastructure Node Runtime Zones (Self-Hosted)
When a node acts as a dedicated infrastructure server (e.g., `infra.backup_server`), it is conceptually divided into four runtime zones to enforce security and operational boundaries.
### Zone A — Private Administration Zone
Private-only services used strictly by the operator for system management.
* **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
* **Rule**: No service in this zone is publicly routable. Access is via private network overlay (Tailnet/VPN) only.
### Zone B — Public Application Zone
Services intentionally made reachable from the public internet for authorized external access.
* **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
* **Rule**: Exposure must occur only through an approved outbound tunnel + reverse proxy path. No direct port forwarding.
### Zone C — Data Services Zone
Persistent system state and memory services.
* **Services**: PostgreSQL, Vector Database (Milvus/Qdrant/etc.), Object storage integrations.
* **Rule**: Internal-only. Accessible only via private admin channels or trusted internal service networks.
### Zone D — AI Execution Zone
Model runtime and AI-specific execution services.
* **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
* **Rule**: AI runtimes are never directly exposed. Access must be mediated through an application layer or private admin layer.
## Boundary Rule
1. Local runtime **writes** to cloud (registrations, embeddings, metadata).
2. Cloud runtime **serves** app surfaces.
3. Derived layers (graph, vector, AI) **never** write back to canonical tables.
4. **Infrastructure Rule**: Publicly exposed services on local nodes must be isolated from administrative and data services by an explicit proxy boundary.
_index.md
# 20 Structure
<sub>System Architecture + Connections</sub>
Documentation for the system architecture, component maps, and service boundaries.
## Progression
1. [Identity](10_identity.md): Identity and access model
2. [System Model](20_system_model.md): High-level system architecture
3. [Component Map](30_component_map.md): Map of system components
4. [Service Boundaries](40_service_boundaries.md): Definition of service limits
5. [Data Flow](50_data_flow.md): Internal movement of data
6. [Device Model](60_device_model.md): Device and hardware mapping
7. [Runtime Zones](70_runtime_zones.md): Deployment and execution zones
30_data/
schemas/
band_registry.schema.json
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {
"registry": { "type": "string", "enum": ["bands"] },
"version": { "type": ["string", "number"] },
"bands": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string", "pattern": "^b_[a-z0-9_]+$" },
"name": { "type": "string" },
"description": { "type": "string" }
},
"required": ["id", "name", "description"]
}
}
},
"required": ["registry", "version", "bands"]
}
100_metadata.md
# Metadata
## Metadata Philosophy
Metadata is not decoration. Metadata is the **minimum structure required** for the system to understand what something is, where it belongs, how it relates, and whether it can be trusted.
Metadata must be:
* **Incremental** — builds up over the pipeline, not all at once
* **Auditable** — every change is traceable
* **Structured** — stored in canonical fields, not free-text blobs
* **Attached to canonical identity** — orphaned metadata is useless
* **Preserved through movement and transformation**
## Minimum Metadata Classes
### Identity Metadata
| Field | Description |
|---|---|
| `canonical_id` | UUID or ULID — the machine truth |
| `domain_prefix` | Namespace grouping (e.g. `BBR4821`) |
| `short_code` | Q + 6 hex — human-visible code |
| `checksum` | SHA-256 fingerprint |
### Source Metadata
| Field | Description |
|---|---|
| `source_type` | How it entered (watcher, upload, sync) |
| `source_path` | Where it came from |
| `origin_event` | What triggered ingest |
| `original_filename` | Pre-normalization name |
| `imported_by` | User or system that imported |
| `ingest_timestamp` | When registration occurred |
### Structural Metadata
| Field | Description |
|---|---|
| `mime_type` | Detected MIME type |
| `extension` | Lowercase file extension |
| `chunk_count` | Number of chunks generated |
| `page_count` | Pages if applicable |
| `parser_method` | Which parser was used |
| `extraction_method` | How text was obtained |
### Semantic Metadata
| Field | Description |
|---|---|
| `document_type` | Inferred type (tax return, contract, etc.) |
| `inferred_entities` | Extracted entities |
| `tax_year` | If applicable |
| `matter_or_case` | Associated case if applicable |
| `tags` | Classification tags |
| `confidence` | AI classification confidence score |
### Lifecycle Metadata
| Field | Description |
|---|---|
| `status` | Current pipeline state |
| `review_state` | Awaiting, reviewed, confirmed |
| `route_state` | Suggested, confirmed, overridden |
| `storage_path` | Current physical location |
| `created_at` | Creation timestamp |
| `updated_at` | Last modified timestamp |
## Automation Gate
> **Minimum metadata required before any automation proceeds**: canonical_id, domain_prefix, short_code, source_path, ingest_timestamp, mime_type, status.
If these fields are absent, the pipeline must halt and flag the record as incomplete.
## Content Metadata Profile (Front Matter)
For flat files, notes, and unstructured assets, an optional **front matter** block may be applied. The specification is strictly governed by `standards/content_metadata_profile.yaml`.
> **CRITICAL DOCTRINE**: Front matter is **Supportive Metadata**. It is NEVER the system of record.
>
> * Canonical identity comes from QiArchive.
> * Schema placement comes from the Pipeline.
> * Node topology comes from the Graph.
>
> A document cannot change its database relationships purely by altering its front matter tags.
Common supportive fields defined in the profile include:
* `status`: Content-level draft/review state.
* `sensitivity` / `classification`: Governed by `registry/sensitivity_classification.yaml`.
* `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
10_infrastructure_layout.md
# Infrastructure Layout (Node-Local)
Infrastructure nodes (e.g., `infra.backup_server`) must follow a standardized persistent path pattern to ensure reproducibility, backup compatibility, and operational clarity.
## Recommended Persistence Pattern
The following pattern is the approved baseline for local persistence under the `C:/QiLabs/` root.
```text
/QiLabs/
QiData/
infra/
backup_server/
configs/ # Service-specific configuration files
compose/ # Docker Compose / manifest files
env/ # Access-controlled environment files (NOT in repo)
exports/ # Temporary exports or reports
logs/ # Rotated system and container logs
backups/ # Scheduled local snapshots
restore/ # Workspace for testing restore procedures
services/
postgres/ # Relational storage volumes
vector/ # Vector database indices
automation/ # Flow data and configs (e.g., n8n, Prefect)
ai/ # Model weights and cache
proxy/ # SSL certs and routing configs
Persistence Rules
- Separation of Concerns: Service configurations must be separable from raw data volumes.
- Backup Accessibility: Local snapshots in
QiData/infra/backups/must be accessible to off-node backup jobs. - Secret Management:
.envfiles and secret keys must reside inQiData/infra/env/, be access-controlled at the host level, and be strictly excluded from version control. - Logging: Container logs should be directed to
QiData/infra/logs/or managed by a host-level rotated logging service. - Restore Validation: Every infrastructure node must maintain a
restore/directory for periodic verification of data integrity.
#### 110_front_matter.md
```text
# Front Matter Schema
# DOCTRINE:
# Front matter is supportive metadata only.
# It may assist rendering, filtering, search, and lifecycle display.
# It must not issue canonical identity, schema placement, routing truth,
# graph relationships, or cross-domain ownership.
# Meaning is determined by the `layout` field, but the field vocabulary is singular.
## Sections
```yaml
sections:
core:
lifecycle:
classification:
context:
relations:
system:
layout_specific:
Display behaviors
Use three display modes:
- always_show
- hide_if_empty
- always_hidden
That gives you a clean mental model.
Final universal front matter shape
These are the fields I’d lock.
-
core — always first
Humanly important. Always visible.
layout
title
slug
summary
status
- lifecycle
Usually visible, but lean.
created_at
updated_at
author
owner
Recommended display:
updated_at: always_show
created_at, author, owner: hide_if_empty
- classification
Useful, but not always relevant.
sensitivity
classification
realm_label
Display:
all hide_if_empty
This matches current doctrine: sensitivity and classification are governed values, and realm_label is optional UI-layer labeling only.
- context
Good for search and humans.
context
aliases
tags
keywords
references
Display:
all hide_if_empty
- relations
Only if needed.
target_system
target_scope
canonical_ref
Display:
target_system, target_scope: hide_if_empty
canonical_ref: always_hidden
Why hidden: it is useful for machine linkage, but front matter must not masquerade as canonical identity.
- system
Machine support fields. Hidden.
uid
template_key
source_type
Display:
all always_hidden
- layout_specific
Only meaningful for certain document types.
adr_id
supersedes
artifact_kind
registry_key
standard_key
Display:
all hide_if_empty
except maybe adr_id can be always_show when layout=adr
What the profile file should become
Your current content_metadata_profile.yaml is too flat. Change it to include:
field definitions
section membership
display behavior
canonical order
layout requirements
Here is the structure I’d use:
profile: content_front_matter
version: 2.0.0
description: "Universal front matter profile for blueprint docs and related markdown assets."
doctrine:
system_of_record: false
notes:
- "Front matter is supportive metadata only."
- "Canonical identity comes from QiArchive or the owning system of record."
- "Schema placement and routing truth do not come from front matter."
- "Meaning is determined by layout, but the field vocabulary is singular."
sections:
- id: core
label: Core
order: 10
- id: lifecycle
label: Lifecycle
order: 20
- id: classification
label: Classification
order: 30
- id: context
label: Context
order: 40
- id: relations
label: Relations
order: 50
- id: system
label: System
order: 60
- id: layout_specific
label: Layout Specific
order: 70
display_modes:
- always_show
- hide_if_empty
- always_hidden
field_order:
- layout
- title
- slug
- summary
- status
- created_at
- updated_at
- author
- owner
- sensitivity
- classification
- realm_label
- context
- aliases
- tags
- keywords
- references
- target_system
- target_scope
- canonical_ref
- uid
- template_key
- source_type
- adr_id
- supersedes
- artifact_kind
- registry_key
- standard_key
fields:
layout:
type: string
required: true
section: core
display: always_show
title:
type: string
required: true
section: core
display: always_show
slug:
type: string
required: false
section: core
display: hide_if_empty
summary:
type: string
required: false
section: core
display: hide_if_empty
status:
type: string
required: true
section: core
display: always_show
created_at:
type: string
required: false
section: lifecycle
display: hide_if_empty
updated_at:
type: string
required: false
section: lifecycle
display: always_show
author:
type: string
required: false
section: lifecycle
display: hide_if_empty
owner:
type: string
required: false
section: lifecycle
display: hide_if_empty
sensitivity:
type: string
required: false
section: classification
display: hide_if_empty
classification:
type: string
required: false
section: classification
display: hide_if_empty
realm_label:
type: string
required: false
section: classification
display: hide_if_empty
context:
type: string
required: false
section: context
display: hide_if_empty
aliases:
type: array
items: string
required: false
section: context
display: hide_if_empty
tags:
type: array
items: string
required: false
section: context
display: hide_if_empty
keywords:
type: array
items: string
required: false
section: context
display: hide_if_empty
references:
type: array
items: string
required: false
section: context
display: hide_if_empty
target_system:
type: string
required: false
section: relations
display: hide_if_empty
target_scope:
type: string
required: false
section: relations
display: hide_if_empty
canonical_ref:
type: string
required: false
section: relations
display: always_hidden
uid:
type: string
required: false
section: system
display: always_hidden
template_key:
type: string
required: false
section: system
display: always_hidden
source_type:
type: string
required: false
section: system
display: always_hidden
adr_id:
type: string
required: false
section: layout_specific
display: hide_if_empty
supersedes:
type: string
required: false
section: layout_specific
display: hide_if_empty
artifact_kind:
type: string
required: false
section: layout_specific
display: hide_if_empty
registry_key:
type: string
required: false
section: layout_specific
display: hide_if_empty
standard_key:
type: string
required: false
section: layout_specific
display: hide_if_empty
layouts:
page:
required: [layout, title, status]
section:
required: [layout, title, status]
adr:
required: [layout, title, status, adr_id]
artifact:
required: [layout, title, status, artifact_kind]
standard:
required: [layout, title, status, standard_key]
registry:
required: [layout, title, status, registry_key]
appendix:
required: [layout, title, status]
template:
required: [layout, title, status]
How to enforce order
Do not rely on humans to keep YAML in order. That will fail.
Use 3 levels of enforcement 1. Formatter
Create a script like:
scripts/normalize_front_matter.py
Its job:
parse front matter reorder fields according to field_order drop unknown fields or flag them optionally group by sections with blank lines/comments between groups 2. Validator
Extend enforce_structure.py or add:
scripts/validate_front_matter.py
Checks:
field order matches canonical order required fields exist for that layout forbidden retired fields are not used enum values match registry if applicable
- CI / pre-commit
Run formatter and validator:
pre-commit for local correction CI for blocking merge if drift remains
That aligns with the repo’s general direction of machine-enforced standards and the rule that drift between formal architecture and implementation must be flagged and resolved.
Best human-facing behavior
For site rendering or editor previews, use this rule:
Always show
layout
title
summary if present
status
updated_at
Show only if present
slug
author
owner
sensitivity
classification
realm_label
context
aliases
tags
keywords
references
target_system
target_scope
layout-specific fields
Always hide
uid
canonical_ref
template_key
source_type
That gives you quick human sanity without exposing internal scaffolding.
Important retired fields
These should be blocked in validation, not just discouraged:
retired_fields: - qi_decimal - qid - node - system - naming_strategy - related - parents - children - siblings - graph_weight - orbit - entangled - realm - realm_slug
Why: the salvage pass explicitly says those older ontology/graph/identity patterns were rewritten, demoted, or stripped.
layout: "" # home | section | page | adr | standard | registry | appendix | template | artifact title: "" slug: "" summary: "" status: "active" # draft | active | superseded | archived created_at: "" updated_at: "" author: "" owner: "" tags: [] keywords: [] aliases: [] context: "" sensitivity: "internal" classification: "business_internal" realm_label: ""
uid: "" # doc-local stable id, not DB truth canonical_ref: "" # optional reference to actual canonical object/archive/entity id source_type: "manual" # manual | generated | imported template_key: ""
domain: "" # optional doc subject area, not schema issuance subdomain: "" target_system: "" target_scope: "" # optional: qione, qiarchive, qihome, etc.
artifact_kind: "" # only meaningful when layout=artifact adr_id: "" # only meaningful when layout=adr supersedes: "" # optional for adr/page registry_key: "" # only meaningful when layout=registry standard_key: "" # only meaningful when layout=standard
sort: "" # optional sort order version: "" # optional version number references: "" # optional references
#### 120_storage.md
```text
# Storage
Storage is handled primarily via QiNexus and the local persistence structure.
## Storage Backbone
- Google Drive/QiNexus remains the primary storage backbone.
## Path Doctrine
- /srv/qios/data is for persistent app data.
- /srv/qios/stacks is for Docker Compose runtime stacks.
- /srv/qios/repos is for cloned Git repos and coding work.
## Conditional / Future Elements
*Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
130_placement_rules.md
# Placement Rules
Placement rules define where every type of object belongs. When placement is ambiguous, escalate to an ADR.
Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
## The Primary Rule
> Every object has exactly one canonical domain.
If you cannot answer "which domain or governed container owns this object's lifecycle?" - the object is not ready to be placed.
## Placement Decision Tree
```text
Is it a file or ingested record? -> qiarchive
Is it a legal/operational case? -> qicase
Is it a calendar event or time record? -> qichronicle
Is it published content or a post? -> qicms
Is it a household expense or chore? -> qihome
Is it a note or local knowledge record? -> qiknowledge
Is it a tax return or related document? -> qitax
Is it a secure document or contract? -> qivault
Is it an AI session or memory record? -> qially (future/conditional)
Is it a system job or worker event? -> qisys
Is it a graph node or derived edge? -> qigraph (future/conditional)
Is it a modular config or module registry record? -> qione (reference only)
Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
Is it an email account integration param? -> qione (reference only)
Is it an ingested email message/thread? -> qiarchive
Is it an email sync event or cursor? -> qisys
Is it a global auth record? -> future auth layer if one is explicitly activated
Rules for New Objects
| Rule | Requirement |
|---|---|
| Every object must have | A canonical ID |
| Every domain-scoped object must have | A owner_user_id FK |
| Every file-derived object or email attachment must have | An archive_id FK |
| Every object must have | A status field |
| Every mutable object must have | created_at + updated_at timestamps |
Domain-Specific Guardrails
- Email: Do not create a top-level
qiemailschema unless a future ADR explicitly approves it. Email should be modeled as an integration path into the canonical Spine, relying onqionefor configuration only if that relational layer is reactivated,qiarchivefor content,qisysfor sync state, andqiallyfor semantic memory only if that future layer is activated. Durable, secure email attachments may be promoted toqivault.
What Belongs in public
Only:
profiles— user profile data tied toauth.users- Legacy tables retained for compatibility (
todos,nods_page)
No new tables should be created in public schema.
Object Naming Contract
{domain}_{name}_{QXXXXXX}.ext
domain= lowercase domain prefix (e.g.bbr4821)name= normalized, human-readable baseQXXXXXX= Q + 6 uppercase hex short code assigned by QiArchive.ext= lowercase file extension
#### 140_exports.md
```text
---
uid:
81566a33-409b-4af2-bf79-f84a8cb99d36 ...
...
---
# Exports
## Exports are Non-Canonical
> Exports are derived outputs generated from canonical records. They are **not** truth sources.
An export is always regeneratable from its source canonical records. If regenerating an export produces different results, the **canonical records** are the authority — not the export.
## Export Types
| Export Type | Source | Format |
|---|---|---|
| Case summary reports | `qicase` records | PDF, Markdown |
| Extracted text | `qiarchive.archive_chunks` | Plain text, JSON |
| Embedding snapshots | `qiarchive.archive_chunks.embedding` | Parquet, JSON |
| Graph exports | `qigraph.edges` + `qigraph.master_index` | GraphML, JSON |
| Financial reports | `qihome.expenses`, `qitax.returns` | PDF, CSV |
| AI chat transcripts | `qially.sessions`, `qially.messages` | Markdown, JSON |
## Export Rules
* Exports must be clearly labeled as derived (not canonical)
* Exports must include a reference to their source `canonical_id` or `archive_id`
* Exports must not be committed back to canonical tables
* Exports may be cached but must be versioned and timestamped
* Stale exports must be flagged, not silently used
## Export Location
Exports should be stored outside the canonical database:
* Local: `C:/QiData/exports/` (temporary)
* Cloud: A dedicated non-canonical storage bucket or folder
* Never: back into a canonical schema table as if they were primary records
150_qievidence.md
# QiEvidence Domain (QiEn)
## Purpose
QiEvidence (internal engine name: **QiEn**) is a local-first evidence intelligence module that transforms raw multimedia and documents (videos, photos, PDFs, audio, screenshots, etc.) into a structured, cross-referenced, searchable evidence archive.
Core capabilities:
- Timestamped transcription and visual event extraction
- Neutral, cold, objective narration (no emotion, no speculation, no mind-reading)
- Entity normalization and tracking (people, vehicles, locations, accounts, etc.)
- Automated contradiction / inconsistency detection
- Master timeline assembly across all artifacts
- Human review queue for uncertain or conflicting items
It is a disciplined evidence-processing engine with two brains:
- **Extractor**: Factual, structured output only.
- **Analyst**: Cross-referencing, flagging, and neutral narration.
## Folder Structure
The local execution environment uses a standardized folder hierarchy:
/QiEvidence/ ├── input/ │ ├── videos/ │ ├── photos/ │ ├── documents/ │ └── other/ ├── working/ │ ├── audio/ │ ├── frames/ │ └── transcripts/ ├── output/ │ ├── events/ │ ├── entities/ │ ├── timelines/ │ ├── reports/ │ └── reviews/ └── archive/ (hashed originals + metadata)
## Schema: `qievidence`
The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
| Table | Description |
|---|---|
| `evidence_records` | Master artifact registry (one row per file) |
| `evidence_segments` | Chunked slices of long media/documents |
| `evidence_entities` | Canonical people, vehicles, locations, accounts, etc. |
| `evidence_entity_mentions` | Join table (where each entity appears) |
| `evidence_events` | Observed or extracted events |
| `evidence_claims` | Statements/assertions extracted from content |
| `evidence_observations` | Machine-grounded visual/textual facts (non-claims) |
| `evidence_links` | Cross-references between any two objects |
| `evidence_conflicts` | Detected inconsistencies (the “money” table) |
| `evidence_timelines` | Named timeline containers |
| `evidence_timeline_items` | Ordered items in timelines |
| `evidence_reviews` | Human review queue |
## Processing Pipeline
1. **Ingest**: Hash file, read metadata, assign evidence ID, store in `evidence_records`.
2. **Extract**:
- Audio → `faster-whisper` → transcript.
- Video → `ffmpeg` keyframes → `Qwen2.5-VL` observations.
- Photos/Docs → OCR + `Qwen2.5-VL` description.
3. **Structure**: Populate segments, entities, events, claims, observations.
4. **Link & Compare**: Build links and run contradiction scanner.
5. **Timeline Assembly**: Populate timelines and items.
6. **Narrate**: Final cold, logical report using strict prompt rules.
7. **Review**: Push uncertain/conflicting items to `evidence_reviews`.
## Narration Rules
- No emotion words.
- No speculation or intent inference.
- Separate Observed / Stated / Uncertain.
- Preserve timestamps and source IDs.
- Mark unclear audio/visuals explicitly.
160_vectorization_pipeline.md
20_bands.md
# Bands
Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
## Band Model
| Band | ID | Schemas |
| --- | --- | --- |
| **Core** | `b_core` | `qiarchive`, `qigraph`, `qially`, `qisys` (reference / future-conditional schemas) |
| **Platform** | `b_platform` | `qione`, `public` (legacy / future-conditional schemas) |
| **Domain** | `b_domain` | `qicase`, `qichronicle`, `qicms`, `qihome`, `qiknowledge`, `qitax`, `qivault` (reference / future-conditional schemas) |
## Band Definitions
### Core (`b_core`)
Fundamental system infrastructure. Identity backbone, archive spine, system operations, and any future derived graph or AI memory layers.
**Rule**: Other bands depend on Core. Core does not depend on other bands.
### Platform (`b_platform`)
Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
**Rule**: Platform provides theoretical containers. Current runtime defaults to a single-account / user-owned model.
### Domain (`b_domain`)
Specific bounded operational domains. Each domain is self-contained and should not reach into other domains without explicit cross-domain contracts.
**Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
## Structural Rules
* Any future relational schema must be declared in `registry/band_registry.yaml` before use.
* A schema may not span two bands.
* Any future shared-container access model requires a new ADR before tenant-style isolation assumptions become active doctrine.
30_domains.md
---
uid:
cdddc4a1-c802-4c5f-b871-c5ce5d6b5f78 ...
...
---
# Domains
Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
## Domain Hierarchy
```text
band -> domain -> subdomain -> object
Every object must have a resolved path through this hierarchy before it can be considered registered.
Live Domain Map
| Domain | Schema | Band | Core Tables |
|---|---|---|---|
| QiOne Platform | qione |
Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
| QiArchive | qiarchive |
Core | archive_files, archive_chunks, ingest_jobs, file_history |
| QiGraph | qigraph |
Core | edges, master_index |
| QiAlly (AI) | qially |
Core | sessions, messages, memory_embeddings |
| QiSys | qisys |
Core | jobs, system_events, worker_status |
| QiCase | qicase |
Domain | cases, phases, issues, deadlines, case_documents, document_issues |
| QiChronicle | qichronicle |
Domain | events, calendar_feeds |
| QiCMS | qicms |
Domain | posts |
| QiHome | qihome |
Domain | chores, chore_assignments, expenses, expense_shares, settlements |
| QiKnowledge | qiknowledge |
Domain | notes |
| QiTax | qitax |
Domain | returns, return_files |
| QiVault | qivault |
Domain | documents |
Domain Rules
- If a relational layer is used, prefer one schema per domain
- Multi-tenant
tenant_idassumptions are legacy/future only unless a specific job reactivates them - If a relational layer is used, every domain table should have governed access policy coverage
- Cross-domain reads are reference-only unless an explicit interface or event contract is approved
- New domains require an ADR before any new relational schema is created
Domain vs Namespace Clarification
Domains and namespaces are not interchangeable.
- Domains define ownership boundaries in the system architecture.
- Namespace codes define routing containers for work, artifacts, and workspace organization.
Examples:
- QiArchive is a domain
- 0300LGL is a namespace band
- 5441MAT is a namespace allocation
Shorthand legacy codes may exist as aliases in reconciled materials, but they do not replace canonical domain names in the blueprint.
#### 40_subdomains.md
```text
# Subdomains
Subdomains are sub-groupings within a domain. They allow finer-grained namespace resolution without requiring a new Postgres schema.
## Namespace Pattern
{band}.{domain}.{subdomain}.{object}
Example: `b_domain.qicase.civil.case_record`
## Known Subdomains (v0.4)
| Domain | Subdomain | Description |
|---|---|---|
| `qicase` | `civil` | Civil litigation and dispute cases |
| `qicase` | `administrative` | Administrative and regulatory cases |
| `qitax` | `personal` | Individual tax returns |
| `qitax` | `business` | Business / entity tax returns |
| `qihome` | `expenses` | Household expense tracking |
| `qihome` | `chores` | Household task management |
| `qivault` | `contracts` | Contracts and agreements |
| `qivault` | `filings` | Court and regulatory filings |
## Subdomain Rules
* Subdomains are a **namespace convention**, not a separate database schema
* They are recorded in `registry/subdomain_registry.yaml`
* An object may belong to only one subdomain
* Subdomains do not create new FK relationships — they annotate existing ones via metadata
50_namespace_registry.md
# Namespace Registry
Status: Active
Version: 1.0
## Purpose
QiOS uses a governed namespace registry to route work, artifacts, and workspace containers.
Namespace codes are routing allocations for governed containers of work, not identifiers for every person, contact, login, or raw database row.
Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
Relational identity and namespace routing are separate concerns:
- relational IDs answer: "what is this?"
- namespace codes answer: "where does this work belong?"
---
## Core Doctrine
1. Namespace codes are container routes, not universal entity identifiers.
2. Contacts, users, clients, vendors, and organizations must exist as relational records first.
3. Namespace allocation occurs only when a governed workspace, matter, project, legacy tenant container, archive block, or other approved routed container is required.
4. Namespace bands are finite, explicit, and registry-controlled.
5. No new top-level band may be created without blueprint update or ADR approval.
6. Namespace aliases may exist for legacy interpretation, but full canonical names remain authoritative in blueprint doctrine.
---
## Structural Syntax
- `####AAA` = structural node
- `####AAA.###` = subgroup, child route, bucket, or artifact route
Examples:
- `0300LGL`
- `0330LGL.010`
- `5120TNT`
- `5441MAT.020`
---
## Naming Rules
### Structural Nodes
`####AAA_Label_Name`
### Artifact Files
`####AAA.###_YYYY-MM-DD_title_detail.ext`
---
## Decimal Rules
- `.000` = base/default/index under node
- `.010`, `.020`, `.030` = grouping buckets
- `.011-.019` = descendants/items under `.010`
- `.021-.029` = descendants/items under `.020`
Trailing zeroes are reserved for grouping buckets unless explicitly used as an index node.
---
## Rollup Rule
Descendants roll up numerically.
Example:
`0330LGL.011` -> `0330LGL.010` -> `0330LGL` -> `0300LGL`
---
## Allocation Rule
Namespace blocks are assigned only to governed containers requiring durable routing.
Approved allocation targets include:
- system roots
- official bands
- governed workspaces
- matters
- projects
- archival containers
- approved operational partitions
Namespace blocks must NOT be assigned to:
- every contact
- every portal login
- every CRM row
- every raw record
- every message or event
- every client unless a governed workspace exists
---
## Registry Bands
### 0000–1999 — Global / Shared Constitutional Bands
Reserved for stable top-level routing bands.
### 2000–4999 — Future Shared Domain Expansion
Reserved for future major approved domains.
### 5000-7999 - Workspace Allocation Bands
Reserved for matter, project, governed workspace, or equivalent routed allocation. Tenant wording here is legacy/future only.
### 8000–8999 — Lab / Sandbox
Reserved for experimental and non-canonical routing.
### 9000–9999 — Archive / Legacy
Reserved for deprecated, frozen, migrated, or cold-storage routing.
---
## Canonical Band Manifest
| Range | Code | Canonical Name | Role |
|---|---|---|---|
| 0000 | ROOT | Root | system root |
| 0100 | KBS | Knowledge Base | doctrine, references, templates |
| 0200 | VLT | Vault | records, entities, durable holdings |
| 0300 | LGL | Legal | legal work and litigation support |
| 0400 | FIN | Finance | financial routing and financial artifacts |
| 0500 | OPS | Operations | tasks, projects, requests, schedules |
| 0600 | SYS | Systems | architecture, schemas, automations, deployments |
| 0700 | HUM | Human | household, support, relationships, routines |
| 0800 | HLT | Health | logs, care, regulation, recovery |
| 0900 | MED | Media | writing, publishing, campaigns, assets |
| 1000 | CRM | CRM | leads, active clients, engagements, closeout |
| 1100 | TPL | Templates | prompts, forms, packets, boilerplates |
| 1200 | REF | Reference | laws, cases, snapshots, citations |
| 8000 | LAB | Lab | experiments and prototypes |
| 9000 | ARC | Archive | legacy and frozen materials |
---
## Workspace Allocation Bands
Workspace allocations must use controlled registry assignment from the 5000–7999 range.
Recommended patterns:
- `5xxxTNT` = legacy/future tenant workspace alias
- `54xxMAT` = matter workspace
- `56xxPRJ` = project workspace
- `58xxORG` = organization-specific governed workspace
These are routing classes, not relational identity classes.
---
## Alias Policy
Abbreviated legacy codes may be recognized as aliases for interpretation only.
Examples:
- `ARC` -> `QiArchive` alias only
- `ALY` -> `QiAlly` alias only
- `CAS` -> `QiCase` alias only
Aliases are not canonical replacements for official blueprint names.
---
## ADHD-Safe Structural Constraint
- maximum structural folder depth = 3 levels from root
- use decimal buckets before adding new folders
- avoid sibling overlap
- organize by function, not theme
---
## Compliance Requirement
All namespace allocations must be:
- registry-valid
- unique within scope
- mapped to an approved owner type
- documented in the allocation registry
- consistent with blueprint band doctrine
60_directory_tree.md
# Ideal Directory Tree
This document outlines the official filesystem structure for an enrolled QiOS node.
```markdown
C:/QiLabs/
├── QiData/
│ ├── assigned_watch/
│ │ ├── .gitkeep
│ │ └── README.md
│ ├── backups/
│ │ └── .gitkeep
│ ├── devices/
│ │ └── this-device/
│ │ ├── capabilities.json
│ │ ├── device.json
│ │ ├── last_heartbeat.json
│ │ └── watcher_assignments.json
│ ├── dropzones/
│ │ ├── default/
│ │ │ └── .gitkeep
│ │ ├── imports/
│ │ │ └── .gitkeep
│ │ ├── mobile/
│ │ │ └── .gitkeep
│ │ ├── scans/
│ │ │ └── .gitkeep
│ │ └── README.md
│ ├── embeddings_cache/
│ │ └── .gitkeep
│ ├── extracted_text/
│ │ └── .gitkeep
│ ├── failed/
│ │ └── .gitkeep
│ ├── inbox/
│ │ ├── .gitkeep
│ │ └── README.md
│ ├── logs/
│ │ ├── ingest/
│ │ │ └── .gitkeep
│ │ ├── local-agent/
│ │ │ └── .gitkeep
│ │ ├── runtime/
│ │ │ └── .gitkeep
│ │ └── sync/
│ │ └── .gitkeep
│ ├── manifests/
│ │ └── .gitkeep
│ ├── model_cache/
│ │ └── .gitkeep
│ ├── normalized/
│ │ └── .gitkeep
│ ├── previews/
│ │ └── .gitkeep
│ ├── processing/
│ │ └── .gitkeep
│ ├── quarantine/
│ │ └── .gitkeep
│ ├── reviewed/
│ │ └── .gitkeep
│ ├── state/
│ │ ├── local-agent/
│ │ │ ├── cursor.json
│ │ │ ├── locks.json
│ │ │ └── queue.json
│ │ ├── runtime/
│ │ │ ├── embeddings_state.json
│ │ │ ├── pipeline_state.json
│ │ │ └── repair_state.json
│ │ └── sync/
│ │ ├── conflict_log.json
│ │ └── sync_cursor.json
│ ├── tmp/
│ │ └── .gitkeep
│ └── README.md
├── _QiOne_MonoRepo/
│ ├── .github/
│ │ ├── ISSUE_TEMPLATE/
│ │ │ ├── architecture_change.md
│ │ │ ├── bug_report.md
│ │ │ └── feature_request.md
│ │ ├── workflows/
│ │ │ ├── ci.yml
│ │ │ ├── docs.yml
│ │ │ ├── lint.yml
│ │ │ ├── migrations.yml
│ │ │ ├── release.yml
│ │ │ └── test.yml
│ │ ├── CODEOWNERS
│ │ └── pull_request_template.md
│ ├── apps/
│ │ ├── docs-site/
│ │ │ ├── overrides/
│ │ │ ├── README.md
│ │ │ ├── mkdocs.yml
│ │ │ └── package.json
│ │ ├── qially-web/
│ │ │ ├── public/
│ │ │ ├── src/
│ │ │ ├── README.md
│ │ │ ├── index.html
│ │ │ ├── package.json
│ │ │ └── vite.config.ts
│ │ └── qione-portal/
│ │ ├── public/
│ │ ├── src/
│ │ ├── README.md
│ │ ├── index.html
│ │ ├── package.json
│ │ ├── tsconfig.json
│ │ └── vite.config.ts
│ ├── docs/
│ │ └── __QiOS_Master_Blueprint_v0.4/
│ │ ├── 01_governance/
│ │ ├── 02_architecture/
│ │ ├── 03_structure/
│ │ ├── 04_data/
│ │ ├── 05_compute/
│ │ ├── 06_applications/
│ │ ├── 07_operations/
│ │ ├── adr/
│ │ ├── appendices/
│ │ └── index.md
│ ├── examples/
│ │ ├── archive_manifest.example.json
│ │ ├── fleet_job_payload.example.json
│ │ ├── local-agent.env.example
│ │ └── watcher_paths.example.yaml
│ ├── infra/
│ │ ├── docker/
│ │ │ ├── ai-api.Dockerfile
│ │ │ ├── app-api.Dockerfile
│ │ │ ├── compose.dev.yml
│ │ │ ├── local-agent.Dockerfile
│ │ │ └── worker-orchestrator.Dockerfile
│ │ ├── neo4j/
│ │ │ └── README.md
│ │ ├── redis/
│ │ │ └── README.md
│ │ ├── supabase/
│ │ │ ├── functions/
│ │ │ ├── migrations/
│ │ │ ├── config.toml
│ │ │ └── seed.sql
│ │ ├── tailscale/
│ │ │ ├── README.md
│ │ │ ├── acl.example.json
│ │ │ └── node-enrollment.md
│ │ └── README.md
│ ├── packages/
│ │ ├── config/
│ │ │ ├── eslint/
│ │ │ ├── prettier/
│ │ │ ├── tsconfig/
│ │ │ └── package.json
│ │ ├── db/
│ │ │ ├── src/
│ │ │ └── package.json
│ │ ├── domain-types/
│ │ │ ├── src/
│ │ │ └── package.json
│ │ ├── spine/
│ │ │ ├── src/
│ │ │ └── package.json
│ │ ├── ui/
│ │ │ ├── src/
│ │ │ ├── package.json
│ │ │ └── tsconfig.json
│ │ └── utils/
│ │ ├── src/
│ │ └── package.json
│ ├── scripts/
│ │ ├── archive/
│ │ │ ├── rebuild-manifest.py
│ │ │ ├── reconcile-lineage.py
│ │ │ ├── register-file.py
│ │ │ └── retry-failed.py
│ │ ├── db/
│ │ │ ├── db-migrate.ps1
│ │ │ ├── db-reset.ps1
│ │ │ ├── db-seed.ps1
│ │ │ ├── db-start.ps1
│ │ │ └── db-stop.ps1
│ │ ├── dev/
│ │ │ ├── check-env.ps1
│ │ │ ├── check-env.sh
│ │ │ ├── dev.ps1
│ │ │ ├── dev.sh
│ │ │ ├── start-ai-api.ps1
│ │ │ ├── start-app-api.ps1
│ │ │ ├── start-local-agent.ps1
│ │ │ ├── start-local-agent.sh
│ │ │ └── start-workers.ps1
│ │ ├── docs/
│ │ │ ├── docs-build.ps1
│ │ │ ├── docs-serve.ps1
│ │ │ └── docs-validate.ps1
│ │ ├── fleet/
│ │ │ ├── assign-watch-path.ts
│ │ │ ├── check-heartbeats.ts
│ │ │ ├── dispatch-node-job.ts
│ │ │ ├── issue-enrollment-token.ts
│ │ │ └── revoke-device.ts
│ │ ├── repo/
│ │ │ ├── enforce-structure.py
│ │ │ ├── lint-tree.py
│ │ │ ├── print-tree.py
│ │ │ └── validate-paths.py
│ │ └── README.md
│ ├── services/
│ │ ├── ai-api/
│ │ │ ├── app/
│ │ │ ├── README.md
│ │ │ ├── pyproject.toml
│ │ │ └── requirements.txt
│ │ ├── app-api/
│ │ │ ├── src/
│ │ │ ├── README.md
│ │ │ ├── package.json
│ │ │ └── tsconfig.json
│ │ ├── local-agent/
│ │ │ ├── app/
│ │ │ ├── tests/
│ │ │ ├── .env.example
│ │ │ ├── README.md
│ │ │ ├── agent.py
│ │ │ ├── main.py
│ │ │ ├── pyproject.toml
│ │ │ └── requirements.txt
│ │ └── worker-orchestrator/
│ │ ├── app/
│ │ ├── README.md
│ │ ├── main.py
│ │ ├── pyproject.toml
│ │ └── requirements.txt
│ ├── tests/
│ │ ├── e2e/
│ │ │ ├── admin-device-registry.spec.ts
│ │ │ ├── archive-dropzone.spec.ts
│ │ │ └── portal-auth.spec.ts
│ │ ├── fixtures/
│ │ │ ├── sample.pdf
│ │ │ ├── sample_email.eml
│ │ │ └── sample_metadata.json
│ │ ├── integration/
│ │ │ ├── test_archive_registration.py
│ │ │ ├── test_device_enrollment.py
│ │ │ ├── test_fleet_job_dispatch.py
│ │ │ └── test_watch_assignment.py
│ │ └── README.md
│ ├── .editorconfig
│ ├── .gitattributes
│ ├── .gitignore
│ ├── .prettierignore
│ ├── .prettierrc
│ ├── LICENSE
│ ├── README.md
│ ├── eslint.config.js
│ ├── mkdocs.yml
│ ├── package.json
│ ├── pnpm-lock.yaml
│ ├── pnpm-workspace.yaml
│ ├── tsconfig.base.json
│ └── turbo.json
├── bootstrap/
│ ├── templates/
│ │ ├── local-agent.env.template
│ │ ├── qilabs.env.template
│ │ └── watcher_paths.template.yaml
│ ├── README.md
│ ├── enroll_device.ps1
│ ├── enroll_device.sh
│ ├── install_local_agent.ps1
│ ├── install_local_agent.sh
│ ├── install_qilabs.ps1
│ ├── install_qilabs.sh
│ ├── validate_machine.ps1
│ └── validate_machine.sh
├── config/
│ ├── global/
│ │ ├── device_policy.yaml
│ │ ├── metadata_rules.yaml
│ │ ├── naming_rules.yaml
│ │ ├── repo_rules.yaml
│ │ ├── runtime_rules.yaml
│ │ └── watcher_rules.yaml
│ ├── local/
│ │ ├── dropzones.yaml
│ │ ├── embeddings.yaml
│ │ ├── local_agent.yaml
│ │ ├── ocr.yaml
│ │ └── watcher_paths.yaml
│ ├── secrets/
│ │ └── .gitkeep
│ └── README.md
├── tools/
│ ├── docs/
│ │ ├── backup_restore.md
│ │ ├── device_enrollment.md
│ │ ├── panic_recovery.md
│ │ └── workstation_setup.md
│ ├── scripts/
│ │ ├── backup_qidata.ps1
│ │ ├── repair_repo.ps1
│ │ ├── repair_repo.sh
│ │ ├── restore_qidata.ps1
│ │ ├── tree_snapshot.ps1
│ │ ├── tree_snapshot.sh
│ │ ├── verify_env.ps1
│ │ └── verify_env.sh
│ └── README.md
├── .env.example
├── .gitignore
└── README.md
#### 70_object_model.md
```text
# Object Model
## Core Object Families
The system supports these canonical object families:
| Object | Home Schema | Notes |
|---|---|---|
| files | `qiarchive` | Primary archive records |
| chunks | `qiarchive` | Derived from files |
| notes | `qiknowledge` | Local-first knowledge layer |
| documents | `qivault` | Secure document vault |
| entities | `qigraph` | Extracted and projected |
| clients | `qicase` | Operational domain |
| contacts | `qicase` | Associated with clients |
| cases | `qicase` | Core legal/ops unit |
| tasks | `qisys` | Jobs and system tasks |
| events | `qichronicle` | Time-anchored records |
| contracts | `qivault` | Secure contract records |
| prompts | `qially` | AI prompt records |
| memories | `qially` | AI memory embeddings |
| routes | `qiarchive` | Archive routing states |
| projects | `qisys` | Grouped work units |
| modules | `qione` | Platform feature toggles |
| tenants | `qione` | Top-level containers |
| email_accounts | `qione` | Email platform configuration and ownership |
| email_messages | `qiarchive` | Canonical registered email records |
| email_threads | `qiarchive` | Grouped email conversations |
| email_participants | `qiarchive` | Canonical sender/recipient records |
| email_attachments| `qiarchive` | Files attached to registered emails |
| email_sync_jobs | `qisys` | Connector sync processing |
| email_connector_events | `qisys` | Integration ingress events |
| email_sync_cursors | `qisys` | Provider sync state tracking |
## Structural Layers
Objects exist across these structural tiers:
| Layer | Purpose |
|---|---|
| **Archive layer** | Files and registration records |
| **Semantic layer** | Entities and enriched meaning |
| **Workflow layer** | Routing, review, and actions |
| **Knowledge layer** | Notes, memory, and recall |
| **Graph layer** | Derived relationships (never canonical) |
| **Delivery layer** | Portals, reports, chatbot output |
## Placement Rule
Every object must have:
1. A **canonical schema** home
2. A **band** assignment
3. A **tenant_id** if it is domain-scoped
4. An **archive_id** if it is derived from a registered file
Objects that violate these rules are considered unregistered and must not be used in automation or AI retrieval.
80_objects.md
# Objects
## Current Doctrine
Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
## Core Object Families
| Object | Home Schema | Notes |
|---|---|---|
| files | `qiarchive` | Primary archive records - the Spine |
| chunks | `qiarchive` | Derived from files, linked by `archive_id` |
| notes | `qiknowledge` | Local-first knowledge layer |
| documents | `qivault` | Secure document references; tenant-scoped assumptions are legacy/future only |
| entities | `qigraph` | Extracted and projected (derived) |
| clients | `qicase` | Legacy/reference operational domain objects |
| contacts | `qicase` | Legacy/reference operational contacts |
| cases | `qicase` | Core legal/operational unit |
| tasks / jobs | `qisys` | System and workflow jobs |
| events | `qichronicle` | Time-anchored records |
| contracts | `qivault` | Secure contract records |
| prompts | `qially` | AI prompt records |
| memories | `qially` | AI memory references; embeddings remain future/conditional |
| routes | `qiarchive` | Archive routing state records |
| posts | `qicms` | Content management objects |
| tenants | `qione` | Legacy/future top-level containers |
| modules | `qione` | Platform feature-toggle reference |
## Object Identity Requirements
Every object must carry:
1. A **canonical ID** (assigned at registration, never changed)
2. A **domain assignment** (one schema, one band)
3. A **status** (lifecycle state)
4. **Timestamps** (`created_at`, `updated_at` where mutable)
If a future shared-container relational model is activated, domain-scoped objects may additionally require:
- `tenant_id` FK to `qione.tenants`
File-derived objects additionally require:
- `archive_id` FK to `qiarchive.archive_files`
## Object Lineage Rule
> Derived records must not invent disconnected truth.
* Chunks must reference `archive_id`
* Graph nodes must reference canonical object IDs
* AI evidence must reference `archive_id` / `chunk_id` / `entity_id`
* Memories must reference source provenance where possible
90_schema.md
# Schema
## Current Doctrine
QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
## Schema Philosophy
If a future relational layer is activated for a specific job, the schema should reflect the fact that the system is:
* **modular** — each domain lives in its own Postgres schema
* **identity-driven** — every record has a canonical ID that survives transformation
* **archive-aware** — ingested files register in `qiarchive` before downstream processing
* **retrieval-oriented** — embeddings and vector search are future/conditional rather than current doctrine
* **graph-projectable** — `qigraph` is always derived from, never the source of, canonical records
The active doctrine in this repo is not a live relational platform. If a relational layer is reactivated, it should remain relational at the core, with vector and graph layers derived from stable canonical records.
## Legacy / Conditional Namespace Map (Reference Only)
| Schema | Band | Role |
| --- | --- | --- |
| `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
| `qiarchive` | Core | File registration, archive spine |
| `qigraph` | Core | Derived knowledge graph |
| `qially` | Core | AI sessions, messages, memory |
| `qisys` | Core | Jobs, events, worker status |
| `qievidence` | Domain | Local-first evidence intelligence |
| `qicase` | Domain | Legal case management |
| `qichronicle` | Domain | Events and calendar |
| `qicms` | Domain | Content and posts |
| `qihome` | Domain | Household and finances |
| `qiknowledge` | Domain | Notes and writing |
| `qitax` | Domain | Tax returns |
| `qivault` | Domain | Secure documents |
| `qicare` | Domain | Respiratory and health care management |
| `public` | Platform | Legacy stubs only - no new tables |
## Reconciliation: Schema vs Data vs Object
These three things are distinct. Conflating them creates drift.
| Term | Definition |
| --- | --- |
| **Schema** | The structural shape defined in Postgres (columns, types, constraints) |
| **Data** | The raw or unstructured payload stored at ingest |
| **Object** | The domain-level entity mapped from schema + enriched data |
**Rule**: Never let a downstream object layer redefine what the schema says is true.
## Core Early Tables (Spine-Required)
As defined in the QiOS Master Blueprint genesis:
* `qiarchive.archive_files` — canonical file registration ✅
* `qiarchive.archive_chunks` — chunked text records ✅
* `qiarchive.ingest_jobs` — pipeline state tracking ✅
* `qiarchive.file_history` — lineage and rename tracking ✅
* `qione.app_module_registry` — modular capability tracking ✅
* `qione.tenants` — tenant identity (Platform-Future) ✅
* `qigraph.master_index` — cross-domain object index ✅
* `qisys.devices` — enrolled machine identities
* `qisys.device_agents` — local agent service states
* `qisys.device_heartbeats` — node health checks
* `qisys.device_jobs` — dispatched node tasks
* `qisys.device_events` — fleet audit trail
* `qisys.device_capabilities` — node role and hardware spec
* `qisys.device_watch_assignments` — folder and drop zone policies
## Email Intake Schema Contract
Email is modeled as an integration feeding the master archival spine, avoiding a separate schema. It is bounded by these core table definitions:
* `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
* `qiarchive.archive_messages` — canonical registration for individual email payloads.
* `qiarchive.archive_message_threads` — canonical grouping of related messages.
* `qiarchive.archive_message_participants` — sender/recipient edge metadata.
* `qiarchive.archive_message_attachments` — canonical attachment metadata. Email attachments processed as robust files must receive an `archive_id`.
* `qisys.email_sync_cursors` — connector synchronization state, jobs, and webhook checkpoints.
* `qially` tracking — provenance-aware memory and embeddings for email-derived knowledge chunks must link back to their canonical archive IDs.
---
## Canonical Record Invariants
QiOS supports modular, domain-specific schemas. Canonical records should conform to a shared minimum invariant set unless the table's purpose or an approved ADR justifies an exception. Every record passing through the intake pipeline must also capture fleet provenance fields (`owner_user_id`, `source_device_id`, `source_agent_id`, `source_path`, `ingest_mode`) so ingestion is fully traceable and isolated.
### Common Field Invariants
Canonical domain records should implement the following common fields unless the table serves a narrowly scoped structural purpose or an approved ADR defines an exception:
| Field | Type | Role |
| --- | --- | --- |
| `id` | `uuid` | Canonical unique identifier for the record. |
| `owner_user_id` | `uuid` | Reference to the owning user identity in a future relational/auth-backed layer. |
| `status` | `text` | Lifecycle state for governance, routing, or operational control. |
| `visibility` | `text` | Visibility or access classification for governed read exposure. |
| `metadata` | `jsonb` | System-governed provenance, lineage, and auxiliary indexing metadata. |
| `source_device_id` | `uuid` | Identifying the enrolled ingestion node. |
| `source_agent_id` | `uuid` | Identifying the agent runner instance. |
| `source_path` | `text` | Original ingress pathway or drop zone. |
| `ingest_mode` | `text` | e.g. `drop_zone`, `watcher`, `manual_upload`, `sync_worker` |
Domain-specific fields should be modeled as typed relational columns by default. An `attributes` or equivalent extensibility field may be used only where flexibility is justified and does not replace stable schema design.
## Schema Governance Invariants
* **Migration-as-Truth**: If a relational schema is activated for a specific job, database migrations are the canonical schema authority for that layer. ORMs and client models may reflect the schema, but they do not define it.
* **Relational Core**: If used, the relational layer remains downstream-safe. Vector, graph, and AI-derived structures must remain downstream of stable canonical records and preserve traceable linkage back to them.
* **Domain Isolation**: Domain ownership must remain local to the owning schema. Cross-domain dependencies must not create hidden coupling or competing sources of truth. Inter-domain resolution should occur through governed registry patterns, approved interfaces, or the application layer unless an ADR explicitly permits tighter database-level integration.
* **Audit Requirements**: Canonical tables should maintain `created_at` and `updated_at` timestamps unless the table is append-only, purely structural, or explicitly exempted by doctrine or ADR.
## Namespace Allocation Governance
Namespace routing is governed separately from relational identity.
Canonical records such as contacts, users, clients, cases, and matters must use relational identifiers as their source of truth. Namespace codes may be attached only when a governed routed container is required.
### Minimum Registry Requirements
A namespace allocation system must record:
* allocation identifier
* namespace code
* owner type
* owner identifier
* band class
* status
* created_at
* updated_at
### Compliance Rules
Namespace allocations must:
* map to an approved band
* remain unique within the allocation registry
* target an approved owner type
* respect reserved ranges
* avoid implicit invention of new band classes or code patterns
### Forbidden Pattern
Do not allocate namespace codes to every contact, login, or row merely for symmetry. Routing allocation is operational and architectural, not ornamental.
_index.md
# 30 Data
<sub>Data Behavior + Transformation Rules</sub>
Documentation for the data model, schemas, and storage rules.
## Progression
1. [Infrastructure Layout](10_infrastructure_layout.md): Physical/logical storage map
2. [Bands](20_bands.md): Data root-band model
3. [Domains](30_domains.md): Domain ownership structure
4. [Subdomains](40_subdomains.md): Functional partitioning
5. [Namespace Registry](50_namespace_registry.md): System namespaces
6. [Directory Tree](60_directory_tree.md): Canonical directory structure
7. [Object Model](70_object_model.md): Core object definitions
8. [Objects](80_objects.md): Instance management
9. [Schema](90_schema.md): Database and state schema
10. [Metadata](100_metadata.md): Metadata standards
11. [Front Matter](110_front_matter.md): YAML front matter profile
12. [Storage](120_storage.md): Storage and persistence rules
13. [Placement Rules](130_placement_rules.md): Data locality and placement
14. [Exports](140_exports.md): Data export patterns
15. [QiEvidence](150_qievidence.md): Evidence and audit trails
16. [Vectorization Pipeline](160_vectorization_pipeline.md): Pipeline for AI ingestion
40_service_apps/
100_integrations/
_index.md
external_integrations.md
# Integrations
Integrations are connections to external systems. They are not canonical data sources — they are inputs that feed into the Spine.
## Integration Rule
> All external data entering QiOS must pass through the registration pipeline. No integration may write directly to canonical tables.
External System → Integration API → Pipeline → QiArchive → Canonical Record
## Planned Integrations
| Integration | Status | Entry point |
|---|---|---|
| Assigned watch folders | Active | Active via enrolled device agent |
| Device drop zone | Active | Active via enrolled device agent |
| Local file watcher | Active | `C:/QiLabs/QiData/inbox/` |
| Manual file upload | Active | App API → pipeline |
| Synced cloud storage | Planned | Non-canonical until registered via sync worker |
| Email intake | Future | Connector service |
| Webhook intake | Future | Integration API |
| Calendar sync | Future | `qichronicle` connector |
*Note: A device-assigned folder or drop zone is merely an **ingress mechanism**, not a canonical source itself. The integration law explicitly remains intact.*
## Integration Contract
Every integration must define:
* **Trigger**: what initiates the intake
* **Format**: what data arrives and in what shape
* **Entry point**: which API or queue receives the data
* **Output**: what canonical record is created
* **Failure handling**: what happens if the integration drops data
## Auth for Integrations
External integrations must authenticate using:
* **Service role key** for server-to-server (never expose to client)
* **Scoped API key** for third-party connectors
* **JWT** for user-context integrations
Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
## Email Pipeline Flow Contract
Email intake is considered a complex integration that must strictly obey the canonical registration pipeline:
* **Source**: Gmail / Outlook / IMAP / webhook providers
* **Entry**: Integration API or background connector worker
* **Flow**:
1. `Connector Pull or Webhook`
2. `→ qisys Job / Event`
3. `→ qiarchive Registration`
4. `→ Extraction & Attachments`
5. `→ Chunking & Embedding`
6. `→ Routing/Review/Action`
* **Worker Rule**: All asynchronous worker inputs and outputs must pass and reference canonical IDs.
* **Failure Rule**: Failures must be visible, stateful, and cleanly retryable via `qisys`.
* **Provenance Rule**: The integration must NEVER bypass explicit `qiarchive` registration.
* **Isolation Rule**: Every derived email record must preserve `tenant_id` and obey Row-Level Security.
## Specific Service Integrations
- **Wiki.js**: Runs locally at `127.0.0.1:3002`. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` currently returns Bad Gateway and should be labeled degraded until the tunnel route is repaired. Future Wiki.js sync may happen by script or workflow, but do not build it now.
- **Paperless-ngx**: Runs locally at `127.0.0.1:8010`. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
10_infrastructure/
_index.md
cloudflare.md
# Cloudflare
## Purpose
Public boundary layer heavily locking down the public side.
## Current Status
Active
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `N/A`
- Data: `N/A`
## Access Class
Public Boundary
## Notes / TODOs
- Future public access goes through here.
cockpit.md
# Cockpit
## Purpose
Server administration UI.
## Current Status
Active
## URLs
- Local: `*:9090 (WARNING)`
- Tailnet: `N/A`
## Paths
- Stack: `N/A (Host Install)`
- Data: `N/A`
## Access Class
Private Admin
## Notes / TODOs
- WARNING: Listening broadly on *:9090, must be restricted.
docker_compose.md
# Docker Compose
## Purpose
Primary container orchestration engine for qiserver runtime.
## Current Status
Active
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/stacks`
- Data: `N/A`
## Access Class
Private Admin
## Notes / TODOs
- Ensure no nested git repos in /srv/qios/stacks.
gethomepage.md
# Private Server Launcher (gethomepage)
## Purpose
A local-only server dashboard and utility for quick access to qiserver services via the tailnet.
## Current Status
Active
## URLs
- Local: `http://127.0.0.1:3001`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net` (via Tailscale Serve)
## Paths
- Stack: `/srv/qios/stacks/_qiaccess_start`
- Config: `/srv/qios/stacks/_qiaccess_start/config/services.yaml`
## Access Class
Private / Tailnet Only
## Notes / TODOs
- **CRITICAL:** This is separate from the public `access.qially.com` portal.
- Editing `services.yaml` only affects this local view.
- Public portal links are managed in the portal's own source data files.
portainer.md
# Portainer
## Purpose
Container management admin UI.
## Current Status
Active
## URLs
- Local: `127.0.0.1:9443`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/stacks/portainer`
- Data: `/srv/qios/data/portainer`
## Access Class
Private Admin
## Notes / TODOs
- Must stay private/protected.
tailscale.md
# Tailscale
## Purpose
Internal tailnet for safe unauthenticated surface exposure.
## Current Status
Active
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `N/A`
- Data: `N/A`
## Access Class
Private / Tailnet
## Notes / TODOs
- Used via Tailscale Serve to expose services safely.
uptime_kuma.md
# Uptime Kuma
## Purpose
Service monitoring and status.
## Current Status
Active
## URLs
- Local: `127.0.0.1:3001 (Internal)`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net:9451`
## Paths
- Stack: `/srv/qios/stacks/uptime-kuma`
- Data: `/srv/qios/data/uptime-kuma`
## Access Class
Tailnet
## Notes / TODOs
- Used for alerting on stack drops.
110_qiserver/
_index.md
runtime.md
# Runtime & Local Setup
The active runtime is qiserver.
## Current Local Services
- **Paperless-ngx**: Locally at 127.0.0.1:8010.
- **NocoDB**: Locally at 127.0.0.1:8088.
- **Open WebUI**: Locally at 127.0.0.1:3000.
- **Wiki.js**: Locally at 127.0.0.1:3002. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` is currently degraded and needs tunnel repair.
- **Homepage/QiAccess**: Locally at 127.0.0.1:3001.
- **Portainer**: Locally at 127.0.0.1:9443 (admin service).
- **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
- **Aider**: Installed under /srv/qios/tools/aider.
## Legacy Local Setup
*Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
runtime_profile.md
---
title: QIServer Private AI Node
status: active
date: 2026-04-19
layer: compute
type: runtime_profile
host: qiserver
tailscale_name: qiserver-1
---
# QIServer Private AI Node
## Purpose
QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
## Why This Node Exists
This node is the practical execution host for the local-runtime side of QiOS:
- private AI chat access
- local model hosting
- future ingestion and extraction
- future chunking and embeddings
- future local control-plane endpoints
- future graph projection support
It is not the canonical source of truth for records. Canonical truth remains in the cloud-side data model. Derived layers remain downstream.
## Current Role
### Active now
- Tailscale-connected private server
- Ollama running on host
- Open WebUI running in Docker
- Neo4j running in Docker
- Tailscale Serve publishing Open WebUI privately to the tailnet
### Planned next
- local Python API
- inbox watcher
- extraction pipeline
- deterministic chunking
- embedding worker
- Conditional/Future: Supabase/pgvector upsert
- Neo4j projection
- queue/retry/status endpoints
## Runtime Position in QiOS
QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### Local runtime responsibilities
- file watcher
- ingest pipeline
- OCR
- extraction
- chunking
- embeddings
- local API
- machine-local state
### Cloud-side responsibilities
- canonical metadata
- retrieval index in pgvector
- app-facing APIs
- review surfaces
- Conditional/Future: tenant-aware data serving
### Boundary rule
Local runtime writes registrations, metadata, and embeddings outward.
Cloud runtime serves application surfaces.
Graph, vector, and AI layers do not become canonical truth.
## Current Access
### Private access surface
- Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### Machine identity
- OS hostname: `qiserver`
- Tailscale machine: `qiserver-1`
- Tailscale IPv4: `100.121.111.106`
## Current Local Services
### Host service
- Ollama API: `http://127.0.0.1:11434`
### Docker services
- Open WebUI: `http://127.0.0.1:3000`
- Neo4j Browser: `http://127.0.0.1:7474`
- Neo4j Bolt: `bolt://127.0.0.1:7687`
## Current Service Topology
### Host
- Ubuntu server
- Tailscale
- Ollama
### Containers
- Open WebUI
- Neo4j
### Network pattern
- services bind locally
- Tailscale Serve proxies Open WebUI privately to the tailnet
- raw backend services are not publicly exposed
## Current Paths
### Server paths
- QiOS root: `/srv/qios`
- compose: `/srv/qios/compose`
- server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### Data paths
- data root: `/srv/qidata`
- inbox: `/srv/qidata/inbox`
- processing: `/srv/qidata/processing`
- reviewed: `/srv/qidata/reviewed`
- failed: `/srv/qidata/failed`
- manifests: `/srv/qidata/manifests`
- extracted text: `/srv/qidata/extracted_text`
- embeddings cache: `/srv/qidata/embeddings_cache`
- logs: `/srv/qidata/logs`
- model cache: `/srv/qidata/model_cache`
- exports: `/srv/qidata/exports`
## Current Models
### Chat model
- `llama3.2:latest`
### Embedding model
- `embeddinggemma:latest`
## Model Rule
`llama3.2` is the chat/default interaction model.
`embeddinggemma` is not a general chat default. It is reserved for embedding, retrieval, and vectorization work.
## Architectural Constraints
1. This node is compute infrastructure, not canonical record authority.
2. Graph and vector outputs are derived.
3. No ingestion flow should bypass canonical registration.
4. No downstream layer should redefine identity.
5. Runtime memory for operation lives both here and in the machine-local runbook.
## Relationship to Existing Blueprint Sections
This node operationalizes the following already-defined blueprint concepts:
- local runtime
- local API
- embeddings as local subprocess
- Neo4j as derived graph
- Local Admin Control Plane
- Spine milestone: local inbox -> registration -> extraction -> embedding -> retrieval
This file does not replace those sections. It records the concrete live node now implementing them.
## Operational Re-entry
If operator context is lost, begin with:
- `/srv/qios/docs/000_RUN_ME_FIRST.md`
- `bash /usr/local/bin/qiserver-status`
## Immediate Next Build
1. create local Python API structure
2. implement `/status`, `/queue`, `/ingest`, `/retry`
3. build inbox watcher against `/srv/qidata/inbox`
4. extract text into canonical pipeline flow
5. chunk deterministically
6. call Ollama embeddings endpoint
7. upsert to canonical retrieval layer
8. project derived graph records into Neo4j
## Change Log
### 2026-04-19
- Ubuntu server brought online
- Tailscale configured
- Docker installed and running
- Ollama installed and serving locally
- `llama3.2` pulled
- `embeddinggemma` pulled
- Open WebUI deployed in Docker
- Neo4j deployed in Docker
- Tailscale Serve configured for private Open WebUI access
- server-local operator runbook created
- status command created
## Active Runtime
- **qiserver** is the current active runtime.
## Path Doctrine
- `/srv/qios/repos`: For cloned Git repos and coding work.
- `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
- `/srv/qios/data`: For persistent app data.
## Service / Runtime Facts
- **NocoDB**: Runs locally at `127.0.0.1:8088`.
- **Open WebUI**: Runs locally at `127.0.0.1:3000`.
- **Private Server Launcher (gethomepage)**: Runs locally at `127.0.0.1:3001`. **Warning:** This is for local/tailnet use only and is separate from the public `access.qially.com` portal.
- **Portainer**: Runs locally at `127.0.0.1:9443` and is an admin service.
- **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
120_applications/
qinote/
qinote_salvage_extract.md
# QiNote Salvage Extract
## Retired Project Carry-Forward Map
### Purpose
This document preserves the durable ideas, goals, constraints, and module requirements from the retiring project that should be carried forward into **QiNote**.
The extraction rule is simple:
**Preserve principles, architecture, workflows, and long-term goals. Do not preserve obsolete scaffolding, duplicate trees, or project-specific clutter.**
---
# 1. QiNote Identity
## 1.1 Definition
**QiNote is the local-first note, knowledge, memory, and retrieval layer of the Qi ecosystem.**
It is not merely a note-taking app. It is the system that turns personal, household, legal, financial, technical, and operational information into durable, searchable, structured knowledge.
## 1.2 Platform Role
QiNote belongs inside the broader QiOne / QiAccess / QiNexus ecosystem:
- **QiAccess** = front door, interface, and launchpad
- **QiNexus** = human workspace and source library
- **QiArchive** = AI memory pipeline, ingestion, extraction, chunking, embeddings, graph, and backups
- **QiLabs** = code, execution, tooling, and experiments
- **QiNote** = local-first knowledge, note, memory, and retrieval module
- **QiGraph** = graph, relationship visualization, and intelligence layer
- **Paperless-NGX** = document intake, OCR, and document processing plant
- **Qdrant** = vector search and semantic retrieval
- **Neo4j** = relationship graph
- **Ollama / Open WebUI** = local AI interaction layer
## 1.3 Core Positioning
QiNote should become the long-term engine for:
- atomic notes
- structured objects
- source-backed recall
- personal knowledge management
- AI-readable memory
- timeline reconstruction
- document intelligence
- graph-based relationships
- local-first private retrieval
- publishable and private knowledge views
Short-term tools like Obsidian, Capacities, Wiki.js, or static sites can be used as bridges, but QiNote is the eventual owned system.
---
# 2. Non-Negotiable Doctrine
## 2.1 Source Files Remain Truth
The canonical truth must remain in durable source files, documents, or structured records.
Derived systems must never become the only copy of truth.
Derived systems include:
- vector indexes
- graph indexes
- generated summaries
- AI memory
- dashboards
- search APIs
- static published views
- Graphify outputs
- admin panels
All derived objects must point back to source.
## 2.2 Local-First, Cloud-Backed
QiNote should be private and local-first by default.
Preferred model:
- local SSD or server cache for active processing
- Google Drive / QiNexus as the cloud-backed source library
- private qiserver runtime for services
- Tailscale / Cloudflare only for controlled access
- no public exposure unless explicitly intended
## 2.3 Human-Readable Names + Stable IDs
Files and notes should have clean names humans can understand, but every important object must also have stable machine identity.
Preferred principles:
- human-readable display names
- stable canonical IDs underneath
- short visible suffixes where useful
- metadata-first indexing
- deterministic naming where possible
- IDs that survive file moves and renames
## 2.4 Metadata Before Automation
Do not automate chaos.
QiNote should prioritize clean metadata, source identity, ingestion state, and object classification before advanced AI automation.
The AI layer should enrich and retrieve. It should not invent structure where none exists.
## 2.5 One Home Per Concern
Each concern needs a clear owner.
Examples:
- Documents and source assets live in QiNexus / QiArchive paths.
- Notes and knowledge objects live in QiNote.
- OCR intake belongs to Paperless-NGX.
- AI indexing belongs to QiArchive / ingestion services.
- Relationship mapping belongs to Neo4j / QiGraph.
- Semantic retrieval belongs to Qdrant.
- Front-door navigation belongs to QiAccess.
Avoid duplicate folder trees, duplicate registries, and multiple competing “truth” locations.
## 2.6 Derived Systems Must Reference Source
Every chunk, embedding, graph node, summary, and AI answer must be traceable back to source.
Minimum lineage fields:
- `source_id`
- `source_path`
- `document_id`
- `chunk_id`
- `hash`
- `created_at`
- `ingestion_run_id`
- `extraction_method`
- `status`
## 2.7 Lightweight ADRs
Architectural decisions should be recorded as lightweight ADRs when they affect long-term structure.
Use ADRs for:
- storage doctrine
- ingestion doctrine
- naming standards
- ID strategy
- exposure and security rules
- module ownership
- canonical pipeline changes
Do not bury major decisions in random chat notes.
---
# 3. Core QiNote Goals
## 3.1 Capture Fast, Structure Later
QiNote must support low-friction capture from multiple inputs:
- quick notes
- tasks and reminders
- care observations
- legal and finance notes
- links
- voice notes
- screenshots
- PDFs
- scans
- documents
- project notes
- journal entries
Capture should go to a safe inbox first, then be processed.
## 3.2 Turn Notes Into Objects
QiNote should not be only page-based. It should understand knowledge objects.
Core object ontology:
1. Person
2. Project
3. Document
4. Note / Idea
5. Task
6. Event
7. Topic / Concept
8. Source
Future objects may include:
- Account
- Vendor
- Case
- Asset
- Location
- Timeline Item
- Decision
- Evidence Item
- Routine
- System Component
## 3.3 Make Recall Source-Backed
The goal is not generic chat. The goal is accurate recall.
QiNote should answer questions like:
- “What did I decide about this?”
- “Where is the source document?”
- “What changed since last time?”
- “What evidence supports this?”
- “What tasks came from this note?”
- “What people, projects, and documents are connected?”
- “What is the timeline?”
Every serious answer should be grounded in source references.
## 3.4 Support Timeline Reconstruction
QiNote should help reconstruct timelines from:
- notes
- documents
- emails
- calendar events
- logs
- screenshots
- receipts
- legal filings
- project updates
- journal entries
Timeline support is central, especially for legal, finance, care, and project work.
## 3.5 Enable Private AI Memory
QiNote should become the user-owned memory layer.
Not vague “AI remembers things.” Real memory means:
- source-backed notes
- structured objects
- canonical IDs
- embeddings
- graph relationships
- ingestion logs
- confidence states
- review workflows
- privacy controls
---
# 4. QiNote Architecture to Preserve
## 4.1 High-Level Architecture
Preferred spine:
Source files / notes / docs
→ detect
→ register canonical identity
→ normalize filename
→ extract text
→ enrich metadata
→ chunk
→ embed locally
→ store vectors
→ create or update graph nodes
→ expose searchable API
→ show in QiAccess / QiNote UI
## 4.2 Canonical Pipeline
Canonical ingestion flow:
1. Source
2. Detect
3. Resolve domain / namespace
4. Register in QiArchive
5. Assign canonical identity
6. Assign short visible code
7. Normalize filename
8. Extract / inspect
9. Enrich metadata
10. Chunk
11. Embed locally
12. Index in vector store
13. Route / review / act
## 4.3 State Model
Every item should have a visible processing state.
Recommended states:
- `detected`
- `registered`
- `normalized`
- `extracted`
- `enriched`
- `chunked`
- `embedded`
- `indexed`
- `review_pending`
- `routed`
- `finalized`
- `failed`
Failures must be:
- visible
- stateful
- retryable
- tied to canonical IDs
No silent failure. Silent failure is trash. Burn it.
## 4.4 Ingestion Ledger
Every ingestion run should be logged.
Minimum fields:
- `ingestion_run_id`
- `source_id`
- `source_path`
- `source_hash`
- `file_size`
- `detected_type`
- `extraction_method`
- `chunk_count`
- `embedding_model`
- `vector_collection`
- `graph_update_status`
- `started_at`
- `completed_at`
- `status`
- `error_message`
## 4.5 Stable IDs
Every document and chunk needs stable identity.
Minimum identity fields:
- `source_id`
- `document_id`
- `chunk_id`
- `canonical_path`
- `original_path`
- `hash`
- `version`
- `qicode` or short code, where applicable
## 4.6 Chunking Rules
Chunking should preserve traceability.
Each chunk should include:
- `chunk_id`
- `document_id`
- `source_id`
- `chunk_index`
- text
- heading or context, if available
- page number, if available
- byte or character offsets, if available
- source path
- `created_at`
- embedding status
Chunks should never float loose without source context.
---
# 5. Paperless-NGX Role
## 5.1 Paperless Is Intake, Not the Brain
Paperless-NGX should be used as the document engine for:
- scanning
- OCR
- dedupe support
- document metadata
- document storage
- searchable archive
Paperless should not become the full AI system.
## 5.2 Downstream AI Pipeline
Paperless should feed:
1. Canonical SQL registry
2. Text extraction
3. Chunks
4. Qdrant embeddings
5. Neo4j graph
6. QiNote / QiAccess views
## 5.3 Do Not Run Heavy AI Inside Paperless
Rule:
**Paperless does Paperless. The AI pipeline does AI pipeline.**
Do not overload the Paperless container with heavy AI, graph, or embedding responsibilities.
## 5.4 Test Before Bulk Import
Before mass importing documents:
- test with 10 documents
- confirm OCR quality
- confirm metadata rules
- confirm filename format
- confirm dedupe behavior
- confirm storage paths
- confirm export and recovery strategy
Do not feed the beast a mountain of chaos and then act shocked when it burps fire.
---
# 6. QiNexus Relationship
## 6.1 QiNexus Is the Source Library
QiNexus is the human-facing source library and workspace.
QiNote should read from and write back to QiNexus-compatible structures where appropriate.
## 6.2 Preferred Root Buckets
Canonical QiNexus root order:
0. inbox
1. workbench
2. timeline
3. life
4. people
5. business
6. finance
7. legal
8. tech
9. assets
10. data
11. reference
12. archive
13. system
Numbered variant:
- `00_inbox`
- `01_workbench`
- `02_timeline`
- `03_life`
- `04_people`
- `05_business`
- `06_finance`
- `07_legal`
- `08_tech`
- `09_assets`
- `10_data`
- `11_reference`
- `12_archive`
- `13_system`
## 6.3 QiNexus Is Not QiNote
QiNexus stores and organizes the source material.
QiNote interprets, links, recalls, and works with that material.
Do not collapse them into one vague folder blob.
---
# 7. QiAccess Relationship
## 7.1 QiAccess Is the Front Door
QiAccess should expose QiNote through clean modules and links.
QiAccess root doctrine:
- Home
- Start
- Capture
- Knowledge
- Memory
- Insights
- System
Do not add extra top-level sections casually.
## 7.2 QiNote Views in QiAccess
QiAccess can provide:
- capture form
- knowledge browser
- memory search
- graph viewer
- timeline view
- ingestion status page
- recent notes
- source lookup
- admin and system diagnostics
QiAccess should not become the source of truth.
---
# 8. Capture Model to Preserve
## 8.1 Capture Modes
Known useful capture modes:
- quick note
- task / reminder
- care observation
- legal / finance note
- link save
## 8.2 Capture Targets
Recommended targets:
- QiNexus inbox
- Paperless
- Knowledge
- System storage
- Timeline
- Finance
- Legal
- Tech
- Reference
## 8.3 Capture Doctrine
Capture should be fast and forgiving.
Processing should be structured and controlled.
Flow:
Capture → Inbox → Classify → Enrich → Route → Link → Index → Review
---
# 9. Naming, IDs, and File Doctrine
## 9.1 Naming Principle
Use short, readable names with stable machine identity underneath.
## 9.2 Filename Direction
Preserve this direction:
- readable normalized base name
- domain prefix, where useful
- short visible code, where useful
- full identity in metadata / registry
## 9.3 Short Code Direction
A prior useful convention:
- short visible file suffix = `Q` + 6 uppercase hex characters
Example pattern:
- `{domain_prefix}_{normalized_base}_{short_code}.{ext}`
## 9.4 Date Handling
Dates should be embedded where they add clarity, ordering, or retrieval value.
Acceptable date formats:
- `YYYY-MM-DD` for readable files
- `YYYYMMDD` or `YYMMDD` for compact codes
For standalone Markdown files, preferred format:
- `yyyy-mm-dd_{title_name}.md`
## 9.5 Folder Numbering
All important folder systems should be numbered so order is intentional, not alphabetical.
Use decimal-style or numeric prefixes where useful.
---
# 10. Markdown and Publishing Doctrine
## 10.1 Markdown-First
QiNote should remain Markdown-first where practical.
Benefits:
- readable without app lock-in
- Git-friendly
- AI-indexable
- portable
- easy to publish
- easy to back up
- compatible with Obsidian, Wiki.js, and static site bridges
## 10.2 Publish Rules
Default privacy is private.
Only publish files with explicit approval:
`publish: true`
Never publish:
- secrets
- temp files
- unapproved drafts
- private notes
- raw evidence unless intentionally shared
- system credentials
- ingestion logs containing sensitive paths or keys
## 10.3 Static Export
QiNote should support future static export and publishing for approved content.
Possible consumers:
- QiAccess static site
- Cloudflare Pages
- public knowledge pages
- family / household docs
- client-safe documentation
---
# 11. Graph and RAG Doctrine
## 11.1 Graphify Role
Graphify or similar tools are useful as mapping and visualization layers.
They are not sources of truth.
Use them to generate:
- `graph.html`
- `graph.json`
- `GRAPH_REPORT.md`
- dependency maps
- file relationship views
Preserve Markdown, files, and registry records as truth.
## 11.2 Qdrant Role
Qdrant stores semantic embeddings for retrieval.
It should answer:
- similar notes
- related documents
- semantic search
- memory recall
- context assembly
## 11.3 Neo4j Role
Neo4j stores relationships.
It should answer:
- who is connected to what
- which projects touch which files
- which decisions came from which events
- legal, finance, and care timeline relationships
- system dependency graphs
## 11.4 RAG Rule
RAG must be source-backed.
No answer should pretend confidence without retrievable source context.
Every serious AI response should support:
- source references
- confidence / uncertainty
- date awareness
- object links
- chunk lineage
---
# 12. Structured Data Doctrine
## 12.1 SQL Registry
A canonical SQL registry should track confirmed structured data.
Use SQL / Postgres / NocoDB for things like:
- document registry
- ingestion ledger
- accounts
- vendors
- finance data
- task records
- event records
- source metadata
- object relationships where graph storage is not required
## 12.2 Do Not Put Everything in SQL
Not every Markdown file needs to be converted into database rows.
Rule:
- Source content can stay as files.
- Confirmed metadata goes into the registry.
- Relationships go into the graph.
- Embeddings go into the vector store.
- The UI reads from all layers.
---
# 13. Security and Exposure Rules
## 13.1 Private by Default
QiNote should assume private data.
Admin tools should be local or private unless explicitly exposed.
## 13.2 Service Exposure
Preferred exposure model:
- localhost-bound services
- Tailscale for personal device access
- Cloudflare only for approved public or static surfaces
- no broad public admin dashboards
- secrets stored in `.env`
- no credentials committed to repos
## 13.3 Ollama Warning
Ollama should generally be localhost-only unless intentionally opened through LAN or Tailscale with firewall controls.
Preferred:
- `OLLAMA_HOST=127.0.0.1:11434`
Avoid casual `0.0.0.0` exposure.
---
# 14. UI / UX Goals
## 14.1 QiNote Should Feel Like a Calm Control Room
QiNote should not feel like a cluttered admin panel.
Core UI needs:
- quick capture
- search
- source lookup
- recent activity
- timeline
- graph view
- object view
- ingestion status
- review queue
- publish / private controls
## 14.2 Low Cognitive Load
The interface should support ADHD-friendly workflows:
- fast capture
- minimal required fields
- progressive enrichment
- clear next action
- visible status
- no mystery queues
- no hidden failure
- filters instead of folder digging
## 14.3 Review Queue
QiNote needs a human review layer.
The review queue should show:
- unclassified captures
- failed ingestions
- low-confidence extracted metadata
- duplicate candidates
- source conflicts
- publish candidates
- orphan chunks
- graph relationship suggestions
---
# 15. QiNote Module Requirements
## 15.1 MVP Requirements
QiNote MVP should include:
1. Quick capture inbox
2. Markdown-backed notes
3. Basic object registry
4. Source / document registry
5. Local search
6. Paperless document link support
7. Ingestion ledger
8. Chunking pipeline
9. Qdrant embedding search
10. Neo4j relationship sync
11. Admin status UI
12. Review queue
13. Exportable Markdown
14. Source-backed AI answer endpoint
## 15.2 Later Requirements
Later versions can add:
- voice capture
- mobile PWA
- timeline builder
- graph explorer
- automated summaries
- calendar and email ingestion
- local LLM chat interface
- publishable knowledge pages
- family and care dashboards
- legal and evidence bundles
- finance / source reconciliation
- personal memory assistant
---
# 16. Suggested QiNote Folder / Module Shape
This is a proposed carry-forward shape, not a rigid final tree.
## 16.1 Code / App Side
- `apps/qinote/`
- frontend UI
- capture interface
- note browser
- search views
- review queue
- graph / timeline views
- `services/ai_ingestion/`
- source detection
- text extraction
- chunking
- embeddings
- Qdrant sync
- Neo4j sync
- ingestion ledger
- `services/qinote_api/`
- object API
- notes API
- search API
- source lookup API
- AI answer endpoint
- `docs/qinote/`
- doctrine
- architecture
- object model
- ingestion contract
- naming contract
- ADRs
- runbooks
## 16.2 Knowledge Side
- `00_inbox/`
- `01_workbench/`
- `02_timeline/`
- `03_life/`
- `04_people/`
- `05_business/`
- `06_finance/`
- `07_legal/`
- `08_tech/`
- `09_assets/`
- `10_data/`
- `11_reference/`
- `12_archive/`
- `13_system/`
---
# 17. What to Archive From the Retired Project
Archive but do not actively carry forward:
- duplicate folder trees
- old business blueprint scaffolding
- vague `nexus_core` terminology
- obsolete route structures
- experimental naming that conflicts with QiNexus / QiArchive / QiNote doctrine
- anything that makes QiAccess the source of truth
- any pipeline that skips canonical IDs
- any AI memory concept without source references
- any public publishing flow without `publish: true`
Recommended archive destination:
- `docs/legacy/Legacy_QiOS_Business_Blueprint_Extracts.md`
---
# 18. What to Preserve as Active QiNote Doctrine
Preserve these as active doctrine:
1. QiNote is the local-first knowledge and memory layer.
2. Source files remain truth.
3. Derived indexes must point to source.
4. QiArchive owns the ingestion and memory pipeline.
5. QiNexus is the human source workspace.
6. QiAccess is the front door.
7. Paperless handles OCR and document intake.
8. Qdrant handles semantic retrieval.
9. Neo4j handles relationships.
10. Metadata comes before automation.
11. Stable IDs are mandatory.
12. Every ingestion run is logged.
13. Every chunk is traceable.
14. Failures must be visible and retryable.
15. Markdown remains the portable base layer.
16. Publishing is private by default and explicit only.
17. Folder order should be intentional and numbered.
18. Object-based notes matter more than page clutter.
19. Timeline reconstruction is a core use case.
20. AI recall must be grounded, not vibes in a trench coat.
---
# 19. Recommended Next Build Order
## Phase 1 — Freeze Doctrine
Create or update:
- `docs/qinote/00_readme.md`
- `docs/qinote/10_doctrine.md`
- `docs/qinote/20_architecture.md`
- `docs/qinote/30_object_model.md`
- `docs/qinote/40_ingestion_pipeline.md`
- `docs/qinote/50_security_exposure.md`
- `docs/qinote/60_roadmap.md`
## Phase 2 — Build the Ingestion Spine
Build:
- source registry
- ingestion ledger
- text extractor
- chunker
- embedding worker
- Qdrant writer
- Neo4j writer
- retryable failure states
## Phase 3 — Build the QiNote UI
Build:
- quick capture
- inbox
- note list
- document / source view
- search
- review queue
- ingestion status
## Phase 4 — Add AI Recall
Build:
- source-backed ask endpoint
- context assembler
- citation / source viewer
- confidence labels
- memory search
## Phase 5 — Add Graph + Timeline
Build:
- relationship viewer
- timeline builder
- object graph
- project / person / source maps
---
# 20. Codex Transfer Prompt
Use this when telling Codex to implement the carry-forward QiNote module:
> We are retiring an older project and preserving only the durable QiNote architecture. Build QiNote as the local-first knowledge, notes, memory, and retrieval module of the Qi ecosystem. Source files remain truth. Derived systems must point back to source. QiNexus is the human source workspace, QiArchive owns the ingestion and memory pipeline, QiAccess is the front door, Paperless-NGX handles document OCR and intake, Qdrant handles vector search, and Neo4j handles relationships. Build a simple, readable MVP with a source registry, ingestion ledger, stable IDs, chunking, local embeddings, Qdrant indexing, Neo4j graph sync, review queue, Markdown-backed notes, quick capture, and source-backed AI answer endpoint. Keep admin and private services local or Tailscale-only. Use `.env` for secrets. Prioritize a working pipeline over overengineering. Every document and chunk must have `source_id`, `document_id`, `chunk_id`, `source_path`, `hash`, `ingestion_run_id`, and `status`. Failures must be visible, stateful, retryable, and tied to canonical IDs.
---
# 21. Final North Star
QiNote should become the system where captured reality becomes structured memory.
Not another notes app.
A private, local-first, source-backed knowledge engine that can answer:
- what happened
- what matters
- where the proof is
- what connects
- what changed
- what needs action
- what should be remembered
_index.md
# 120 Applications
<sub>Top-level apps and project blueprints for the QiAccess personal system</sub>
This section is the application portfolio layer for QiAccess.
Use it to track:
- the QiAccess core surfaces that act as the front door
- the apps already in use or under active development
- the next application blueprints that still need scope, schema, and workflow definition
## Start Here
1. [Applications Roadmap](roadmap.md)
2. [QiAccess Start Portal](portal.md)
3. [Firefly](firefly.md)
4. [CareLite](carelite.md)
## Existing or Related Documents
- [Admin](admin.md): retained legacy admin surface notes
- [QiLedger Blueprint](../40_productivity/qiledger.md): earlier finance-system architecture draft that can feed Firefly planning
## Section Rule
Every new app in the personal system should get:
1. a roadmap entry
2. a dedicated application page
3. a clear relationship back to QiAccess
admin.md
---
uid:
5d79cdf1-075f-4fb9-8261-bb9aa725e047 ...
...
---
# Admin
> Quarantine notice: this page still reflects the older tenant and client-platform admin model. It is retained for salvage, not as active QiAccess Start doctrine. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
The Admin surface is the internal operational dashboard for system operators and developers.
## Admin vs Portal
| Admin | Portal |
|---|---|
| Operator / developer only | Client-facing |
| All tenants visible | Single tenant context |
| Low-level system controls | Business workflow |
| Pipeline monitoring | Domain data |
## Admin Capabilities
| Capability | Source |
|---|---|
| Tenant management | `qione.tenants` |
| User and role management | `qione.tenant_members`, `qione.member_roles` |
| Module assignment | `qione.tenant_modules` |
| Job queue monitoring | `qisys.jobs` |
| System events log | `qisys.system_events` |
| Worker status | `qisys.worker_status` |
| Archive inspection | `qiarchive.archive_files` |
| Pipeline failure review | `qiarchive.ingest_jobs` |
| Device enrollment | `qisys.devices` |
| Device registry | `qisys.devices`, `qisys.device_capabilities` |
| Node health / heartbeat monitoring | `qisys.device_heartbeats` |
| Assigned watch folder management | `qisys.device_watch_assignments` |
| Drop zone policy | `qisys.device_watch_assignments` |
| Runtime version/config drift | `qisys.device_agents` |
| Job dispatch / retry by node | `qisys.device_jobs` |
| Audit trail for fleet actions | `qisys.device_events` |
## NocoDB as Admin Surface
NocoDB provides a human-friendly admin interface over Supabase Postgres without requiring custom admin app code. It is appropriate for internal operational use but must:
* Never be exposed publicly
* Always use service role access carefully
* Never be used to bypass RLS for tenant data
## Admin Law
* Admin surfaces must authenticate with elevated roles — never anon keys
* Devices authenticate with enrollment/agent credentials
* Admin surfaces must not expose tenant data across tenant boundaries
* All node-orchestration actions must write audit events in `qisys.device_events` or `qisys.system_events`
* Admin must never bypass the explicit `QiArchive` registration contract
carelite.md
# CareLite
CareLite is the planned lightweight care tracker for Mom inside the QiAccess personal system.
It is meant to stay simple, fast, and usable under caregiver pressure.
## Purpose
CareLite should provide a stripped-down care workflow for everyday use:
- quick status checks
- simple medication tracking
- short notes
- basic observations
- lightweight reminders or routines
## Relationship To QiAccess
QiAccess should act as the launch and coordination layer.
CareLite should open as its own focused app when the task is direct day-to-day care tracking rather than system navigation or documentation.
## Product Direction
CareLite should be lighter than a full care-management platform.
The target is:
- fewer screens
- faster entry
- less setup burden
- cleaner daily use on phone
It should not start as a heavy clinical charting system.
## MVP Direction
The first version should focus on:
1. patient summary
2. medication checklist or confirmations
3. quick care notes
4. symptoms or observations
5. simple day view
6. exportable history if needed
## Starting Workflows
### Daily use
1. Open CareLite from QiAccess.
2. Check today's care items.
3. Confirm meds or routine tasks.
4. Add a short note or observation.
5. Review recent history if something changes.
## Relationship To MomsCare
CareLite should remain the simple version.
If a fuller caregiver platform already exists elsewhere, keep CareLite focused on the small everyday workflow instead of cloning a bigger app.
## Initial Build Rule
Optimize for low-friction caregiver use.
If a feature makes the daily workflow slower, it probably does not belong in the first version.
firefly.md
# Firefly
Firefly is the planned finance-management application for the QiAccess personal system.
Its job is to make money activity visible, reviewable, and reportable without turning daily life into accounting overhead.
## Purpose
Firefly should become the finance command layer for:
- account tracking
- transaction review
- category and context cleanup
- household and caregiver spending visibility
- exportable reporting
## Relationship To QiAccess
QiAccess should remain the front door.
Firefly should be a dedicated linked app that opens from QiAccess when the task is:
- reviewing spending
- tracking money movement
- preparing finance reports
- clarifying household, legal, business, or caregiver-related expenses
## Working Scope
Firefly is intended to cover:
- personal finance review
- household expense tracking
- caregiver-related costs
- business and legal expense visibility where needed
- reporting and export support
It should not try to become a bloated general-purpose accounting suite in the first version.
## MVP Direction
The first version should focus on:
1. accounts
2. transactions
3. import or manual entry
4. review inbox
5. categorization
6. reporting
7. exports
## Starting Workflows
### Daily use
1. Open Firefly from QiAccess.
2. Review new or uncategorized transactions.
3. Assign category, context, or person where needed.
4. Check current balances, spending, or recent activity.
5. Export or report when needed.
### Key reporting uses
- household spending
- caregiver support costs
- business or legal-related expenses
- uncategorized money that still needs cleanup
## Existing Reference
The earlier [QiLedger Blueprint](../40_productivity/qiledger.md) already contains a much deeper finance architecture draft.
Treat that page as source material for Firefly rather than the final product name.
## Initial Build Rule
Build Firefly as a dedicated app with a narrow finance mission.
Do not overload QiAccess Start with ledger screens that belong inside the finance app itself.
portal.md
# QiAccess Start Portal
QiAccess Start is Cody's cognitive front door.
It is not just a dashboard, launcher, or control panel.
It is the active portal doctrine for this master blueprint.
## Two Launch Surfaces
It is critical to distinguish between the two distinct launchers used in this architecture. They are not the same, and updating one does not update the other:
1. **`access.qially.com` (The Public Portal)**
- **Role:** External/public QiAccess landing page and primary user-facing front door when away from home/server.
- **Tech:** Static/React app deployed through Cloudflare.
- **Config:** Service links must be maintained directly in the app source data files. It does *not* read from the server's `services.yaml`.
2. **`qiserver-1.cerberus-sirius.ts.net` (The Private Server Utility)**
- **Role:** Private Tailscale/server launcher, useful strictly for local/tailnet access.
- **Tech:** `gethomepage` local server utility.
- **Config:** Configuration lives at `/srv/qios/stacks/_qiaccess_start/config/services.yaml`. Editing this file updates the local utility, *not* the public landing page.
## Portal Contract
The portal has seven roots only:
1. `Home`
2. `Start`
3. `Capture`
4. `Knowledge`
5. `Memory`
6. `Insights`
7. `System`
## Root Intent
- `Home`: orient the day and show the next useful actions
- `Start`: open tools, services, projects, and working surfaces
- `Capture`: get notes, links, reminders, files, and observations out fast
- `Knowledge`: point to docs, runbooks, manuals, and references
- `Memory`: preserve continuity, decisions, and context once ingestion exists
- `Insights`: hold summaries, patterns, reports, and future analysis
- `System`: hold nested access, server, storage, governance, and diagnostics surfaces
## Routes
Use this route model:
- `/` = Home
- `/start` = Start
- `/capture` = Capture
- `/quick` = mobile quick capture
- `/knowledge` = Knowledge
- `/memory` = Memory
- `/insights` = Insights
- `/system` = System
System subroutes:
- `/system/access`
- `/system/server`
- `/system/storage`
- `/system/integrations`
- `/system/settings`
- `/system/blueprint`
- `/system/roadmap`
- `/system/security`
- `/system/diagnostics`
## Current Phase
The current phase is stabilization and prototype flow validation.
The shortest path to daily usefulness is:
1. Start opens real tools
2. Capture reduces friction
3. Knowledge points to real docs
4. System keeps infrastructure honest and visible
5. Storage maps QiNexus targets
6. Memory and Insights stay clearly marked until they are real
## Design Rule
The portal should feel like a deliberate entry point into a real operating environment.
- modern
- fast
- low-friction
- visually distinct by root
- no dead controls
- no fake intelligence claims
## Legacy Disposition
The older QiPortals and multi-tenant client portal material is not active doctrine for this page.
Useful governance fragments may be retained, but legacy platform assumptions belong in:
- `08_appendices/20_legacy/legacy_salvage.md`
- `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`
## Daily-use priority
The shortest path to daily use is:
1. Start opens tools
2. Capture reduces friction
3. Knowledge points to real docs
4. System keeps private infrastructure visible
5. Storage shows QiNexus targets
6. Memory and Insights remain honest placeholders
7. Paperless ingestion becomes the first proven intake pipeline
## Current Build Rule
Prototype inside the existing repo and preserve what already works.
- no repo split
- no auth rebuild
- no deployment churn before flow is validated
- no fake intelligence claims
- static or honest placeholder content is acceptable during stabilization
roadmap.md
# Applications Roadmap
This page is the working roadmap for QiAccess and the related apps in the personal system.
It is intentionally portfolio-first.
The point is to make it obvious:
- what exists now
- what is active
- what is next
- how each app relates back to QiAccess
## Portfolio Map
| Project | Status | Primary role | Relationship to QiAccess | Notes |
|---|---|---|---|---|
| [QiAccess Start Portal](portal.md) | Active foundation | Front door, launcher, knowledge access, system visibility | Core entry point | This is the main shell that should orient and route work across the system. |
| [Firefly](firefly.md) | Planned next app | Personal finance management and money review | Linked app launched from QiAccess | Firefly is the finance command layer for accounts, transactions, review, and reporting. |
| [CareLite](carelite.md) | Planned next app | Simple care tracker for Mom | Linked app launched from QiAccess | CareLite is the lightweight caregiver workflow for daily status, meds, notes, and check-ins. |
| [QiLedger Blueprint](../40_productivity/qiledger.md) | Prior blueprint | Finance architecture source material | Supporting reference | Keep as a finance draft that can feed Firefly instead of treating it as the final product name. |
## Current Sequencing
### 1. Foundation now
- Keep QiAccess Start as the front door and organizing layer.
- Use it to route into real apps instead of duplicating full workflows in the portal shell.
### 2. Next build targets
- Firefly: finance management
- CareLite: simple care tracking for Mom
### 3. Expansion after that
- Add more application pages here as new personal-system apps become real projects.
- Keep one app page per product instead of hiding project plans in scattered notes.
## Roadmap Rules
1. QiAccess remains the portal. It should launch and explain apps, not absorb every workflow.
2. Each app should have one clear purpose, one primary user story, and one initial MVP.
3. If an older blueprint exists under another name, link it instead of duplicating the same planning material.
4. When a project moves from idea to implementation, update both this roadmap page and that app's dedicated page.
## Immediate Documentation Targets
- Firefly needs a dedicated finance blueprint with scope, workflows, and MVP boundaries.
- CareLite needs a lightweight caregiver blueprint that stays simpler than a full clinical care platform.
- QiAccess Start should continue documenting how these apps are reached from the front door.
130_GINA/
_index.md
# GINA Desktop — Developer Documentation (MVP v1)
## Overview
GINA Desktop is a lightweight standalone desktop assistant for the QiOS ecosystem.
Primary goals:
* Always-on-top floating assistant
* Voice or text input
* Coherent retrieval from Supabase
* Read/write/update structured records
* ADHD-friendly low-friction UX
* Fast local-feeling interaction
* Minimal dependencies on full QiOS infrastructure
This is intentionally a **thin client MVP**, not the full orchestration stack.
---
# 1. System Goals
## MVP Requirements
GINA Desktop must:
* Float above other windows
* Accept typed or spoken input
* Retrieve relevant context from Supabase
* Generate coherent responses using LLM context injection
* Save/update notes and memory objects
* Operate independently of the full QiOS backend
---
# 2. Architecture
## MVP Architecture
```text
┌────────────────────┐
│ GINA Desktop │
│ (Tauri + React) │
└─────────┬──────────┘
│
├── Supabase-js
│ ├── semantic_profile
│ ├── gina_journal
│ └── future tables
│
└── OpenAI API
└── Chat Completion
3. Technology Stack
| Layer | Technology |
|---|---|
| Desktop Shell | Tauri |
| Frontend | React + TypeScript |
| Build Tool | Vite |
| Database | Supabase |
| AI | OpenAI |
| STT | Web Speech API (initial) |
| Styling | TailwindCSS |
| State | React state initially |
| Packaging | Tauri Build |
4. Repository Structure
Recommended Location
QiLabs/
└── apps/
└── gina_desktop/
Folder Structure
gina_desktop/
├── package.json
├── vite.config.ts
├── tauri.conf.json
├── .env.local
├── src/
│ ├── main.tsx
│ ├── App.tsx
│ ├── styles/
│ ├── lib/
│ │ ├── supabaseClient.ts
│ │ ├── openaiClient.ts
│ │ ├── askGina.ts
│ │ ├── speech.ts
│ │ └── ginaPrompt.ts
│ ├── components/
│ │ ├── FloatingShell.tsx
│ │ ├── MicButton.tsx
│ │ ├── MessageList.tsx
│ │ ├── InputBar.tsx
│ │ └── SettingsPanel.tsx
│ └── types/
│ └── index.ts
└── src-tauri/
5. Environment Variables
.env.local
VITE_SUPABASE_URL=
VITE_SUPABASE_SERVICE_KEY=
VITE_OPENAI_API_KEY=
6. Supabase Requirements
Required Tables
semantic_profile
Used for contextual retrieval.
Minimum recommended columns:
id uuid primary key
title text
chunk_index integer
content text
summary text
tags text[]
created_at timestamptz
updated_at timestamptz
gina_journal
Used for assistant-created notes.
create table if not exists gina_journal (
id uuid primary key default gen_random_uuid(),
created_at timestamptz default now(),
updated_at timestamptz default now(),
author text,
title text,
body text,
tags text[]
);
7. Core Retrieval Pipeline
Flow
User Input
↓
Speech-to-Text
↓
Query Supabase
↓
Inject Context into Prompt
↓
OpenAI Completion
↓
Display Response
↓
Optional Save to Supabase
8. Retrieval Logic
Initial Retrieval Strategy
MVP uses text similarity:
.ilike('content', `%${query}%`)
This is temporary.
Future Upgrade
Replace with:
- pgvector
- embeddings
- semantic ranking
- graph retrieval
- hybrid search
9. OpenAI Prompting Strategy
Structure
SYSTEM:
GINA personality + operational rules
CONTEXT:
Relevant semantic_profile rows
USER:
Actual user message
Context Injection Rules
- Limit to ~10 chunks
- Truncate oversized context
- Preserve source attribution
- Prefer recent records
- Avoid duplicate chunks
10. CRUD Permissions
Allowed Operations (MVP)
| Operation | Allowed |
|---|---|
| Read semantic_profile | YES |
| Create journal notes | YES |
| Update journal notes | YES |
| Delete journal notes | YES |
| Arbitrary SQL | NO |
| Schema modification | NO |
11. Security Rules
IMPORTANT
This is currently a trusted local desktop application.
The MVP may temporarily use:
VITE_SUPABASE_SERVICE_KEY
This is acceptable ONLY if:
- app is local-only
- not publicly distributed
- not browser-hosted
Future Security Upgrade
Later versions should:
- proxy through local_core
- use signed auth
- use RLS
- use scoped service accounts
- remove browser-visible keys
12. UI/UX Principles
UX Priorities
MUST HAVE
- Extremely low friction
- Minimal clicks
- Floating utility feel
- Fast perceived response
- Keyboard-first
- ADHD-friendly
- Persistent availability
Avoid
- Modal overload
- Settings clutter
- Complex navigation
- Multi-window workflows
- Excessive animations
13. Window Behavior
Required
| Behavior | Status |
|---|---|
| Always-on-top | REQUIRED |
| Frameless | REQUIRED |
| Resizable | YES |
| Transparent | OPTIONAL |
| Global hotkey | FUTURE |
| Tray icon | FUTURE |
14. Speech-to-Text
MVP Choice
Use browser-native speech recognition:
window.SpeechRecognition
window.webkitSpeechRecognition
Advantages:
- fast
- free
- easy
Limitations:
- browser dependent
- inconsistent quality
- internet-dependent
Future Upgrade Path
Possible replacements:
| Engine | Notes |
|---|---|
| Whisper.cpp | Strong local option |
| faster-whisper | Excellent |
| Deepgram | Cloud |
| OpenAI realtime | Future possibility |
15. Future Architecture Evolution
Phase 1 — Current MVP
Desktop → Supabase/OpenAI directly
Phase 2 — Local Core Gateway
Desktop → local_core → Supabase/OpenAI
Benefits:
- central auth
- unified orchestration
- tool routing
- memory control
- logging
- caching
Phase 3 — Full QiOS Agent
Desktop
↓
Orchestrator
↓
Workers
↓
RAG + Graph + Memory
16. Logging
MVP Logging
Create:
logs/
Store:
- prompt logs
- errors
- retrieval failures
- response latency
- Supabase errors
17. Recommended Initial Features
Build Order
Phase 1
- Floating window
- Text input
- Supabase retrieval
- OpenAI responses
Phase 2
- Speech input
- Save notes
- Journal browsing
Phase 3
- Semantic retrieval
- Embeddings
- Graph memory
Phase 4
- Tool calling
- Scheduling
- Calendar
- Automation
18. Recommended Commands
Development
npm install
npm run tauri dev
Build
npm run tauri build
19. Known MVP Constraints
Expected Limitations
| Limitation | Reason |
|---|---|
| Weak retrieval | No embeddings yet |
| Context overflow | Simple chunk injection |
| No memory hierarchy | MVP only |
| No agent tools | Deferred |
| No auth isolation | Trusted local app |
| STT quality inconsistent | Browser API |
20. Success Criteria
GINA Desktop MVP succeeds if:
- Cody can click and ask questions quickly
- GINA can retrieve coherent Supabase context
- GINA can save/update notes reliably
- Interaction feels immediate and low-friction
- Daily usage replaces scattered note-taking
Not success:
- Full AGI orchestration
- Perfect memory graph
- Multi-agent ecosystem
- Enterprise security
- Autonomous workflows
Those come later.
21. Strategic Note
This app is not the final architecture.
This is a stabilization layer.
The real purpose is:
give immediate operational relief and restore cognitive continuity.
That matters more right now than perfect architecture.
#### 20_ai_compute/
##### _index.md
##### aider.md
```text
# Aider
## Purpose
Local AI coding assistant.
## Current Status
Active
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/tools/aider`
- Data: `N/A`
## Access Class
Private
## Notes / TODOs
- Runs in cloned repos (/srv/qios/repos), never inside live stacks.
- qwen2.5-coder:7b is too heavy for CPU-only use.
neo4j.md
# Neo4j
## Purpose
Graph database for memory and relationships.
## Current Status
Active
## URLs
- Local: `127.0.0.1:7474 / 7687`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/stacks/neo4j`
- Data: `/srv/qios/data/neo4j`
## Access Class
Private
## Notes / TODOs
- Keep protected.
ollama.md
# Ollama
## Purpose
Local AI model runner.
## Current Status
Active
## URLs
- Local: `127.0.0.1:11434`
- Tailnet: `N/A`
## Paths
- Stack: `N/A (Host Install)`
- Data: `N/A (Host Install)`
## Access Class
Private
## Notes / TODOs
- Locked to 127.0.0.1:11434.
- Preferred model: qwen2.5-coder:3b for interactive Aider.
open_webui.md
# Open WebUI
## Purpose
Cognitive surfaces and AI chat interface.
## Current Status
Active
## URLs
- Local: `127.0.0.1:3000`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net:9446`
## Paths
- Stack: `/srv/qios/stacks/open-webui`
- Data: `/srv/qios/data/open-webui`
## Access Class
Tailnet
## Notes / TODOs
- Ensure access is restricted.
qdrant.md
# Qdrant
## Purpose
Vector database for embeddings.
## Current Status
Active
## URLs
- Local: `127.0.0.1:6333`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net:9452`
## Paths
- Stack: `/srv/qios/stacks/qdrant`
- Data: `/srv/qios/data/qdrant`
## Access Class
Private / Tailnet
## Notes / TODOs
- Replacing Supabase/pgvector for immediate local embedding pipelines.
30_capture/
paperless/
_index.md
# Paperless-ngx
## Purpose
Document intake, OCR, and metadata organization.
## Current Status
Active
## URLs
- Local: `127.0.0.1:8010`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/stacks/paperless`
- Data: `/srv/qios/data/paperless`
## Access Class
Private
## Notes / TODOs
- Metadata must be configured before bulk import.`n- Test with 10 documents max before large ingestion.
_index.md
nocodb.md
# NocoDB
## Purpose
Admin surface database management.
## Current Status
Active
## URLs
- Local: `127.0.0.1:8088`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net:8443`
## Paths
- Stack: `/srv/qios/stacks/nocodb`
- Data: `/srv/qios/data/nocodb`
## Access Class
Tailnet
## Notes / TODOs
- Admin service, keep protected.
obsidian_qidocs.md
# Obsidian & QiDocs Configuration
This document outlines the doctrine and configuration rules for using Obsidian as the primary local Markdown editing and navigation tool for QiDocs.
## Vault Root
* **The Vault Root**: The root of the Obsidian vault is the `/docs` directory.
* **No Nested Vaults**: Do not use or initialize nested `.obsidian` folders under `/docs/10_blueprint` or any other subdirectories. The vault boundary exists exclusively at the `/docs` level.
## Configuration Folder
* **Intended Config**: The intended Obsidian configuration folder is `.obsidian-qidocs`.
* **Version Control**: Stable configuration (such as core settings, themes, and stable plugin lists) may be versioned in Git.
* **Gitignored Churn**: Highly volatile files that create commit churn—such as `workspace.json`, `workspace-mobile.json`, cache directories, and plugin state data—must be strictly `.gitignore`d.
## Role in the System
* **Obsidian**: Used strictly for local editing, writing, and Markdown file navigation.
* **Wiki.js**: Acts as the readable, accessible knowledge base for the system.
* **Source of Truth**: Raw Markdown and YAML files remain the definitive source of truth at all times.
* **MarkMind / Visuals**: MarkMind (and similar tools) provide a generated visual layer for convenience. They are *not* the source of truth.
wikijs.md
# Wiki.js
## Purpose
Readable knowledge base.
## Current Status
Active
## URLs
- Local: `127.0.0.1:3002`
- Tailnet: `N/A`
## Paths
- Stack: `/srv/qios/stacks/wikijs`
- Data: `/srv/qios/data/wikijs`
## Access Class
Private / Tailnet
## Notes / TODOs
- Future sync from docs to Wiki.js may happen by script/workflow.
40_productivity/
_index.md
activitywatch.md
# ActivityWatch
## Purpose
Automated time and activity tracking.
## Current Status
Main-PC Install
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `N/A`
- Data: `N/A`
## Access Class
Private
## Notes / TODOs
- Main-PC install with later server integration.
n8n.md
# n8n
## Purpose
Workflow automation.
## Current Status
Active
## URLs
- Local: `127.0.0.1:5678 (Internal)`
- Tailnet: `https://qiserver-1.cerberus-sirius.ts.net:9450`
## Paths
- Stack: `/srv/qios/stacks/n8n`
- Data: `/srv/qios/data/n8n`
## Access Class
Tailnet
## Notes / TODOs
- Needs to be fully configured.
qiledger.md
# QiLedger Blueprint
## 1. Project Name
**QiLedger**
Working title: **FinanceOS Ledger**
A custom web-based money activity system for tracking, reviewing, categorizing, and reporting all financial activity across personal, household, business, legal, and caregiver-related money flows.
---
# 2. Core Goal
Build a centralized, web-based general ledger that captures **all money activity** across accounts and contexts, then turns that activity into clear, filterable, reportable records.
The system should answer:
> Who was money for?
> What was it spent on?
> When did it happen?
> Where did it come from?
> Which account touched it?
> Was it personal, household, business, legal, caregiver, or tax-related?
> Has it been reviewed?
> Can it support a report, reimbursement, tax record, legal record, or budget decision?
---
# 3. Problem Statement
Existing finance tools do not fit the actual use case.
## Current tool issues
### Money Manager Ex
Good local ledger, but:
* not web-based
* difficult to access across devices
* limited automation
* not ideal for household/business/legal blended reporting
* not built around modern API workflows
### Google Sheets / Excel
Flexible, but:
* messy over time
* weak relational structure
* poor audit trail
* hard to normalize vendors/categories/accounts
* not ideal for long-term automation
### QuickBooks
Rejected.
Reasons:
* too rigid
* too expensive
* too accountant-centric
* overbuilt for this blended personal/household/business/legal use case
* painful UI
* bad fit for fast personal operations
### Zoho Books / Quicken / Other Apps
Problems:
* freemium limits
* subscription traps
* too consumer-focused or too enterprise-focused
* weak custom reporting
* not designed around caregiver/household/legal/business overlap
---
# 4. Strategic Diagnosis
This project sits between categories:
## Not just personal budgeting
Because the system must handle:
* household contributions
* caregiver-related spending
* shared bills
* reimbursable items
* account transfers
* legal case expenses
* business expenses
* tax support
* recurring bills
* receipts and statements
* multiple people/entities
## Not full business accounting
Because the goal is not traditional bookkeeping first.
The goal is:
> Money intelligence first, formal accounting second.
## Not enterprise finance ops
Because it must remain lightweight, fast, and usable by one person under real-life pressure.
---
# 5. Product Philosophy
QiLedger is not trying to replace full accounting software immediately.
It is a **ledger intelligence layer**.
The system should prioritize:
1. Fast capture
2. Clean review
3. Unified transaction history
4. Easy categorization
5. Relationship tracking
6. Reporting by context
7. Audit support
8. Exportability
9. Automation readiness
The system should avoid:
* overbuilding
* full double-entry accounting in v1
* complex invoicing
* payroll
* tax filing
* bloated dashboards
* enterprise permissions
* unnecessary accounting jargon
* trying to become QuickBooks
---
# 6. Core Doctrine
## Doctrine 1: Postgres is the source of truth
The database is the real system.
The UI is replaceable.
No app builder, no-code platform, spreadsheet, or dashboard tool should become the foundation.
## Doctrine 2: Every money event becomes a normalized record
Raw bank data can be messy.
The system must normalize it into consistent transaction records.
## Doctrine 3: Imported data and reviewed data are separate
Never destroy the original import.
Use a staging/inbox model:
**Raw import → reviewed transaction → unified ledger**
## Doctrine 4: Reports are views, not separate spreadsheets
Once the ledger is clean, reports should come from filters and views.
Do not manually rebuild reports in separate files unless exporting for outside use.
## Doctrine 5: Build for real life, not perfect accounting theory
The first priority is operational clarity.
Formal accounting can be layered in later.
---
# 7. System Overview
## High-Level Flow
1. User imports or enters money activity.
2. Activity lands in a review inbox.
3. System normalizes vendor, category, account, person, project, and context.
4. User reviews and approves transaction.
5. Approved transaction becomes part of the unified ledger.
6. Reports and dashboards pull from the unified ledger.
7. Rules improve future categorization.
## Data Flow
**Bank / Card / Cash / Manual Entry**
→ **Import Batch**
→ **Raw Transactions**
→ **Money Inbox**
→ **Reviewed Ledger Transactions**
→ **Reports / Views / Exports**
---
# 8. Main User Experience
The daily experience should be fast.
The user should not feel like they are “doing accounting.”
They should feel like they are clearing an inbox.
## Primary workflow
1. Open QiLedger.
2. See unreviewed transactions.
3. Approve obvious items.
4. Fix unclear items.
5. Assign category/person/project.
6. Mark transfers.
7. Add notes or receipts where needed.
8. View reports when needed.
---
# 9. Core Screens
## 9.1 Money Inbox
The most important screen.
Purpose:
> Show transactions that need review.
### Key features
* list of unreviewed transactions
* quick approve button
* category dropdown
* person dropdown
* project/context dropdown
* vendor normalization
* transfer matching
* split transaction option
* notes field
* receipt attachment
* confidence indicator
* rule suggestion
### Filters
* account
* date range
* amount range
* vendor
* imported batch
* possible transfer
* needs category
* needs person
* needs project
* low confidence
---
## 9.2 Unified Ledger
The master transaction view.
Purpose:
> Show all reviewed money activity in one normalized table.
### Must support filtering by
* date
* account
* person
* category
* vendor
* project
* context
* amount
* direction
* reviewed status
* tax relevance
* legal relevance
* household relevance
* business relevance
### Transaction fields displayed
* transaction date
* account
* vendor/payee
* description
* amount
* direction
* category
* person
* project
* context
* reviewed status
* notes
---
## 9.3 Accounts
Tracks every place money can exist or move through.
Examples:
* Chase Checking
* Cash App
* PayPal
* Venmo
* Mom Clearing
* Zai Clearing
* Household Bills
* Business Income
* Legal Costs
* Cash on Hand
* Credit Card
* Prepaid Card
### Account types
* checking
* savings
* credit card
* cash
* digital wallet
* clearing account
* loan
* liability
* income source
* external account
---
## 9.4 Categories
The chart of accounts / reporting categories.
This does not need to be overly formal in v1.
Examples:
* Income
* Household Bills
* Groceries
* Medical
* Transportation
* Legal
* Business Expense
* Caregiver Expense
* Debt Payment
* Transfer
* Reimbursement
* Personal
* Emergency
* Subscriptions
* Taxes
---
## 9.5 Vendors / Payees
Normalizes messy bank descriptions.
Examples:
Raw:
* `WM SUPERCENTER #1341`
* `WALMART.COM 8009666546`
* `WAL-MART STORE`
Normalized:
* Walmart
Raw:
* `ASTOUND BROADBAND`
* `WOW INTERNET`
* `RCN ASTOUND`
Normalized:
* Astound Internet
---
## 9.6 People / Entities
Tracks who the transaction relates to.
Examples:
* Cody
* Mom
* Zai
* Household
* Client
* Court
* Vendor
* Business
* Legal Case
* Unknown
This is critical because normal apps do not understand blended household operations.
---
## 9.7 Projects / Contexts
Tracks why the money matters.
Examples:
* Household Operations
* Caregiver Support
* Legal Case
* Business Operations
* Tax Prep
* Vehicle Repair
* Mom Medical Support
* Home Repair
* QiLabs
* Personal Spending
* Emergency Reset
---
## 9.8 Reports
MVP reports should be simple and useful.
### Required reports
1. Cashflow report
Money in vs money out.
2. Spending by category
Where money went.
3. Spending by person/entity
Who money was for.
4. Spending by account
Which accounts were used.
5. Vendor report
Who got paid.
6. Household report
Shared household expenses.
7. Mom contribution report
Contributions, expenses, balance, and usage.
8. Legal expense report
Court, filing, document, transport, case-related costs.
9. Business expense report
Tax/business-related expenses.
10. Uncategorized report
Items needing cleanup.
11. Transfer report
Movement between accounts.
12. Reimbursement report
Items paid by one person/context that belong to another.
---
# 10. MVP Scope
## MVP must include
* web-based login
* accounts table
* categories table
* vendors table
* people/entities table
* projects/contexts table
* manual transaction entry
* CSV import
* raw transaction staging
* money inbox review screen
* unified ledger screen
* basic reports
* export to CSV
* mobile-friendly layout
## MVP should not include yet
* full double-entry accounting
* bank API integrations
* automatic Plaid sync
* invoice generation
* payroll
* inventory
* full tax filing
* OCR receipt processing
* AI categorization
* advanced permissions
* complex dashboards
Those come later.
Do not let v1 become a productivity swamp.
---
# 11. Recommended Tech Stack
## Frontend
**React + TypeScript + Vite**
Reason:
* fast
* familiar
* flexible
* works well with Supabase
* easy to make mobile-first
* supports future PWA use
## Backend / Database
**Supabase Postgres**
Reason:
* hosted Postgres
* auth included
* row-level security available
* APIs generated automatically
* can export/migrate
* works well with custom React apps
## Auth
**Supabase Auth**
MVP:
* single-user first
* later add household/support users if needed
## Storage
**Supabase Storage or Google Drive link references**
For:
* statement files
* receipts
* exported reports
* supporting documents
MVP can store file metadata first, then add actual upload later.
## Automation Layer
Later:
* n8n
* Python import scripts
* AI categorization worker
* statement parser
* Drive sync
---
# 12. Architecture
## Core architecture
**Frontend Web App**
→ Supabase client
→ Postgres tables
→ Views / RPC functions
→ Reports
## Optional later architecture
**Statement Upload**
→ Storage
→ Parser Worker
→ Raw Transactions
→ Rules Engine
→ Review Inbox
→ Unified Ledger
## Principle
The frontend should not contain the financial logic.
The database should enforce:
* required fields
* account relationships
* category relationships
* transaction integrity
* duplicate prevention
* review state
---
# 13. Core Data Model
## 13.1 `accounts`
Stores financial accounts and clearing accounts.
Important fields:
* `id`
* `name`
* `institution`
* `account_type`
* `owner_entity_id`
* `last_four`
* `currency`
* `is_active`
* `opening_balance`
* `notes`
* `created_at`
* `updated_at`
---
## 13.2 `entities`
People, household members, businesses, vendors, institutions, courts, etc.
Important fields:
* `id`
* `name`
* `entity_type`
* `default_context`
* `notes`
* `created_at`
* `updated_at`
Entity types:
* person
* household
* business
* vendor
* institution
* court
* client
* other
---
## 13.3 `categories`
Stores reporting categories.
Important fields:
* `id`
* `name`
* `parent_category_id`
* `category_type`
* `tax_relevant`
* `business_relevant`
* `household_relevant`
* `legal_relevant`
* `is_active`
* `notes`
Category types:
* income
* expense
* transfer
* liability
* asset
* adjustment
---
## 13.4 `vendors`
Normalized payees.
Important fields:
* `id`
* `name`
* `default_category_id`
* `default_entity_id`
* `default_context_id`
* `notes`
* `created_at`
* `updated_at`
---
## 13.5 `contexts`
Projects, purposes, or operational buckets.
Important fields:
* `id`
* `name`
* `context_type`
* `description`
* `is_active`
* `created_at`
* `updated_at`
Context examples:
* household
* personal
* business
* legal
* caregiver
* tax
* vehicle
* medical
* emergency
---
## 13.6 `statements`
Represents imported bank/card statements.
Important fields:
* `id`
* `account_id`
* `statement_start_date`
* `statement_end_date`
* `statement_date`
* `beginning_balance`
* `ending_balance`
* `source_file_name`
* `source_file_url`
* `import_status`
* `notes`
* `created_at`
---
## 13.7 `import_batches`
Tracks each import event.
Important fields:
* `id`
* `account_id`
* `statement_id`
* `source_type`
* `source_file_name`
* `imported_at`
* `row_count`
* `duplicate_count`
* `status`
* `notes`
Source types:
* csv
* manual
* pdf
* api
* migration
---
## 13.8 `raw_transactions`
Stores untouched imported transaction data.
Important fields:
* `id`
* `import_batch_id`
* `statement_id`
* `account_id`
* `raw_date`
* `raw_posted_date`
* `raw_description`
* `raw_amount`
* `raw_balance`
* `raw_category`
* `raw_reference`
* `source_row_hash`
* `matched_transaction_id`
* `created_at`
This table preserves source truth.
---
## 13.9 `ledger_transactions`
The normalized unified ledger.
Important fields:
* `id`
* `transaction_date`
* `posted_date`
* `account_id`
* `vendor_id`
* `payee_text`
* `description`
* `amount`
* `direction`
* `category_id`
* `entity_id`
* `context_id`
* `source_raw_transaction_id`
* `source_statement_id`
* `transfer_group_id`
* `review_status`
* `confidence_score`
* `tax_relevant`
* `business_relevant`
* `household_relevant`
* `legal_relevant`
* `receipt_url`
* `notes`
* `created_at`
* `updated_at`
Direction values:
* income
* expense
* transfer_in
* transfer_out
* adjustment
Review statuses:
* inbox
* reviewed
* needs_info
* ignored
* duplicate
---
## 13.10 `transaction_splits`
Allows one transaction to be split across multiple categories/entities/contexts.
Example:
A $60 Walmart purchase:
* $30 groceries
* $15 medical supplies
* $15 household supplies
Important fields:
* `id`
* `ledger_transaction_id`
* `amount`
* `category_id`
* `entity_id`
* `context_id`
* `notes`
---
## 13.11 `rules`
Auto-categorization rules.
Important fields:
* `id`
* `rule_name`
* `match_field`
* `match_operator`
* `match_value`
* `account_id`
* `vendor_id`
* `category_id`
* `entity_id`
* `context_id`
* `direction`
* `confidence_score`
* `is_active`
* `created_at`
Example:
If description contains `ASTOUND`, set:
* vendor = Astound
* category = Internet
* entity = Household
* context = Household Operations
---
## 13.12 `reconciliation_runs`
Tracks statement reconciliation.
Important fields:
* `id`
* `account_id`
* `statement_id`
* `period_start`
* `period_end`
* `expected_start_balance`
* `expected_end_balance`
* `calculated_end_balance`
* `difference`
* `status`
* `notes`
* `created_at`
---
# 14. Key Views
Database views should power reports.
## `v_unreviewed_transactions`
Shows all transactions needing review.
## `v_unified_ledger`
Clean ledger with joined names:
* account name
* vendor name
* category name
* entity name
* context name
## `v_cashflow_monthly`
Monthly income, expenses, and net.
## `v_spending_by_category`
Category totals by date range.
## `v_spending_by_entity`
Totals by person/entity.
## `v_spending_by_context`
Totals by project/context.
## `v_legal_expenses`
All legal-relevant transactions.
## `v_household_expenses`
All household-relevant transactions.
## `v_business_expenses`
All business-relevant transactions.
## `v_possible_duplicates`
Potential duplicate imports.
## `v_transfers`
Transfer groups and matched internal movement.
---
# 15. UI Design Principles
## Fast before fancy
The app should feel like clearing messages, not doing bookkeeping.
## Mobile-first
The user may need to enter or review transactions from phone.
## Big tap targets
Do not make tiny spreadsheet controls.
## Default to inbox
The first screen after login should be:
**Money Inbox**
## Filters must be obvious
Every major ledger view needs quick filters.
## Review should be one-click when possible
If the system guesses correctly, user should approve quickly.
## Manual editing must be easy
No hidden modals for every tiny edit.
## Keep visual clutter low
Use:
* left navigation on desktop
* bottom nav or drawer on mobile
* clean table/list hybrid
* badges for status/context
* persistent search
* quick action buttons
---
# 16. Suggested Navigation
## Primary nav
* Inbox
* Ledger
* Accounts
* Reports
* Rules
* Imports
* Settings
## Secondary admin nav
* Categories
* Vendors
* People / Entities
* Contexts
* Reconciliation
* Exports
---
# 17. MVP Roadmap
## Phase 0 — Blueprint and schema
Goal:
Define the system before building.
Tasks:
* finalize table list
* finalize category structure
* finalize context structure
* define account list
* define import CSV requirements
* define review workflow
* create Supabase schema
Deliverable:
Working database schema.
---
## Phase 1 — Core app shell
Goal:
Create the web app foundation.
Tasks:
* create React + TypeScript + Vite app
* connect Supabase
* set up auth
* create layout
* add navigation
* create protected routes
* create basic styling system
Deliverable:
Logged-in app shell with navigation.
---
## Phase 2 — Admin data setup
Goal:
Create the supporting tables.
Screens:
* Accounts
* Categories
* Vendors
* People / Entities
* Contexts
Tasks:
* list records
* create records
* edit records
* deactivate records
* search/filter records
Deliverable:
Usable admin foundation.
---
## Phase 3 — Manual transaction entry
Goal:
Allow quick manual logging.
Tasks:
* add transaction form
* date/account/vendor/amount/category/entity/context
* notes
* review status
* save to ledger
Deliverable:
Manual ledger works.
---
## Phase 4 — CSV import
Goal:
Import statement transactions.
Tasks:
* upload CSV
* map columns
* create import batch
* create raw transaction rows
* generate row hashes
* prevent duplicate rows
* display import summary
Deliverable:
CSV statement import works.
---
## Phase 5 — Money Inbox
Goal:
Create the main workflow.
Tasks:
* show raw/unreviewed transactions
* suggest vendor/category/context
* quick approve
* edit transaction
* mark duplicate
* mark transfer
* push to reviewed ledger
Deliverable:
User can clean imported transactions.
---
## Phase 6 — Unified Ledger
Goal:
Create master ledger view.
Tasks:
* searchable ledger
* filters
* edit transaction
* split transaction
* attach notes
* export CSV
Deliverable:
Central money history works.
---
## Phase 7 — Reports
Goal:
Turn ledger into useful views.
Reports:
* cashflow
* by category
* by person/entity
* by context/project
* by account
* household
* business
* legal
* uncategorized
* transfers
Deliverable:
Basic financial intelligence.
---
## Phase 8 — Rules engine
Goal:
Reduce repetitive categorization.
Tasks:
* create rules table
* apply rules on import
* suggest categories
* let user create rule from transaction
* confidence score
Deliverable:
System starts learning patterns.
---
## Phase 9 — Reconciliation
Goal:
Verify statements against ledger.
Tasks:
* compare statement ending balance
* compare ledger-calculated balance
* show differences
* mark reconciled
Deliverable:
Ledger becomes audit-friendly.
---
## Phase 10 — Automation and AI
Goal:
Speed up imports and classification.
Possible features:
* n8n import workflows
* receipt OCR
* AI vendor cleanup
* AI category suggestions
* recurring bill detection
* anomaly detection
* natural language search
Deliverable:
Semi-automated finance assistant.
---
# 18. Initial Category Framework
## Income
* Caregiver Income
* Rideshare Income
* Business Income
* Family Contribution
* Refund
* Reimbursement
* Legal Disbursement
* Other Income
## Household
* Rent / Housing
* Utilities
* Internet
* Phone
* Groceries
* Household Supplies
* Repairs
* Furniture
* Appliances
* Shared Subscriptions
## Caregiver / Medical Support
* Medication
* Medical Supplies
* Transportation
* Food / Special Diet
* Mobility Equipment
* Home Health Support
## Transportation
* Gas
* Vehicle Repair
* Insurance
* Registration
* Rideshare Rental
* Parking
* Tolls
## Business
* Software
* Hosting
* Domain
* Equipment
* Office Supplies
* Client Expense
* Contractor
* Professional Services
## Legal
* Filing Fees
* Copies / Printing
* Postage
* Court Costs
* Legal Research
* Travel for Legal
* Evidence / Records
## Personal
* Food
* Clothing
* Personal Care
* Entertainment
* Subscriptions
* Miscellaneous
## Debt / Liability
* Loan Payment
* Credit Card Payment
* Cash Advance Repayment
* Overdraft / Fees
* Interest
## Transfers
* Internal Transfer
* Cash Withdrawal
* Cash Deposit
* Account Funding
* Clearing Movement
## Adjustments
* Balance Correction
* Duplicate Correction
* Manual Adjustment
* Unknown
---
# 19. Important Design Decisions
## Decision 1: One ledger, many contexts
Do not create separate ledgers for each bank.
Each bank/account is a source.
The unified ledger is the truth.
## Decision 2: Raw data stays raw
Imported rows remain untouched.
Normalized records link back to raw source rows.
## Decision 3: Clearing accounts are allowed
Clearing accounts are important for real life.
Examples:
* Mom Clearing
* Zai Clearing
* Household Clearing
* Cash Clearing
* Reimbursement Clearing
## Decision 4: Transfers need pairing
Money moving between accounts should not count as income or expense.
Use `transfer_group_id`.
## Decision 5: Reports should not require duplicate data
Reports should be generated from ledger views.
## Decision 6: Manual entry matters
Not every transaction will come from a bank statement.
Cash, informal repayments, and quick notes need manual entry.
---
# 20. Risk Register
## Risk: Overbuilding
Mitigation:
Keep MVP focused on ledger, inbox, import, reports.
## Risk: Accounting complexity
Mitigation:
Do not implement full double-entry in v1.
## Risk: Dirty imports
Mitigation:
Use raw transaction staging and source row hashes.
## Risk: Duplicate transactions
Mitigation:
Use hashes based on account/date/amount/description/reference.
## Risk: UI becomes spreadsheet hell
Mitigation:
Use card/list hybrid for review, not only tables.
## Risk: Reports become inaccurate
Mitigation:
Use reviewed status and reconciliation.
## Risk: Tool lock-in
Mitigation:
Use plain Supabase/Postgres schema, not proprietary app-builder logic.
---
# 21. Success Criteria
QiLedger v1 is successful when Cody can:
* import transactions from at least one account
* manually add cash/manual transactions
* categorize transactions quickly
* assign transactions to person/entity/context
* view all money activity in one ledger
* filter by household, business, legal, personal, caregiver
* export transactions for backup or tax/legal use
* identify uncategorized or unreviewed transactions
* produce a basic monthly household report
* produce a basic legal expense report
* produce a basic business expense report
---
# 22. Future Features
## AI-assisted categorization
Use prior reviewed transactions to suggest:
* vendor
* category
* entity
* context
* tax/legal relevance
## Natural language queries
Examples:
* “How much did we spend on Mom’s medical stuff last month?”
* “Show all legal expenses since January.”
* “How much did Zai-related spending cost this week?”
* “What did I spend at Walmart in April?”
* “Show all transactions over $100 that are unreviewed.”
## Receipt storage
Attach:
* receipt images
* PDFs
* statement files
* screenshots
* notes
## Statement parser
Support:
* CSV
* PDF
* screenshot/OCR later
## Recurring bill detection
Identify recurring bills and expected due dates.
## Budget layer
Add budget planning after ledger is stable.
## Forecasting
Predict upcoming cash needs based on:
* recurring bills
* average spending
* scheduled payments
* expected income
## Formal accounting mode
Later optional layer:
* double-entry journal entries
* chart of accounts
* balance sheet
* profit and loss
* equity/liability tracking
Not v1.
---
# 23. Build Instruction for Gemini / Codex
Use this as the project direction:
Build a mobile-first React + TypeScript + Vite web app connected to Supabase. The app is a custom financial ledger system called QiLedger. It should use Supabase Postgres as the source of truth and provide a fast user interface for importing, reviewing, categorizing, and reporting money activity across personal, household, business, legal, and caregiver contexts.
The first version should not attempt to recreate QuickBooks. It should focus on:
* accounts
* entities
* categories
* vendors
* contexts
* manual transaction entry
* CSV import
* raw transaction staging
* review inbox
* unified ledger
* basic reports
* CSV export
Design the UI for fast review and filtering. The default landing screen after login should be the Money Inbox. Use clean navigation, mobile-first layout, and minimal cognitive clutter.
The database should preserve raw imported transaction data separately from normalized ledger transactions. All reports should come from the normalized unified ledger and database views.
---
# 24. MVP Build Order
Build in this exact order:
1. Supabase schema
2. Auth and app shell
3. Accounts/categories/entities/contexts admin screens
4. Manual transaction entry
5. Unified ledger view
6. CSV import into raw transactions
7. Money Inbox review workflow
8. Basic reports
9. Rules engine
10. Reconciliation
Do not build dashboards first.
Dashboards come after transaction data is clean.
---
# 25. Bottom-Line Strategy
The win is not “having another finance app.”
The win is having a **money command center** that reflects real life:
* household chaos
* caregiver expenses
* personal survival money
* business operations
* legal documentation
* reimbursements
* shared responsibilities
* tax support
* messy bank data
QiLedger should make the money story visible.
Not perfect.
Visible.
Then visible becomes manageable.
Manageable becomes reportable.
Reportable becomes leverage.
solidtime.md
# Solidtime
## Purpose
Time tracking.
## Current Status
Pending Install
## URLs
- Local: `N/A`
- Tailnet: `N/A`
## Paths
- Stack: `N/A`
- Data: `N/A`
## Access Class
TBD
## Notes / TODOs
- To be installed.
50_apis/
_index.md
portal_api.md
---
uid:
9138f16a-3e33-440d-9133-98d6b5964d2a ...
...
---
# APIs
Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
## API Categories
QiOS has four distinct API categories. Each has a defined scope and must not cross into another's responsibility.
| Category | Scope | Location |
|---|---|---|
| **Local Agent API** | Machine-local control — pipeline state, local config | Python (local machine) |
| **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Future / conditional hosted layer |
| **App APIs** | Frontend interaction — route-safe reads/writes against approved services | QiAccess Start and future adapters |
| **Integration APIs** | External system connectors — future email, webhooks, Zapier | Local or future hosted connectors |
| **Worker APIs / Events** | Async job triggers and continuation signals | Local runtime first; future hosted queue optional |
## Local Agent API (Machine-internal)
The local Python API controls engine-side operations strictly for the node:
GET /status -> local agent health and pipeline state GET /watchers -> return current active filesystem assigned paths POST /scan -> trigger a directory scan POST /ingest -> manually push a single file POST /job/execute -> accept and execute a dispatched command POST /update -> receive configuration updates GET /health -> basic node liveness check
## Hosted Fleet / Admin API (Server-side, Future / Conditional)
The Cloud-hosted orchestration surface commands the fleet:
POST /fleet/enroll -> enroll a new machine device POST /fleet/assign -> map a watch folder to a device node POST /fleet/tokens -> issue or revoke access credentials PUT /fleet/config -> push configurations downward POST /fleet/jobs -> queue execution task for a node GET /fleet/heartbeats -> fetch liveness matrix of devices GET /fleet/audit -> view action history for operations
## App API Responsibilities
App APIs must:
* Respect current source-of-truth boundaries in Markdown/YAML docs and approved runtime services
* Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
* Avoid cross-boundary reads/writes that bypass the owning domain or pipeline
* Never accept writes that bypass the pipeline (no raw archive inserts from frontend)
## Worker Events Contract
Each async worker must define:
* **Input**: what payload it receives (always includes a canonical ID)
* **Output**: what it writes back (always references the same canonical ID)
* **Failure handling**: retryable error state written to `qisys.jobs`
## API Law
> No frontend or integration API may write directly to `qiarchive` records without going through the pipeline. The pipeline owns archive record state.
60_workers/
_index.md
system_workers.md
---
uid:
63df3f97-e518-4fd0-b954-da1b5ddba406 ...
...
---
# Workers
Workers are async background processes that run **after** canonical registration. They are triggered by events and always operate on canonically-identified records.
## Worker Categories
| Worker | Trigger | Responsibility |
|---|---|---|
| **Graph projection** | New archive record registered | Push entity/object into `qigraph` |
| **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
| **Metadata enrichment** | Extraction complete | Infer entities, doc type, tags |
| **Repair / retry job** | Failed state detected | Retry a failed pipeline stage on specific node |
| **Background embedding** | Chunks ready | Embed and push to pgvector |
| **Sync worker** | Scheduled | Reconcile local ↔ cloud state |
| **Enrollment reconciliation** | Fleet event | Sync config and health state |
| **Config distribution** | Admin action | Push settings to assigned nodes |
| **Folder assignment sync** | Admin action | Attach dropping zones to node |
| **Node update/repair** | Admin action | Instruct agent to patch or restart |
## Worker Contract
Every worker must define:
```yaml
id: worker_slug
trigger: event_type or schedule
input:
- canonical_id (required for domain records)
- additional context fields
output:
- what is written back (always via canonical_id FK)
fleet_context:
- target_device_id (if a node command)
- issued_by (identity)
- result_event_id (event tracking link)
failure:
- error state written to qisys.jobs
- retryable: true/false
- max_retries: N
Worker State
Workers write their state to qisys.jobs:
| Status | Meaning |
|---|---|
queued |
Job received, not yet started |
running |
In progress |
completed |
Successfully finished |
failed |
Terminal error (retryable or not) |
retrying |
Scheduled for retry |
Workers Law
- Workers never redefine canonical identity
- Workers never write to
qiarchiveschema directly without going through the pipeline contract - Workers always reference a
canonical_idin their input and output - Worker failures are visible — silently dropped jobs are a violation
#### 70_pipelines/
##### _index.md
##### data_pipelines.md
```text
# Pipelines
## Canonical Ingestion Flow
Every file that enters QiOS must pass through this sequence:
source → detect → resolve domain / namespace → register in QiArchive (assign canonical identity) → assign short visible code (Q + 6 hex) → normalize filename → extract / inspect → enrich metadata → chunk → embed (local) → index (pgvector in qiarchive) → route / review / act
## Pipeline States
Every archive record must carry one of:
| State | Meaning |
|---|---|
| `detected` | File seen by watcher |
| `registered` | Archive record created, canonical ID assigned |
| `normalized` | Filename normalized per naming contract |
| `extracted` | Text extracted from file |
| `enriched` | Metadata populated |
| `chunked` | Text chunked deterministically |
| `embedded` | Vectors generated |
| `indexed` | Pushed to pgvector |
| `review_pending` | Awaiting human review |
| `routed` | Placement confirmed |
| `finalized` | Full lifecycle complete |
| `failed` | Error state — retryable |
## Failure Philosophy
Failures must be **visible, stateful, retryable, and tied to canonical IDs**.
* Do not silently drop files.
* Do not overwrite state.
* Do not advance objects with weak provenance.
## Supported Input Paths
* Watched local inbox (`C:/QiData/inbox/`)
* Manual import
* Synced storage
* App upload
* Future: email/connector intake
## Subprocess Categories
| Subprocess | Responsibility |
|---|---|
| OCR subprocess | Extract text from scanned docs |
| Extraction subprocess | Parse text from structured files |
| Embedding subprocess | Generate local vector embeddings |
| File scanner | Detect new files in watched paths |
| Sync subprocess | Reconcile local ↔ cloud state |
| Graph projection job | Push canonical records into `qigraph` |
| Retrieval orchestration | Coordinate pgvector + Neo4j recall |
80_tools/
_index.md
operator_tools.md
# Tools
Internal tools are developer and operator utilities. They are not user-facing. They automate, validate, or inspect system state.
## Current Tools
| Tool | Location | Purpose |
|---|---|---|
| enforce_structure.py | scripts/ | Validates repo structure and YAML schemas |
## QiLabs Toolbox Module Convention
- Standalone/proven tools must use folder-name-is-tool-name structure.
- Required files are `README.md`, `__init__.py`, `<tool_name>.py`, and `manifest.yaml`.
- Standalone/proven tools should live under the QiLabs toolbox or QiAccess local toolbox pattern rather than as loose standalone scripts.
- Final toolbox destination is generally `C:\QiLabs\toolbox\tools\<tool_name>\` unless the tool is intentionally repo-specific.
- Prototype scripts may begin temporarily under repo `tools\` only when they are explicitly marked as prototypes.
- Once a tool is promoted/proven, it must graduate into the toolbox module structure and should not remain as a loose standalone utility script directly under `tools\`.
- The tool manifest is required so agents and launchers can identify and use the tool.
- The README is required so humans and agents understand usage, safety, inputs, and outputs.
- Python tool files must include a commented intro near the top, immediately after the shebang if present, identifying filename, purpose/context, usage, inputs, outputs, safety, and owner.
## Aider Usage Rules
- Aider is installed under /srv/qios/tools/aider.
- Aider should be used inside cloned repos under /srv/qios/repos, not directly inside live runtime stack folders.
- qwen2.5-coder:3b is the preferred interactive Aider model.
- qwen2.5-coder:7b exists but is too heavy/slow for interactive CPU-only use.
## Ollama Usage Rules
- Ollama is installed on qiserver and locked to 127.0.0.1:11434.
## Legacy Tools (Quarantined)
*Note: mkdocs serve and pnpm db:migrate are now quarantined. MkDocs is superseded. Supabase is not active unless it has a specific job.*
90_interfaces/
_index.md
public_interfaces.md
# Interfaces
> Quarantine notice: this page contains useful interface rules, but parts of its setup and tenant language belong to the older platform model. Treat it as reference-only until revalidated. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
Interfaces are specialized views and interaction surfaces within the QiOS ecosystem.
## Interface Types
| Interface | Purpose | Source Schema |
|---|---|---|
| **Search UI** | Find archive records by metadata or semantic query | `qiarchive` + pgvector |
| **Review UI** | Human review of pipeline-routed documents | `qiarchive.ingest_jobs` |
| **Archive UI** | Browse and inspect registered files | `qiarchive.archive_files` |
| **Chatbot UI** | AI-powered retrieval with provenance-aware answers | `qially` + pgvector + Neo4j |
| **Setup / Onboarding UI** | Tenant and module configuration | `qione` |
## Interface Law
* Every interface must authenticate before accessing tenant data
* Chatbot UI must display source references (archive_id / chunk_id) — it may not answer without provenance
* Review UI decisions must update pipeline state in `qiarchive.ingest_jobs`, not create shadow records
* Search results must link back to canonical archive records, not to derived copies
_index.md
# 40 Service Apps
<sub>Executable Capabilities</sub>
Documentation for the services, tools, and applications that make the system functional.
## System Progression
1. [10 Infrastructure](10_infrastructure/): Base service layers (Server, Docker, Network)
2. [20 AI Compute](20_ai_compute/): Intelligence layers (LLMs, Vector DBs)
3. [30 Capture](30_capture/): Input and ingestion apps (Wiki, Paperless, Docs)
4. [40 Productivity](40_productivity/): Operations and workflow tools (n8n, Time, Ledger)
5. [50 APIs](50_apis/): Interface definitions and contracts
6. [60 Workers](60_workers/): Background processing and automation agents
7. [70 Pipelines](70_pipelines/): Data transformation and movement flows
8. [80 Tools](80_tools/): Operator utilities and CLI tools
9. [90 Interfaces](90_interfaces/): External connection points and UI layers
10. [100 Integrations](100_integrations/): Third-party service connections
11. [110 QiServer](110_qiserver/): Core server runtime and optimization
12. [120 Applications](120_applications/): High-level system applications
50_operations/
10_cases/
_index.md
# Cases
## Case Domain Overview
Cases are the core operational unit in `qicase`. A case represents a bounded legal or operational matter with a defined lifecycle.
## Case Lifecycle
open → active → review → resolved → closed → archived
## Case Structure
| Object | Description |
|---|---|
| `cases` | The top-level case record |
| `phases` | Sequential or parallel phases within a case |
| `issues` | Discrete issues or items within a phase |
| `deadlines` | Time-bound milestones linked to phases or events |
| `case_documents` | Archive-linked documents associated with a case |
| `document_issues` | Issues linked to specific documents |
## Case Object (Key Fields)
| Field | Type | Notes |
|---|---|---|
| `id` | uuid | Canonical ID |
| `tenant_id` | uuid | FK to `qione.tenants` |
| `case_number` | text | Human-readable case identifier |
| `client_id` | uuid | FK to client record |
| `status` | text | Case lifecycle state |
| `case_type` | text | civil, administrative, etc. |
| `opened_at` | timestamptz | When case was opened |
## Case Rules
* Cases must always belong to a tenant and a client
* Case documents must always reference an `archive_id` from `qiarchive`
* Deadlines linked to `qichronicle` events must have a valid `chronicle_event_id`
* Case phases must be sequential within a case or explicitly marked as parallel
* No case may have documents without a registered archive record
20_qiserver/
_index.md
# qiserver Setup Runbook
This runbook serves as the operational manual for the `qiserver` node, capturing its current setup, configuration boundaries, and operational priorities.
## 1. Runtime Path Doctrine
* `/srv/qios/repos`: For cloned Git repositories and active coding work.
* `/srv/qios/stacks`: For Docker Compose runtime stacks. **Rule:** Do not create nested Git repos inside stacks.
* `/srv/qios/data`: For persistent application data.
## 2. Current Installed Services & Local Ports
All primary application services currently bind to `localhost` (`127.0.0.1`) only to prevent unintended exposure:
* **Paperless-ngx**: `127.0.0.1:8010` (mapped to 8000 internally)
* **NocoDB**: `127.0.0.1:8088` (mapped to 8080 internally)
* **Wiki.js**: `127.0.0.1:3002` (mapped to 3000 internally). Verified internal/admin Tailscale Serve route: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Acts as the readable knowledge base.
* **Private Server Launcher (gethomepage)**: `127.0.0.1:3001` (mapped to 3000 internally). **Note:** This is a local/tailnet utility only. Editing its `services.yaml` does not update the public `access.qially.com`.
* **Portainer**: `127.0.0.1:9443` (mapped to 9443 internally)
* **Open WebUI**: `127.0.0.1:3000` (mapped to 8080 internally)
* **Neo4j**: `127.0.0.1:7474`, `127.0.0.1:7687`
## 3. Aider and Ollama Setup Status
* **Ollama**: Installed natively on qiserver and locked down to listen exclusively on `127.0.0.1:11434`.
* **Aider**: Installed under `/srv/qios/tools/aider`.
* **Rule:** Aider should be used inside cloned repos under `/srv/qios/repos`, never directly inside live runtime stack folders.
* **Model Selection**:
* `qwen2.5-coder:3b` is the preferred interactive model for Aider.
* `qwen2.5-coder:7b` exists but is too heavy/slow for CPU-only interactive use.
## 4. Exposure & Security Concerns
* **Tailscale**: Tailscale Serve correctly exposes Homepage, NocoDB, Open WebUI, and Wiki.js to the tailnet only.
* **Wiki.js Public Route**: `https://wiki.qially.com` currently returns Bad Gateway and should be treated as degraded until the Cloudflare tunnel route is repaired.
* **Admin/Control Services**: Must stay private/protected.
* **Cockpit**: **WARNING** - Currently listening broadly on `*:9090`. This requires immediate restriction.
* **Legacy Paperless**: A legacy compose file at `/home/qiadmin/docker-compose.yml` needs to be confirmed disabled/removed to prevent conflicts with the active stack at `/srv/qios/stacks/paperless`.
## 5. Paperless Ingestion Readiness Checklist
* **Metadata First Rule**: Paperless metadata (tags, document types, starter correspondents) must be fully configured before bulk import.
* **Ingestion Testing Rule**: Paperless should be tested with 10 diverse documents maximum (e.g., insurance, bills, legal) to tune the engine before any large or bulk ingestion occurs.
## 6. What Is Done
* [x] Paperless stack is up and bound to localhost-only.
* [x] NocoDB, Wiki.js, Homepage, Portainer, Open WebUI, and Neo4j stacks exist and are bound to localhost-only.
* [x] Tailscale Serve is active and restricted to the tailnet.
* [x] Ollama is installed and locked to `127.0.0.1:11434`.
* [x] Aider is installed and configured.
* [x] Repos/stacks/data path doctrine established.
## 7. What Remains Next
* [ ] Restrict Cockpit (`*:9090`) to private/protected access only.
* [ ] Confirm, disable, or remove the legacy Paperless stack (`/home/qiadmin/docker-compose.yml`).
* [ ] Verify `n8n` installation and status.
* [ ] Configure Paperless metadata (types, tags, correspondents, Unknown Review rule).
* [ ] Execute the 10-document Paperless ingestion test and tune results.
* [ ] Create a robust backup script for `/srv/qios/stacks` and `/srv/qios/data`.
* [ ] Complete the server exposure audit and write the `qs` status command script.
30_dev_history/
2026-05-16_dev_session_directory_markmind_mapper.md
---
record_type: dev_session
schema_version: 1.0
session_id: DEV-20260516-directory-markmind-mapper
date: 2026-05-16
project: QiOne Toolbox / QiAccess Start
repo: c:\QiLabs\toolbox
branch:
feature_area: sys_directory_markmind_mapper
tooling:
- Python
- Tkinter
- QiOne Desktop Tools
- BaseTool
- Markmind
- Markmap
status: planned
owner: QiLabs
created_by: ChatGPT
source: chat_session
tags:
- toolbox
- sys
- qione
- directory-map
- markmind
- documentation
related_files:
- tools/sys/directory_markmind_mapper/directory_markmind_mapper.py
- tools/sys/directory_markmind_mapper/README.md
- tools/sys/directory_markmind_mapper/tool_manifest.yaml
related_tables:
- dev_history
related_tools:
- QiOne Desktop Tools
---
# Dev Session: Directory Markmind Mapper Toolbox Tool
## 01. Session Identity
| Field | Value |
|---|---|
| Date | 2026-05-16 |
| Project | QiOne Toolbox / QiAccess Start |
| Repo | `c:\QiLabs\toolbox` |
| Branch | TBD |
| Feature Area | `sys_directory_markmind_mapper` |
| Status | Planned |
| Owner | QiLabs |
| Session Type | Toolbox utility build |
## 02. Purpose
Build a QiOne Desktop Tools utility that walks a selected root directory and generates a Markmind/Markmap-friendly Markdown file showing the directory tree.
The tool is intended to make repo/app/folder structure review faster, cleaner, and repeatable.
## 03. Context
The user wants a local toolbox tool, not a loose script.
The tool must follow the established QiOne toolbox pattern:
- module class inherits from `BaseTool`
- loaded by the toolbox build system
- launched from `main_ui.py`
- receives `target_path`, `is_live`, `log`, and `prog` through `execute()`
- supports dry-run and live execution
- provides its own UI through `build_ui()`
The user provided `rule_tester.py` as the pattern reference.
## 04. Decisions Made
| Decision | Reason | Status |
|---|---|---|
| Build as QiOne toolbox module | Matches existing toolbox architecture | Accepted |
| Place in `tools/sys/directory_markmind_mapper/` | This is a system/file-structure documentation tool, not a dev-only tester | Accepted |
| Use `DirectoryMarkmindMapperTool(BaseTool)` | Keeps module discoverable by the toolbox UI | Accepted |
| Generate Markdown with YAML front matter | Supports Markmind/Markmap review and future indexing | Accepted |
| Skip build artifacts by default | Prevents `node_modules`, `dist`, `.next`, etc. from polluting maps | Accepted |
| Write only generated Markdown output | Keeps tool safe and read-only against source directories | Accepted |
| Add manifest YAML | Enables future agent/toolbox discovery | Accepted |
## 05. Files / Folders Affected
| Path | Action | Notes |
|---|---|---|
| `tools/sys/directory_markmind_mapper/` | create | New toolbox tool folder |
| `tools/sys/directory_markmind_mapper/directory_markmind_mapper.py` | create | Main tool module |
| `tools/sys/directory_markmind_mapper/README.md` | create | Usage and safety documentation |
| `tools/sys/directory_markmind_mapper/tool_manifest.yaml` | create | Toolbox metadata manifest |
## 06. Database / Schema Notes
No application database changes are required for the mapper tool itself.
However, the session revealed a need for a durable development history system inside Supabase.
Recommended future table:
`public.dev_history`
Purpose:
- store development decisions
- record prompts
- track files affected
- preserve implementation history
- connect markdown dev session docs to structured searchable records
## 07. Implementation Plan
### Step 1
Create the tool folder:
`tools/sys/directory_markmind_mapper/`
### Step 2
Create `directory_markmind_mapper.py` using the `BaseTool` pattern.
Required methods:
- `__init__`
- `get_name`
- `build_ui`
- `execute`
### Step 3
Add UI options:
- include files
- include build/dependency artifacts
- include YAML metadata
- max depth
- output folder
- output filename
- extra excluded folders
- extra excluded files
- extra excluded extensions
### Step 4
Implement scanning behavior:
- walk selected `target_path`
- skip junk folders by default
- skip junk files by default
- respect max depth
- respect cancellation
- log progress
### Step 5
Generate Markdown output:
- YAML front matter
- title
- generated timestamp
- root path
- nested directory tree
### Step 6
Create `README.md` and `tool_manifest.yaml`.
### Step 7
Run through QiOne Desktop Tools UI.
Validate:
- dry run writes nothing
- live run writes Markdown
- build artifacts are skipped
- files can be included/excluded
- output opens cleanly in Markmind/Markmap-compatible viewers
## 08. Code / Prompt Artifacts
### Codex Prompt
Create a new QiOne toolbox tool module using the existing BaseTool pattern.
Create this folder:
`tools/sys/directory_markmind_mapper/`
Create these files:
- `directory_markmind_mapper.py`
- `README.md`
- `tool_manifest.yaml`
The Python module must follow this structure:
- Header comments:
- `# file`
- `# purpose`
- `# usage`
- `# inputs`
- `# outputs`
- `# safety`
- `# owner`
- Import `BaseTool` from `core.base_tool`
- Define class `DirectoryMarkmindMapperTool(BaseTool)`
- Implement:
- `__init__`
- `get_name`
- `build_ui`
- `execute`
Goal:
The tool should walk the user-selected target directory from the QiOne Desktop Tools UI and generate a Markmind/Markmap-friendly Markdown directory tree.
Behavior:
1. The toolbox shell provides `target_path` to `execute(target_path, is_live, log, prog)`.
2. In dry run mode, show selected config but do not write output.
3. In live mode, generate the Markdown output file.
4. Default output filename: `YYYY-MM-DD_directory_map_{root_slug}.md`
5. Default output folder: selected target root, unless user chooses another output folder.
6. Include YAML front matter unless user disables it.
7. Include files by default, but allow folders-only mode.
8. Skip build/dependency junk folders by default:
`.git`, `node_modules`, `dist`, `build`, `.next`, `coverage`, `__pycache__`, `.venv`, `.cache`, `logs`, `tmp`
9. Skip junk files:
`.DS_Store`, `Thumbs.db`, `desktop.ini`, `package-lock.json`, `pnpm-lock.yaml`, `yarn.lock`
10. Allow extra excluded folders, files, and extensions through UI text areas.
11. Allow max depth through UI.
12. Support `cancel_requested` during scanning.
13. Use only Python standard library.
14. Do not delete, move, rename, or modify source files.
15. Write only the generated Markdown output file.
Keep the implementation surgical and consistent with the existing `rule_tester.py` style.
## 09. Risks / Watch Items
| Risk | Why It Matters | Mitigation |
|---|---|---|
| Tool gets built as loose CLI script | Would not fit QiOne toolbox UI | Must inherit `BaseTool` |
| Scans huge build folders | Output becomes useless and slow | Skip build artifacts by default |
| Output gets written somewhere confusing | User may lose generated file | Default output to selected root and log full path |
| Too much UI clutter | Tool becomes annoying to use | Keep options simple |
| Cancelling does not stop scan | Bad UX on large folders | Check `cancel_requested` during recursion |
## 10. Validation Checklist
- [ ] Tool appears in QiOne Desktop Tools
- [ ] Tool name displays as `🗺️ Directory Markmind Mapper`
- [ ] Dry run does not write a file
- [ ] Live run writes a Markdown file
- [ ] Output filename defaults correctly
- [ ] Output folder override works
- [ ] `node_modules` is skipped by default
- [ ] `.git` is skipped by default
- [ ] Files can be excluded
- [ ] Folders-only mode works
- [ ] Max depth works
- [ ] Markdown opens cleanly in Markmind/Markmap-compatible viewer
- [ ] No source files are modified
## 11. Final Outcome
Planned tool architecture and implementation prompt completed.
The tool should be created as:
`tools/sys/directory_markmind_mapper/`
with:
- `directory_markmind_mapper.py`
- `README.md`
- `tool_manifest.yaml`
## 12. Next Actions
| Priority | Action | Owner | Notes |
|---|---|---|---|
| P1 | Have Codex create the toolbox module | Cody / Codex | Use the prompt above |
| P1 | Run tool against `c:\QiLabs\_QiAccess_Start\src` | Cody | Validate output |
| P2 | Save generated map to QiAccess docs | Cody | Use as structure review artifact |
| P2 | Add Supabase `dev_history` table | Cody / Codex | Store future session records |
| P3 | Add export/import between Markdown dev docs and Supabase | Future | Useful but not needed today |
## 13. Restart Prompt
Use this to resume later:
> We were building a QiOne toolbox tool called Directory Markmind Mapper. It belongs at `tools/sys/directory_markmind_mapper/`, inherits from `BaseTool`, and generates a Markmind/Markmap-friendly Markdown file from a selected directory tree. The next step is to have Codex create the module files and test it against `c:\QiLabs\_QiAccess_Start\src`.
2026-05-17_open_loop_reset_paperless_ingestion_runbook.md
---
date: 2026-05-17
title: Open Loop Reset and Paperless Ingestion Runbook
category: operations
project_context: QiAccess / QiNexus / Paperless-NGX / MomCare / QiNote
status: active
tags:
- open-loops
- paperless-ngx
- ingestion
- qinexus
- qiaccess
- runbook
---
# Open Loop Reset and Paperless Ingestion Runbook
## Purpose
This page captures the current open loops across active system work and defines the next sane execution order. The goal is to stop context loss, prevent repeated redesign, and move from scattered updates into controlled completion.
This also includes the first working strategy for recursively ingesting eligible files from a folder into Paperless-NGX.
---
# 1. Current Open Loop Map
| Thread | Current State | Next Move |
|---|---|---|
| MomCare App QA Checklist | Markdown checklist was created for MomCare app testing. It covers startup, dashboard, daily care log, vitals, privacy, retest, and AI work-order capture. | Use it during app testing. Every bug becomes an AI work order. |
| QiAccess Start QA Checklist | Markdown checklist was created for QiAccess Start testing. It covers access, service links, docs alignment, build/deploy, regression, and acceptance. | Test QiAccess Start and capture broken links/routes. |
| Supabase Visual / ERD Problem | DBeaver became a distraction because connection/password was blocking progress. Direction changed to direct schema export. | Export all schemas, tables, and fields directly from Postgres/Supabase metadata for Markmind or ERD use. |
| Directory Markmind Mapper Toolbox Tool | Standalone toolbox module was planned, but import error occurred: `ModuleNotFoundError: tools.system.sys_directory_markmind_mapper.SysDirectoryMarkmindMapperTool`. | Fix module path, file name, class name, and import alignment. |
| Paperless-NGX | Paperless is running and should not be rebuilt if healthy. It needs final admin validation. | Confirm login, consume folder, OCR test, and API token. |
| QiAccess / QiNexus / QiNote Architecture | Core doctrine is mostly settled: QiAccess is the front door/interface, QiNexus is storage/assets, QiLabs is code/execution, database is structured confirmed records. | Stop redesigning the universe. Convert decisions into docs, scripts, and tests. |
| QiNexus Folder Numbering | Root folders should be numbered and intentionally ordered, not left to alphabetic sorting. | Lock root numbering and only reopen if there is a real structural conflict. |
| QiCode / File IDs | Direction is path-derived code plus version, with date where useful. | Needs one final naming spec before scripts enforce it. |
| Mom / Caregiver Documentation | Daily logs, vitals, MyChart tasks, safety notes, and PT descriptions are being captured. Manual typing is not sustainable. | Build photo/voice capture flow into spreadsheet/database and Family Wall visibility. |
| Graphify / RAG / Graph Layer | Graphify is useful as a mapping layer, not the source of truth. Markdown/files remain truth. | Test Graphify on repo/docs first, not sensitive personal corpora. |
| Qdrant / Neo4j / Paperless Pipeline | Proposed pipeline: Paperless docs → canonical SQL tables → embeddings/Qdrant → Neo4j graph. | Downstream. Do not touch until Paperless basics are stable. |
| QiAccess Start UI | Route doctrine exists: Home, Start, Capture, Knowledge, Memory, Insights, System. Known bug: public URL may override private/tailnet/local URL. | Fix service URL resolver priority so private/tailnet/local wins in admin/local mode. |
---
# 2. Actual Priority Order
Do not touch all of these at once.
## Priority 1 — Finish Testing Artifacts
Use the existing QA checklists.
- Test MomCare App.
- Test QiAccess Start.
- Convert every bug into an AI work order.
## Priority 2 — Fix Toolbox Import Error
The likely issue is one of these:
- folder path mismatch
- filename mismatch
- class name mismatch
- `__init__.py` imports a file that does not exist
- Windows casing tolerance hiding Linux/package issues
Action:
- Inspect the module folder.
- Align folder name, filename, class name, and import path.
- Retest through `main_ui.py`.
## Priority 3 — Export Supabase Schema Directly
Do not fight DBeaver right now.
Action:
- Use Postgres metadata queries.
- Export all schemas, tables, columns, data types, nullability, defaults, and relationships.
- Feed that into Markmind or an ERD generator.
## Priority 4 — Finish Paperless Basics
Do not rebuild Paperless if it is healthy.
Action:
- Login.
- Confirm consume folder.
- Drop in 1-3 safe test files.
- Confirm OCR.
- Confirm tags/document types/storage paths.
- Create API token.
## Priority 5 — Freeze Structure Decisions
The architecture is sufficiently clear to proceed.
Do not keep reopening the entire QiAccess/QiNexus/QiNote structure unless a real conflict appears.
---
# 3. Today's Execution List
1. Test MomCare App with checklist.
2. Test QiAccess Start with checklist.
3. Fix `sys_directory_markmind_mapper` import error.
4. Run Supabase schema export for all schemas/tables/fields.
5. Confirm Paperless login, OCR, consume behavior, and API token.
Everything else is parked.
---
# 4. Parking Lot
These are valid, but not allowed to hijack the day:
- QiCode final spec
- Graphify integration
- Qdrant/Neo4j ingestion
- Paperless sync worker
- Family Wall automation
- Caregiver AI capture system
- Full QiNote ultimate architecture
- NocoDB/general ledger schema
- Wiki/KB polishing
---
# 5. Where This Page Belongs
For now, place this in:
`docs/10_core/60_operations/03_runbooks/2026-05-17_open_loop_reset_paperless_ingestion_runbook.md`
Why:
- This is not source data.
- This is not a template.
- This is not architecture doctrine.
- This is an operational control document.
- It tells the system what to do next.
If `03_runbooks` does not exist yet, create it under:
`docs/10_core/60_operations/`
Later, if this becomes part of the Paperless ingestion system documentation, split the Paperless portion into:
`docs/10_core/40_compute/03_pipelines/`
Suggested future split:
- Keep open-loop reset in `60_operations/03_runbooks/`
- Move permanent ingestion pipeline docs to `40_compute/03_pipelines/`
- Move script documentation to the owning tool folder README
---
# 6. Paperless Recursive Ingestion Strategy
## Goal
Systematically ingest all eligible files inside a folder recursively into Paperless-NGX without losing track of what was ingested, what failed, or what should be excluded.
Paperless should be treated as an ingestion engine, not as a general file browser. Files placed into the Paperless consume folder are temporary. Once consumed, Paperless stores them in its own media/archive structure and removes them from the consume folder.
---
# 7. Important Paperless Behavior
Paperless-NGX consumes documents from its consumption directory. After consumption, files are stored inside Paperless and are not retained in the consumption directory.
This means:
- Do not point Paperless directly at your only copy of an important archive.
- Do not use the consume folder as permanent storage.
- Stage copies into consume.
- Keep your original source folder intact until ingestion is verified.
Recommended principle:
> Source folder is truth until verified. Consume folder is a temporary loading dock.
---
# 8. Recommended Folder Flow
Use a staging workflow instead of dragging the original archive directly into Paperless.
## Proposed Local Flow
Source archive:
`/srv/qios/imports/paperless_source/`
Staging queue:
`/srv/qios/imports/paperless_stage/`
Paperless consume folder:
`/srv/qios/data/paperless/consume/`
Processed manifest/logs:
`/srv/qios/imports/paperless_logs/`
Rejected/unsupported files:
`/srv/qios/imports/paperless_rejected/`
Do not dump random folders straight into consume until recursive handling has been tested.
---
# 9. Confirm the Actual Consume Folder
Run:
```bash
sudo docker inspect paperless --format '{{range .Mounts}}{{println .Source "->" .Destination}}{{end}}'
Look for the host path mapped to the container consume directory.
Expected pattern:
/srv/qios/data/paperless/consume -> /usr/src/paperless/consume
If the host consume path is different, use the actual mounted host path.
10. Enable Recursive Consume If Desired
Paperless has a setting for recursive consumption:
PAPERLESS_CONSUMER_RECURSIVE=true
Optional setting to turn subfolders into tags:
PAPERLESS_CONSUMER_SUBDIRS_AS_TAGS=true
Use this carefully.
Recommendation
For your system, do not rely only on Paperless recursive consume at first.
Use a controlled staging script that:
- recursively scans the source folder,
- filters ingestible file types,
- copies eligible files into the consume folder,
- writes a manifest,
- moves unsupported files to a rejected list/folder,
- avoids duplicates by checksum.
This gives you auditability and prevents chaos.
11. Supported File Types to Start With
Start conservative.
Recommended ingestible extensions:
.pdf.jpg.jpeg.png.tif.tiff.txt.doc.docx.odt.xls.xlsx.ods.ppt.pptx.odp.eml
Paperless support depends on installed services and configuration. PDFs and images are the safest first test set.
For the first pass, use only:
.pdf.jpg.jpeg.png.tif.tiff
Then expand after testing.
12. Safe First Test
Create a small test source folder:
mkdir -p /srv/qios/imports/paperless_source_test
mkdir -p /srv/qios/imports/paperless_logs
Copy 3-5 safe documents into it.
Then stage only PDFs/images first.
13. Dry Run Command
Use this to preview ingestible files recursively:
find /srv/qios/imports/paperless_source_test \
-type f \
\( -iname "*.pdf" -o -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.tif" -o -iname "*.tiff" \) \
-print
If this list looks correct, proceed.
14. Controlled Copy Into Consume Folder
Use rsync to copy files while preserving relative paths:
sudo rsync -av --progress \
--include='*/' \
--include='*.pdf' \
--include='*.PDF' \
--include='*.jpg' \
--include='*.JPG' \
--include='*.jpeg' \
--include='*.JPEG' \
--include='*.png' \
--include='*.PNG' \
--include='*.tif' \
--include='*.TIF' \
--include='*.tiff' \
--include='*.TIFF' \
--exclude='*' \
/srv/qios/imports/paperless_source_test/ \
/srv/qios/data/paperless/consume/
Then watch Paperless logs:
sudo docker logs -f paperless
15. Better Long-Term Method: Staging Script
A real ingestion script should create a manifest before copying files.
Manifest fields:
| Field | Purpose |
|---|---|
| source_path | Original file path |
| staged_path | Where the file was copied |
| filename | Original filename |
| extension | File type |
| size_bytes | File size |
| sha256 | Duplicate detection |
| status | staged, skipped, rejected, failed |
| reason | Why skipped/rejected/failed |
| staged_at | Timestamp |
This lets you later answer:
- What did I ingest?
- What failed?
- What was skipped?
- What needs manual review?
- Did I accidentally duplicate a folder?
16. Suggested Script Location
This should become a standalone runnable tool because it can work independently.
Place it here:
c:\QiLabs\toolbox\tools\system\sys_paperless_recursive_ingestor\
Required files:
sys_paperless_recursive_ingestor/
├── README.md
├── manifest.json
├── sys_paperless_recursive_ingestor.py
└── __init__.py
The script should include a commented intro immediately after the first line/shebang:
# sys_paperless_recursive_ingestor.py
# Purpose: Recursively scans a source folder, identifies Paperless-ingestible files,
# creates a manifest with checksums, and stages safe copies into the Paperless consume folder.
17. Minimum Script Behavior
The script should support:
python sys_paperless_recursive_ingestor.py \
--source "/srv/qios/imports/paperless_source" \
--consume "/srv/qios/data/paperless/consume" \
--log-dir "/srv/qios/imports/paperless_logs" \
--mode dry-run
Then:
python sys_paperless_recursive_ingestor.py \
--source "/srv/qios/imports/paperless_source" \
--consume "/srv/qios/data/paperless/consume" \
--log-dir "/srv/qios/imports/paperless_logs" \
--mode stage
Modes:
| Mode | Behavior |
|---|---|
| dry-run | Scan and report only |
| manifest | Write manifest only |
| stage | Copy eligible files to consume |
| reject-report | Report unsupported files |
| verify | Compare manifest to Paperless API after ingest |
18. Paperless API Verification Later
After API token is created, the script can verify imported documents by checking the Paperless API.
Future verification fields:
- title
- original filename
- created date
- correspondent
- document type
- storage path
- tags
- archive serial number
- checksum if exposed/available
This comes later. First prove the consume flow works.
19. Current Recommendation
Do not start with full automation.
Do this sequence:
- Confirm actual consume folder mount.
- Test 3-5 files manually.
- Enable recursive consume only if needed.
- Run dry-run against a small source folder.
- Stage only PDFs/images first.
- Watch logs.
- Confirm documents appear correctly in Paperless.
- Only then run a larger batch.
- Build the standalone toolbox ingestor after the manual pattern is proven.
20. Immediate Commands
Inspect mounts
sudo docker inspect paperless --format '{{range .Mounts}}{{println .Source "->" .Destination}}{{end}}'
Create import folders
sudo mkdir -p /srv/qios/imports/paperless_source
sudo mkdir -p /srv/qios/imports/paperless_source_test
sudo mkdir -p /srv/qios/imports/paperless_logs
sudo mkdir -p /srv/qios/imports/paperless_rejected
Confirm consume folder exists
sudo ls -lah /srv/qios/data/paperless/consume
Preview ingestible test files
find /srv/qios/imports/paperless_source_test \
-type f \
\( -iname "*.pdf" -o -iname "*.jpg" -o -iname "*.jpeg" -o -iname "*.png" -o -iname "*.tif" -o -iname "*.tiff" \) \
-print
Copy test files into consume
sudo rsync -av --progress \
--include='*/' \
--include='*.pdf' --include='*.PDF' \
--include='*.jpg' --include='*.JPG' \
--include='*.jpeg' --include='*.JPEG' \
--include='*.png' --include='*.PNG' \
--include='*.tif' --include='*.TIF' \
--include='*.tiff' --include='*.TIFF' \
--exclude='*' \
/srv/qios/imports/paperless_source_test/ \
/srv/qios/data/paperless/consume/
Watch Paperless
sudo docker logs -f paperless
21. Decision
For now:
- Keep this page as the operating checkpoint.
- Do not redesign the whole system.
- Validate Paperless ingestion manually.
- Then build the recursive ingestor as a standalone toolbox tool.
The system moves forward when the ingest path is proven, not when the architecture is prettier.
#### 40_dev_testing/
##### momscare/
###### 2026-05-17_momcare_app_qa_checklist.md
```text
---
title: MomCare App QA Checklist
date: 2026-05-17
type: qa-checklist
app: MomCare
status: draft
tags:
- momcare
- qa
- testing
- checklist
- obsidian
---
# MomCare App QA Checklist
**Date Tested:**
**Tester:** Cody
**App Version / Branch:**
**Device:**
**Browser / OS:**
**Environment:** Local / Dev / Production
---
## 1. App Startup & Access
- [ ] App opens without crashing.
- [ ] No console errors appear on initial load.
- [ ] App loads within a reasonable time.
- [ ] User can access the main dashboard/home screen.
- [ ] App works on desktop.
- [ ] App works on mobile.
- [ ] Layout does not break on small screens.
- [ ] Navigation/menu is visible and usable.
- [ ] Page refresh does not break the app.
- [ ] Direct URL navigation works if applicable.
### Notes
---
## 2. Main Dashboard
- [ ] Dashboard clearly shows today’s care status.
- [ ] Dashboard shows the current date.
- [ ] Dashboard shows the caregiver name or active user if applicable.
- [ ] Dashboard shows urgent/open care items.
- [ ] Dashboard shows recent logs or last update.
- [ ] Dashboard shows upcoming appointments or reminders.
- [ ] Dashboard separates urgent from routine.
- [ ] Dashboard is readable at a glance.
- [ ] Dashboard does not feel cluttered.
- [ ] Dashboard has clear buttons for adding new entries.
### Notes
---
## 3. Daily Care Log
- [ ] User can create a new daily care log.
- [ ] Date defaults to today.
- [ ] User can edit the date if needed.
- [ ] User can add morning notes.
- [ ] User can add afternoon notes.
- [ ] User can add evening notes.
- [ ] User can save partial entries.
- [ ] User can edit saved entries.
- [ ] User can delete or archive incorrect entries.
- [ ] App confirms when an entry is saved.
- [ ] App warns before deleting.
- [ ] Saved logs appear in the correct order.
- [ ] Logs do not duplicate after saving.
- [ ] Required fields are clear.
- [ ] Optional fields are clearly optional.
### Notes
---
## 4. Vitals Tracking
- [ ] User can enter blood pressure.
- [ ] Blood pressure format is easy to understand.
- [ ] User can enter heart rate.
- [ ] User can enter oxygen saturation.
- [ ] User can enter temperature.
- [ ] User can enter glucose.
- [ ] User can enter pain level.
- [ ] User can mark whether vitals were taken before or after eating.
- [ ] User can add notes about symptoms or context.
- [ ] App handles missing vitals without crashing.
- [ ] App flags unusual values visually, if that feature exists.
- [ ] App does not provide unsafe medical advice.
- [ ] Vitals save correctly.
- [ ] Vitals display correctly in history.
- [ ] Vitals can be edited if entered wrong.
- [ ] Units are clear: °F, bpm, %, mg/dL, etc.
### Notes
---
## 5. Oxygen / Breathing Equipment Tracking
- [ ] User can record oxygen tubing check.
- [ ] User can record whether tubing has kinks.
- [ ] User can record oxygen tank count.
- [ ] User can record full tanks.
- [ ] User can record empty tanks.
- [ ] User can record concentrator status if applicable.
- [ ] User can record charger/battery status.
- [ ] User can mark needs reorder.
- [ ] App clearly shows low oxygen supply alerts if applicable.
- [ ] App allows caregiver notes for breathing treatments.
- [ ] App handles not checked without treating it as failure.
### Notes
---
## 6. Meals / Food / Intake
- [ ] User can log breakfast.
- [ ] User can log lunch.
- [ ] User can log dinner.
- [ ] User can log snacks.
- [ ] User can log drinks.
- [ ] User can mark appetite: good / okay / poor.
- [ ] User can note food reactions or stomach issues.
- [ ] User can mark after eating when logging glucose.
- [ ] Food entries save correctly.
- [ ] Food history is easy to review.
- [ ] App does not make the meal log too complicated.
### Notes
---
## 7. Hygiene / Bathroom / Personal Care
- [ ] User can log bathroom assistance.
- [ ] User can log hygiene assistance.
- [ ] User can use respectful wording, not demeaning labels.
- [ ] User can log wipes/cleaning.
- [ ] User can log clothing or bedding change if applicable.
- [ ] User can mark not needed.
- [ ] User can add private caregiver notes.
- [ ] Entries are easy to complete quickly.
- [ ] App avoids making routine care feel overly clinical.
### Notes
---
## 8. Safety Scan
- [ ] User can complete a daily safety scan.
- [ ] Checklist includes kitchen.
- [ ] Checklist includes living room.
- [ ] Checklist includes bathroom path.
- [ ] Checklist includes bedroom path.
- [ ] Checklist includes oxygen tubing.
- [ ] Checklist includes fall hazards.
- [ ] Checklist includes clutter/laundry.
- [ ] Checklist includes floor hazards.
- [ ] User can mark each area as clear / needs attention / not checked.
- [ ] User can add notes.
- [ ] User can create follow-up tasks from safety issues.
- [ ] Safety scan saves to the daily log.
### Notes
---
## 9. Tasks & Follow-Ups
- [ ] User can create a task.
- [ ] User can assign a task category.
- [ ] User can set priority.
- [ ] User can set due date.
- [ ] User can mark task as done.
- [ ] User can edit task.
- [ ] User can delete/archive task.
- [ ] Tasks can be linked to appointments, care logs, or provider instructions.
- [ ] Open tasks are visible on dashboard.
- [ ] Completed tasks are still accessible in history.
- [ ] App separates care tasks from admin tasks.
- [ ] App separates urgent tasks from routine follow-ups.
### Notes
---
## 10. Appointments
- [ ] User can add an appointment.
- [ ] User can enter appointment type.
- [ ] User can enter provider/location.
- [ ] User can enter date and time.
- [ ] User can add prep notes.
- [ ] User can add transportation notes.
- [ ] User can add follow-up notes after appointment.
- [ ] Appointment appears on dashboard or calendar view.
- [ ] Appointment can be edited.
- [ ] Appointment can be canceled/archived.
- [ ] Appointment does not disappear after the date passes.
- [ ] Past appointments are easy to review.
### Notes
---
## 11. Provider / MyChart Task Capture
- [ ] User can enter provider task manually.
- [ ] User can paste copied MyChart/task text.
- [ ] User can upload or attach screenshot/photo if supported.
- [ ] User can categorize provider tasks.
- [ ] User can mark task source: MyChart / provider / phone call / discharge papers / other.
- [ ] User can mark urgency.
- [ ] User can link provider task to Mom’s care record.
- [ ] User can mark provider task as scheduled.
- [ ] User can mark provider task as completed.
- [ ] App preserves original text/source notes.
### Notes
---
## 12. Voice / Quick Capture
- [ ] User can quickly add a note without filling out a huge form.
- [ ] User can capture messy real-life notes and clean them later.
- [ ] User can add quick note from dashboard.
- [ ] Quick notes are timestamped.
- [ ] Quick notes can be converted into tasks.
- [ ] Quick notes can be converted into care log entries.
- [ ] Quick notes can be edited after capture.
- [ ] App does not force perfection during capture.
### Notes
---
## 13. Search & History
- [ ] User can search care logs.
- [ ] User can search tasks.
- [ ] User can search appointments.
- [ ] User can filter by date.
- [ ] User can filter by category.
- [ ] User can filter by status.
- [ ] User can find a previous day’s log quickly.
- [ ] User can review trends without hunting.
- [ ] Search results are clear and readable.
### Notes
---
## 14. Reports / Export
- [ ] User can generate a daily summary.
- [ ] User can generate a weekly summary.
- [ ] User can generate an appointment prep summary.
- [ ] User can export to Markdown.
- [ ] User can export to PDF if supported.
- [ ] Export includes date range.
- [ ] Export includes vitals.
- [ ] Export includes tasks.
- [ ] Export includes appointments.
- [ ] Export includes caregiver notes.
- [ ] Export avoids clutter.
- [ ] Export is readable by a provider/family member.
- [ ] Export does not expose unnecessary private notes unless selected.
### Notes
---
## 15. Data Integrity
- [ ] Saved data persists after refresh.
- [ ] Saved data persists after closing/reopening app.
- [ ] Editing one entry does not change unrelated entries.
- [ ] Deleting one entry does not delete unrelated data.
- [ ] Duplicate records are not created accidentally.
- [ ] Dates are stored correctly.
- [ ] Times are stored correctly.
- [ ] Empty fields do not break the app.
- [ ] Special characters do not break saving.
- [ ] Long notes do not break layout or database save.
- [ ] App handles connection/database errors gracefully.
### Notes
---
## 16. Error Handling
- [ ] App shows useful error messages.
- [ ] Error messages explain what went wrong.
- [ ] Error messages tell user what to do next.
- [ ] App does not expose raw technical errors to normal users unless in dev mode.
- [ ] Failed saves are clearly shown.
- [ ] User does not think something saved when it failed.
- [ ] App protects against accidental duplicate submissions.
- [ ] App handles invalid input without crashing.
### Notes
---
## 17. UI / UX Sanity Check
- [ ] Buttons are clearly labeled.
- [ ] Forms are not too long.
- [ ] Most common actions are easy to reach.
- [ ] Text is readable.
- [ ] Spacing is clean.
- [ ] Important information is visually prioritized.
- [ ] Urgent items stand out.
- [ ] Routine items do not scream for attention.
- [ ] Mobile layout is usable one-handed.
- [ ] The app feels calm, not chaotic.
- [ ] The app supports caregiver reality, not fantasy-office workflow.
### Notes
---
## 18. Accessibility & Low-Energy Use
- [ ] App can be used when caregiver is tired.
- [ ] App can be used quickly during interruptions.
- [ ] Labels are plain language.
- [ ] Click/tap targets are large enough.
- [ ] Color is not the only way status is shown.
- [ ] Important items have text labels.
- [ ] Forms can be completed in under 1–2 minutes where possible.
- [ ] App does not require perfect typing.
- [ ] App supports capture now, organize later.
### Notes
---
## 19. Privacy / Permissions
- [ ] Sensitive notes are not exposed on public screens.
- [ ] Export does not include private notes by default.
- [ ] User roles/permissions work if applicable.
- [ ] Family-facing view is separate from caregiver/admin view if applicable.
- [ ] App does not leak private data in console logs.
- [ ] App does not store unnecessary sensitive data.
- [ ] Backups/export files are named clearly.
### Notes
---
## 20. Final Retest Checklist
- [ ] App still starts.
- [ ] Dashboard still loads.
- [ ] Daily log still saves.
- [ ] Vitals still save.
- [ ] Tasks still save.
- [ ] Appointments still save.
- [ ] Search/history still works.
- [ ] No new console errors.
- [ ] Previous bug is fixed.
- [ ] No obvious new bug was introduced.
- [ ] Updated behavior matches the requested fix.
- [ ] Documentation/notes were updated if behavior changed.
### Notes
---
# 2026-05-18 Initial Smoke Pass
**Environment:** Local dev
**URL:** `http://127.0.0.1:5173`
**Build:** Passed via `npm run build`
**Direct route probe:** `/`, `/vitals`, `/tasks`, and `/admin/dashboard` all returned HTTP 200 in local dev
**Rendered browser validation:** Blocked in this session because sandboxed Chromium/Edge headless runs failed with Windows access-denied profile/lock errors
## Initial Findings
### ISSUE-001 - README/docs alignment is not usable yet
**Priority:** P1
**Type:** Docs
**Area:** Documentation
**Status:** Open
**Expected**
MomsCare should have a real README that explains what the app is, how to run it locally, and how the caregiver/admin surfaces are organized.
**Actual**
`apps/frontend/README.md` is still the stock Vite template, and the repo root `README.md` only contains `# momscare`.
**Evidence**
- `apps/frontend/README.md` contains generic Vite boilerplate
- `README.md` at the repo root is only a one-line placeholder
**Impact**
Checklist items around local run instructions, troubleshooting, and current app behavior cannot be verified from the repo docs.
### ISSUE-002 - Production bundle size is a mobile-load risk
**Priority:** P2
**Type:** Performance
**Area:** Startup / Mobile
**Status:** Open
**Expected**
The caregiver app should stay lean enough that startup remains reasonable on phone-class devices.
**Actual**
The current production build emits a single `assets/index-DRPCntrI.js` bundle of about `1,386.74 kB`, and Vite warns that some chunks are larger than the recommended threshold.
**Evidence**
Observed in the local `npm run build` output during this smoke pass.
**Impact**
This does not fail the build, but it is a real risk against the checklist goals for quick loading and low-friction mobile use.
# Issue Capture Template
## ISSUE-000 — Short Title
**Priority:** P0 / P1 / P2 / P3
**Type:** Bug / UI / UX / Data / Performance / Feature / Safety / Export
**Area:** Dashboard / Daily Log / Vitals / Tasks / Appointments / Reports / Other
**Status:** Open / Sent to AI / Fixed / Retest Needed / Closed / Deferred
### Expected
What should have happened?
### Actual
What happened instead?
### Steps to Reproduce
- [ ] Step 1
- [ ] Step 2
- [ ] Step 3
### Evidence
Screenshot, traceback, console error, wrong output, broken layout, etc.
### Impact
Why does this matter?
### AI Instruction
Tell the AI exactly what to fix.
Example:
Fix the daily care log save behavior so entries persist after refresh. Do not change unrelated dashboard layout. Add a simple test or manual verification note showing that saved logs remain visible after reload.
---
# AI Work Order Template
## MomCare App Work Order
**Goal:**
Fix the highest-priority testing issues without redesigning unrelated parts of the app.
## Rules
- [ ] Fix P0 and P1 issues first.
- [ ] Do not refactor unrelated architecture.
- [ ] Do not rename fields unless required.
- [ ] Preserve existing data structure unless a migration is necessary.
- [ ] Keep forms fast and caregiver-friendly.
- [ ] Update documentation if behavior changes.
- [ ] Summarize files changed, fixes made, and how to retest.
## Issues to Fix
- [ ] ISSUE-001:
- [ ] ISSUE-002:
- [ ] ISSUE-003:
## Done Criteria
- [ ] App launches.
- [ ] Core care log flow works.
- [ ] Vitals/tasks/appointments save correctly.
- [ ] No new obvious console errors.
- [ ] Retest checklist passes.
qiaccessstart/
2026-05-17_qiaccess_start_qa_checklist.md
---
title: QiAccess Start QA Checklist
date: 2026-05-17
type: qa-checklist
app: QiAccess Start
status: draft
tags:
- qiaccess
- qios
- qa
- testing
- checklist
- obsidian
---
# QiAccess Start QA Checklist
**Date Tested:**
**Tester:** Cody
**App Version / Branch:**
**Device:**
**Browser / OS:**
**Environment:** Local / Dev / Production
**Server / Host:** QiServer / Localhost / Tailscale / Cloudflare
**Repo / Path:**
---
## 1. App Startup & Access
- [ ] QiAccess Start opens without crashing.
- [ ] Homepage loads without blank screen.
- [ ] No console errors appear on initial load.
- [ ] App loads within a reasonable time.
- [ ] App works from local URL.
- [ ] App works from Tailscale URL if applicable.
- [ ] App works from Cloudflare/public URL if applicable.
- [ ] Page refresh does not break routing.
- [ ] Direct navigation to internal pages works.
- [ ] Browser back/forward navigation works.
- [ ] Favicon/title display correctly.
- [ ] App gracefully handles unavailable backend services.
### Notes
---
## 2. Main Landing Page / Home Screen
- [ ] Home screen clearly communicates this is QiAccess Start.
- [ ] Primary system links are visible.
- [ ] Most important services are easy to reach.
- [ ] Layout does not feel cluttered.
- [ ] Sections are visually separated.
- [ ] Cards/buttons are readable at a glance.
- [ ] Mobile layout remains usable.
- [ ] Desktop layout uses space well.
- [ ] Important alerts/status items are visible.
- [ ] User can quickly tell what to click next.
### Notes
---
## 3. Navigation & Information Architecture
- [ ] Main navigation is visible and predictable.
- [ ] Navigation labels are clear.
- [ ] QiAccess / QiNexus / QiNote / QiTools naming is consistent.
- [ ] Internal pages follow the same layout pattern.
- [ ] User can return to the home screen easily.
- [ ] Dead links are not present.
- [ ] External links open correctly.
- [ ] Links to local services use correct ports/paths.
- [ ] Links to Tailscale services work if configured.
- [ ] Links to Cloudflare services work if configured.
- [ ] Broken or unavailable services show a helpful message.
### Notes
---
## 4. Service Directory
- [ ] Service directory displays all expected services.
- [ ] Each service has a clear name.
- [ ] Each service has a short description.
- [ ] Each service has the correct local URL.
- [ ] Each service has the correct remote/private URL if applicable.
- [ ] Each service shows category/domain.
- [ ] Each service shows status if supported.
- [ ] Each service shows whether it is local-only, Tailscale, Cloudflare, or public.
- [ ] Service cards are easy to scan.
- [ ] Service metadata is not duplicated or conflicting.
- [ ] Deprecated services are hidden or clearly marked.
- [ ] Experimental services are clearly marked.
### Notes
---
## 5. Core Service Links
- [ ] Paperless-ngx link works.
- [ ] NocoDB link works.
- [ ] Open WebUI link works.
- [ ] Portainer link works.
- [ ] Wiki.js link works.
- [ ] Qdrant link/status is represented correctly.
- [ ] Neo4j link works if enabled.
- [ ] Uptime Kuma link works if enabled.
- [ ] SolidTime link works if enabled.
- [ ] n8n link works if enabled.
- [ ] Homepage link works if separate from QiAccess Start.
- [ ] Cloudflare tunnel/service links are correct if applicable.
### Notes
---
## 6. System Status / Health Indicators
- [ ] App shows system status if supported.
- [ ] Online/offline states are accurate.
- [ ] Status indicators are not misleading.
- [ ] Status checks fail gracefully.
- [ ] Service unavailable state is clear.
- [ ] App does not hang while checking service status.
- [ ] Refresh/update status button works if present.
- [ ] Last checked timestamp appears if present.
- [ ] Critical services are visually distinguished from optional services.
- [ ] Local-only limitations are clear.
### Notes
---
## 7. QiAccess Knowledge System Links
- [ ] Link to core documentation works.
- [ ] Link to governance documentation works.
- [ ] Link to architecture documentation works.
- [ ] Link to data documentation works.
- [ ] Link to compute/integrations documentation works.
- [ ] Link to services/apps documentation works.
- [ ] Link to operations/templates documentation works.
- [ ] Link to appendices/changelog works.
- [ ] Documentation links follow the numbered folder structure.
- [ ] App does not duplicate the knowledge base unnecessarily.
- [ ] App points users to the source of truth.
### Notes
---
## 8. QiNexus / Storage Map
- [ ] QiNexus root folders are represented correctly.
- [ ] Folder order follows the intended numbered hierarchy.
- [ ] Root categories include inbox.
- [ ] Root categories include workbench.
- [ ] Root categories include timeline.
- [ ] Root categories include life.
- [ ] Root categories include people.
- [ ] Root categories include business.
- [ ] Root categories include finance.
- [ ] Root categories include legal.
- [ ] Root categories include tech.
- [ ] Root categories include assets.
- [ ] Root categories include data.
- [ ] Root categories include reference.
- [ ] Root categories include archive.
- [ ] Root categories include system.
- [ ] Display names are clean and human-friendly.
- [ ] Numeric codes are visible only where helpful.
- [ ] Folder map does not force alphabetical order.
### Notes
---
## 9. Tools / Toolbox Integration
- [ ] QiOne / local toolbox entry point is visible.
- [ ] Tool categories are clear.
- [ ] Proven tools are separated from beta/experimental tools.
- [ ] Tool links or launch instructions are accurate.
- [ ] Tool descriptions explain the job in plain language.
- [ ] Standalone scripts are represented with README/manifest expectations.
- [ ] App does not present broken tools as production-ready.
- [ ] Directory Markmind Mapper is listed correctly if included.
- [ ] PDF splitter/compiler tools are listed correctly if included.
- [ ] Text extractor tools are listed correctly if included.
- [ ] Video/audio tools are listed correctly if included.
- [ ] Remote SSH/sys tools are listed correctly if included.
### Notes
---
## 10. Local-First / Network Mode Clarity
- [ ] User can tell whether they are using local, Tailscale, or public access.
- [ ] Local-only links are clearly labeled.
- [ ] Private remote links are clearly labeled.
- [ ] Public links are clearly labeled.
- [ ] App does not expose sensitive local URLs in public contexts unless intended.
- [ ] Cloudflare links do not accidentally point to localhost.
- [ ] Tailscale links are not shown as public links.
- [ ] App warns when a service requires VPN/private access.
- [ ] App avoids confusing duplicate links.
- [ ] Access mode is understandable at a glance.
### Notes
---
## 11. Authentication / Permissions
- [ ] Protected areas require login if applicable.
- [ ] Public areas do not expose sensitive data.
- [ ] Admin-only links are clearly marked.
- [ ] App avoids displaying passwords, keys, tokens, or secrets.
- [ ] Service links do not embed credentials.
- [ ] Environment variables are not exposed in frontend output.
- [ ] Console logs do not expose sensitive data.
- [ ] Error pages do not expose secrets.
- [ ] Permission boundaries are documented if applicable.
- [ ] Family/user-facing areas are separate from admin/dev areas if applicable.
### Notes
---
## 12. Search / Quick Find
- [ ] Search input appears if supported.
- [ ] Search can find services by name.
- [ ] Search can find services by category.
- [ ] Search can find documentation links.
- [ ] Search can find tools.
- [ ] Search handles partial terms.
- [ ] Search handles no results gracefully.
- [ ] Search is fast enough to use.
- [ ] Search works on mobile.
- [ ] Search does not break keyboard navigation.
### Notes
---
## 13. Mobile / Low-Friction Use
- [ ] App is usable on a phone.
- [ ] Tap targets are large enough.
- [ ] Text is readable without zooming.
- [ ] Cards do not become too cramped.
- [ ] Important actions are reachable quickly.
- [ ] App does not require precision clicking.
- [ ] User can quickly open a service while busy.
- [ ] Navigation does not bury critical links.
- [ ] Mobile view feels like a control panel, not a squeezed desktop page.
- [ ] App supports low-energy use.
### Notes
---
## 14. UI / UX Sanity Check
- [ ] Visual hierarchy is clear.
- [ ] Most important items are visually prioritized.
- [ ] Labels are plain language.
- [ ] Icons support meaning but do not replace labels.
- [ ] Cards/buttons have consistent styling.
- [ ] Spacing is clean.
- [ ] Page does not feel chaotic.
- [ ] Status colors are understandable.
- [ ] Color is not the only status indicator.
- [ ] User can understand the page without remembering the backend architecture.
- [ ] The app feels like a command center, not a link dump.
### Notes
---
## 15. Data / Config Integrity
- [ ] Service config loads correctly.
- [ ] Missing config does not crash the app.
- [ ] Invalid URL config shows a clear error.
- [ ] Duplicate service records are not shown unless intentional.
- [ ] Categories sort in intended order.
- [ ] Services sort in intended order.
- [ ] Deprecated records are handled correctly.
- [ ] App does not hardcode values that should live in config.
- [ ] Environment-specific settings are separated.
- [ ] Config changes are easy to review.
### Notes
---
## 16. Error Handling
- [ ] Broken service link gives useful feedback.
- [ ] Failed status check gives useful feedback.
- [ ] Missing config gives useful feedback.
- [ ] Failed API/backend call gives useful feedback.
- [ ] App does not show raw stack traces to normal users.
- [ ] Dev errors are available in dev mode.
- [ ] User knows what to do when something fails.
- [ ] App avoids silent failure.
- [ ] Failed state does not destroy the rest of the page.
- [ ] Retry/refresh behavior works if present.
### Notes
---
## 17. Documentation / README Alignment
- [ ] README explains what QiAccess Start is.
- [ ] README explains how to run it locally.
- [ ] README explains how to configure service links.
- [ ] README explains local/Tailscale/Cloudflare access modes.
- [ ] README explains where source config lives.
- [ ] README explains how to add a new service.
- [ ] README explains how to mark services as experimental/deprecated.
- [ ] README includes testing instructions.
- [ ] README includes troubleshooting notes.
- [ ] README matches the current app behavior.
### Notes
---
## 18. Build / Deployment
- [ ] Local dev server starts cleanly.
- [ ] Production build completes without error.
- [ ] Build output works when served.
- [ ] Environment variables are documented.
- [ ] Missing env vars produce clear errors.
- [ ] Static deployment works if applicable.
- [ ] Cloudflare Pages deployment works if applicable.
- [ ] Docker deployment works if applicable.
- [ ] App does not assume a single hardcoded machine path.
- [ ] Build does not include unnecessary files/secrets.
### Notes
---
## 19. Regression / Retest Checklist
Use this after Gemini, Codex, Aider, or another AI tool changes the app.
- [ ] App still starts.
- [ ] Home screen still loads.
- [ ] Main navigation still works.
- [ ] Service directory still displays.
- [ ] Core service links still work.
- [ ] Mobile layout still works.
- [ ] No new console errors.
- [ ] Existing fixed issue remains fixed.
- [ ] No obvious new bug was introduced.
- [ ] Documentation was updated if behavior changed.
- [ ] Config examples still match the app.
- [ ] Production build still succeeds.
### Notes
---
## 20. Final Acceptance Checklist
- [ ] QiAccess Start works as the system front door.
- [ ] User can reach key services quickly.
- [ ] User can understand local/private/public access mode.
- [ ] Service directory is accurate.
- [ ] Documentation links point to the right source of truth.
- [ ] Tool links are accurate and not misleading.
- [ ] Sensitive information is not exposed.
- [ ] App is usable on mobile.
- [ ] App feels calm, clear, and operational.
- [ ] Known issues are documented.
- [ ] AI work queue is clear for remaining fixes.
### Notes
---
# 2026-05-18 Initial Smoke Pass
**Environment:** Local preview
**URL:** `http://127.0.0.1:4173`
**Build:** Passed via `npm run build`
**Direct route probe:** `/`, `/system`, `/knowledge`, and `/quick` all returned HTTP 200 in local preview
**Rendered browser validation:** Blocked in this session because sandboxed Chromium/Edge headless runs failed with Windows access-denied profile/lock errors
## Initial Findings
### ISSUE-001 - Seven-root doctrine is not actually implemented
**Priority:** P1
**Type:** UX / Navigation / Architecture
**Area:** Navigation
**Status:** Open
**Expected**
QiAccess Start should reflect the declared seven roots: Home, Start, Capture, Knowledge, Memory, Insights, and System.
**Actual**
`/start` redirects to `/`, and the visible nav tree exposes only `Home`, `Capture`, `Knowledge`, and `System`. `Memory` and `Insights` exist only as hidden route metadata rather than first-class navigation roots.
**Evidence**
- `src/components/app/routes.tsx` defines `path: "start"` as a redirect to `/`
- `src/lib/navigation.ts` only exports four visible top-level nav items
**Impact**
The app does not match its documented information architecture, which makes the QA checklist and the portal doctrine diverge.
### ISSUE-002 - Blueprint quick link points to a route that does not exist
**Priority:** P1
**Type:** Bug / Docs / Navigation
**Area:** Docs
**Status:** Open
**Expected**
Quick links and doctrine docs should only point to implemented app routes.
**Actual**
`DocLayout.tsx` links to `/system/blueprint`, but the router does not define `/system/blueprint`, `/system/roadmap`, or `/system/security`.
**Evidence**
- `src/components/docs/DocLayout.tsx` links to `/system/blueprint`
- `src/components/app/routes.tsx` only defines `access`, `server`, `storage`, `integrations`, `settings`, and `diagnostics` under `/system`
**Impact**
This creates a docs-to-app mismatch and likely dead links for users following the documented system structure.
### ISSUE-003 - README coverage is missing for the app root
**Priority:** P2
**Type:** Docs
**Area:** Documentation / README Alignment
**Status:** Open
**Expected**
The repo should have a README that explains what QiAccess Start is, how to run it, and how local/private/public access modes work.
**Actual**
There is no `README.md` at the QiAccess Start repo root, so checklist items in section 17 cannot currently pass.
**Impact**
Run/config/access behavior is only inferable from source and docs fragments instead of one canonical operator entrypoint.
# Issue Capture Template
## ISSUE-000 — Short Title
**Priority:** P0 / P1 / P2 / P3
**Type:** Bug / UI / UX / Data / Config / Security / Performance / Docs / Deployment
**Area:** Startup / Home / Navigation / Services / Status / Docs / Tools / Config / Build / Other
**Status:** Open / Sent to AI / Fixed / Retest Needed / Closed / Deferred
### Expected
What should have happened?
### Actual
What happened instead?
### Steps to Reproduce
- [ ] Step 1
- [ ] Step 2
- [ ] Step 3
### Evidence
Screenshot, traceback, console error, broken link, wrong URL, failed build output, etc.
### Impact
Why does this matter?
### AI Instruction
Tell the AI exactly what to fix.
Example:
Fix the QiAccess Start service directory so Paperless-ngx, NocoDB, Open WebUI, Portainer, Wiki.js, SolidTime, n8n, and Uptime Kuma display with correct labels, categories, and access mode tags. Do not redesign the entire layout. Preserve the existing component structure unless required. Add a short README note explaining how to update service links.
---
# AI Work Order Template
## QiAccess Start Work Order
**Goal:**
Fix the highest-priority QiAccess Start issues without redesigning unrelated architecture.
## Rules
- [ ] Fix P0 and P1 issues first.
- [ ] Do not refactor unrelated systems.
- [ ] Do not rename QiAccess / QiNexus / QiNote / QiTools concepts without approval.
- [ ] Preserve the intended numbered hierarchy and source-of-truth structure.
- [ ] Keep the app local-first and access-mode aware.
- [ ] Do not expose secrets, tokens, passwords, or private credentials.
- [ ] Update README or dev notes if behavior/config changes.
- [ ] Summarize files changed, fixes made, and how to retest.
## Issues to Fix
- [ ] ISSUE-001:
- [ ] ISSUE-002:
- [ ] ISSUE-003:
## Done Criteria
- [ ] App launches.
- [ ] Home screen loads.
- [ ] Core service links work.
- [ ] Service directory is accurate.
- [ ] Mobile layout is usable.
- [ ] No new obvious console errors.
- [ ] Production build succeeds.
- [ ] Retest checklist passes.
_index.md
60_knowledge/
90_superseded_sources/
qi_os_home_blueprint.md
# QiAccess Start Operating Blueprint
**Status:** Active doctrine
**Primary runtime:** qiserver
**Knowledge base:** Wiki.js plus repo docs
**Storage backbone:** Google Drive / QiNexus
## Purpose
QiAccess Start is Cody's cognitive front door.
It exists to:
1. reduce cognitive load
2. capture what matters before it disappears
3. open the right tool fast
4. store knowledge in the right place
5. retrieve context when needed
6. surface patterns and insights
7. build toward AI-assisted wisdom
## Root Model
QiAccess Start has seven top-level roots only:
1. `Home`
2. `Start`
3. `Capture`
4. `Knowledge`
5. `Memory`
6. `Insights`
7. `System`
### Root intent
- `Home`: orient the day and expose the shortest useful paths
- `Start`: launch tools, services, projects, and working surfaces
- `Capture`: intake notes, links, reminders, files, and observations fast
- `Knowledge`: point to docs, manuals, runbooks, and reference sources
- `Memory`: preserve timeline, decisions, and continuity once ingestion exists
- `Insights`: hold derived summaries, pattern detection, and future analysis layers
- `System`: expose nested admin, private infrastructure, governance, and diagnostics
## System Subroutes
System owns:
- `/system/access`
- `/system/server`
- `/system/storage`
- `/system/integrations`
- `/system/settings`
- `/system/blueprint`
- `/system/roadmap`
- `/system/security`
- `/system/diagnostics`
These do not become top-level roots.
## Current Build Rule
Prototype inside the existing repo and preserve what already works.
- no repo split
- no auth rebuild
- no deployment churn before flow is validated
- no fake intelligence claims
- static or honest placeholder content is acceptable during stabilization
## Retained Constitutional Rules
The following legacy QiOS rules remain active because they still serve QiAccess Start:
1. one canonical identity per object
2. one clear home per concern
3. metadata precedes automation
4. lineage survives transformation
5. derived systems are not truth sources
6. exposure boundaries must be explicit
7. structural changes earn ADR review
## Legacy Disposition
The older business, tenant, and client-platform blueprint is quarantined.
Keep the useful governance DNA. Do not let the retired model override the seven-root cognitive front door.
qiaccess_start_blueprint.md
# QiAccess Start Blueprint
QiAccess Start is Cody's cognitive front door.
It has seven roots only:
1. Home
2. Start
3. Capture
4. Knowledge
5. Memory
6. Insights
7. System
## Root intent
- `Home`: orient the day and expose the shortest useful paths
- `Start`: open tools, services, projects, and working surfaces
- `Capture`: get thoughts, links, reminders, observations, and files into an intake path fast
- `Knowledge`: link to manuals, Wiki.js, repo docs, and reference material
- `Memory`: timeline, decisions, and context surfaces once ingestion exists
- `Insights`: summaries, pattern detection, reports, and future analysis layers
- `System`: nested admin, private-only tools, diagnostics, storage, and doctrine
## System subroutes
System owns:
- `/system/access`
- `/system/server`
- `/system/storage`
- `/system/integrations`
- `/system/settings`
- `/system/blueprint`
- `/system/roadmap`
- `/system/security`
- `/system/diagnostics`
## Current phase
Phase 1 is stabilization and prototype flow validation:
- fix the SPA build
- align the current app to the seven roots
- preserve working launcher and link behavior
- freeze legacy surfaces in place
- validate Capture as the first real operational path
## Phase 0 — Freeze and protect (QiNexus)
Goal: prevent accidental loss during reorganization.
**Mandatory Rules:**
- Do not delete anything.
- Do not let an AI move files directly.
- Create and use the `130_system/qinexus_cleanup` folder.
- Generate manifests and reports before any moves.
### Cleanup System Structure
Located at `G:\My Drive\QiNexus\130_system\qinexus_cleanup`:
- `rules/`: Governance and movement criteria.
- `reports/`: Audit results and analysis.
- `manifests/`: Snapshots of directory state.
- `quarantine/`: Staging for disputed or risky items.
- `scripts/`: Automation for audit and verification.
- `approved_moves/`: Verified move instructions for human execution.
## Daily-use priority
The shortest path to daily use is:
1. Start opens tools
2. Capture reduces friction
3. Knowledge points to real docs
4. System keeps private infrastructure visible
5. Storage shows QiNexus targets
6. Memory and Insights remain honest placeholders
7. Paperless ingestion becomes the first proven intake pipeline
## QiNexus Root Bands (Doctrine)
The directory structure is organized into numeric bands to maintain priority and categorization:
| Band | Root | Purpose |
| :--- | :--- | :--- |
| 00 | `00_inbox` | Temporary intake and staging |
| 10 | `10_workbench` | Active projects, tasks, and drafts |
| 20 | `20_timeline` | Journals, logs, and chronological records |
| 30 | `30_life` | Routines, wellness, personal operations |
| 40 | `40_people` | Family, Mom's Care, relationships |
| 50 | `50_business` | Client work, branding, revenue systems |
| 60 | `60_finance` | Bills, budgets, accounts, reports |
| 70 | `70_legal` | Case files, court filings, evidence |
| 80 | `80_tech` | Apps, server configs, architecture |
| 90 | `90_assets` | Media, design templates, branding assets |
| 100 | `100_data` | Datasets, exports, CSV/JSON storage |
| 110 | `110_reference` | Laws, guides, external research |
| 120 | `120_archive` | Frozen, inactive, and legacy records |
| 130 | `130_system` | Manifests, rules, indexes, automation |
readme.md
These files are preserved as superseded source/reference material. They are not active doctrine unless merged into the sectioned blueprint.
tech_stack_markmind.md
# QiOS Tech Stack
## Runtime Layer (Cloud)
### Canonical Metadata Truth
#### Postgres
#### Supabase
### Queues & Cache
#### Redis
### Knowledge Graph (Derived)
#### Neo4j
### Vector Retrieval
#### pgvector
### Admin Surface
#### NocoDB
### Serverless Compute
#### Cloudflare Workers
## Runtime Layer (Local & Edge)
### Local Processing
#### Python Services
##### OCR
##### Extraction & Chunking
##### Embeddings Generation
##### Local APIs
## Frontend & Delivery
### Monorepo Management
#### PNPM Workspaces
### Web Applications
#### React / Next.js
#### TailwindCSS & PostCSS
#### Codex
## Documentation & Governance
### Blueprint Architecture
#### MKDocs (Material Theme)
#### Markdown (Universal Metadata Profile)
### Automation
#### Python Hooks & Macros
#### YAML & JSON Schema Validators
## Deployment & Infrastructure
### Version Control
#### Git & GitHub Actions
### Local Scripting
#### Batch (rebuild.bat)
#### PowerShell
indexes/
maps/
10_changelog.md
# Changelog
## v0.5 - QiAccess Start Doctrine Merge
**Date**: 2026-05-10
### What Changed
- Reframed the master blueprint around the active QiAccess Start seven-root portal
- Rewrote the landing, governance, architecture, and portal overview pages to match current doctrine
- Preserved useful constitutional rules around identity, metadata, naming, ADRs, and derived truth boundaries
- Added an explicit legacy quarantine appendix for older QiOS, QiOne, tenant, and client-platform doctrine
- Marked retained application material as reference-only when it still reflects the older runtime model
### Key Decisions Made
- QiAccess Start is the active portal doctrine
- Seven roots remain the only top-level navigation contract
- System stays nested under the portal rather than expanding into new roots
- Legacy doctrine is preserved by quarantine, not by co-owning the active blueprint
### Known Remaining Work
- deeper legacy pages still need page-by-page revalidation
- some structure, identity, and operations pages still carry older platform terminology
- doc generation and nav indexes should be refreshed with the existing rebuild scripts
## v0.4 - Reconciliation and Canonicalization Release
**Date**: 2026-03-27
### What Changed
- Established `qios-master-blueprint` as standalone canonical doctrine repo
- Defined the 3-band model (Core / Platform / Domain)
- Mapped all live schemas to their bands
- Populated registry inventory and band assignments
- Added naming rules with canonical naming contract
- Added machine validation and supporting schemas
- Consolidated earlier narrative ontology while retiring overlapping concepts
### Key Decisions Made
- ADR-0001: Blueprint scope locked
- ADR-0002: Single domain rule adopted
- ADR-0003: Band model adopted
- ADR-0006: Narrative and knowledge layer consolidation adopted
20_glossary.md
# Glossary
## Active Terms
| Term | Definition |
|---|---|
| **QiAccess Start** | The active portal and cognitive front door |
| **QiOS** | The retained constitutional architecture and governance substrate behind the portal |
| **qiserver** | The protected runtime host for internal services |
| **QiNexus** | The storage backbone and folder discipline model |
| **Knowledge** | Curated readable source material such as Wiki.js and repo docs |
| **Memory** | The future continuity layer for timeline, decisions, and relationships |
| **Insights** | The derived analysis layer that must always point back to sources |
| **Canonical source** | A governed record, owned document, or verified runtime fact |
| **Derived output** | AI summaries, graph links, exports, or other generated artifacts that are not truth by themselves |
| **ADR** | Architectural Decision Record used for structural changes and exceptions |
## Governance Terms
| Term | Definition |
|---|---|
| **Canonical identity** | The stable reference that survives rename, move, and reclassification |
| **Lineage** | Traceable history from origin to current state |
| **Ownership** | The layer, page, schema, or service responsible for lifecycle and truth |
| **Quarantine** | Reference-only retention for legacy doctrine that is not active truth |
| **Protected surface** | A page, service, or runtime area that must remain behind explicit access controls |
## Legacy Terms
| Term | Current Status |
|---|---|
| **QiOne** | Legacy or future-state platform naming; not the active portal name |
| **QiPortals / QiSuite** | Legacy portal naming retained for reference only |
| **Tenant** | Legacy or future-state access model term; not the default current runtime assumption |
| **RBAC** | Still a valid access-control concept, but older tenant-bound descriptions must be revalidated before reuse |
30_migration_notes.md
# Migration Notes
This document tracks known migration concerns, schema drift, and reconciliation items from the v0.4 canonicalization effort.
## v0.4 Reconciliation Items
### Resolved
| Item | Resolution |
|---|---|
| 50+ unindexed foreign keys across all schemas | ✅ Indexes added in v0.4 migration |
| `nods_page` / `nods_page_section` — RLS enabled, no policies | ✅ Public read policy added |
| `todos` RLS evaluating `auth.uid()` per row | ✅ Rewritten with `(SELECT auth.uid())` |
| `qione.update_modified_column` mutable search_path | ✅ Pinned to `search_path = ''` |
| Principles count inconsistency (10 vs 7) | ✅ v0.4 canonical — 7 principles |
| Blueprint scattered across working notes and README files | ✅ Consolidated into this repo |
### Outstanding
| Item | Priority | Notes |
|---|---|---|
| `vector` extension in `public` schema | Medium | Should be moved to `extensions` schema — requires Supabase dashboard action |
| Leaked password protection disabled | High | Enable in Supabase Auth dashboard → [remediation](https://supabase.com/docs/guides/auth/password-security#password-strength-and-leaked-password-protection) |
| `enforce_structure.py` not in CI as blocking check | Medium | Wire into GitHub Actions second job |
| "Railway" references in earlier docs superseded by Supabase | Low | Resolved in this blueprint — no action needed in DB |
| Products schema not yet defined | Low | ADR required before creation |
| Templates schema not yet defined | Low | ADR required before creation |
| `public.match_page_sections` mutable search_path | Medium | Function still has mutable search_path — pin in next migration |
## Schema Migration History
| Migration | Applied | Description |
|---|---|---|
| `add_missing_fk_indexes_all_schemas` | 2026-03-27 | Added 50+ FK indexes across all schemas |
| `fix_security_rls_policies_and_functions` | 2026-03-27 | RLS policies, search_path fixes, todos policy rewrite |
## Naming Contract Change Log
| Previous | Current | Reason |
|---|---|---|
| No standard | `{domain}_{name}_{QXXXXXX}.ext` | Canonicalized in v0.4 |
| Informal table naming | `qi{domain}` schema naming | Enforced via domain registry |
40_legacy_csv_migration_plan.md
# Legacy CSV Migration Plan & Audit
## 1. Executive Summary
The legacy CSV corpus contains immense operational value spanning CRM, accounting, and proprietary knowledge extraction. However, it is heavily polluted with duplicate subsets, deprecated structural matrixes, and extremely sensitive plaintext credential exports.
Importing this data directly into the canonical `qione` or `qiarchive` schemas is prohibited. It would violate single-source-of-truth principles and expose the system to dirty, non-normalized types.
Instead, all imported files must pass through `staging` isolated tables before mapped normalization.
## 2. Sensitive / Quarantine List 🚨
**IMMEDIATE ACTION**: The following files must be relocated to an offline encrypted store (e.g., 1Password or physical vault) and permanently shredded from the migration workspace. They must **never** touch Supabase or any web-facing database schema.
* `Chrome Passwords.csv` - Contains clear text browser credentials.
* `API Recovery Keys ... .csv` - Contains unencrypted infrastructure break-glass keys.
## 3. Migration Families
Files have been bucketed into 6 structural families to allow incremental, logical migration.
### Family 1: Contacts & CRM (The Entry Point)
* `contacts_cleaned.csv`, `contact_merged.csv`, `vendors_merged.csv`
### Family 2: Knowledge & Blueprint Memory
* `20251116_biz_ai_kb_full.csv`, `20251116_biz_blueprints_workflows_list.csv`
* `Notes_001.csv`, `gina_memory_rows.csv`
### Family 3: Communications & Timeline
* `raw_emails_combined.csv`, `db_RawEmails_KB ... .csv`, `Emails_001.csv`
* `conversations.csv`, `Meetings_001.csv`, `qimessages_C_001.csv`
### Family 4: Catalog & Services
* `master_services_catalog__all.csv`, `service_matrix.csv`, `Products_001.csv`
### Family 5: Finance & Accounting
* `Internal COA (OS)...csv`, `QiCode_Chart_of_Accounts_Mapping.csv`
* `Sales Orders_001.csv`, `Ordered Items_001.csv`, `Quoted Items_001.csv`, `Invoices_001.csv`
### Family 6: Governance & System Metadata (Archive/Preserve Only)
* `qios_rules_v1_1.csv`, `qios_matrix.csv`, `front_matter_schema_v1.csv`
* `realms_registry.csv`, `sensitivity_classification_*.csv`
* `Roles_001.csv`, `Modules_001.csv`, `file_system_nodes.csv`
---
## 4. Staging Schema Proposal
A dedicated `staging` schema is required inside Supabase. This acts as Zone B.
**Zone A** - Immutable Raw files (Stored on S3/Disk)
**Zone B** - `staging.raw_*` (Supabase: direct 1:1 CSV column dumps, text types only)
**Zone C** - `staging.norm_*` (Supabase: SQL views/tables converting dates, mapping UUIDs)
**Zone D** - Canonical Domains (e.g., `qione.contact`, `qicase.event`, `qihome.invoice`)
### Expected Staging Tables:
* `staging.csv_import_batches` (Tracks migration jobs)
* `staging.raw_contacts`
* `staging.raw_companies`
* `staging.raw_notes`
* `staging.raw_emails`
* `staging.raw_messages`
* `staging.raw_transactions`
* `staging.raw_products`
* `staging.raw_services`
* `staging.raw_blueprints`
* `staging.raw_agent_memory`
---
## 5. Canonical Destination Mapping
Once Zone C (normalized views) establishes clean relationships and valid types, data will be piped to canonical tables owned by specific downstream domains:
| Family | Staging Norm View | Canonical Target |
|--------|-------------------|------------------|
| **Contacts** | `staging.norm_contacts` | `qione.contact`, `qione.organization` |
| **Knowledge** | `staging.norm_notes` | `qiknowledge.note`, `qiarchive.file_record` |
| **Emails/Comms** | `staging.norm_messages` | `qicase.communication`, `qivault.raw_extract` |
| **Finance** | `staging.norm_transactions` | `qihome.transaction`, `qihome.invoice` |
| **Catalog** | `staging.norm_services` | `qihome.service_tier`, `qione.product` |
---
## 6. Matrix & Disposition
Every file maps to one of four rules:
1. **Quarantine**: Shred from disk. Never import. (Passwords, Keys)
2. **Archive**: Superseded by current blueprint. Do not import. Keep for reference. (Legacy governance matrixes)
3. **Preserve Only**: Keep raw but do not import. System irrelevant. (Roles, file system nodes)
4. **Migrate**: Send to staging. (Contacts, KBs, Emails, Finance)
## 7. Action Plan: First 10 Steps
To prevent contamination, we will prove the pipeline with the **Contacts** family first.
1. **Delete & Shred** `Chrome Passwords.csv` and `API Recovery Keys` from the staging directory to prevent accidental upload.
2. Initialize `staging` schema via a new standard Supabase migration file.
3. Create generic `staging.csv_import_batches` to track what file was ingested when.
4. Create empty table `staging.raw_contacts` with `TEXT` column types matching the header of `contacts_cleaned.csv`.
5. Write a small Python ingestion script using `supabase-py` or `psycopg2` to upload `contacts_cleaned.csv` into `raw_contacts`.
6. Query `staging.raw_contacts` to find distinct states, nulls, and duplicate email addresses.
7. Create `staging.norm_contacts` view casting text to timestamps, booleans, and generating deterministic UUIDs (e.g., using `uuid_generate_v5` against the email).
8. Verify the `norm_contacts` entity shape against the blueprint's `qione.contact` requirements.
9. Execute a bulk `INSERT INTO qione.contact SELECT * FROM staging.norm_contacts`.
10. Once CRM data is verified live in the Admin portal, repeat steps 4-9 for **Knowledge** (using `Notes_001.csv`).
50_legacy_salvage.md
# Legacy Constitution Salvage Pass
This appendix preserves the earlier salvage reasoning from the older QiOS master blueprint.
It remains useful for understanding what governance DNA was intentionally kept, but it is no longer the final word on active doctrine.
For the current quarantine status of legacy material, use:
- `qiaccess_start_legacy_quarantine.md`
## Context
During the earlier `v0.4` transition, parts of the old QiOne constitution were audited for salvage.
The goal was to keep useful organizational instincts without reintroducing obsolete ontology, duplicate identity systems, or overbuilt structure.
## What Was Kept and Integrated
| Concept | Action Taken | Location | Why It Still Matters |
|---|---|---|---|
| Front matter profile | Reframed | `standards/content_metadata_profile.yaml` | Useful for note hygiene, but subordinate to canonical source ownership |
| Sensitivity and classification | Normalized | `registry/sensitivity_classification.yaml` | Still useful for operational security and handling |
| Realms | Demoted | `registry/workspace_realms.yaml` | Still useful as a UX filtering label, not as ontology |
| Ignore patterns | Absorbed | runtime conventions | Useful for keeping ingest and workspace boundaries clean |
| Taxonomy instinct | Acknowledged | naming and registry controls | Useful only when simplified into clear ownership and naming rules |
## What Was Rewritten
- Front matter is not identity.
- UI realms are not domain ontology.
- Narrative or graph concepts do not govern canonical structure.
## What Was Excluded
- legacy QID worker logic as active identity authority
- matrix governance systems that overcomplicate the current portal
- poetic graph canon as structural truth
- folder-law systems that conflict with the current QiLabs and QiNexus model
60_qiaccess_start_legacy_quarantine.md
# QiAccess Start Legacy Quarantine
This appendix marks the legacy doctrine that is retained for reference but is not active truth for the current QiAccess Start master blueprint.
## Active Doctrine
The active portal doctrine is:
- QiAccess Start as the cognitive front door
- seven roots only
- System as nested admin and infrastructure
- qiserver as the primary runtime host
- QiNexus and Google Drive as the storage backbone
- source-backed Knowledge, future Memory, and derived Insights
## What Is Quarantined
The following assumptions are quarantined unless explicitly revalidated:
- QiOne as the active primary portal identity
- QiPortals or QiSuite as the active portal product name
- multi-tenant client portal language as the default runtime model
- tenant-first platform requirements for current operator workflows
- CRM, client, product, and delivery documentation treated as the main active operating model
- heavy structural complexity that does not directly serve the seven-root front door
## Quarantined Areas In This Docset
These sections are retained because they may still contain useful fragments, but they must be treated as reference-only until rewritten:
- `docs/06_applications/10_web/`
- `docs/06_applications/30_admin/`
- `docs/06_applications/40_tools/`
- `docs/06_applications/50_interfaces/`
- `docs/07_operations/`
- pages that still depend on tenant-first or client-platform assumptions
## What Survives From Legacy
Legacy material may still provide:
- naming discipline
- metadata rules
- explicit ownership boundaries
- ADR discipline
- security and exposure controls
- useful implementation notes that do not conflict with the current portal
## Promotion Rule
Legacy material leaves quarantine only when one of the following happens:
1. it is rewritten to match the active QiAccess Start doctrine
2. an ADR explicitly promotes the concept back into active use
3. the implementation proves the concept is current and the blueprint is updated to match
## General Rule
- Legacy client/tenant/business-platform doctrine must stay quarantined/reference-only.
70_repo_sync_status_20260516.md
# Repository Sync & System Health Summary
**Date**: 2026-05-16
**Status**: 🟠 Partial Sync / Build Restored
## 📋 Actions Completed
### 1. Monorepo Synchronization
- **QiLabs Root**: Pushed to GitHub. Committed 2120+ deletions as part of the ongoing repository cleanup and restructuring.
- **_QiAccess_Start**: Synchronized and pushed. Document alignment updates were committed to the remote.
- **apps/MomsCare**: Resolved a `ref lock` mismatch and synchronized UI updates with the remote.
- **Trajectory Management**: Updated `vizvibe.mmd` to track the repository walk and build fix milestones.
### 2. QiLegacy Build Restoration
- **Issue**: Build failure in `apps/QiLegacy` due to an inherited `postcss.config.js` requiring missing Tailwind v4 plugins.
- **Fix**: Created a local `postcss.config.js` to isolate the app from root configuration conflicts.
- **Verification**: Production build (`npm run build`) is now functional (`built in 5.09s`).
## ⚠️ Blocked / Pending Issues
### 1. Orphaned Sub-repo Remotes
The following sub-repositories have local commits but their GitHub remotes are unreachable (404):
- `qinote` (app_QiNoteOS_ph00)
- `qistory` (cre_QiStory_What_Stripping_Taught_Me...)
- `AES Dispute`
- `FCFCU`
*Action Needed: Re-map these to their correct GitHub locations or update `.gitmodules`.*
### 2. Archived Repositories
- **Built-by-Rays**: Remote is archived (Read-Only), preventing pushes from the local QiNexus workspace.
## 📝 Next Steps
- [ ] **Remote Re-mapping**: Fix broken GitHub links for orphaned sub-repos.
- [ ] **Legacy Cleanup**: Systematically archive/delete standalone apps (`qitax`, `qicase`) per the `vizvibe.mmd` roadmap.
- [ ] **Infrastructure Setup**: Proceed with `paperless_setup` and `qi_queue_worker` as defined in the Future Work trajectory.
_index.md
# 60 Knowledge
<sub>Knowledge support and reference layer</sub>
Placement file created from `blueprint_master_map-mindmap.md`.
## System Memory
- [10 Changelog](10_changelog.md)
- [20 Glossary](20_glossary.md)
- [30 Migration Notes](30_migration_notes.md)
- [70 Repo Sync Status (2026-05-16)](70_repo_sync_status_20260516.md)
## Legacy & Migration
- [40 Legacy CSV Migration Plan](40_legacy_csv_migration_plan.md)
- [50 Legacy Salvage](50_legacy_salvage.md)
- [60 QiAccess Start Legacy Quarantine](60_qiaccess_start_legacy_quarantine.md)
70_assets/
diagrams/
2026-05-17_supabase_markmind.md
# Supabase Database Full ERD Map
## Summary
- Schemas: `21`
- Tables: `144`
- Fields: `1455`
## Schema: auth
### auth.audit_log_entries
- Estimated rows: `-1`
- Comment: Auth: Audit trail for user actions.
- Fields
- instance_id : `uuid`
- id : `uuid` 🔑 PK NOT NULL
- payload : `json`
- created_at : `timestamptz`
- ip_address : `varchar` NOT NULL DEFAULT `''::character varying`
### auth.custom_oauth_providers
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- provider_type : `text` NOT NULL
- identifier : `text` NOT NULL
- name : `text` NOT NULL
- client_id : `text` NOT NULL
- client_secret : `text` NOT NULL
- acceptable_client_ids : `_text` NOT NULL DEFAULT `'{}'::text[]`
- scopes : `_text` NOT NULL DEFAULT `'{}'::text[]`
- pkce_enabled : `bool` NOT NULL DEFAULT `true`
- attribute_mapping : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- authorization_params : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- enabled : `bool` NOT NULL DEFAULT `true`
- email_optional : `bool` NOT NULL DEFAULT `false`
- issuer : `text`
- discovery_url : `text`
- skip_nonce_check : `bool` NOT NULL DEFAULT `false`
- cached_discovery : `jsonb`
- discovery_cached_at : `timestamptz`
- authorization_url : `text`
- token_url : `text`
- userinfo_url : `text`
- jwks_uri : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### auth.flow_state
- Estimated rows: `-1`
- Comment: Stores metadata for all OAuth/SSO login flows
- Fields
- id : `uuid` 🔑 PK NOT NULL
- user_id : `uuid`
- auth_code : `text`
- code_challenge_method : `code_challenge_method`
- code_challenge : `text`
- provider_type : `text` NOT NULL
- provider_access_token : `text`
- provider_refresh_token : `text`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- authentication_method : `text` NOT NULL
- auth_code_issued_at : `timestamptz`
- invite_token : `text`
- referrer : `text`
- oauth_client_state_id : `uuid`
- linking_target_id : `uuid`
- email_optional : `bool` NOT NULL DEFAULT `false`
### auth.identities
- Estimated rows: `-1`
- Comment: Auth: Stores identities associated to a user.
- Fields
- provider_id : `text` NOT NULL
- user_id : `uuid` NOT NULL
- identity_data : `jsonb` NOT NULL
- provider : `text` NOT NULL
- last_sign_in_at : `timestamptz`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- email : `text`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### auth.instances
- Estimated rows: `-1`
- Comment: Auth: Manages users across multiple sites.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- uuid : `uuid`
- raw_base_config : `text`
- created_at : `timestamptz`
- updated_at : `timestamptz`
### auth.mfa_amr_claims
- Estimated rows: `-1`
- Comment: auth: stores authenticator method reference claims for multi factor authentication
- Fields
- session_id : `uuid` NOT NULL
- created_at : `timestamptz` NOT NULL
- updated_at : `timestamptz` NOT NULL
- authentication_method : `text` NOT NULL
- id : `uuid` 🔑 PK NOT NULL
### auth.mfa_challenges
- Estimated rows: `-1`
- Comment: auth: stores metadata about challenge requests made
- Fields
- id : `uuid` 🔑 PK NOT NULL
- factor_id : `uuid` NOT NULL
- created_at : `timestamptz` NOT NULL
- verified_at : `timestamptz`
- ip_address : `inet` NOT NULL
- otp_code : `text`
- web_authn_session_data : `jsonb`
### auth.mfa_factors
- Estimated rows: `-1`
- Comment: auth: stores metadata about factors
- Fields
- id : `uuid` 🔑 PK NOT NULL
- user_id : `uuid` NOT NULL
- friendly_name : `text`
- factor_type : `factor_type` NOT NULL
- status : `factor_status` NOT NULL
- created_at : `timestamptz` NOT NULL
- updated_at : `timestamptz` NOT NULL
- secret : `text`
- phone : `text`
- last_challenged_at : `timestamptz`
- web_authn_credential : `jsonb`
- web_authn_aaguid : `uuid`
- last_webauthn_challenge_data : `jsonb`
### auth.oauth_authorizations
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- authorization_id : `text` NOT NULL
- client_id : `uuid` NOT NULL
- user_id : `uuid`
- redirect_uri : `text` NOT NULL
- scope : `text` NOT NULL
- state : `text`
- resource : `text`
- code_challenge : `text`
- code_challenge_method : `code_challenge_method`
- response_type : `oauth_response_type` NOT NULL DEFAULT `'code'::auth.oauth_response_type`
- status : `oauth_authorization_status` NOT NULL DEFAULT `'pending'::auth.oauth_authorization_status`
- authorization_code : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- expires_at : `timestamptz` NOT NULL DEFAULT `(now() + '00:03:00'::interval)`
- approved_at : `timestamptz`
- nonce : `text`
### auth.oauth_client_states
- Estimated rows: `-1`
- Comment: Stores OAuth states for third-party provider authentication flows where Supabase acts as the OAuth client.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- provider_type : `text` NOT NULL
- code_verifier : `text`
- created_at : `timestamptz` NOT NULL
### auth.oauth_clients
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- client_secret_hash : `text`
- registration_type : `oauth_registration_type` NOT NULL
- redirect_uris : `text` NOT NULL
- grant_types : `text` NOT NULL
- client_name : `text`
- client_uri : `text`
- logo_uri : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- deleted_at : `timestamptz`
- client_type : `oauth_client_type` NOT NULL DEFAULT `'confidential'::auth.oauth_client_type`
- token_endpoint_auth_method : `text` NOT NULL
### auth.oauth_consents
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- user_id : `uuid` NOT NULL
- client_id : `uuid` NOT NULL
- scopes : `text` NOT NULL
- granted_at : `timestamptz` NOT NULL DEFAULT `now()`
- revoked_at : `timestamptz`
### auth.one_time_tokens
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- user_id : `uuid` NOT NULL
- token_type : `one_time_token_type` NOT NULL
- token_hash : `text` NOT NULL
- relates_to : `text` NOT NULL
- created_at : `timestamp` NOT NULL DEFAULT `now()`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
### auth.refresh_tokens
- Estimated rows: `-1`
- Comment: Auth: Store of tokens used to refresh JWT tokens once they expire.
- Fields
- instance_id : `uuid`
- id : `int8` 🔑 PK NOT NULL DEFAULT `nextval('auth.refresh_tokens_id_seq'::regclass)`
- token : `varchar`
- user_id : `varchar`
- revoked : `bool`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- parent : `varchar`
- session_id : `uuid`
### auth.saml_providers
- Estimated rows: `-1`
- Comment: Auth: Manages SAML Identity Provider connections.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- sso_provider_id : `uuid` NOT NULL
- entity_id : `text` NOT NULL
- metadata_xml : `text` NOT NULL
- metadata_url : `text`
- attribute_mapping : `jsonb`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- name_id_format : `text`
### auth.saml_relay_states
- Estimated rows: `-1`
- Comment: Auth: Contains SAML Relay State information for each Service Provider initiated login.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- sso_provider_id : `uuid` NOT NULL
- request_id : `text` NOT NULL
- for_email : `text`
- redirect_to : `text`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- flow_state_id : `uuid`
### auth.schema_migrations
- Estimated rows: `76`
- Comment: Auth: Manages updates to the auth system.
- Fields
- version : `varchar` NOT NULL
### auth.sessions
- Estimated rows: `-1`
- Comment: Auth: Stores session data associated to a user.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- user_id : `uuid` NOT NULL
- created_at : `timestamptz`
- updated_at : `timestamptz`
- factor_id : `uuid`
- aal : `aal_level`
- not_after : `timestamptz`
- refreshed_at : `timestamp`
- user_agent : `text`
- ip : `inet`
- tag : `text`
- oauth_client_id : `uuid`
- refresh_token_hmac_key : `text`
- refresh_token_counter : `int8`
- scopes : `text`
### auth.sso_domains
- Estimated rows: `-1`
- Comment: Auth: Manages SSO email address domain mapping to an SSO Identity Provider.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- sso_provider_id : `uuid` NOT NULL
- domain : `text` NOT NULL
- created_at : `timestamptz`
- updated_at : `timestamptz`
### auth.sso_providers
- Estimated rows: `-1`
- Comment: Auth: Manages SSO identity provider information; see saml_providers for SAML.
- Fields
- id : `uuid` 🔑 PK NOT NULL
- resource_id : `text`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- disabled : `bool`
### auth.users
- Estimated rows: `-1`
- Comment: Auth: Stores user login data within a secure schema.
- Fields
- instance_id : `uuid`
- id : `uuid` 🔑 PK NOT NULL
- aud : `varchar`
- role : `varchar`
- email : `varchar`
- encrypted_password : `varchar`
- email_confirmed_at : `timestamptz`
- invited_at : `timestamptz`
- confirmation_token : `varchar`
- confirmation_sent_at : `timestamptz`
- recovery_token : `varchar`
- recovery_sent_at : `timestamptz`
- email_change_token_new : `varchar`
- email_change : `varchar`
- email_change_sent_at : `timestamptz`
- last_sign_in_at : `timestamptz`
- raw_app_meta_data : `jsonb`
- raw_user_meta_data : `jsonb`
- is_super_admin : `bool`
- created_at : `timestamptz`
- updated_at : `timestamptz`
- phone : `text` DEFAULT `NULL::character varying`
- phone_confirmed_at : `timestamptz`
- phone_change : `text` DEFAULT `''::character varying`
- phone_change_token : `varchar` DEFAULT `''::character varying`
- phone_change_sent_at : `timestamptz`
- confirmed_at : `timestamptz`
- email_change_token_current : `varchar` DEFAULT `''::character varying`
- email_change_confirm_status : `int2` DEFAULT `0`
- banned_until : `timestamptz`
- reauthentication_token : `varchar` DEFAULT `''::character varying`
- reauthentication_sent_at : `timestamptz`
- is_sso_user : `bool` NOT NULL DEFAULT `false`
- deleted_at : `timestamptz`
- is_anonymous : `bool` NOT NULL DEFAULT `false`
### auth.webauthn_challenges
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- user_id : `uuid`
- challenge_type : `text` NOT NULL
- session_data : `jsonb` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- expires_at : `timestamptz` NOT NULL
### auth.webauthn_credentials
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- user_id : `uuid` NOT NULL
- credential_id : `bytea` NOT NULL
- public_key : `bytea` NOT NULL
- attestation_type : `text` NOT NULL DEFAULT `''::text`
- aaguid : `uuid`
- sign_count : `int8` NOT NULL DEFAULT `0`
- transports : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- backup_eligible : `bool` NOT NULL DEFAULT `false`
- backed_up : `bool` NOT NULL DEFAULT `false`
- friendly_name : `text` NOT NULL DEFAULT `''::text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- last_used_at : `timestamptz`
## Schema: care
### care.attachments
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- encounter_id : `uuid` 🔗 FK → care.encounters.id
- file_name : `text`
- file_type : `text`
- storage_path : `text`
- attachment_kind : `text`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- uploaded_at : `timestamptz` NOT NULL DEFAULT `now()`
- discharge_document_id : `uuid` 🔗 FK → care.discharge_documents.id
- care_plan_id : `uuid` 🔗 FK → care.care_plans.id
### care.care_daily_notes
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- household_id : `uuid`
- caregiver_id : `uuid`
- note_date : `date` NOT NULL
- caregiver_name : `text`
- sleep_last_night : `text`
- overall_day : `text`
- o2_range : `text`
- heart_rate : `text`
- blood_pressure : `text`
- temperature : `text`
- breathing_quality : `text`
- symptoms : `_text` NOT NULL DEFAULT `'{}'::text[]`
- last_morphine_time : `text`
- last_norco_time : `text`
- nebulizers_completed : `bool`
- prednisone_taken : `bool`
- blood_sugar_checked : `bool`
- medication_notes : `text`
- transfer_status : `text`
- bathroom_status : `text`
- walking_standing : `text`
- mental_state : `_text` NOT NULL DEFAULT `'{}'::text[]`
- key_notes_events : `text`
- red_flags : `_text` NOT NULL DEFAULT `'{}'::text[]`
- urgent_followup : `bool` NOT NULL DEFAULT `false`
- is_printed : `bool` NOT NULL DEFAULT `false`
- printed_at : `timestamptz`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- deleted_at : `timestamptz`
### care.care_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- event_type : `text` NOT NULL
- event_category : `text`
- title : `text` NOT NULL
- description : `text`
- severity : `text`
- occurred_at : `timestamptz` NOT NULL DEFAULT `now()`
- related_table : `text`
- related_id : `uuid`
- caregiver_name : `text`
- followup_needed : `bool` NOT NULL DEFAULT `false`
- followup_status : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.care_locations
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- name : `text` NOT NULL
- location_type : `text`
- parent_location_id : `uuid` 🔗 FK → care.care_locations.id
- notes : `text`
- active : `bool` NOT NULL DEFAULT `true`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.care_plan_items
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- care_plan_id : `uuid` 🔗 FK → care.care_plans.id NOT NULL
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- category : `text`
- item_text : `text` NOT NULL
- frequency : `text`
- status : `text`
- target_metric : `text`
- target_value : `numeric`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.care_plans
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- title : `text` NOT NULL
- status : `text`
- start_date : `date`
- end_date : `date`
- created_by : `text`
- source_type : `text`
- summary : `text`
- precautions : `text`
- escalation_rules : `text`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.conditions
- Estimated rows: `5`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- category : `text`
- summary : `text`
- risks : `text`
- actions : `text`
- status : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- condition_name : `text`
- medical_code : `text`
- code_system : `text`
- watch_fors : `text`
- interaction_summary : `text`
- compounding_risks : `text`
### care.device_profiles
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- device_type : `text` NOT NULL
- manufacturer : `text`
- model : `text`
- serial_number : `text`
- active : `bool` NOT NULL DEFAULT `true`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.device_readings
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- device_profile_id : `uuid` 🔗 FK → care.device_profiles.id NOT NULL
- reading_type : `text`
- reading_name : `text` NOT NULL
- reading_value : `numeric`
- reading_unit : `text`
- recorded_at : `timestamptz` NOT NULL DEFAULT `now()`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.discharge_actions
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- discharge_document_id : `uuid` 🔗 FK → care.discharge_documents.id NOT NULL
- action_type : `text`
- action_text : `text` NOT NULL
- due_date : `date`
- status : `text`
- completed_at : `timestamptz`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.discharge_documents
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- encounter_id : `uuid` 🔗 FK → care.encounters.id
- document_title : `text`
- discharge_date : `date`
- facility : `text`
- provider_name : `text`
- summary : `text`
- medication_changes_text : `text`
- follow_up_text : `text`
- warning_signs_text : `text`
- raw_text : `text`
- status : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.encounters
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- encounter_type : `text`
- provider_name : `text`
- facility : `text`
- status : `text`
- occurred_at : `timestamptz`
- summary : `text`
- med_changes : `text`
- follow_up_needed : `text`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.interactions
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- med1 : `text`
- med2 : `text`
- severity : `text`
- description : `text`
- recommendation : `text`
- source_notes : `text`
- metadata_json : `jsonb` DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` DEFAULT `now()`
### care.kb_sections
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- title : `text` NOT NULL
- category : `text`
- section_key : `text`
- summary : `text`
- content : `text` NOT NULL
- content_format : `text` NOT NULL DEFAULT `'markdown'::text`
- source_type : `text`
- source_path : `text`
- source_title : `text`
- tags : `_text` NOT NULL DEFAULT `'{}'::text[]`
- ai_retrievable : `bool` NOT NULL DEFAULT `true`
- review_status : `text` NOT NULL DEFAULT `'active'::text`
- sort_order : `int4` NOT NULL DEFAULT `0`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.medication_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- medication_id : `uuid` 🔗 FK → care.medications.id
- encounter_id : `uuid` 🔗 FK → care.encounters.id
- action : `text` NOT NULL
- dose_taken : `text`
- quantity_change : `numeric`
- reason : `text`
- notes : `text`
- source_type : `text`
- occurred_at : `timestamptz` NOT NULL DEFAULT `now()`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- discharge_document_id : `uuid` 🔗 FK → care.discharge_documents.id
### care.medications
- Estimated rows: `50`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- medication_name : `text` NOT NULL
- strength : `text`
- form : `text`
- prescriber : `text`
- dosage_instructions : `text`
- frequency : `text`
- quantity_prescribed : `numeric`
- quantity_remaining : `numeric`
- active : `bool` NOT NULL DEFAULT `true`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- expiration_date : `date`
- refills_allowed : `int4`
- prescribed_date : `date`
- prescription_notes : `text`
- medication_image_url : `text`
- barcode : `text`
- strength_value : `numeric`
- strength_unit : `text`
- route : `text`
- unit_type : `text`
- low_supply_threshold : `numeric`
- pharmacy_source : `text`
- cost : `numeric`
- medication_status : `text` NOT NULL DEFAULT `'active'::text`
- hold_reason : `text`
- hold_started_at : `timestamptz`
- hold_requested_by : `text`
- hold_notes : `text`
- clinician_review_needed : `bool` NOT NULL DEFAULT `false`
- review_reason : `text`
### care.milestones
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- name : `text` NOT NULL
- metric : `text`
- value : `numeric`
- baseline_value : `numeric`
- target_value : `numeric`
- unit : `text`
- notes : `text`
- recorded_at : `timestamptz` NOT NULL DEFAULT `now()`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- care_plan_id : `uuid` 🔗 FK → care.care_plans.id
### care.observations
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- encounter_id : `uuid` 🔗 FK → care.encounters.id
- category : `text`
- subtype : `text`
- severity : `int4`
- body_area : `text`
- notes : `text`
- recorded_at : `timestamptz` NOT NULL DEFAULT `now()`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- care_plan_id : `uuid` 🔗 FK → care.care_plans.id
### care.oxygen_tank_types
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- type_code : `text` NOT NULL
- display_name : `text` NOT NULL
- standard_capacity_liters : `numeric`
- standard_full_pressure_psi : `numeric`
- reserve_pressure_psi : `numeric`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.oxygen_tanks
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- tank_label : `text`
- tank_type : `text`
- capacity_liters : `numeric`
- current_status : `text`
- last_pressure_psi : `numeric`
- last_checked_at : `timestamptz`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- tank_type_id : `uuid` 🔗 FK → care.oxygen_tank_types.id
### care.oxygen_tanks_with_runtime
- Estimated rows: `0`
- Fields
- id : `uuid`
- patient_id : `uuid`
- tank_label : `text`
- tank_type : `text`
- tank_type_id : `uuid`
- type_code : `text`
- tank_type_name : `text`
- standard_capacity_liters : `numeric`
- standard_full_pressure_psi : `numeric`
- reserve_pressure_psi : `numeric`
- current_status : `text`
- last_pressure_psi : `numeric`
- last_checked_at : `timestamptz`
- flow_rate_lpm : `numeric`
- estimated_liters_remaining : `numeric`
- estimated_runtime_minutes : `numeric`
- estimated_runtime_hours : `numeric`
- calculated_pressure_status : `text`
- notes : `text`
- metadata_json : `jsonb`
- created_at : `timestamptz`
- updated_at : `timestamptz`
### care.oxygen_usage_sessions
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- oxygen_tank_id : `uuid` 🔗 FK → care.oxygen_tanks.id NOT NULL
- started_at : `timestamptz`
- ended_at : `timestamptz`
- flow_rate_lpm : `numeric`
- starting_pressure_psi : `numeric`
- ending_pressure_psi : `numeric`
- estimated_empty_at : `timestamptz`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.patients
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- full_name : `text`
- dob : `date`
- baseline_notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.regimen_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- regimen_id : `uuid` 🔗 FK → care.regimens.id NOT NULL
- status : `text` NOT NULL
- performed_at : `timestamptz` NOT NULL DEFAULT `now()`
- notes : `text`
- source_type : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
### care.regimens
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- regimen_type : `text` NOT NULL
- title : `text` NOT NULL
- linked_medication_id : `uuid` 🔗 FK → care.medications.id
- instructions : `text`
- with_food : `bool`
- food_instruction_text : `text`
- is_prn : `bool` NOT NULL DEFAULT `false`
- min_interval_minutes : `int4`
- schedule_type : `text` NOT NULL
- schedule_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- active : `bool` NOT NULL DEFAULT `true`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.station_requirements
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- location_id : `uuid` 🔗 FK → care.care_locations.id NOT NULL
- supply_item_id : `uuid` 🔗 FK → care.supply_items.id NOT NULL
- par_level : `numeric`
- minimum_level : `numeric`
- required : `bool` NOT NULL DEFAULT `true`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.supply_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- supply_item_id : `uuid` 🔗 FK → care.supply_items.id NOT NULL
- event_type : `text` NOT NULL
- quantity_change : `numeric` NOT NULL
- occurred_at : `timestamptz` NOT NULL DEFAULT `now()`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.supply_inventory
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- supply_item_id : `uuid` 🔗 FK → care.supply_items.id NOT NULL
- quantity_on_hand : `numeric` NOT NULL DEFAULT `0`
- quantity_reserved : `numeric` NOT NULL DEFAULT `0`
- last_counted_at : `timestamptz`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.supply_items
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- name : `text` NOT NULL
- category : `text`
- unit : `text`
- reorder_threshold : `numeric`
- target_stock_level : `numeric`
- notes : `text`
- active : `bool` NOT NULL DEFAULT `true`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- location : `text`
- status : `text`
- cost : `numeric`
### care.supply_order_items
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- order_id : `uuid` 🔗 FK → care.supply_orders.id NOT NULL
- supply_item_id : `uuid` 🔗 FK → care.supply_items.id NOT NULL
- quantity_ordered : `numeric` NOT NULL DEFAULT `0`
- quantity_received : `numeric` NOT NULL DEFAULT `0`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.supply_orders
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- vendor_contact_id : `uuid`
- status : `text`
- ordered_at : `timestamptz`
- expected_at : `timestamptz`
- received_at : `timestamptz`
- notes : `text`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### care.vitals
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- patient_id : `uuid` 🔗 FK → care.patients.id NOT NULL
- encounter_id : `uuid` 🔗 FK → care.encounters.id
- systolic : `int4`
- diastolic : `int4`
- pulse : `int4`
- oxygen : `int4`
- temp : `numeric`
- context : `text`
- notes : `text`
- recorded_at : `timestamptz` NOT NULL DEFAULT `now()`
- metadata_json : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- glucose : `numeric`
- ketones : `numeric`
- weight : `numeric`
- respiratory_rate : `int4`
## Schema: cron
### cron.job
- Estimated rows: `-1`
- Fields
- jobid : `int8` NOT NULL DEFAULT `nextval('cron.jobid_seq'::regclass)`
- schedule : `text` NOT NULL
- command : `text` NOT NULL
- nodename : `text` NOT NULL DEFAULT `'localhost'::text`
- nodeport : `int4` NOT NULL DEFAULT `inet_server_port()`
- database : `text` NOT NULL DEFAULT `current_database()`
- username : `text` NOT NULL DEFAULT `CURRENT_USER`
- active : `bool` NOT NULL DEFAULT `true`
- jobname : `text`
### cron.job_run_details
- Estimated rows: `-1`
- Fields
- jobid : `int8`
- runid : `int8` 🔑 PK NOT NULL DEFAULT `nextval('cron.runid_seq'::regclass)`
- job_pid : `int4`
- database : `text`
- username : `text`
- command : `text`
- status : `text`
- return_message : `text`
- start_time : `timestamptz`
- end_time : `timestamptz`
## Schema: notion
### notion.blocks
- Estimated rows: `0`
- Fields
- id : `text`
- page_id : `text`
- type : `text`
- created_time : `timestamp`
- last_edited_time : `timestamp`
- archived : `bool`
- attrs : `jsonb`
### notion.databases
- Estimated rows: `0`
- Fields
- id : `text`
- url : `text`
- created_time : `timestamp`
- last_edited_time : `timestamp`
- archived : `bool`
- attrs : `jsonb`
### notion.pages
- Estimated rows: `0`
- Fields
- id : `text`
- url : `text`
- created_time : `timestamp`
- last_edited_time : `timestamp`
- archived : `bool`
- attrs : `jsonb`
### notion.users
- Estimated rows: `0`
- Fields
- id : `text`
- name : `text`
- type : `text`
- avatar_url : `text`
- attrs : `jsonb`
## Schema: public
### public.chat_messages
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- room_id : `uuid` 🔗 FK → public.chat_rooms.id NOT NULL
- sender_id : `uuid` 🔗 FK → public.profiles.id NOT NULL
- client_message_id : `uuid` NOT NULL
- body : `text` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- deleted_at : `timestamptz`
### public.chat_room_members
- Estimated rows: `-1`
- Fields
- room_id : `uuid` 🔑 PK 🔗 FK → public.chat_rooms.id NOT NULL
- user_id : `uuid` 🔑 PK 🔗 FK → public.profiles.id NOT NULL
- joined_at : `timestamptz` NOT NULL DEFAULT `now()`
- left_at : `timestamptz`
### public.chat_rooms
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- name : `text` NOT NULL
- created_by : `uuid` 🔗 FK → public.profiles.id NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.dev_history
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- owner_id : `uuid` NOT NULL
- session_id : `text` NOT NULL
- record_type : `text` NOT NULL DEFAULT `'dev_session'::text`
- schema_version : `text` NOT NULL DEFAULT `'1.0'::text`
- session_date : `date` NOT NULL DEFAULT `CURRENT_DATE`
- title : `text` NOT NULL
- project : `text`
- repo : `text`
- branch : `text`
- feature_area : `text`
- session_type : `text`
- status : `text` NOT NULL DEFAULT `'draft'::text`
- summary : `text`
- purpose : `text`
- context : `text`
- final_outcome : `text`
- restart_prompt : `text`
- decisions : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- files_affected : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- folders_affected : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- database_notes : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- implementation_plan : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- code_artifacts : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- prompts : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- risks : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- validation_checklist : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- next_actions : `jsonb` NOT NULL DEFAULT `'[]'::jsonb`
- markdown_body : `text`
- tags : `_text` NOT NULL DEFAULT `'{}'::text[]`
- related_files : `_text` NOT NULL DEFAULT `'{}'::text[]`
- related_tables : `_text` NOT NULL DEFAULT `'{}'::text[]`
- related_tools : `_text` NOT NULL DEFAULT `'{}'::text[]`
- artifact_paths : `_text` NOT NULL DEFAULT `'{}'::text[]`
- artifact_urls : `_text` NOT NULL DEFAULT `'{}'::text[]`
- source : `text` NOT NULL DEFAULT `'qiaccess_capture'::text`
- created_by : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.ingestion_queue
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- file_path : `text` NOT NULL
- slug : `text` NOT NULL
- qid : `text`
- realm : `text`
- realm_guess : `text`
- realm_slug : `text`
- mime_type : `text`
- file_ext : `text`
- content_hash : `text`
- extracted_text : `text`
- route_confidence : `numeric` DEFAULT `0`
- status : `text` NOT NULL DEFAULT `'pending'::text`
- meta : `jsonb` DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` DEFAULT `now()`
- updated_at : `timestamptz` DEFAULT `now()`
### public.manual_blocks
- Estimated rows: `144`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- node_id : `uuid` 🔗 FK → public.manual_nodes.id NOT NULL
- block_kind : `manual_block_kind` NOT NULL
- sort_order : `int4` NOT NULL DEFAULT `0`
- content : `text` NOT NULL
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_by : `uuid` DEFAULT `auth.uid()`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.manual_chunks
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- manual_id : `uuid` 🔗 FK → public.manuals.id NOT NULL
- node_id : `uuid` 🔗 FK → public.manual_nodes.id NOT NULL
- block_id : `uuid` 🔗 FK → public.manual_blocks.id
- chunk_index : `int4` NOT NULL DEFAULT `0`
- chunk_text : `text` NOT NULL
- source_hash : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- embedding : `vector`
- embedding_model : `text`
- embedding_updated_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.manual_edges
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- manual_id : `uuid` 🔗 FK → public.manuals.id NOT NULL
- from_node_id : `uuid` 🔗 FK → public.manual_nodes.id NOT NULL
- to_node_id : `uuid` 🔗 FK → public.manual_nodes.id NOT NULL
- edge_type : `text` NOT NULL
- note : `text`
- weight : `numeric` NOT NULL DEFAULT `1.00`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.manual_nodes
- Estimated rows: `88`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- manual_id : `uuid` 🔗 FK → public.manuals.id NOT NULL
- parent_id : `uuid` 🔗 FK → public.manual_nodes.id
- node_kind : `manual_node_kind` NOT NULL
- title : `text` NOT NULL
- slug : `text` NOT NULL
- sort_order : `int4` NOT NULL DEFAULT `0`
- depth : `int4` NOT NULL DEFAULT `0`
- summary : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.manuals
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- owner_id : `uuid` NOT NULL DEFAULT `auth.uid()`
- slug : `text` NOT NULL
- title : `text` NOT NULL
- description : `text`
- status : `text` NOT NULL DEFAULT `'draft'::text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.nods_page
- Estimated rows: `-1`
- Fields
- id : `int8` 🔑 PK NOT NULL DEFAULT `nextval('nods_page_id_seq'::regclass)`
- parent_page_id : `int8` 🔗 FK → public.nods_page.id
- path : `text` NOT NULL
- checksum : `text`
- meta : `jsonb`
- type : `text`
- source : `text`
### public.nods_page_section
- Estimated rows: `-1`
- Fields
- id : `int8` 🔑 PK NOT NULL DEFAULT `nextval('nods_page_section_id_seq'::regclass)`
- page_id : `int8` 🔗 FK → public.nods_page.id NOT NULL
- content : `text`
- token_count : `int4`
- embedding : `vector`
- slug : `text`
- heading : `text`
### public.profiles
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- updated_at : `timestamptz`
- username : `text`
- full_name : `text`
- avatar_url : `text`
- website : `text`
- display_name : `text` NOT NULL DEFAULT `'User'::text`
- created_at : `timestamptz` DEFAULT `now()`
- role : `text`
### public.quick_notes
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- owner_id : `uuid` NOT NULL
- title : `text`
- body_md : `text` NOT NULL DEFAULT `''::text`
- capture_type : `text` NOT NULL DEFAULT `'general'::text`
- target_area : `text`
- tags : `_text` NOT NULL DEFAULT `'{}'::text[]`
- source : `text` NOT NULL DEFAULT `'quick_capture'::text`
- is_pinned : `bool` NOT NULL DEFAULT `false`
- is_archived : `bool` NOT NULL DEFAULT `false`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### public.todos
- Estimated rows: `-1`
- Fields
- id : `int8` 🔑 PK NOT NULL
- user_id : `uuid` NOT NULL
- task : `text`
- is_complete : `bool` DEFAULT `false`
- inserted_at : `timestamptz` NOT NULL DEFAULT `timezone('utc'::text, now())`
## Schema: qially
### qially.memory_embeddings
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- message_id : `uuid` 🔗 FK → qially.messages.id NOT NULL
- embedding : `vector`
- chunk_text : `text` NOT NULL
- chunk_index : `int4` NOT NULL DEFAULT `0`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qially.messages
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- session_id : `uuid` 🔗 FK → qially.sessions.id NOT NULL
- sender_type : `text` NOT NULL
- sender_id : `uuid` 🔗 FK → qione.users.id
- content : `text` NOT NULL
- tokens_consumed : `int4` DEFAULT `0`
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qially.sessions
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- title : `text`
- session_type : `text` NOT NULL DEFAULT `'ai_chat'::text`
- is_active : `bool` NOT NULL DEFAULT `true`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qiarchive
### qiarchive.archive_chunks
- Estimated rows: `-1`
- Fields
- chunk_id : `int8` 🔑 PK NOT NULL DEFAULT `nextval('qiarchive.archive_chunks_chunk_id_seq'::regclass)`
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id NOT NULL
- chunk_index : `int4` NOT NULL
- text : `text` NOT NULL
- embedding : `vector`
- embedding_model : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qiarchive.archive_files
- Estimated rows: `-1`
- Fields
- archive_id : `text` 🔑 PK NOT NULL
- domain_prefix : `text` 🔗 FK → qiarchive.prefix_registry.domain_prefix
- short_code : `text` NOT NULL
- original_filename : `text` NOT NULL
- normalized_filename : `text` NOT NULL
- sha256 : `text` NOT NULL
- mime_type : `text`
- file_ext : `text`
- source_type : `text`
- storage_path : `text`
- file_size : `int8`
- status : `text` NOT NULL DEFAULT `'registered'::text`
- route_confidence : `float4` DEFAULT `0`
- extracted_text : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### qiarchive.file_history
- Estimated rows: `-1`
- Fields
- id : `int8` 🔑 PK NOT NULL DEFAULT `nextval('qiarchive.file_history_id_seq'::regclass)`
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id NOT NULL
- event_type : `text` NOT NULL
- actor : `text` NOT NULL
- old_values : `jsonb`
- new_values : `jsonb`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qiarchive.ingest_jobs
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id
- job_type : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'pending'::text`
- worker_id : `text`
- error_message : `text`
- started_at : `timestamptz`
- completed_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qiarchive.prefix_registry
- Estimated rows: `-1`
- Fields
- domain_prefix : `text` 🔑 PK NOT NULL
- entity_type : `text` NOT NULL
- entity_id : `text` NOT NULL
- display_name : `text` NOT NULL
- is_active : `bool` NOT NULL DEFAULT `true`
- notes : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qicase
### qicase.case_documents
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- phase_id : `uuid` 🔗 FK → qicase.phases.id NOT NULL
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id NOT NULL
- doc_type : `text` NOT NULL
- proof_type : `text` NOT NULL
- lane : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qicase.cases
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- qid : `text` 🔗 FK → qigraph.master_index.qid
- case_name : `text` NOT NULL
- case_number : `text`
- court : `text`
- judge : `text`
- opposing_counsel : `text`
- status : `text` DEFAULT `'Active'::text`
- description : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### qicase.deadlines
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- phase_id : `uuid` 🔗 FK → qicase.phases.id NOT NULL
- chronicle_event_id : `uuid` 🔗 FK → qichronicle.events.id
- trigger : `text` NOT NULL
- clock_type : `text` NOT NULL
- due_date : `timestamptz` NOT NULL
- consequence : `text` NOT NULL
- status : `text` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qicase.document_issues
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- case_document_id : `uuid` 🔗 FK → qicase.case_documents.id NOT NULL
- issue_id : `uuid` 🔗 FK → qicase.issues.id NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qicase.issues
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- phase_id : `uuid` 🔗 FK → qicase.phases.id NOT NULL
- issue_title : `text` NOT NULL
- issue_statement : `text` NOT NULL
- elements_to_prove : `_text`
- strength : `int4`
- status : `text` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qicase.phases
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- case_id : `uuid` 🔗 FK → qicase.cases.id NOT NULL
- phase_name : `text` NOT NULL
- status : `text` NOT NULL
- purpose : `text` NOT NULL
- phase_order : `int4` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qichronicle
### qichronicle.calendar_feeds
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- name : `text` NOT NULL
- secret_key : `uuid` NOT NULL DEFAULT `uuid_generate_v4()`
- filters : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qichronicle.events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- qid : `text` 🔗 FK → qigraph.master_index.qid
- title : `text` NOT NULL
- description : `text`
- event_type : `text` NOT NULL DEFAULT `'event'::text`
- status : `text` NOT NULL DEFAULT `'confirmed'::text`
- start_at : `timestamptz` NOT NULL
- end_at : `timestamptz`
- is_all_day : `bool` NOT NULL DEFAULT `false`
- location : `text`
- owner_id : `uuid` 🔗 FK → qione.users.id
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qicms
### qicms.posts
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- qid : `text` 🔗 FK → qigraph.master_index.qid
- title : `text` NOT NULL
- slug : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'draft'::text`
- content_md : `text` NOT NULL
- excerpt : `text`
- featured_image_archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id
- author_id : `uuid` 🔗 FK → qione.users.id
- published_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qigraph
### qigraph.edges
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- from_qid : `text` 🔗 FK → qigraph.master_index.qid NOT NULL
- to_qid : `text` 🔗 FK → qigraph.master_index.qid NOT NULL
- link_type : `text` NOT NULL
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qigraph.master_index
- Estimated rows: `-1`
- Fields
- qid : `text` 🔑 PK NOT NULL
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- entity_type : `text` NOT NULL
- object_id : `uuid` NOT NULL
- table_reference : `text` NOT NULL
- title : `text` NOT NULL
- route_url : `text`
- tags : `_text` DEFAULT `'{}'::text[]`
- is_active : `bool` NOT NULL DEFAULT `true`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qihealth
### qihealth.care_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- owner_id : `uuid` NOT NULL DEFAULT `auth.uid()`
- patient_id : `text`
- household_id : `text`
- type : `text`
- category : `text`
- label : `text`
- details : `jsonb`
- dose : `text`
- route : `text`
- note : `text`
- input_method : `text`
- created_by : `text`
- created_at : `timestamptz` DEFAULT `now()`
- synced : `bool` DEFAULT `true`
### qihealth.patients
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- owner_id : `uuid` NOT NULL DEFAULT `auth.uid()`
- household_id : `text`
- name : `text`
- age : `int4`
- photo_url : `text`
- conditions : `jsonb` DEFAULT `'[]'::jsonb`
- allergies : `jsonb` DEFAULT `'[]'::jsonb`
- baseline_medications : `jsonb` DEFAULT `'[]'::jsonb`
- prn_medications : `jsonb` DEFAULT `'[]'::jsonb`
- emergency_contacts : `jsonb` DEFAULT `'[]'::jsonb`
- doctor_contacts : `jsonb` DEFAULT `'[]'::jsonb`
- notes : `text`
- created_at : `timestamptz` DEFAULT `now()`
- updated_at : `timestamptz` DEFAULT `now()`
## Schema: qihome
### qihome.categories
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- name : `text` NOT NULL
- is_active : `bool` NOT NULL DEFAULT `true`
### qihome.chore_assignments
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- chore_id : `uuid` 🔗 FK → qihome.chores.id NOT NULL
- user_id : `uuid` 🔗 FK → qione.users.id NOT NULL
- due_date : `date` NOT NULL
- status : `text` NOT NULL DEFAULT `'open'::text`
- done_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- related_user_id : `uuid` 🔗 FK → public.profiles.id
### qihome.chores
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- title : `text` NOT NULL
- frequency : `text` NOT NULL DEFAULT `'weekly'::text`
- points : `int4` NOT NULL DEFAULT `1`
- is_active : `bool` NOT NULL DEFAULT `true`
- description : `text`
- wiki-link : `text`
- category : `uuid` 🔗 FK → qihome.categories.id
### qihome.expense_shares
- Estimated rows: `-1`
- Fields
- expense_id : `uuid` 🔑 PK 🔗 FK → qihome.expenses.id NOT NULL
- user_id : `uuid` 🔑 PK 🔗 FK → qione.users.id NOT NULL
- share_cents : `int4` NOT NULL
### qihome.expenses
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- date : `date` NOT NULL DEFAULT `CURRENT_DATE`
- amount_cents : `int4` NOT NULL
- category_id : `uuid` 🔗 FK → qihome.categories.id
- paid_by_user_id : `uuid` 🔗 FK → qione.users.id NOT NULL
- memo : `text`
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id
- created_by : `uuid` 🔗 FK → qione.users.id NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### qihome.ledger_entries
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- user_id : `uuid`
- reference_id : `uuid`
- entry_type : `text`
- amount : `numeric` NOT NULL
- description : `text`
- tenant_id : `uuid` NOT NULL
- created_at : `timestamptz` DEFAULT `now()`
### qihome.settlements
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- date : `date` NOT NULL DEFAULT `CURRENT_DATE`
- from_user_id : `uuid` 🔗 FK → qione.users.id NOT NULL
- to_user_id : `uuid` 🔗 FK → qione.users.id NOT NULL
- amount_cents : `int4` NOT NULL
- memo : `text`
- created_by : `uuid` 🔗 FK → qione.users.id NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qihome.v_user_balances
- Estimated rows: `0`
- Fields
- user_id : `uuid`
- username : `text`
- avatar_url : `text`
- tenant_id : `uuid`
- balance : `numeric`
## Schema: qiknowledge
### qiknowledge.notes
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- qid : `text` 🔗 FK → qigraph.master_index.qid NOT NULL
- title : `text` NOT NULL
- slug : `text` NOT NULL
- content_md : `text`
- content_html : `text`
- sensitivity : `text` NOT NULL DEFAULT `'internal'::text`
- author_id : `uuid` 🔗 FK → qione.users.id
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qione
### qione.app_module_registry
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- slug : `text` NOT NULL
- name : `text` NOT NULL
- icon : `text`
- description : `text`
- default_enabled : `bool` DEFAULT `true`
- order_int : `int4` NOT NULL DEFAULT `nextval('qione.app_module_registry_order_int_seq'::regclass)`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qione.member_roles
- Estimated rows: `-1`
- Fields
- tenant_id : `uuid` 🔑 PK 🔗 FK → qione.tenants.id NOT NULL
- user_id : `uuid` 🔑 PK 🔗 FK → qione.users.id NOT NULL
- role_id : `uuid` 🔑 PK 🔗 FK → qione.roles.id NOT NULL
### qione.module_role_access
- Estimated rows: `-1`
- Fields
- tenant_id : `uuid` 🔑 PK 🔗 FK → qione.tenants.id NOT NULL
- module_key : `text` 🔑 PK 🔗 FK → qione.modules.key NOT NULL
- role_id : `uuid` 🔑 PK 🔗 FK → qione.roles.id NOT NULL
- access_level : `text` NOT NULL
### qione.modules
- Estimated rows: `-1`
- Fields
- key : `text` 🔑 PK NOT NULL
- name : `text` NOT NULL
- description : `text`
- icon : `text`
- route : `text` NOT NULL
- is_active : `bool` NOT NULL DEFAULT `true`
### qione.profiles
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL
- role : `text` NOT NULL DEFAULT `'user'::text`
- full_name : `text`
- avatar_url : `text`
- metadata : `jsonb` DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- username : `text`
- household_id : `uuid`
### qione.roles
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- name : `text` NOT NULL
- rank : `int4` NOT NULL DEFAULT `100`
### qione.tenant_members
- Estimated rows: `2`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- user_id : `uuid` 🔗 FK → qione.users.id NOT NULL
- status : `text` NOT NULL DEFAULT `'active'::text`
- joined_at : `timestamptz` NOT NULL DEFAULT `now()`
- display_name : `text`
### qione.tenant_modules
- Estimated rows: `-1`
- Fields
- tenant_id : `uuid` 🔑 PK 🔗 FK → qione.tenants.id NOT NULL
- module_key : `text` 🔑 PK 🔗 FK → qione.modules.key NOT NULL
- is_enabled : `bool` NOT NULL DEFAULT `true`
- settings : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
### qione.tenants
- Estimated rows: `1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- name : `text` NOT NULL
- slug : `text` NOT NULL
- type : `text` NOT NULL
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_by : `uuid` 🔗 FK → qione.users.id
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### qione.user_module_settings
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- user_id : `uuid` 🔗 FK → qione.profiles.id NOT NULL
- module_id : `uuid` 🔗 FK → qione.app_module_registry.id NOT NULL
- is_enabled : `bool` DEFAULT `true`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qione.users
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- email : `text` NOT NULL
- display_name : `text`
- avatar_url : `text`
- is_active : `bool` DEFAULT `true`
- is_super_admin : `bool` DEFAULT `false`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qisys
### qisys.integration_tokens
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- provider : `text` NOT NULL
- access_token : `text` NOT NULL
- refresh_token : `text`
- expires_at : `timestamptz`
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- is_active : `bool` NOT NULL DEFAULT `true`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### qisys.jobs
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id
- job_type : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'pending'::text`
- params : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- result : `jsonb`
- worker_id : `text`
- error_message : `text`
- started_at : `timestamptz`
- completed_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qisys.system_events
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id
- event_type : `text` NOT NULL
- severity : `text` NOT NULL DEFAULT `'info'::text`
- message : `text` NOT NULL
- actor : `text`
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qisys.worker_status
- Estimated rows: `-1`
- Fields
- worker_id : `text` 🔑 PK NOT NULL
- worker_name : `text` NOT NULL
- worker_type : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'idle'::text`
- last_heartbeat : `timestamptz` NOT NULL DEFAULT `now()`
- current_job_id : `uuid` 🔗 FK → qisys.jobs.id
- meta : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
## Schema: qitax
### qitax.return_files
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- return_id : `uuid` 🔗 FK → qitax.returns.id NOT NULL
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id NOT NULL
- role : `text` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### qitax.returns
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- tax_year : `int4` NOT NULL
- return_type : `text` NOT NULL
- filing_kind : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'intake'::text`
- version : `int4` NOT NULL DEFAULT `1`
- canonical_archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id
- summary : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- notes : `text`
- created_by : `uuid` 🔗 FK → qione.users.id
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: qivault
### qivault.documents
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `uuid_generate_v4()`
- tenant_id : `uuid` 🔗 FK → qione.tenants.id NOT NULL
- qid : `text` 🔗 FK → qigraph.master_index.qid
- archive_id : `text` 🔗 FK → qiarchive.archive_files.archive_id NOT NULL
- doc_type : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'draft'::text`
- form_data : `jsonb` DEFAULT `'{}'::jsonb`
- signed_at : `timestamptz`
- expires_at : `timestamptz`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: realtime
### realtime.messages
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_14
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_15
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_16
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_17
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_18
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_19
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.messages_2026_05_20
- Estimated rows: `-1`
- Fields
- topic : `text` NOT NULL
- extension : `text` NOT NULL
- payload : `jsonb`
- event : `text`
- private : `bool` DEFAULT `false`
- updated_at : `timestamp` NOT NULL DEFAULT `now()`
- inserted_at : `timestamp` 🔑 PK NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
### realtime.schema_migrations
- Estimated rows: `68`
- Fields
- version : `int8` 🔑 PK NOT NULL
- inserted_at : `timestamp`
### realtime.subscription
- Estimated rows: `-1`
- Fields
- id : `int8` 🔑 PK NOT NULL
- subscription_id : `uuid` NOT NULL
- entity : `regclass` NOT NULL
- filters : `_user_defined_filter` NOT NULL DEFAULT `'{}'::realtime.user_defined_filter[]`
- claims : `jsonb` NOT NULL
- claims_role : `regrole` NOT NULL
- created_at : `timestamp` NOT NULL DEFAULT `timezone('utc'::text, now())`
- action_filter : `text` DEFAULT `'*'::text`
## Schema: registry
### registry.namespace_allocations
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- namespace_code : `text` NOT NULL
- namespace_class : `text` NOT NULL
- owner_type : `text` NOT NULL
- owner_id : `uuid` NOT NULL
- band_start : `int4` NOT NULL
- band_label : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'active'::text`
- display_name : `text`
- notes : `text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### registry.namespace_bands
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- band_start : `int4` NOT NULL
- band_end : `int4` NOT NULL
- band_label : `text` NOT NULL
- canonical_name : `text` NOT NULL
- status : `text` NOT NULL DEFAULT `'active'::text`
- allocation_mode : `text` NOT NULL DEFAULT `'manual'::text`
- metadata : `jsonb` NOT NULL DEFAULT `'{}'::jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Schema: storage
### storage.buckets
- Estimated rows: `-1`
- Fields
- id : `text` 🔑 PK NOT NULL
- name : `text` NOT NULL
- owner : `uuid`
- created_at : `timestamptz` DEFAULT `now()`
- updated_at : `timestamptz` DEFAULT `now()`
- public : `bool` DEFAULT `false`
- avif_autodetection : `bool` DEFAULT `false`
- file_size_limit : `int8`
- allowed_mime_types : `_text`
- owner_id : `text`
- type : `buckettype` NOT NULL DEFAULT `'STANDARD'::storage.buckettype`
### storage.buckets_analytics
- Estimated rows: `-1`
- Fields
- name : `text` NOT NULL
- type : `buckettype` NOT NULL DEFAULT `'ANALYTICS'::storage.buckettype`
- format : `text` NOT NULL DEFAULT `'ICEBERG'::text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- deleted_at : `timestamptz`
### storage.buckets_vectors
- Estimated rows: `-1`
- Fields
- id : `text` NOT NULL
- type : `buckettype` NOT NULL DEFAULT `'VECTOR'::storage.buckettype`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
### storage.migrations
- Estimated rows: `57`
- Fields
- id : `int4` NOT NULL
- name : `varchar` NOT NULL
- hash : `varchar` NOT NULL
- executed_at : `timestamp` DEFAULT `CURRENT_TIMESTAMP`
### storage.objects
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- bucket_id : `text`
- name : `text`
- owner : `uuid`
- created_at : `timestamptz` DEFAULT `now()`
- updated_at : `timestamptz` DEFAULT `now()`
- last_accessed_at : `timestamptz` DEFAULT `now()`
- metadata : `jsonb`
- path_tokens : `_text`
- version : `text`
- owner_id : `text`
- user_metadata : `jsonb`
### storage.s3_multipart_uploads
- Estimated rows: `-1`
- Fields
- id : `text` 🔑 PK NOT NULL
- in_progress_size : `int8` NOT NULL DEFAULT `0`
- upload_signature : `text` NOT NULL
- bucket_id : `text` NOT NULL
- key : `text` NOT NULL
- version : `text` NOT NULL
- owner_id : `text`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- user_metadata : `jsonb`
- metadata : `jsonb`
### storage.s3_multipart_uploads_parts
- Estimated rows: `-1`
- Fields
- id : `uuid` 🔑 PK NOT NULL DEFAULT `gen_random_uuid()`
- upload_id : `text` NOT NULL
- size : `int8` NOT NULL DEFAULT `0`
- part_number : `int4` NOT NULL
- bucket_id : `text` NOT NULL
- key : `text` NOT NULL
- etag : `text` NOT NULL
- owner_id : `text`
- version : `text` NOT NULL
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
### storage.vector_indexes
- Estimated rows: `-1`
- Fields
- id : `text` NOT NULL DEFAULT `gen_random_uuid()`
- name : `text` NOT NULL
- bucket_id : `text` NOT NULL
- data_type : `text` NOT NULL
- dimension : `int4` NOT NULL
- distance_metric : `text` NOT NULL
- metadata_configuration : `jsonb`
- created_at : `timestamptz` NOT NULL DEFAULT `now()`
- updated_at : `timestamptz` NOT NULL DEFAULT `now()`
## Relationships
- care.attachments.care_plan_id → care.care_plans.id
- care.attachments.discharge_document_id → care.discharge_documents.id
- care.attachments.encounter_id → care.encounters.id
- care.attachments.patient_id → care.patients.id
- care.care_daily_notes.patient_id → care.patients.id
- care.care_events.patient_id → care.patients.id
- care.care_locations.parent_location_id → care.care_locations.id
- care.care_locations.patient_id → care.patients.id
- care.care_plan_items.care_plan_id → care.care_plans.id
- care.care_plan_items.patient_id → care.patients.id
- care.care_plans.patient_id → care.patients.id
- care.conditions.patient_id → care.patients.id
- care.device_profiles.patient_id → care.patients.id
- care.device_readings.device_profile_id → care.device_profiles.id
- care.device_readings.patient_id → care.patients.id
- care.discharge_actions.discharge_document_id → care.discharge_documents.id
- care.discharge_actions.patient_id → care.patients.id
- care.discharge_documents.encounter_id → care.encounters.id
- care.discharge_documents.patient_id → care.patients.id
- care.encounters.patient_id → care.patients.id
- care.kb_sections.patient_id → care.patients.id
- care.medication_events.discharge_document_id → care.discharge_documents.id
- care.medication_events.encounter_id → care.encounters.id
- care.medication_events.medication_id → care.medications.id
- care.medication_events.patient_id → care.patients.id
- care.medications.patient_id → care.patients.id
- care.milestones.care_plan_id → care.care_plans.id
- care.milestones.patient_id → care.patients.id
- care.observations.care_plan_id → care.care_plans.id
- care.observations.encounter_id → care.encounters.id
- care.observations.patient_id → care.patients.id
- care.oxygen_tanks.patient_id → care.patients.id
- care.oxygen_tanks.tank_type_id → care.oxygen_tank_types.id
- care.oxygen_usage_sessions.oxygen_tank_id → care.oxygen_tanks.id
- care.oxygen_usage_sessions.patient_id → care.patients.id
- care.regimen_events.patient_id → care.patients.id
- care.regimen_events.regimen_id → care.regimens.id
- care.regimens.linked_medication_id → care.medications.id
- care.regimens.patient_id → care.patients.id
- care.station_requirements.location_id → care.care_locations.id
- care.station_requirements.patient_id → care.patients.id
- care.station_requirements.supply_item_id → care.supply_items.id
- care.supply_events.patient_id → care.patients.id
- care.supply_events.supply_item_id → care.supply_items.id
- care.supply_inventory.patient_id → care.patients.id
- care.supply_inventory.supply_item_id → care.supply_items.id
- care.supply_items.patient_id → care.patients.id
- care.supply_order_items.order_id → care.supply_orders.id
- care.supply_order_items.supply_item_id → care.supply_items.id
- care.supply_orders.patient_id → care.patients.id
- care.vitals.encounter_id → care.encounters.id
- care.vitals.patient_id → care.patients.id
- public.chat_messages.room_id → public.chat_rooms.id
- public.chat_messages.sender_id → public.profiles.id
- public.chat_room_members.room_id → public.chat_rooms.id
- public.chat_room_members.user_id → public.profiles.id
- public.chat_rooms.created_by → public.profiles.id
- public.manual_blocks.node_id → public.manual_nodes.id
- public.manual_chunks.block_id → public.manual_blocks.id
- public.manual_chunks.manual_id → public.manuals.id
- public.manual_chunks.node_id → public.manual_nodes.id
- public.manual_edges.from_node_id → public.manual_nodes.id
- public.manual_edges.manual_id → public.manuals.id
- public.manual_edges.to_node_id → public.manual_nodes.id
- public.manual_nodes.manual_id → public.manuals.id
- public.manual_nodes.parent_id → public.manual_nodes.id
- public.nods_page.parent_page_id → public.nods_page.id
- public.nods_page_section.page_id → public.nods_page.id
- qially.memory_embeddings.message_id → qially.messages.id
- qially.messages.sender_id → qione.users.id
- qially.messages.session_id → qially.sessions.id
- qially.sessions.tenant_id → qione.tenants.id
- qiarchive.archive_chunks.archive_id → qiarchive.archive_files.archive_id
- qiarchive.archive_files.domain_prefix → qiarchive.prefix_registry.domain_prefix
- qiarchive.file_history.archive_id → qiarchive.archive_files.archive_id
- qiarchive.ingest_jobs.archive_id → qiarchive.archive_files.archive_id
- qicase.case_documents.archive_id → qiarchive.archive_files.archive_id
- qicase.case_documents.phase_id → qicase.phases.id
- qicase.cases.qid → qigraph.master_index.qid
- qicase.cases.tenant_id → qione.tenants.id
- qicase.deadlines.chronicle_event_id → qichronicle.events.id
- qicase.deadlines.phase_id → qicase.phases.id
- qicase.document_issues.case_document_id → qicase.case_documents.id
- qicase.document_issues.issue_id → qicase.issues.id
- qicase.issues.phase_id → qicase.phases.id
- qicase.phases.case_id → qicase.cases.id
- qichronicle.calendar_feeds.tenant_id → qione.tenants.id
- qichronicle.events.owner_id → qione.users.id
- qichronicle.events.qid → qigraph.master_index.qid
- qichronicle.events.tenant_id → qione.tenants.id
- qicms.posts.author_id → qione.users.id
- qicms.posts.featured_image_archive_id → qiarchive.archive_files.archive_id
- qicms.posts.qid → qigraph.master_index.qid
- qicms.posts.tenant_id → qione.tenants.id
- qigraph.edges.from_qid → qigraph.master_index.qid
- qigraph.edges.tenant_id → qione.tenants.id
- qigraph.edges.to_qid → qigraph.master_index.qid
- qigraph.master_index.tenant_id → qione.tenants.id
- qihome.categories.tenant_id → qione.tenants.id
- qihome.chore_assignments.chore_id → qihome.chores.id
- qihome.chore_assignments.related_user_id → public.profiles.id
- qihome.chore_assignments.tenant_id → qione.tenants.id
- qihome.chore_assignments.user_id → qione.users.id
- qihome.chores.category → qihome.categories.id
- qihome.chores.tenant_id → qione.tenants.id
- qihome.expense_shares.expense_id → qihome.expenses.id
- qihome.expense_shares.user_id → qione.users.id
- qihome.expenses.archive_id → qiarchive.archive_files.archive_id
- qihome.expenses.category_id → qihome.categories.id
- qihome.expenses.created_by → qione.users.id
- qihome.expenses.paid_by_user_id → qione.users.id
- qihome.expenses.tenant_id → qione.tenants.id
- qihome.settlements.created_by → qione.users.id
- qihome.settlements.from_user_id → qione.users.id
- qihome.settlements.tenant_id → qione.tenants.id
- qihome.settlements.to_user_id → qione.users.id
- qiknowledge.notes.author_id → qione.users.id
- qiknowledge.notes.qid → qigraph.master_index.qid
- qiknowledge.notes.tenant_id → qione.tenants.id
- qione.member_roles.role_id → qione.roles.id
- qione.member_roles.tenant_id → qione.tenants.id
- qione.member_roles.user_id → qione.users.id
- qione.module_role_access.module_key → qione.modules.key
- qione.module_role_access.role_id → qione.roles.id
- qione.module_role_access.tenant_id → qione.tenants.id
- qione.roles.tenant_id → qione.tenants.id
- qione.tenant_members.tenant_id → qione.tenants.id
- qione.tenant_members.user_id → qione.users.id
- qione.tenant_modules.module_key → qione.modules.key
- qione.tenant_modules.tenant_id → qione.tenants.id
- qione.tenants.created_by → qione.users.id
- qione.user_module_settings.module_id → qione.app_module_registry.id
- qione.user_module_settings.user_id → qione.profiles.id
- qisys.integration_tokens.tenant_id → qione.tenants.id
- qisys.jobs.tenant_id → qione.tenants.id
- qisys.system_events.tenant_id → qione.tenants.id
- qisys.worker_status.current_job_id → qisys.jobs.id
- qitax.return_files.archive_id → qiarchive.archive_files.archive_id
- qitax.return_files.return_id → qitax.returns.id
- qitax.returns.canonical_archive_id → qiarchive.archive_files.archive_id
- qitax.returns.created_by → qione.users.id
- qitax.returns.tenant_id → qione.tenants.id
- qivault.documents.archive_id → qiarchive.archive_files.archive_id
- qivault.documents.qid → qigraph.master_index.qid
- qivault.documents.tenant_id → qione.tenants.id
blueprint_map.md
---
mindmap-plugin: basic
---
# 10_blueprint
## 10_governance/
- 01_principles.md
- 02_agent_rules.md
- 03_standards.md
- 04_registry.md
- 05_policies.md
- 06_decisions.md
- _index.md
## 20_architecture/
- 01_identity.md
- 02_component_map.md
- 03_system_model.md
- 04_device_model.md
- 05_runtime_zones.md
- 06_service_boundaries.md
- 07_data_flow.md
- _index.md
## 30_data/
- 01_infrastructure_layout.md
- 02_bands.md
- 03_domains.md
- 04_subdomains.md
- 05_namespace_registry.md
- 06_directory_tree.md
- 07_object_model.md
- 08_objects.md
- 09_placement_rules.md
- 10_schema.md
- 11_front_matter.md
- 12_metadata.md
- 13_storage.md
- 14_exports.md
- 15_qievidence.md
- 16_structure.md
- _index.md
## 40_compute/
- 01_apis.md
- 02_workers.md
- 03_pipelines.md
- 04_integrations.md
- 05_runtime.md
- 06_qiserver_runtime_profile.md
- 07_tech_stack.md
- _index.md
## 50_applications/
- 01_portal.md
- 02_admin.md
- 03_tools.md
- 04_interfaces.md
- _index.md
## 60_operations/
- 01_cases.md
- 02_templates.md
- _index.md
## 70_appendices/
- 07_superseded_sources/
- QiAccess_Start_Blueprint.md
- README.md
- qi_os_home_blueprint.md
- tech_stack_markmind.md
- 01_changelog.md
- 02_glossary.md
- 03_migration_notes.md
- 04_legacy_csv_migration_plan.md
- 05_legacy_salvage.md
- 06_qiaccess_start_legacy_quarantine.md
## adr/
- ADR-0000_template.md
- ADR-0001_blueprint_scope.md
- ADR-0002_single_domain_rule.md
- ADR-0003_band_model.md
- ADR-0004_single_account_modular_mode.md
- ADR-0005_fleet_orchestration.md
- ADR-0006_narrative_and_knowledge_consolidation.md
- ADR-0007_unified_front_matter_and_progressive_doc_topology.md
- ADR-0008_qilabs_root.md
- ADR-0009_backup_server_control_plane_and_public_edge_pattern.md
- adr.md
## assets/
- diagrams/
- diagrams.md
- markmind-data.json
- images/
- images.md
- assets.md
## registry/
- band_registry.yaml
- deprecation_registry.yaml
- domain_registry.yaml
- folder_registry.yaml
- infrastructure_registry.yaml
- realms_registry.yaml
- sensitivity_classification.yaml
- subdomain_registry.yaml
- workspace_realms.yaml
## schemas/
- band_registry.schema.json
## scripts/
## standards/
- content_metadata_profile.yaml
- metadata_rules.yaml
- naming_rules.yaml
- pdf_standards.yaml
- repo_rules.yaml
## templates/
- README.md
- _index.md
- adr_template.md
- appendix_template.md
- artifact_template.md
- note_template.md
- operational_template.md
- page_template.md
- registry_reference_template.md
- section_index_template.md
- standard_template.md
- templates.md
## README.md
## _index.md
## file-index.json
## vizvibe.mmd
## Sub title
## Sub title
## Sub title
## Sub title
## Sub title
diagrams.md
markmind-data.json
{
"name": "..",
"children": [
{
"name": "README.md"
},
{
"name": "adr",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_qilabs_root.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
}
]
},
{
"name": "docs",
"children": [
{
"name": "00_genesis",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "01_governance",
"children": [
{
"name": "10_foundation",
"children": [
{
"name": "principles.md"
}
]
},
{
"name": "20_policy",
"children": [
{
"name": "agent_rules.md"
},
{
"name": "policies.md"
}
]
},
{
"name": "30_standards",
"children": [
{
"name": "metadata_policy.md"
},
{
"name": "standards.md"
},
{
"name": "templates_policy.md"
}
]
},
{
"name": "40_registry",
"children": [
{
"name": "registry.md"
}
]
},
{
"name": "50_decisions",
"children": [
{
"name": "decisions.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "02_architecture",
"children": [
{
"name": "10_identity",
"children": [
{
"name": "identity.md"
}
]
},
{
"name": "20_system",
"children": [
{
"name": "component_map.md"
},
{
"name": "system_model.md"
}
]
},
{
"name": "30_runtime",
"children": [
{
"name": "device_model.md"
},
{
"name": "runtime_zones.md"
},
{
"name": "service_boundaries.md"
}
]
},
{
"name": "40_flows",
"children": [
{
"name": "data_flow.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "03_structure",
"children": [
{
"name": "10_bands",
"children": [
{
"name": "bands.md"
}
]
},
{
"name": "20_domains",
"children": [
{
"name": "domains.md"
}
]
},
{
"name": "30_namespaces",
"children": [
{
"name": "namespace_registry.md"
},
{
"name": "subdomains.md"
}
]
},
{
"name": "40_objects",
"children": [
{
"name": "directory_tree.md"
},
{
"name": "object_model.md"
},
{
"name": "placement_rules.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "04_data",
"children": [
{
"name": "10_schema",
"children": [
{
"name": "front_matter.md"
},
{
"name": "objects.md"
},
{
"name": "schema.md"
}
]
},
{
"name": "20_metadata",
"children": [
{
"name": "metadata.md"
}
]
},
{
"name": "30_storage",
"children": [
{
"name": "exports.md"
},
{
"name": "storage.md"
}
]
},
{
"name": "40_domain_addenda",
"children": [
{
"name": "qievidence.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "05_compute",
"children": [
{
"name": "10_apis",
"children": [
{
"name": "apis.md"
}
]
},
{
"name": "20_workers",
"children": [
{
"name": "workers.md"
}
]
},
{
"name": "30_pipelines",
"children": [
{
"name": "pipelines.md"
}
]
},
{
"name": "40_runtime",
"children": [
{
"name": "runtime.md"
},
{
"name": "tech_stack.md"
}
]
},
{
"name": "50_integrations",
"children": [
{
"name": "integrations.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "06_applications",
"children": [
{
"name": "10_web",
"children": [
{
"name": "web.md"
}
]
},
{
"name": "20_portal",
"children": [
{
"name": "portal.md"
}
]
},
{
"name": "30_admin",
"children": [
{
"name": "admin.md"
}
]
},
{
"name": "40_tools",
"children": [
{
"name": "tools.md"
}
]
},
{
"name": "50_interfaces",
"children": [
{
"name": "interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "07_operations",
"children": [
{
"name": "10_clients",
"children": [
{
"name": "clients.md"
}
]
},
{
"name": "20_cases",
"children": [
{
"name": "cases.md"
}
]
},
{
"name": "30_finance",
"children": [
{
"name": "finance.md"
}
]
},
{
"name": "40_products",
"children": [
{
"name": "products.md"
}
]
},
{
"name": "50_templates",
"children": [
{
"name": "templates.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "08_appendices",
"children": [
{
"name": "10_reference",
"children": [
{
"name": "changelog.md"
},
{
"name": "glossary.md"
},
{
"name": "templates_catalog.md"
}
]
},
{
"name": "20_legacy",
"children": [
{
"name": "legacy_csv_migration_plan.md"
},
{
"name": "legacy_salvage.md"
},
{
"name": "migration_notes.md"
}
]
},
{
"name": "40_labs",
"children": [
{
"name": "markmind.md"
}
]
}
]
},
{
"name": "assets",
"children": [
{
"name": "diagrams",
"children": [
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
},
{
"name": "qios_04_rules_and_readmes.canvas.canvas"
},
{
"name": "qios_05_Cursor_and_naming.canvas"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
}
]
},
{
"name": "tables",
"children": []
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "hooks",
"children": [
{
"name": "__init__.py"
},
{
"name": "loaders.py"
},
{
"name": "registry.py"
},
{
"name": "renderers.py"
}
]
},
{
"name": "mkdocs.yml"
},
{
"name": "overrides",
"children": [
{
"name": "home.html"
}
]
},
{
"name": "rebuild.bat"
},
{
"name": "registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
},
{
"name": "scripts",
"children": [
{
"name": "enforce_structure.py"
},
{
"name": "generate_markmind.py"
},
{
"name": "normalize_front_matter.bat"
},
{
"name": "normalize_front_matter.py"
},
{
"name": "update_indexes.py"
}
]
},
{
"name": "standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
},
{
"name": "templates",
"children": [
{
"name": "README.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "tmp_section_folder",
"children": [
{
"name": "10_overview",
"children": []
},
{
"name": "20_models",
"children": []
},
{
"name": "30_rules",
"children": []
},
{
"name": "40_reference",
"children": []
},
{
"name": "index.md"
}
]
}
]
}
]
}
images/
images.md
templates/
2026-05-16_dev_session_template.md
---
record_type: dev_session
schema_version: 1.0
session_id:
date:
project:
repo:
branch:
feature_area:
tooling:
status:
owner: QiLabs
created_by:
source:
tags: []
related_files: []
related_tables: []
related_tools: []
---
# Dev Session: {{title}}
## 01. Session Identity
| Field | Value |
|---|---|
| Date | |
| Project | |
| Repo | |
| Branch | |
| Feature Area | |
| Status | |
| Owner | QiLabs |
| Session Type | |
## 02. Purpose
What were we trying to build, fix, decide, or understand?
## 03. Context
What existed before this session?
Include:
- current file/folder structure
- known bugs
- relevant prior decisions
- constraints
- what should not be changed
## 04. Decisions Made
| Decision | Reason | Status |
|---|---|---|
| | | |
## 05. Files / Folders Affected
| Path | Action | Notes |
|---|---|---|
| | created / updated / reviewed / planned | |
## 06. Database / Schema Notes
| Object | Action | Notes |
|---|---|---|
| | create / update / defer / inspect | |
## 07. Implementation Plan
### Step 1
### Step 2
### Step 3
## 08. Code / Prompt Artifacts
Paste or link any Codex prompts, SQL, config, or generated code.
## 09. Risks / Watch Items
| Risk | Why It Matters | Mitigation |
|---|---|---|
| | | |
## 10. Validation Checklist
- [ ] Build passes
- [ ] TypeScript passes
- [ ] No unrelated refactor
- [ ] UI still works
- [ ] Existing routes still work
- [ ] Data model still matches doctrine
- [ ] Docs updated
- [ ] Commit created
## 11. Final Outcome
What actually changed?
## 12. Next Actions
| Priority | Action | Owner | Notes |
|---|---|---|---|
| P1 | | | |
| P2 | | | |
| P3 | | | |
## 13. Restart Prompt
Use this to resume the work later:
> We were working on {{project}} / {{feature_area}}. The current status is {{status}}. Key decisions: {{decisions}}. Next action: {{next_action}}.
_index.md
---
layout:
section ...
...
title: 'Index: '
slug: ''
summary: ''
status:
active ...
...
created_at: ''
updated_at: ''
author: ''
owner: ''
sensitivity:
internal ...
...
classification:
business_internal ...
...
realm_label: ''
context: ''
aliases: []
tags: []
keywords: []
references: []
target_system: ''
target_scope: ''
canonical_ref: ''
uid: ''
template_key:
section_index_template ...
...
source_type:
manual ...
...
adr_id: ''
supersedes: ''
artifact_kind: ''
registry_key: ''
standard_key: ''
---
# {{title}}
## Contents Overview
## Directory Context
adr_template.md
---
layout: adr ... ...
title: "ADR-0000: "
slug: ""
summary: ""
status: proposed ... ...
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system: ""
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
source_type: manual ... ...
adr_id: ADR-0000 ... ...
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# {{title}}
## Status
## Context
## Decision
## Consequences
### Positive
### Negative
## Affected Documents
## Notes
appendix_template.md
---
layout: appendix ... ...
title: "Appendix: "
slug: ""
summary: ""
status: active
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system: ""
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
- appendix-templates
source_type: manual ... ...
adr_id: ""
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# {{title}}
## Overview
## Addendum Details
## Notes
artifact_template.md
---
layout: artifact ... ...
title: "Artifact: "
slug: ""
summary: ""
status: proposed
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system: ""
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
- artifact-template
source_type: generated ... ...
adr_id: ""
supersedes: ""
artifact_kind: implementation_plan ... ...
registry_key: ""
standard_key: ""
---
# {{title}}
## Genesis
## Execution
## Artifact Output
note_template.md
---
layout: page ... ...
title: "Note: "
slug: ""
summary: ""
status: draft
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system: ""
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
- note-template
source_type: manual ... ...
adr_id: ""
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# {{title}}
## Observations
## Notes
operational_template.md
---
layout: page ... ...
title: "Procedure: "
slug: ""
summary: ""
status: proposed ... ...
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ... ...
classification: business_internal ... ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system: ""
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
- operational-template
source_type: manual ... ...
adr_id: ""
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# {{title}}
## Objective
## Prerequisites
## Steps
## Verification
page_template.md
---
layout: page ...
title: Untitled Page ...
slug: ""
summary: ""
status: active ...
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ...
classification: business_internal ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system:
target_scope: ""
canonical_ref: ""
uid: ""
template_key:
- page-template
source_type: manual ...
adr_id: ""
supersedes: ""
artifact_kind: ""
registry_key: ""
standard_key: ""
---
# {{title}}
## Purpose
## Scope
## Rules / Guidance
## Notes
readme.md
# QiLabs Content Templates
This directory contains the canonical templates for generating Markdown content across the QiLabs ecosystem. These templates enforce consistent metadata and structural rules to prevent drift and ensure machine-readability by ingestion pipelines (QiArchive).
## Available Templates
| Template | Purpose | When to use |
|----------|---------|-------------|
| **`note_template.md`** | Generic knowledge, thoughts, meeting notes | Creating a new note in Obsidian or the knowledge base. |
| **`artifact_template.md`** | System outputs, plans, walkthroughs, generated code logs | When an AI agent or automated script generates a durable record of a task or plan. |
| **`adr_template.md`** | Architecture Decision Records | When formalizing a new system rule, schema change, or structural mandate. |
## Metadata Standard (Frontmatter)
All templates use YAML frontmatter that aligns with the QiOS Master Blueprint metadata rules:
- **`id`**: A unique UUID or ULID.
- **`short_code`**: A human-friendly identifier (e.g., `QXXXXXX`).
- **`domain_prefix`**: The system domain this file belongs to (e.g., `bbr4821` for the main tenant, `qiarchive` for ingestion, `qicase` for legal/cases).
- **`document_type`**: Enforces strict categorization (note, artifact, adr).
- **`status`**: The lifecycle stage of the document (draft, active, archived).
- **`tags`**: Used by the embedding system for semantic clustering.
By strictly adhering to these YAML fields, local workers (like `qiarchive`) can parse, categorize, and index the entire repository without guessing.
registry_reference_template.md
---
layout: registry ...
title: "Registry: "
slug: ""
summary: ""
status: active ...
created_at: ""
updated_at: ""
author: ""
owner: ""
sensitivity: internal ...
classification: business_internal ...
realm_label: ""
context: ""
aliases: []
tags: []
keywords: []
references: []
target_system:
target_scope: ""
canonical_ref: ""
uid: ""
template_key: registry_reference_template ...
source_type: manual ...
adr_id: ""
supersedes: ""
artifact_kind: ""
registry_key: default ...
standard_key: ""
---
# {{title}}
## Registry Purpose
## Entries
section_index_template.md
---
layout:
section ...
...
title: 'Index: '
slug: ''
summary: ''
status:
active ...
...
created_at: ''
updated_at: ''
author: ''
owner: ''
sensitivity:
internal ...
...
classification:
business_internal ...
...
realm_label: ''
context: ''
aliases: []
tags: []
keywords: []
references: []
target_system: ''
target_scope: ''
canonical_ref: ''
uid: ''
template_key:
section_index_template ...
...
source_type:
manual ...
...
adr_id: ''
supersedes: ''
artifact_kind: ''
registry_key: ''
standard_key: ''
---
# {{title}}
## Contents Overview
## Directory Context
standard_template.md
---
layout:
standard
...
title: 'Standard: '
slug: ''
summary: ''
status:
active
...
created_at: ''
updated_at: ''
author: ''
owner: ''
sensitivity:
internal
...
classification:
business_internal
...
realm_label: ''
context: ''
aliases: []
tags: []
keywords: []
references: []
target_system: ''
target_scope: ''
canonical_ref: ''
uid: ''
template_key:
standard_template
...
source_type:
manual
...
adr_id: ''
supersedes: ''
artifact_kind: ''
registry_key: ''
standard_key:
default
...
---
# {{title}}
## Goal
## Constraints
## Enforcement
templates.md
---
tags: MOCs
---
```folder-index-content
#### assets.md
### Untitled mindmap.md
```text
---
mindmap-plugin: basic
---
_index.md
# 10 Core: System Brain
<sub>Rules + Structure + Truth Layer</sub>
Welcome to the Core System definition. This section documents the foundational layers of the QiOS ecosystem in a logical progression.
## System Progression
1. [10 Governance](10_governance/_index.md): The Soul (Rules, Principles, Standards)
2. [20 Structure](20_structure/_index.md): The Body (Architecture, Identity, Models)
3. [30 Data](30_data/_index.md): The Blood (Schemas, Objects, Storage)
4. [40 Service Apps](40_service_apps/_index.md): The Function (Tools, Apps, Infrastructure)
5. [50 Operations](50_operations/_index.md): The Action (Runbooks, Cases, Templates)
6. [60 Knowledge](60_knowledge/_index.md): The Memory (Changelog, Glossary, History)
7. [70 Assets](70_assets/_index.md): The Resources (Diagrams, Templates)
---
- [Back to Main Map](../_index.md)
file-index.json
{
"basenames": {
"index": "01_governance/index.md",
"_index_of_docs": "_Index_of_docs.md",
"file-index.json": "file-index.json",
"templates": "07_operations/50_templates/templates.md",
"_index_of_templates": "templates/_Index_of_templates.md",
"tmp_section_folder": "templates/tmp_section_folder/tmp_section_folder.md",
"_index_of_tmp_section_folder": "templates/tmp_section_folder/_Index_of_tmp_section_folder.md",
"standard_template": "templates/standard_template.md",
"section_index_template": "templates/section_index_template.md",
"registry_reference_template": "templates/registry_reference_template.md",
"readme": "templates/README.md",
"page_template": "templates/page_template.md",
"operational_template": "templates/operational_template.md",
"note_template": "templates/note_template.md",
"artifact_template": "templates/artifact_template.md",
"appendix_template": "templates/appendix_template.md",
"adr_template": "templates/adr_template.md",
"assets": "assets/assets.md",
"images": "assets/images/images.md",
"_qios_master_document.jpg": "assets/images/_QiOS_Master_Document.jpg",
"diagrams": "assets/diagrams/diagrams.md",
"markmind.html": "assets/diagrams/markmind.html",
"markmind-data.json": "assets/diagrams/markmind-data.json",
"adr": "adr/adr.md",
"_index_of_adr": "adr/_Index_of_adr.md",
"adr-0008_qilabs_root": "adr/ADR-0008_qilabs_root.md",
"adr-0007_unified_front_matter_and_progressive_doc_topology": "adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md",
"adr-0006_narrative_and_knowledge_consolidation": "adr/ADR-0006_narrative_and_knowledge_consolidation.md",
"adr-0005_fleet_orchestration": "adr/ADR-0005_fleet_orchestration.md",
"adr-0004_single_account_modular_mode": "adr/ADR-0004_single_account_modular_mode.md",
"adr-0003_band_model": "adr/ADR-0003_band_model.md",
"adr-0002_single_domain_rule": "adr/ADR-0002_single_domain_rule.md",
"adr-0001_blueprint_scope": "adr/ADR-0001_blueprint_scope.md",
"adr-0000_template": "adr/ADR-0000_template.md",
"08_appendices": "08_appendices/08_appendices.md",
"_index_of_08_appendices": "08_appendices/_Index_of_08_appendices.md",
"40_labs": "08_appendices/40_labs/40_labs.md",
"_index_of_40_labs": "08_appendices/40_labs/_Index_of_40_labs.md",
"markmind": "08_appendices/40_labs/markmind.md",
"20_legacy": "08_appendices/20_legacy/20_legacy.md",
"_index_of_20_legacy": "08_appendices/20_legacy/_Index_of_20_legacy.md",
"migration_notes": "08_appendices/20_legacy/migration_notes.md",
"legacy_salvage": "08_appendices/20_legacy/legacy_salvage.md",
"legacy_csv_migration_plan": "08_appendices/20_legacy/legacy_csv_migration_plan.md",
"10_reference": "08_appendices/10_reference/10_reference.md",
"_index_of_10_reference": "08_appendices/10_reference/_Index_of_10_reference.md",
"templates_catalog": "08_appendices/10_reference/templates_catalog.md",
"glossary": "08_appendices/10_reference/glossary.md",
"changelog": "08_appendices/10_reference/changelog.md",
"07_operations": "07_operations/07_operations.md",
"_index_of_07_operations": "07_operations/_Index_of_07_operations.md",
"50_templates": "07_operations/50_templates/50_templates.md",
"_index_of_50_templates": "07_operations/50_templates/_Index_of_50_templates.md",
"40_products": "07_operations/40_products/40_products.md",
"_index_of_40_products": "07_operations/40_products/_Index_of_40_products.md",
"products": "07_operations/40_products/products.md",
"30_finance": "07_operations/30_finance/30_finance.md",
"_index_of_30_finance": "07_operations/30_finance/_Index_of_30_finance.md",
"finance": "07_operations/30_finance/finance.md",
"20_cases": "07_operations/20_cases/20_cases.md",
"_index_of_20_cases": "07_operations/20_cases/_Index_of_20_cases.md",
"cases": "07_operations/20_cases/cases.md",
"10_clients": "07_operations/10_clients/10_clients.md",
"_index_of_10_clients": "07_operations/10_clients/_Index_of_10_clients.md",
"clients": "07_operations/10_clients/clients.md",
"06_applications": "06_applications/06_applications.md",
"_index_of_06_applications": "06_applications/_Index_of_06_applications.md",
"50_interfaces": "06_applications/50_interfaces/50_interfaces.md",
"_index_of_50_interfaces": "06_applications/50_interfaces/_Index_of_50_interfaces.md",
"interfaces": "06_applications/50_interfaces/interfaces.md",
"40_tools": "06_applications/40_tools/40_tools.md",
"_index_of_40_tools": "06_applications/40_tools/_Index_of_40_tools.md",
"tools": "06_applications/40_tools/tools.md",
"30_admin": "06_applications/30_admin/30_admin.md",
"_index_of_30_admin": "06_applications/30_admin/_Index_of_30_admin.md",
"admin": "06_applications/30_admin/admin.md",
"20_portal": "06_applications/20_portal/20_portal.md",
"_index_of_20_portal": "06_applications/20_portal/_Index_of_20_portal.md",
"portal": "06_applications/20_portal/portal.md",
"10_web": "06_applications/10_web/10_web.md",
"_index_of_10_web": "06_applications/10_web/_Index_of_10_web.md",
"web": "06_applications/10_web/web.md",
"05_compute": "05_compute/05_compute.md",
"_index_of_05_compute": "05_compute/_Index_of_05_compute.md",
"50_integrations": "05_compute/50_integrations/50_integrations.md",
"_index_of_50_integrations": "05_compute/50_integrations/_Index_of_50_integrations.md",
"integrations": "05_compute/50_integrations/integrations.md",
"40_runtime": "05_compute/40_runtime/40_runtime.md",
"_index_of_40_runtime": "05_compute/40_runtime/_Index_of_40_runtime.md",
"tech_stack": "05_compute/40_runtime/tech_stack.md",
"runtime": "05_compute/40_runtime/runtime.md",
"30_pipelines": "05_compute/30_pipelines/30_pipelines.md",
"_index_of_30_pipelines": "05_compute/30_pipelines/_Index_of_30_pipelines.md",
"pipelines": "05_compute/30_pipelines/pipelines.md",
"20_workers": "05_compute/20_workers/20_workers.md",
"_index_of_20_workers": "05_compute/20_workers/_Index_of_20_workers.md",
"workers": "05_compute/20_workers/workers.md",
"10_apis": "05_compute/10_apis/10_apis.md",
"_index_of_10_apis": "05_compute/10_apis/_Index_of_10_apis.md",
"apis": "05_compute/10_apis/apis.md",
"04_data": "04_data/04_data.md",
"_index_of_04_data": "04_data/_Index_of_04_data.md",
"40_domain_addenda": "04_data/40_domain_addenda/40_domain_addenda.md",
"_index_of_40_domain_addenda": "04_data/40_domain_addenda/_Index_of_40_domain_addenda.md",
"qievidence": "04_data/40_domain_addenda/qievidence.md",
"30_storage": "04_data/30_storage/30_storage.md",
"_index_of_30_storage": "04_data/30_storage/_Index_of_30_storage.md",
"storage": "04_data/30_storage/storage.md",
"exports": "04_data/30_storage/exports.md",
"20_metadata": "04_data/20_metadata/20_metadata.md",
"_index_of_20_metadata": "04_data/20_metadata/_Index_of_20_metadata.md",
"metadata": "04_data/20_metadata/metadata.md",
"10_schema": "04_data/10_schema/10_schema.md",
"_index_of_10_schema": "04_data/10_schema/_Index_of_10_schema.md",
"schema": "04_data/10_schema/schema.md",
"objects": "04_data/10_schema/objects.md",
"front_matter": "04_data/10_schema/front_matter.md",
"03_structure": "03_structure/03_structure.md",
"_index_of_03_structure": "03_structure/_Index_of_03_structure.md",
"40_objects": "03_structure/40_objects/40_objects.md",
"_index_of_40_objects": "03_structure/40_objects/_Index_of_40_objects.md",
"placement_rules": "03_structure/40_objects/placement_rules.md",
"object_model": "03_structure/40_objects/object_model.md",
"directory_tree": "03_structure/40_objects/directory_tree.md",
"30_namespaces": "03_structure/30_namespaces/30_namespaces.md",
"_index_of_30_namespaces": "03_structure/30_namespaces/_Index_of_30_namespaces.md",
"subdomains": "03_structure/30_namespaces/subdomains.md",
"namespace_registry": "03_structure/30_namespaces/namespace_registry.md",
"20_domains": "03_structure/20_domains/20_domains.md",
"_index_of_20_domains": "03_structure/20_domains/_Index_of_20_domains.md",
"domains": "03_structure/20_domains/domains.md",
"10_bands": "03_structure/10_bands/10_bands.md",
"_index_of_10_bands": "03_structure/10_bands/_Index_of_10_bands.md",
"bands": "03_structure/10_bands/bands.md",
"02_architecture": "02_architecture/02_architecture.md",
"_index_of_02_architecture": "02_architecture/_Index_of_02_architecture.md",
"40_flows": "02_architecture/40_flows/40_flows.md",
"_index_of_40_flows": "02_architecture/40_flows/_Index_of_40_flows.md",
"data_flow": "02_architecture/40_flows/data_flow.md",
"30_runtime": "02_architecture/30_runtime/30_runtime.md",
"_index_of_30_runtime": "02_architecture/30_runtime/_Index_of_30_runtime.md",
"service_boundaries": "02_architecture/30_runtime/service_boundaries.md",
"runtime_zones": "02_architecture/30_runtime/runtime_zones.md",
"device_model": "02_architecture/30_runtime/device_model.md",
"20_system": "02_architecture/20_system/20_system.md",
"_index_of_20_system": "02_architecture/20_system/_Index_of_20_system.md",
"system_model": "02_architecture/20_system/system_model.md",
"component_map": "02_architecture/20_system/component_map.md",
"10_identity": "02_architecture/10_identity/10_identity.md",
"_index_of_10_identity": "02_architecture/10_identity/_Index_of_10_identity.md",
"identity": "02_architecture/10_identity/identity.md",
"_index_of_01_governance": "01_governance/_Index_of_01_governance.md",
"01_governance": "01_governance/01_governance.md",
"50_decisions": "01_governance/50_decisions/50_decisions.md",
"_index_of_50_decisions": "01_governance/50_decisions/_Index_of_50_decisions.md",
"decisions": "01_governance/50_decisions/decisions.md",
"40_registry": "01_governance/40_registry/40_registry.md",
"_index_of_40_registry": "01_governance/40_registry/_Index_of_40_registry.md",
"registry": "01_governance/40_registry/registry.md",
"30_standards": "01_governance/30_standards/30_standards.md",
"_index_of_30_standards": "01_governance/30_standards/_Index_of_30_standards.md",
"templates_policy": "01_governance/30_standards/templates_policy.md",
"standards": "01_governance/30_standards/standards.md",
"metadata_policy": "01_governance/30_standards/metadata_policy.md",
"_index_of_20_policy": "01_governance/20_policy/_Index_of_20_policy.md",
"20_policy": "01_governance/20_policy/20_policy.md",
"policies": "01_governance/20_policy/policies.md",
"agent_rules": "01_governance/20_policy/agent_rules.md",
"_index_of_10_foundation": "01_governance/10_foundation/_Index_of_10_foundation.md",
"principles": "01_governance/10_foundation/principles.md",
"00_genesis": "00_genesis/00_genesis.md",
"_index_of_00_genesis": "00_genesis/_Index_of_00_genesis.md"
},
"paths": [
"00_genesis/00_genesis.md",
"00_genesis/_Index_of_00_genesis.md",
"01_governance/01_governance.md",
"01_governance/10_foundation/_Index_of_10_foundation.md",
"01_governance/10_foundation/principles.md",
"01_governance/20_policy/20_policy.md",
"01_governance/20_policy/_Index_of_20_policy.md",
"01_governance/20_policy/agent_rules.md",
"01_governance/20_policy/policies.md",
"01_governance/30_standards/30_standards.md",
"01_governance/30_standards/_Index_of_30_standards.md",
"01_governance/30_standards/metadata_policy.md",
"01_governance/30_standards/standards.md",
"01_governance/30_standards/templates_policy.md",
"01_governance/40_registry/40_registry.md",
"01_governance/40_registry/_Index_of_40_registry.md",
"01_governance/40_registry/registry.md",
"01_governance/50_decisions/50_decisions.md",
"01_governance/50_decisions/_Index_of_50_decisions.md",
"01_governance/50_decisions/decisions.md",
"01_governance/_Index_of_01_governance.md",
"01_governance/index.md",
"02_architecture/02_architecture.md",
"02_architecture/10_identity/10_identity.md",
"02_architecture/10_identity/_Index_of_10_identity.md",
"02_architecture/10_identity/identity.md",
"02_architecture/20_system/20_system.md",
"02_architecture/20_system/_Index_of_20_system.md",
"02_architecture/20_system/component_map.md",
"02_architecture/20_system/system_model.md",
"02_architecture/30_runtime/30_runtime.md",
"02_architecture/30_runtime/_Index_of_30_runtime.md",
"02_architecture/30_runtime/device_model.md",
"02_architecture/30_runtime/runtime_zones.md",
"02_architecture/30_runtime/service_boundaries.md",
"02_architecture/40_flows/40_flows.md",
"02_architecture/40_flows/_Index_of_40_flows.md",
"02_architecture/40_flows/data_flow.md",
"02_architecture/_Index_of_02_architecture.md",
"02_architecture/index.md",
"03_structure/03_structure.md",
"03_structure/10_bands/10_bands.md",
"03_structure/10_bands/_Index_of_10_bands.md",
"03_structure/10_bands/bands.md",
"03_structure/20_domains/20_domains.md",
"03_structure/20_domains/_Index_of_20_domains.md",
"03_structure/20_domains/domains.md",
"03_structure/30_namespaces/30_namespaces.md",
"03_structure/30_namespaces/_Index_of_30_namespaces.md",
"03_structure/30_namespaces/namespace_registry.md",
"03_structure/30_namespaces/subdomains.md",
"03_structure/40_objects/40_objects.md",
"03_structure/40_objects/_Index_of_40_objects.md",
"03_structure/40_objects/directory_tree.md",
"03_structure/40_objects/object_model.md",
"03_structure/40_objects/placement_rules.md",
"03_structure/_Index_of_03_structure.md",
"03_structure/index.md",
"04_data/04_data.md",
"04_data/10_schema/10_schema.md",
"04_data/10_schema/_Index_of_10_schema.md",
"04_data/10_schema/front_matter.md",
"04_data/10_schema/objects.md",
"04_data/10_schema/schema.md",
"04_data/20_metadata/20_metadata.md",
"04_data/20_metadata/_Index_of_20_metadata.md",
"04_data/20_metadata/metadata.md",
"04_data/30_storage/30_storage.md",
"04_data/30_storage/_Index_of_30_storage.md",
"04_data/30_storage/exports.md",
"04_data/30_storage/storage.md",
"04_data/40_domain_addenda/40_domain_addenda.md",
"04_data/40_domain_addenda/_Index_of_40_domain_addenda.md",
"04_data/40_domain_addenda/qievidence.md",
"04_data/_Index_of_04_data.md",
"04_data/index.md",
"05_compute/05_compute.md",
"05_compute/10_apis/10_apis.md",
"05_compute/10_apis/_Index_of_10_apis.md",
"05_compute/10_apis/apis.md",
"05_compute/20_workers/20_workers.md",
"05_compute/20_workers/_Index_of_20_workers.md",
"05_compute/20_workers/workers.md",
"05_compute/30_pipelines/30_pipelines.md",
"05_compute/30_pipelines/_Index_of_30_pipelines.md",
"05_compute/30_pipelines/pipelines.md",
"05_compute/40_runtime/40_runtime.md",
"05_compute/40_runtime/_Index_of_40_runtime.md",
"05_compute/40_runtime/runtime.md",
"05_compute/40_runtime/tech_stack.md",
"05_compute/50_integrations/50_integrations.md",
"05_compute/50_integrations/_Index_of_50_integrations.md",
"05_compute/50_integrations/integrations.md",
"05_compute/_Index_of_05_compute.md",
"05_compute/index.md",
"06_applications/06_applications.md",
"06_applications/10_web/10_web.md",
"06_applications/10_web/_Index_of_10_web.md",
"06_applications/10_web/web.md",
"06_applications/20_portal/20_portal.md",
"06_applications/20_portal/_Index_of_20_portal.md",
"06_applications/20_portal/portal.md",
"06_applications/30_admin/30_admin.md",
"06_applications/30_admin/_Index_of_30_admin.md",
"06_applications/30_admin/admin.md",
"06_applications/40_tools/40_tools.md",
"06_applications/40_tools/_Index_of_40_tools.md",
"06_applications/40_tools/tools.md",
"06_applications/50_interfaces/50_interfaces.md",
"06_applications/50_interfaces/_Index_of_50_interfaces.md",
"06_applications/50_interfaces/interfaces.md",
"06_applications/_Index_of_06_applications.md",
"06_applications/index.md",
"07_operations/07_operations.md",
"07_operations/10_clients/10_clients.md",
"07_operations/10_clients/_Index_of_10_clients.md",
"07_operations/10_clients/clients.md",
"07_operations/20_cases/20_cases.md",
"07_operations/20_cases/_Index_of_20_cases.md",
"07_operations/20_cases/cases.md",
"07_operations/30_finance/30_finance.md",
"07_operations/30_finance/_Index_of_30_finance.md",
"07_operations/30_finance/finance.md",
"07_operations/40_products/40_products.md",
"07_operations/40_products/_Index_of_40_products.md",
"07_operations/40_products/products.md",
"07_operations/50_templates/50_templates.md",
"07_operations/50_templates/_Index_of_50_templates.md",
"07_operations/50_templates/templates.md",
"07_operations/_Index_of_07_operations.md",
"07_operations/index.md",
"08_appendices/08_appendices.md",
"08_appendices/10_reference/10_reference.md",
"08_appendices/10_reference/_Index_of_10_reference.md",
"08_appendices/10_reference/changelog.md",
"08_appendices/10_reference/glossary.md",
"08_appendices/10_reference/templates_catalog.md",
"08_appendices/20_legacy/20_legacy.md",
"08_appendices/20_legacy/_Index_of_20_legacy.md",
"08_appendices/20_legacy/legacy_csv_migration_plan.md",
"08_appendices/20_legacy/legacy_salvage.md",
"08_appendices/20_legacy/migration_notes.md",
"08_appendices/40_labs/40_labs.md",
"08_appendices/40_labs/_Index_of_40_labs.md",
"08_appendices/40_labs/markmind.md",
"08_appendices/_Index_of_08_appendices.md",
"08_appendices/index.md",
"_Index_of_docs.md",
"adr/ADR-0000_template.md",
"adr/ADR-0001_blueprint_scope.md",
"adr/ADR-0002_single_domain_rule.md",
"adr/ADR-0003_band_model.md",
"adr/ADR-0004_single_account_modular_mode.md",
"adr/ADR-0005_fleet_orchestration.md",
"adr/ADR-0006_narrative_and_knowledge_consolidation.md",
"adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md",
"adr/ADR-0008_qilabs_root.md",
"adr/_Index_of_adr.md",
"adr/adr.md",
"assets/assets.md",
"assets/diagrams/diagrams.md",
"assets/diagrams/markmind-data.json",
"assets/diagrams/markmind.html",
"assets/images/_QiOS_Master_Document.jpg",
"assets/images/images.md",
"file-index.json",
"index.md",
"templates/README.md",
"templates/_Index_of_templates.md",
"templates/adr_template.md",
"templates/appendix_template.md",
"templates/artifact_template.md",
"templates/note_template.md",
"templates/operational_template.md",
"templates/page_template.md",
"templates/registry_reference_template.md",
"templates/section_index_template.md",
"templates/standard_template.md",
"templates/templates.md",
"templates/tmp_section_folder/_Index_of_tmp_section_folder.md",
"templates/tmp_section_folder/index.md",
"templates/tmp_section_folder/tmp_section_folder.md"
]
}
readme.md
# QiAccess Start Master Blueprint
This repository is the active master blueprint for QiAccess Start.
QiAccess Start is Cody's cognitive front door:
1. Home
2. Start
3. Capture
4. Knowledge
5. Memory
6. Insights
7. System
The old QiOS material is not discarded, but it is no longer allowed to compete with the active doctrine. Useful governance, standards, registry discipline, and architecture policies remain in force. Legacy multi-tenant and client-platform assumptions are retained only as quarantined reference material until they are explicitly revalidated.
## Active Doctrine
- QiAccess is the portal.
- The map is the interface.
- The knowledge base is the memory behind each node.
- Capture must stay fast or the system fails.
- System is nested administration, not a top-level junk drawer.
- Memory and Insights stay honest when they are placeholders.
## Current Phase
Phase 1 remains stabilization and prototype flow validation:
1. keep the SPA working
2. align the app to the seven roots
3. preserve working launcher and link behavior
4. freeze legacy surfaces in place
5. validate Capture as the first real operating path
## What Stays Authoritative
- `docs/01_governance/`: principles, policies, registry, and ADR discipline
- `docs/02_architecture/`: active QiAccess Start system model and runtime framing
- `docs/06_applications/`: the seven-root portal doctrine
- `docs/08_appendices/20_legacy/`: quarantined legacy material and salvage notes
- `standards/` and `registry/`: retained structural controls that still serve the active system
## Build Loop
The blueprint can still be maintained through the existing documentation toolchain:
1. update doctrine or registry files
2. run `rebuild.bat`
3. inspect validation output
4. preview with `mkdocs serve` when needed
## Legacy Handling
Use the quarantine appendix before promoting older QiOS, QiOne, tenant, client, or product-delivery doctrine back into the active blueprint:
- `docs/08_appendices/20_legacy/legacy_salvage.md`
- `docs/08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`
vizvibe.mmd
flowchart TD
%% === PROJECT GOALS ===
%% Ultimate Goal: The Constitutional Source of Truth for the QiLabs Ecosystem.
%% Current Goal: Pivot to Single-Account Modular Runtime.
%% === START ===
%% @project_start [start, closed, 2026-03-20, user]
project_start("Project Start<br/><sub>Initial commit and genesis of<br/>the QiOS Master Blueprint to<br/>govern the expanding ecosystem</sub>")
%% @ultimate_goal [end, opened, 2026-04-04, user]
ultimate_goal("Ultimate Goal<br/><sub>A fully governed, machine-enforceable<br/>blueprint that ensures integrity<br/>across all QiOS environments</sub>")
%% === COMPLETED MILESTONES ===
%% @blueprint_genesis [ai-task, closed, 2026-03-25, Cody]
blueprint_genesis("Blueprint Genesis<br/><sub>Completed all 50 canonical pages<br/>for v0.4, establishing Core, Platform,<br/>and Domain band definitions</sub>")
%% @qially_theme_sync [ai-task, closed, 2026-04-01, Cody]
qially_theme_sync("Qially Theme Sync<br/><sub>Overhauled the blueprint UI with<br/>glassmorphism, emerald/indigo palette,<br/>and left-nav navigation structure</sub>")
%% @fleet_orchestration_doctrine [ai-task, closed, 2026-04-02, Cody]
fleet_orchestration_doctrine("Fleet Orchestration Doctrine<br/><sub>Pivoted to orchestrated edge node<br/>mapping, defining how decentralized<br/>nodes sync with the canonical spine</sub>")
%% @ideal_structure_integration [ai-task, closed, 2026-04-03, Cody]
ideal_structure_integration("Ideal Structure Integration<br/><sub>Refined the physical directory topology<br/>to eliminate stubs and ensure<br/>progressive reading of doctrine</sub>")
%% @modular_mode_pivot [ai-task, closed, 2026-04-04, Cody]
modular_mode_pivot("Modular Mode Pivot<br/><sub>ADR-0004: Shifted active runtime<br/>from multi-tenant to single-account<br/>using owner_user_id for isolation</sub>")
%% @infra_control_plane [ai-task, closed, 2026-04-09, Antigravity]
infra_control_plane("Infra Control Plane Update<br/><sub>Integrated Backup Server pattern<br/>defining dual-path access, 4-zone<br/>runtime, and node-local persistence</sub>")
%% === FUTURE WORK ===
%% @doctrine_alignment_update [ai-task, opened, 2026-04-04, Cody]
doctrine_alignment_update("Doctrine Alignment Update<br/><sub>Update all governance, structure,<br/>and data docs to remove active<br/>multi-tenant 'tenant_id' mandates</sub>")
%% @runtime_implementation_sync [ai-task, opened, 2026-04-04, Cody]
runtime_implementation_sync("Runtime Implementation Sync<br/><sub>Coordinate with IDE 2 to apply<br/>schema migrations and RLS rewrites<br/>in the active application repository</sub>")
%% === CONNECTIONS ===
project_start --> blueprint_genesis
blueprint_genesis --> qially_theme_sync
qially_theme_sync --> fleet_orchestration_doctrine
fleet_orchestration_doctrine --> ideal_structure_integration
ideal_structure_integration --> modular_mode_pivot
modular_mode_pivot --> infra_control_plane
infra_control_plane --> doctrine_alignment_update
infra_control_plane --> runtime_implementation_sync
doctrine_alignment_update -.-> ultimate_goal
runtime_implementation_sync -.-> ultimate_goal
%% === RECENT WORK HIGHLIGHT ===
subgraph recent [RECENT]
infra_control_plane
end
%% === STYLES ===
%% Closed tasks
style project_start fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
style blueprint_genesis fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
style qially_theme_sync fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
style fleet_orchestration_doctrine fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
style ideal_structure_integration fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
style modular_mode_pivot fill:#1a1a2e,stroke:#a78bfa,color:#c4b5fd,stroke-width:1px
%% Recent node
style infra_control_plane fill:#2d1f4e,stroke:#c084fc,color:#e9d5ff,stroke-width:2px
%% Recent subgraph
style recent fill:transparent,stroke:#c084fc,color:#c084fc,stroke-width:2px,stroke-dasharray:5 5
%% Open tasks
style ultimate_goal fill:#1a1a2e,stroke:#4ade80,color:#86efac,stroke-width:1px
style doctrine_alignment_update fill:#1a1a2e,stroke:#4ade80,color:#86efac,stroke-width:1px
style runtime_implementation_sync fill:#1a1a2e,stroke:#4ade80,color:#86efac,stroke-width:1px
20_qinexus/
00_inbox/
_index.md
# 00 Inbox
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for raw incoming items awaiting triage.
100_data/
_index.md
# 100 Data
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for structured datasets and controlled exports tied to QiNexus.
10_workbench/
_index.md
# 10 Workbench
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for active working material and temporary assembly.
110_reference/
_index.md
# 110 Reference
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for reusable reference material and lookup content.
120_archive/
_index.md
# 120 Archive
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for inactive or historical QiNexus records.
130_system/
_index.md
# 130 System
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for QiNexus-internal system maps and control documents.
20_timeline/
_index.md
# 20 Timeline
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for date-ordered life and project chronology.
30_life/
_index.md
# 30 Life
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for personal and household life areas.
40_people/
40_system/
50_business/
_index.md
# 50 Business
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for business operations and company work.
60_finance/
_index.md
# 60 Finance
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for money, banking, taxes, and financial operations.
70_legal/
_index.md
# 70 Legal
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for legal matters, cases, and formal records.
80_tech/
_index.md
# 80 Tech
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for technical systems, devices, and software operations.
90_assets/
_index.md
# 90 Assets
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for durable owned assets and related records.
master_map.md
# Master Map
<sub>QiNexus Visual + Logical Map</sub>
[Placeholder for the Master Map]
This document provides a high-level visual and logical map of the entire QiNexus system.
_templates/
_index.md
# 20 QiNexus
<sub>Human Life + Project Integration</sub>
The unified workspace for life, projects, and knowledge.
## Structure
1. [00 Inbox](00_inbox/): Raw intake waiting for triage
2. [10 Workbench](10_workbench/): Active working material
3. [20 Timeline](20_timeline/): Date-ordered chronology
4. [30 Life](30_life/): Personal and household domains
5. [40 People](40_people/): People-centered records
6. [50 Business](50_business/): Business operations and projects
7. [60 Finance](60_finance/): Money, taxes, and financial records
8. [70 Legal](70_legal/): Legal matters and formal records
9. [80 Tech](80_tech/): Technical systems and software operations
10. [90 Assets](90_assets/): Durable asset records
11. [100 Data](100_data/): Structured datasets and exports
12. [110 Reference](110_reference/): Reusable reference material
13. [120 Archive](120_archive/): Historical QiNexus records
14. [130 System](130_system/): QiNexus-internal system maps
Legacy nested folders such as `10_flow`, `20_life_areas`, `30_knowledge`, `40_system`, and `90_archive` were left in place and not overwritten.
30_qiarchive/
10_ingestion/
10_paperless/
_index.md
# 10 Paperless
Placement file created from `blueprint_master_map-mindmap.md`.
20_drive_imports/
_index.md
# 20 Drive Imports
Placement file created from `blueprint_master_map-mindmap.md`.
30_manual_uploads/
_index.md
# 30 Manual Uploads
Placement file created from `blueprint_master_map-mindmap.md`.
40_email_exports/
_index.md
# 40 Email Exports
Placement file created from `blueprint_master_map-mindmap.md`.
50_web_clips/
_index.md
# 50 Web Clips
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 10 Ingestion
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for raw source intake before extraction.
20_extraction/
10_ocr_text/
_index.md
# 10 OCR Text
Placement file created from `blueprint_master_map-mindmap.md`.
20_markdown_exports/
_index.md
# 20 Markdown Exports
Placement file created from `blueprint_master_map-mindmap.md`.
30_transcripts/
_index.md
# 30 Transcripts
Placement file created from `blueprint_master_map-mindmap.md`.
40_metadata/
_index.md
# 40 Metadata
Placement file created from `blueprint_master_map-mindmap.md`.
50_clean_text/
_index.md
# 50 Clean Text
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 20 Extraction
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for normalized extracted content.
30_chunking/
10_chunk_manifests/
_index.md
# 10 Chunk Manifests
Placement file created from `blueprint_master_map-mindmap.md`.
20_chunk_rules/
_index.md
# 20 Chunk Rules
Placement file created from `blueprint_master_map-mindmap.md`.
30_source_maps/
_index.md
# 30 Source Maps
Placement file created from `blueprint_master_map-mindmap.md`.
40_quality_checks/
_index.md
# 40 Quality Checks
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 30 Chunking
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for chunk manifests, rules, and quality checks.
40_embeddings/
10_qdrant/
_index.md
# 10 Qdrant
Placement file created from `blueprint_master_map-mindmap.md`.
20_embedding_models/
_index.md
# 20 Embedding Models
Placement file created from `blueprint_master_map-mindmap.md`.
30_collection_manifests/
_index.md
# 30 Collection Manifests
Placement file created from `blueprint_master_map-mindmap.md`.
40_rebuild_logs/
_index.md
# 40 Rebuild Logs
Placement file created from `blueprint_master_map-mindmap.md`.
50_vector_quality_tests/
_index.md
# 50 Vector Quality Tests
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 40 Embeddings
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for vector generation and rebuild artifacts.
50_graphs/
10_graphify/
_index.md
# 10 Graphify
Placement file created from `blueprint_master_map-mindmap.md`.
20_markmap/
_index.md
# 20 Markmap
Placement file created from `blueprint_master_map-mindmap.md`.
30_entity_maps/
_index.md
# 30 Entity Maps
Placement file created from `blueprint_master_map-mindmap.md`.
40_relationship_exports/
_index.md
# 40 Relationship Exports
Placement file created from `blueprint_master_map-mindmap.md`.
50_graph_quality_reports/
_index.md
# 50 Graph Quality Reports
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 50 Graphs
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for entity and relationship graph outputs.
60_retrieval/
10_rag_profiles/
_index.md
# 10 RAG Profiles
Placement file created from `blueprint_master_map-mindmap.md`.
20_query_logs/
_index.md
# 20 Query Logs
Placement file created from `blueprint_master_map-mindmap.md`.
30_retrieval_tests/
_index.md
# 30 Retrieval Tests
Placement file created from `blueprint_master_map-mindmap.md`.
40_prompt_contexts/
_index.md
# 40 Prompt Contexts
Placement file created from `blueprint_master_map-mindmap.md`.
50_source_citation_tests/
_index.md
# 50 Source Citation Tests
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 60 Retrieval
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for RAG profiles, tests, and retrieval diagnostics.
70_memory/
10_gina_profiles/
_index.md
# 10 Gina Profiles
Placement file created from `blueprint_master_map-mindmap.md`.
20_durable_facts/
_index.md
# 20 Durable Facts
Placement file created from `blueprint_master_map-mindmap.md`.
30_session_summaries/
_index.md
# 30 Session Summaries
Placement file created from `blueprint_master_map-mindmap.md`.
40_preference_maps/
_index.md
# 40 Preference Maps
Placement file created from `blueprint_master_map-mindmap.md`.
50_context_packs/
_index.md
# 50 Context Packs
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 70 Memory
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for durable facts, profiles, session summaries, and context packs.
80_sync_backups/
10_index_snapshots/
_index.md
# 10 Index Snapshots
Placement file created from `blueprint_master_map-mindmap.md`.
20_backup_manifests/
_index.md
# 20 Backup Manifests
Placement file created from `blueprint_master_map-mindmap.md`.
30_restore_points/
_index.md
# 30 Restore Points
Placement file created from `blueprint_master_map-mindmap.md`.
40_sync_manifests/
_index.md
# 40 Sync Manifests
Placement file created from `blueprint_master_map-mindmap.md`.
_index.md
# 80 Sync Backups
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for rollback, sync, and backup manifests.
_index.md
# 30 QiArchive
<sub>AI memory and retrieval pipeline</sub>
Placement file created from `blueprint_master_map-mindmap.md`.
Use this band for ingestion, extraction, chunking, embeddings, graphs, retrieval, memory, and backup artifacts.
40_system/
10_logs/
_index.md
# 10 Logs
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for runtime and operational logs retained inside docs.
20_audits/
_index.md
# 20 Audits
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for validation, audit, and alignment outputs.
30_backups/
_index.md
# 30 Backups
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for documentation backups and recovery references.
40_health_checks/
_index.md
# 40 Health Checks
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for system verification and health inspection results.
50_generated_reports/
_index.md
# 50 Generated Reports
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for generated summaries and downstream report artifacts.
60_generated_indexes/
_index.md
# 60 Generated Indexes
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for generated indexes and machine-readable directory outputs.
70_maintenance/
_index.md
# 70 Maintenance
Placement file created from `blueprint_master_map-mindmap.md`.
Use this folder for maintenance notes and operational cleanup tasks.
_index.md
# 40 System
<sub>Operational integrity and generated system outputs</sub>
Placement file aligned to `blueprint_master_map-mindmap.md`.
## Structure
1. [10 Logs](10_logs/): Runtime and operational logs
2. [20 Audits](20_audits/): Validation and audit outputs
3. [30 Backups](30_backups/): Backup and restore references
4. [40 Health Checks](40_health_checks/): Verification and health inspection results
5. [50 Generated Reports](50_generated_reports/): Generated summaries and report artifacts
6. [60 Generated Indexes](60_generated_indexes/): Machine-readable indexes and inventories
7. [70 Maintenance](70_maintenance/): Maintenance notes and cleanup tasks
docs_alignment_audit_20260512_020923.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T02:09:24`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **206**
- Likely stale files: **26**
- Mixed review files: **19**
- Current/aligned files: **13**
- Total findings: **1567**
## Highest Priority Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `00_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 18 | 0 |
| `00_blueprint/04_data/03_structure/30_namespaces/namespace_registry.md` | likely_stale | 7 | 0 |
| `00_blueprint/registry/domain_registry.yaml` | likely_stale | 5 | 0 |
| `00_blueprint/04_data/10_schema/objects.md` | likely_stale | 5 | 0 |
| `00_blueprint/04_data/03_structure/10_bands/bands.md` | likely_stale | 4 | 0 |
| `00_blueprint/08_appendices/20_legacy/legacy_csv_migration_plan.md` | likely_stale | 3 | 0 |
| `00_blueprint/07_operations/10_clients/clients.md` | likely_stale | 3 | 0 |
| `00_blueprint/06_applications/50_interfaces/interfaces.md` | likely_stale | 3 | 0 |
| `00_blueprint/04_data/10_schema/schema.md` | likely_stale | 3 | 0 |
| `00_blueprint/04_data/30_storage/storage.md` | likely_stale | 3 | 0 |
| `00_blueprint/registry/band_registry.yaml` | likely_stale | 2 | 0 |
| `00_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `00_blueprint/07_operations/20_cases/cases.md` | likely_stale | 2 | 0 |
| `00_blueprint/07_operations/40_products/products.md` | likely_stale | 2 | 0 |
| `00_blueprint/07_operations/50_templates/templates.md` | likely_stale | 2 | 0 |
| `00_blueprint/04_data/03_structure/20_domains/domains.md` | likely_stale | 2 | 0 |
| `00_blueprint/standards/naming_rules.yaml` | likely_stale | 1 | 0 |
| `00_blueprint/templates/README.md` | likely_stale | 1 | 0 |
| `00_blueprint/05_compute/10_apis/apis.md` | likely_stale | 1 | 0 |
| `00_blueprint/05_compute/50_integrations/integrations.md` | likely_stale | 1 | 0 |
| `00_blueprint/04_data/03_structure/index.md` | likely_stale | 1 | 0 |
| `00_blueprint/04_data/20_metadata/metadata.md` | likely_stale | 1 | 0 |
| `00_blueprint/04_data/40_domain_addenda/qievidence.md` | likely_stale | 1 | 0 |
| `00_blueprint/04_data/03_structure/40_objects/object_model.md` | likely_stale | 1 | 0 |
| `00_blueprint/04_data/03_structure/40_objects/placement_rules.md` | likely_stale | 1 | 0 |
| `00_blueprint/02_architecture/30_runtime/device_model.md` | likely_stale | 1 | 0 |
| `00_blueprint/02_architecture/10_identity/identity.md` | mixed_review | 11 | 1 |
| `00_blueprint/06_applications/30_admin/admin.md` | mixed_review | 9 | 3 |
| `00_blueprint/08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md` | mixed_review | 8 | 7 |
| `00_blueprint/02_architecture/30_runtime/service_boundaries.md` | mixed_review | 5 | 2 |
| `00_blueprint/06_applications/20_portal/portal.md` | mixed_review | 4 | 3 |
| `00_blueprint/01_governance/20_policy/policies.md` | mixed_review | 4 | 3 |
| `00_blueprint/08_appendices/10_reference/glossary.md` | mixed_review | 4 | 4 |
| `00_blueprint/06_applications/10_web/web.md` | mixed_review | 3 | 1 |
| `00_blueprint/02_architecture/20_system/component_map.md` | mixed_review | 3 | 1 |
| `00_blueprint/README.md` | mixed_review | 3 | 5 |
| `00_blueprint/06_applications/index.md` | mixed_review | 2 | 2 |
| `00_blueprint/05_compute/40_runtime/tech_stack.md` | mixed_review | 1 | 1 |
| `00_blueprint/01_governance/20_policy/agent_rules.md` | mixed_review | 1 | 1 |
| `00_blueprint/08_appendices/10_reference/changelog.md` | mixed_review | 1 | 3 |
## Findings
### `00_audit/QiAccess_Start_Current_State_Audit.md:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> # QiAccess Start Current State Audit
### `00_audit/QiAccess_Start_Current_State_Audit.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Audit scope: current QiAccess Start app, adjacent legacy surfaces in this repo, deployment clues, and qiserver verification attempts.
### `00_audit/QiAccess_Start_Current_State_Audit.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Audit scope: current QiAccess Start app, adjacent legacy surfaces in this repo, deployment clues, and qiserver verification attempts.
### `00_audit/QiAccess_Start_Current_State_Audit.md:120`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - qiserver: `http://qiserver`
### `00_audit/QiAccess_Start_Current_State_Audit.md:125`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `00_audit/QiAccess_Start_Current_State_Audit.md:126`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `00_audit/QiAccess_Start_Current_State_Audit.md:128`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Portainer
### `00_audit/QiAccess_Start_Current_State_Audit.md:140`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - Paperless
### `00_audit/QiAccess_Start_Current_State_Audit.md:141`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> - Qi Queue / n8n-like intake plane
### `00_audit/QiAccess_Start_Current_State_Audit.md:145`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - Wiki.js
### `00_audit/QiAccess_Start_Current_State_Audit.md:147`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - Paperless as first-class ingestion target
### `00_audit/QiAccess_Start_Current_State_Audit.md:158`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Legacy qiserver sync path: `run_copy.bat` copies `local/config/*` to `/srv/qios/stacks/_qiaccess_start/config`
### `00_audit/QiAccess_Start_Current_State_Audit.md:158`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - Legacy qiserver sync path: `run_copy.bat` copies `local/config/*` to `/srv/qios/stacks/_qiaccess_start/config`
### `00_audit/QiAccess_Start_Current_State_Audit.md:158`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - Legacy qiserver sync path: `run_copy.bat` copies `local/config/*` to `/srv/qios/stacks/_qiaccess_start/config`
### `00_audit/QiAccess_Start_Current_State_Audit.md:165`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Old Homepage stack appears intended to run on qiserver from `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:165`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - Old Homepage stack appears intended to run on qiserver from `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:165`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - Old Homepage stack appears intended to run on qiserver from `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:170`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Exact restart command used on qiserver
### `00_audit/QiAccess_Start_Current_State_Audit.md:250`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> - QiAccess is treated as a front door, not a system of record.
### `00_audit/QiAccess_Start_Current_State_Audit.md:256`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - qiserver, Open WebUI, Ollama, Portainer, Cockpit, and Google Drive are already part of the current mental model.
### `00_audit/QiAccess_Start_Current_State_Audit.md:256`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - qiserver, Open WebUI, Ollama, Portainer, Cockpit, and Google Drive are already part of the current mental model.
### `00_audit/QiAccess_Start_Current_State_Audit.md:256`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - qiserver, Open WebUI, Ollama, Portainer, Cockpit, and Google Drive are already part of the current mental model.
### `00_audit/QiAccess_Start_Current_State_Audit.md:256`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - qiserver, Open WebUI, Ollama, Portainer, Cockpit, and Google Drive are already part of the current mental model.
### `00_audit/QiAccess_Start_Current_State_Audit.md:287`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - No explicit Paperless intake flow
### `00_audit/QiAccess_Start_Current_State_Audit.md:335`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `run_copy.bat` is a real sync script targeting qiserver
### `00_audit/QiAccess_Start_Current_State_Audit.md:341`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - qiserver Homepage stack path implied by `run_copy.bat`
### `00_audit/QiAccess_Start_Current_State_Audit.md:389`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - Paperless consume target
### `00_audit/QiAccess_Start_Current_State_Audit.md:394`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - explicit qiserver, Paperless, Open WebUI, Portainer, Cockpit, storage, diagnostics surfaces
### `00_audit/QiAccess_Start_Current_State_Audit.md:394`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - explicit qiserver, Paperless, Open WebUI, Portainer, Cockpit, storage, diagnostics surfaces
### `00_audit/QiAccess_Start_Current_State_Audit.md:394`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - explicit qiserver, Paperless, Open WebUI, Portainer, Cockpit, storage, diagnostics surfaces
### `00_audit/QiAccess_Start_Current_State_Audit.md:394`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - explicit qiserver, Paperless, Open WebUI, Portainer, Cockpit, storage, diagnostics surfaces
### `00_audit/QiAccess_Start_Current_State_Audit.md:397`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - explicit Wiki.js linking, not generic note textarea only
### `00_audit/QiAccess_Start_Current_State_Audit.md:407`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - first real pipeline should be Capture -> Paperless consume / QiNexus inbox / note timeline
### `00_audit/QiAccess_Start_Current_State_Audit.md:414`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - It appears to be tied to a real qiserver stack path.
### `00_audit/QiAccess_Start_Current_State_Audit.md:417`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - It targets `/srv/qios/stacks/_qiaccess_start/config`, which may still matter for live operations.
### `00_audit/QiAccess_Start_Current_State_Audit.md:417`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - It targets `/srv/qios/stacks/_qiaccess_start/config`, which may still matter for live operations.
### `00_audit/QiAccess_Start_Current_State_Audit.md:425`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> 5. Any assumptions about qiserver live state
### `00_audit/QiAccess_Start_Current_State_Audit.md:435`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> 6. Add a static `Capture` surface focused on Paperless consume, QiNexus inbox, and timeline-note entry points.
### `00_audit/QiAccess_Start_Current_State_Audit.md:436`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> 7. Re-attempt qiserver live verification with working SSH credentials so Paperless, Open WebUI, Ollama, and deployment paths can be confirmed before deeper integration.
### `00_audit/QiAccess_Start_Current_State_Audit.md:436`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> 7. Re-attempt qiserver live verification with working SSH credentials so Paperless, Open WebUI, Ollama, and deployment paths can be confirmed before deeper integration.
### `00_audit/QiAccess_Start_Current_State_Audit.md:436`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 7. Re-attempt qiserver live verification with working SSH credentials so Paperless, Open WebUI, Ollama, and deployment paths can be confirmed before deeper integration.
### `00_audit/QiAccess_Start_Current_State_Audit.md:436`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> 7. Re-attempt qiserver live verification with working SSH credentials so Paperless, Open WebUI, Ollama, and deployment paths can be confirmed before deeper integration.
### `00_audit/QiAccess_Start_Current_State_Audit.md:455`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Old qiserver homepage stack still exists in `local/` and appears to deploy config to `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:455`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - Old qiserver homepage stack still exists in `local/` and appears to deploy config to `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:455`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - Old qiserver homepage stack still exists in `local/` and appears to deploy config to `/srv/qios/stacks/_qiaccess_start`.
### `00_audit/QiAccess_Start_Current_State_Audit.md:467`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Legacy Homepage restart on qiserver would be from `/srv/qios/stacks/_qiaccess_start`
### `00_audit/QiAccess_Start_Current_State_Audit.md:467`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - Legacy Homepage restart on qiserver would be from `/srv/qios/stacks/_qiaccess_start`
### `00_audit/QiAccess_Start_Current_State_Audit.md:467`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - Legacy Homepage restart on qiserver would be from `/srv/qios/stacks/_qiaccess_start`
### `00_audit/QiAccess_Start_Current_State_Audit.md:470`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> ## qiserver audit status
### `00_audit/QiAccess_Start_Current_State_Audit.md:480`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - compose stack locations on qiserver
### `00_audit/QiAccess_Start_Current_State_Audit.md:481`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - service folder tree under `/srv/qios`
### `00_audit/QiAccess_Start_Current_State_Audit.md:482`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - Paperless container status/logs
### `00_audit/QiAccess_Start_Current_State_Audit.md:483`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Open WebUI/Ollama live state
### `00_audit/QiAccess_Start_Current_State_Audit.md:483`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI/Ollama live state
### `00_audit/QiAccess_Start_Current_State_Audit.md:484`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - installed Ollama models
### `00_audit/QiAccess_Start_Current_State_Audit.md:485`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - whether Open WebUI currently sees Ollama
### `00_audit/QiAccess_Start_Current_State_Audit.md:485`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - whether Open WebUI currently sees Ollama
### `00_audit/QiAccess_Start_Current_State_Audit.md:498`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - `/knowledge` -> keep, but refocus on Wiki.js and knowledge links
### `00_audit/QiAccess_Start_Current_State_Audit.md:504`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> 6. Do not touch qiserver deployment, DNS, or worker routing until live server access is verified.
### `00_audit/QiAccess_Start_Current_State_Audit.md:514`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - make Paperless/QiNexus ingestion the first explicit operational workflow
### `00_audit/QiServer_Service_Truth_Audit.md:1`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QiServer Service Truth Audit
### `00_audit/QiServer_Service_Truth_Audit.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Scope: live qiserver truth verification for QiAccess Start Phase 2. This pass verified reachable private services and public edge behavior without changing deployment. Direct Docker and compose inspection on qiserver was attempted but blocked by SSH authentication.
### `00_audit/QiServer_Service_Truth_Audit.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Scope: live qiserver truth verification for QiAccess Start Phase 2. This pass verified reachable private services and public edge behavior without changing deployment. Direct Docker and compose inspection on qiserver was attempted but blocked by SSH authentication.
### `00_audit/QiServer_Service_Truth_Audit.md:21`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - `https://100.121.111.106:9443` -> `Portainer`
### `00_audit/QiServer_Service_Truth_Audit.md:22`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `https://100.121.111.106:9090` -> Cockpit login page, hostname `qiserver`
### `00_audit/QiServer_Service_Truth_Audit.md:23`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `https://qiserver-1.cerberus-sirius.ts.net:9446` -> `Open WebUI`
### `00_audit/QiServer_Service_Truth_Audit.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - `https://qiserver-1.cerberus-sirius.ts.net:9446` -> `Open WebUI`
### `00_audit/QiServer_Service_Truth_Audit.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - `http://100.121.111.106:3002` -> `Welcome | Wiki.js`
### `00_audit/QiServer_Service_Truth_Audit.md:26`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API
### `00_audit/QiServer_Service_Truth_Audit.md:33`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `find /srv/qios ...`
### `00_audit/QiServer_Service_Truth_Audit.md:34`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - `docker compose ps` for Paperless
### `00_audit/QiServer_Service_Truth_Audit.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - Paperless webserver logs
### `00_audit/QiServer_Service_Truth_Audit.md:37`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Reason blocked: qiserver is reachable, but `qiadmin@100.121.111.106` rejected available SSH auth.
### `00_audit/QiServer_Service_Truth_Audit.md:43`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | qiserver | Not verified | Not verified | `22` reachable; host also serves `9090`, `9443`, `9446`, `11434`, `3001`, `3002` | Online | `100.121.111.106` | None verified | Not verified | Not verified | Private Only | Verified | SSH is reachable over Tailscale, but auth failed. Cockpit identified host
### `00_audit/QiServer_Service_Truth_Audit.md:43`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | qiserver | Not verified | Not verified | `22` reachable; host also serves `9090`, `9443`, `9446`, `11434`, `3001`, `3002` | Online | `100.121.111.106` | None verified | Not verified | Not verified | Private Only | Verified | SSH is reachable over Tailscale, but auth failed. Cockpit identified host
### `00_audit/QiServer_Service_Truth_Audit.md:44`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> | Paperless | Not verified | Not verified | Expected `8000`; TCP probe failed | Offline | `https://100.121.111.106:8000` | None verified | Not verified | Not verified | Private Only | Broken | Expected endpoint did not respond. Compose folder, consume path, and media/data paths could not be inspecte
### `00_audit/QiServer_Service_Truth_Audit.md:44`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Paperless | Not verified | Not verified | Expected `8000`; TCP probe failed | Offline | `https://100.121.111.106:8000` | None verified | Not verified | Not verified | Private Only | Broken | Expected endpoint did not respond. Compose folder, consume path, and media/data paths could not be inspecte
### `00_audit/QiServer_Service_Truth_Audit.md:45`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Wiki.js | Not verified | Not verified | `3002` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3002` | `wiki.qially.com` referenced in page metadata, but DNS did not resolve during audit | Not verified | Not verified | Private Only | Verified | Live page title was `Welcome | W
### `00_audit/QiServer_Service_Truth_Audit.md:45`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Wiki.js | Not verified | Not verified | `3002` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3002` | `wiki.qially.com` referenced in page metadata, but DNS did not resolve during audit | Not verified | Not verified | Private Only | Verified | Live page title was `Welcome | W
### `00_audit/QiServer_Service_Truth_Audit.md:46`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Open WebUI | Not verified | Not verified | `9446` reachable and returned UI | Online | `https://qiserver-1.cerberus-sirius.ts.net:9446` | None verified | Not verified | Not verified | Private Only | Verified | Live page title was `Open WebUI`. Older direct `3000` assumption is not valid in the cur
### `00_audit/QiServer_Service_Truth_Audit.md:46`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> | Open WebUI | Not verified | Not verified | `9446` reachable and returned UI | Online | `https://qiserver-1.cerberus-sirius.ts.net:9446` | None verified | Not verified | Not verified | Private Only | Verified | Live page title was `Open WebUI`. Older direct `3000` assumption is not valid in the cur
### `00_audit/QiServer_Service_Truth_Audit.md:46`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Open WebUI | Not verified | Not verified | `9446` reachable and returned UI | Online | `https://qiserver-1.cerberus-sirius.ts.net:9446` | None verified | Not verified | Not verified | Private Only | Verified | Live page title was `Open WebUI`. Older direct `3000` assumption is not valid in the cur
### `00_audit/QiServer_Service_Truth_Audit.md:47`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> | Ollama | Not verified | Not verified | `11434` reachable; API responded | Online | `http://100.121.111.106:11434` | None | Not verified | Model store path not verified | Private Only | Verified | API exposed `embeddinggemma:latest` and `llama3.2:latest`. Open WebUI-to-Ollama connectivity was not d
### `00_audit/QiServer_Service_Truth_Audit.md:47`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> | Ollama | Not verified | Not verified | `11434` reachable; API responded | Online | `http://100.121.111.106:11434` | None | Not verified | Model store path not verified | Private Only | Verified | API exposed `embeddinggemma:latest` and `llama3.2:latest`. Open WebUI-to-Ollama connectivity was not d
### `00_audit/QiServer_Service_Truth_Audit.md:47`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Ollama | Not verified | Not verified | `11434` reachable; API responded | Online | `http://100.121.111.106:11434` | None | Not verified | Model store path not verified | Private Only | Verified | API exposed `embeddinggemma:latest` and `llama3.2:latest`. Open WebUI-to-Ollama connectivity was not d
### `00_audit/QiServer_Service_Truth_Audit.md:48`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | AnythingLLM | Not verified | Not verified | No verified runtime port found | Unknown | None verified | None | Not verified | Not verified | Private Only | Broken | The previous `3001` assumption is incorrect: `3001` is serving the legacy QiAccess Homepage surface instead. |
### `00_audit/QiServer_Service_Truth_Audit.md:49`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> | Portainer | Not verified | Not verified | `9443` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9443` | None | Not verified | Not verified | Private Only | Verified | Live page title was `Portainer`. |
### `00_audit/QiServer_Service_Truth_Audit.md:49`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Portainer | Not verified | Not verified | `9443` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9443` | None | Not verified | Not verified | Private Only | Verified | Live page title was `Portainer`. |
### `00_audit/QiServer_Service_Truth_Audit.md:50`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Cockpit | Not verified | Not verified | `9090` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9090` | None | Not verified | Not verified | Private Only | Verified | Live page identified hostname `qiserver`. |
### `00_audit/QiServer_Service_Truth_Audit.md:50`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Cockpit | Not verified | Not verified | `9090` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9090` | None | Not verified | Not verified | Private Only | Verified | Live page identified hostname `qiserver`. |
### `00_audit/QiServer_Service_Truth_Audit.md:51`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Neo4j | Not verified | Not verified | Expected `7474`; TCP probe failed | Offline | `http://100.121.111.106:7474` | None | Not verified | Not verified | Private Only | Broken | No responding web console was found on the expected port. |
### `00_audit/QiServer_Service_Truth_Audit.md:52`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Homepage | Not verified | Not verified live; legacy repo compose uses `ghcr.io/gethomepage/homepage:latest` | `3001` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3001` | None verified | Legacy deploy path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Le
### `00_audit/QiServer_Service_Truth_Audit.md:52`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> | Homepage | Not verified | Not verified live; legacy repo compose uses `ghcr.io/gethomepage/homepage:latest` | `3001` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3001` | None verified | Legacy deploy path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Le
### `00_audit/QiServer_Service_Truth_Audit.md:52`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> | Homepage | Not verified | Not verified live; legacy repo compose uses `ghcr.io/gethomepage/homepage:latest` | `3001` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3001` | None verified | Legacy deploy path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Le
### `00_audit/QiServer_Service_Truth_Audit.md:52`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Homepage | Not verified | Not verified live; legacy repo compose uses `ghcr.io/gethomepage/homepage:latest` | `3001` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3001` | None verified | Legacy deploy path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Le
### `00_audit/QiServer_Service_Truth_Audit.md:53`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios
### `00_audit/QiServer_Service_Truth_Audit.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios
### `00_audit/QiServer_Service_Truth_Audit.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> | QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios
### `00_audit/QiServer_Service_Truth_Audit.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> | QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios
### `00_audit/QiServer_Service_Truth_Audit.md:53`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPublic Restricted\b`
> | QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios
### `00_audit/QiServer_Service_Truth_Audit.md:64`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `run_copy.bat` still points legacy config syncs at `/srv/qios/stacks/_qiaccess_start/config`, which reinforces the legacy deployment path clue but does not prove the current running compose state.
### `00_audit/QiServer_Service_Truth_Audit.md:64`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - `run_copy.bat` still points legacy config syncs at `/srv/qios/stacks/_qiaccess_start/config`, which reinforces the legacy deployment path clue but does not prove the current running compose state.
### `00_audit/QiServer_Service_Truth_Audit.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> 1. Open WebUI is live, but not on the previously assumed direct `3000` URL.
### `00_audit/QiServer_Service_Truth_Audit.md:69`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 2. Ollama is live and serving models.
### `00_audit/QiServer_Service_Truth_Audit.md:70`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> 3. Wiki.js is live on private port `3002`.
### `00_audit/QiServer_Service_Truth_Audit.md:71`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> 4. Portainer and Cockpit are live and reachable on their private admin ports.
### `00_audit/QiServer_Service_Truth_Audit.md:72`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> 5. Paperless is not reachable on the expected `8000` endpoint.
### `00_audit/QiServer_Service_Truth_Audit.md:79`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> 1. Gain working SSH access to qiserver as `qiadmin` so Docker/container truth can be collected.
### `00_audit/QiServer_Service_Truth_Audit.md:80`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> 2. Run `docker ps`, compose discovery, and `/srv/qios` path checks on qiserver.
### `00_audit/QiServer_Service_Truth_Audit.md:80`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> 2. Run `docker ps`, compose discovery, and `/srv/qios` path checks on qiserver.
### `00_audit/QiServer_Service_Truth_Audit.md:81`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> 3. Inspect the Paperless stack folder, compose status, consume path, media/data mounts, and logs.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/file-index.json`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> # QiAccess Start Master Blueprint
### `00_blueprint/index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active master blueprint for this docset.
### `00_blueprint/index.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> It defines one cognitive front door with seven roots only:
### `00_blueprint/index.md:19`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> 1. the merged QiAccess Start pages in this master blueprint
### `00_blueprint/index.md:26`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - the seven-root QiAccess Start operating model
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/mkdocs.yml:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> site_name: QiAccess Start Master Blueprint
### `00_blueprint/mkdocs.yml:2`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> site_description: Active master blueprint for the QiAccess Start portal with retained QiOS governance controls
### `00_blueprint/mkdocs.yml:4`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> copyright: "QiAccess Start 2026 - master blueprint"
### `00_blueprint/mkdocs.yml:130`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - QiAccess Start Portal: 06_applications/20_portal/portal.md
### `00_blueprint/mkdocs.yml`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/mkdocs.yml`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/mkdocs.yml`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/mkdocs.yml`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/mkdocs.yml`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/QiAccess_Start_Blueprint.md:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> # QiAccess Start Blueprint
### `00_blueprint/QiAccess_Start_Blueprint.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `00_blueprint/QiAccess_Start_Blueprint.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `00_blueprint/QiAccess_Start_Blueprint.md:20`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - `Knowledge`: link to manuals, Wiki.js, repo docs, and reference material
### `00_blueprint/QiAccess_Start_Blueprint.md:78`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> 7. Paperless ingestion becomes the first proven intake pipeline
### `00_blueprint/QiAccess_Start_Blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/QiAccess_Start_Blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/QiAccess_Start_Blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/QiAccess_Start_Blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/QiAccess_Start_Blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/qi_os_home_blueprint.md:84`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> The older business, tenant, and client-platform blueprint is quarantined.
### `00_blueprint/qi_os_home_blueprint.md:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> # QiAccess Start Operating Blueprint
### `00_blueprint/qi_os_home_blueprint.md:4`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> **Primary runtime:** qiserver
### `00_blueprint/qi_os_home_blueprint.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> **Knowledge base:** Wiki.js plus repo docs
### `00_blueprint/qi_os_home_blueprint.md:10`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `00_blueprint/qi_os_home_blueprint.md:10`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `00_blueprint/qi_os_home_blueprint.md:24`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `00_blueprint/qi_os_home_blueprint.md:72`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> The following legacy QiOS rules remain active because they still serve QiAccess Start:
### `00_blueprint/qi_os_home_blueprint.md:86`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> Keep the useful governance DNA. Do not let the retired model override the seven-root cognitive front door.
### `00_blueprint/qi_os_home_blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/qi_os_home_blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/qi_os_home_blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/qi_os_home_blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/qi_os_home_blueprint.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/README.md:15`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> The old QiOS material is not discarded, but it is no longer allowed to compete with the active doctrine. Useful governance, standards, registry discipline, and architecture policies remain in force. Legacy multi-tenant and client-platform assumptions are retained only as quarantined reference materi
### `00_blueprint/README.md:15`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> The old QiOS material is not discarded, but it is no longer allowed to compete with the active doctrine. Useful governance, standards, registry discipline, and architecture policies remain in force. Legacy multi-tenant and client-platform assumptions are retained only as quarantined reference materi
### `00_blueprint/README.md:55`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Use the quarantine appendix before promoting older QiOS, QiOne, tenant, client, or product-delivery doctrine back into the active blueprint:
### `00_blueprint/README.md:1`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> # QiAccess Start Master Blueprint
### `00_blueprint/README.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This repository is the active master blueprint for QiAccess Start.
### `00_blueprint/README.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door:
### `00_blueprint/README.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door:
### `00_blueprint/README.md:39`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - `docs/02_architecture/`: active QiAccess Start system model and runtime framing
### `00_blueprint/README.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/README.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/README.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/README.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/README.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/tech_stack_markmind.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> #### NocoDB
### `00_blueprint/tech_stack_markmind.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/tech_stack_markmind.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/tech_stack_markmind.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/tech_stack_markmind.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/tech_stack_markmind.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `01_notes/Legacy_Surface_Disposition.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `local/` is the legacy Homepage/qiserver stack; do not delete yet.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/00_genesis/_Index_of_00_genesis.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `00_blueprint/01_governance/index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/01_governance/_Index_of_01_governance.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `00_blueprint/02_architecture/index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `00_blueprint/02_architecture/index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `00_blueprint/02_architecture/index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `00_blueprint/02_architecture/index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `00_blueprint/02_architecture/index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `00_blueprint/02_architecture/index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `00_blueprint/02_architecture/index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `00_blueprint/02_architecture/index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `00_blueprint/02_architecture/index.md:38`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - **System Model**: the QiAccess Start operating model
### `00_blueprint/02_architecture/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/02_architecture/_Index_of_02_architecture.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/04_data.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/04_data/_Index_of_04_data.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/05_compute/_Index_of_05_compute.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md:36`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> If they still describe the older QiOne or multi-tenant portal model, they must be treated as reference-only until revalidated against the active blueprint.
### `00_blueprint/06_applications/index.md:36`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> If they still describe the older QiOne or multi-tenant portal model, they must be treated as reference-only until revalidated against the active blueprint.
### `00_blueprint/06_applications/index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines the active user-facing surfaces for QiAccess Start.
### `00_blueprint/06_applications/index.md:12`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active portal.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/index.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `QiDocs|MkDocs|Wiki\.js`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/06_applications/_Index_of_06_applications.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/07_operations/07_operations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this likely target file.
### `00_blueprint/07_operations/07_operations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this likely target file.
_Showing first 300 findings out of 1567. See CSV for full detail._
docs_alignment_audit_20260512_031245.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T03:12:45`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **110**
- Likely stale files: **30**
- Mixed review files: **30**
- Current/aligned files: **5**
- Reference/audit files: **7**
- Neutral/unknown files: **38**
- Total findings: **1242**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/30_data/10_schema.md` | likely_stale | 10 | 0 |
| `10_blueprint/registry/domain_registry.yaml` | likely_stale | 9 | 0 |
| `10_blueprint/30_data/08_objects.md` | likely_stale | 8 | 0 |
| `10_blueprint/30_data/05_namespace_registry.md` | likely_stale | 7 | 0 |
| `10_blueprint/30_data/02_bands.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/03_domains.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/09_placement_rules.md` | likely_stale | 6 | 0 |
| `10_blueprint/40_compute/01_apis.md` | likely_stale | 5 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/30_data/16_structure.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/standards/repo_rules.yaml` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 11 | 2 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 10 | 4 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 7 | 3 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 14 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 3 | 7 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 10 | 4 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 7 | 3 |
| `10_blueprint/30_data/16_structure.md` | likely_stale | 2 | 0 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 14 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 3 | 7 |
| `10_blueprint/standards/repo_rules.yaml` | likely_stale | 1 | 0 |
| `10_blueprint/registry/infrastructure_registry.yaml` | neutral_or_unknown | 0 | 0 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page still uses the older platform and tenant-oriented service model. Treat it as reference-only until it is revalidated for the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/06_service_boundaries.md:12`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase |
### `10_blueprint/20_architecture/06_service_boundaries.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | qione (platform) | Tenants, RBAC, module access | Business domain logic |
### `10_blueprint/20_architecture/06_service_boundaries.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | qione (platform) | Tenants, RBAC, module access | Business domain logic |
### `10_blueprint/20_architecture/06_service_boundaries.md:36`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## Tenant Isolation Boundary
### `10_blueprint/20_architecture/06_service_boundaries.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every domain-scoped table enforces tenant isolation via `tenant_id` + Row Level Security:
### `10_blueprint/20_architecture/06_service_boundaries.md:43`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> SELECT user_id FROM qione.tenant_members WHERE tenant_id = tenant_id
### `10_blueprint/20_architecture/06_service_boundaries.md:47`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Supabase Auth is the identity layer. `qione.tenant_members` is the RBAC mapping. No domain service may bypass this boundary.
### `10_blueprint/20_architecture/06_service_boundaries.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Supabase Auth is the identity layer. `qione.tenant_members` is the RBAC mapping. No domain service may bypass this boundary.
### `10_blueprint/20_architecture/06_service_boundaries.md:51`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bservice delivery\b`
> Infrastructure nodes (e.g., Backup Servers) must implement a strict separation between administrative control and public service delivery.
### `10_blueprint/20_architecture/06_service_boundaries.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page still uses the older platform and tenant-oriented service model. Treat it as reference-only until it is revalidated for the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/06_service_boundaries.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> 1. **Private Control Path**: Administrative access (SSH, DB Admin, Portainer) must occur over a secure private network overlay (Tailnet/VPN). These surfaces are never exposed to the public internet.
### `10_blueprint/20_architecture/06_service_boundaries.md:60`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:60`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Every new Supabase schema must be declared in `registry/band_registry.yaml` before use.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> All domains in QiOS map to a single Postgres schema in Supabase. No domain logic lives in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/05_namespace_registry.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, tenant, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant workspaces
### `10_blueprint/30_data/05_namespace_registry.md:93`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:109`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for tenant, matter, project, or equivalent governed workspace allocation.
### `10_blueprint/30_data/05_namespace_registry.md:133`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:147`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = tenant workspace
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:10`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure tenant-scoped documents |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/09_placement_rules.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? → qione
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? → qione
### `10_blueprint/30_data/09_placement_rules.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Is it a global auth record? → auth (Supabase managed)
### `10_blueprint/30_data/09_placement_rules.md:45`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email must be modeled as an integration path into the canonical Spine, relying on `qione` for configuration, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory. Durable, secure email attachments may be promoted to `qiva
### `10_blueprint/30_data/10_schema.md:10`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **retrieval-oriented** — embeddings and vector search are first-class citizens via `pgvector`
### `10_blueprint/30_data/10_schema.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> ## Namespace Map (Live Supabase Schemas)
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:55`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:70`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:104`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Migration-as-Truth**: Supabase migrations are the canonical schema authority. ORMs and client models may reflect the schema, but they do not define it.
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:14`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Supabase Postgres = canonical metadata and index
### `10_blueprint/30_data/13_storage.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> pgvector = derived embeddings (not canonical)
### `10_blueprint/30_data/13_storage.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Cloud canonical** | Supabase Postgres | Metadata records + pgvector |
### `10_blueprint/30_data/13_storage.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Cloud canonical** | Supabase Postgres | Metadata records + pgvector |
### `10_blueprint/30_data/13_storage.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | **Secure vault** | `qivault.documents` | Tenant-scoped secure docs |
### `10_blueprint/30_data/13_storage.md:51`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> tenant/{tenant_id}/email/{account_id}/{archive_id}/raw.eml
### `10_blueprint/30_data/13_storage.md:52`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> tenant/{tenant_id}/email/{account_id}/{archive_id}/attachments/{attachment_archive_id}_{filename}
### `10_blueprint/30_data/13_storage.md:16`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Neo4j / qigraph = derived graph (not canonical)
### `10_blueprint/30_data/13_storage.md:78`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - \/srv/qios/data\ is for persistent app data.
### `10_blueprint/30_data/13_storage.md:78`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - \/srv/qios/data\ is for persistent app data.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> qione → Platform (tenants, members, RBAC)
### `10_blueprint/30_data/16_structure.md:18`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> qione → Platform (tenants, members, RBAC)
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Cloud-hosted / Supabase |
### `10_blueprint/40_compute/01_apis.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase | Cloud-hosted / Supabase Edge Functions |
### `10_blueprint/40_compute/01_apis.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Authenticate requests via Supabase JWT
### `10_blueprint/40_compute/01_apis.md:53`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Never return records from another tenant (enforced by RLS)
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:14`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | `DATABASE_URL` | Supabase Postgres connection string |
### `10_blueprint/40_compute/05_runtime.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | `SUPABASE_URL` | Supabase project URL |
### `10_blueprint/40_compute/05_runtime.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | `SUPABASE_ANON_KEY` | Supabase publishable key |
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | `SUPABASE_SERVICE_ROLE_KEY` | Supabase admin key (backend only) |
### `10_blueprint/40_compute/05_runtime.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> pnpm install
### `10_blueprint/40_compute/05_runtime.md:33`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> pnpm db:start
### `10_blueprint/40_compute/05_runtime.md:36`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> pnpm db:migrate
### `10_blueprint/40_compute/05_runtime.md:39`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> pnpm dev
### `10_blueprint/40_compute/05_runtime.md:82`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Supabase Postgres → canonical metadata, RLS, pgvector
### `10_blueprint/40_compute/05_runtime.md:82`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Supabase Postgres → canonical metadata, RLS, pgvector
### `10_blueprint/40_compute/05_runtime.md:87`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> pnpm / Node → frontend and app API
### `10_blueprint/40_compute/05_runtime.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Neo4j → derived graph
### `10_blueprint/40_compute/05_runtime.md:85`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> NocoDB → admin UI over Postgres
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:196`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 6. call Ollama embeddings endpoint
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:198`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> 8. project derived graph records into Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:207`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama installed and serving locally
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:210`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:211`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:212`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve configured for private Open WebUI access
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:217`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **qiserver** is the current active runtime.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - \/srv/qios/repos\: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - \/srv/qios/repos\: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - \/srv/qios/stacks\: For Docker Compose runtime stacks. Do not create nested Git repos inside \/srv/qios/stacks\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - \/srv/qios/stacks\: For Docker Compose runtime stacks. Do not create nested Git repos inside \/srv/qios/stacks\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - \/srv/qios/data\: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - \/srv/qios/data\: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:227`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Runs locally at \127.0.0.1:8088\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:228`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Runs locally at \127.0.0.1:3000\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:230`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Runs locally at \127.0.0.1:9443\ and is an admin service.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Installed on qiserver and locked to \127.0.0.1:11434\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Installed on qiserver and locked to \127.0.0.1:11434\.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
_Showing first 300 findings out of 1242. See CSV for full detail._
docs_alignment_audit_20260512_035449.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T03:54:49`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **111**
- Likely stale files: **28**
- Mixed review files: **32**
- Current/aligned files: **6**
- Reference/audit files: **8**
- Neutral/unknown files: **37**
- Total findings: **1754**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/30_data/10_schema.md` | likely_stale | 10 | 0 |
| `10_blueprint/registry/domain_registry.yaml` | likely_stale | 9 | 0 |
| `10_blueprint/30_data/08_objects.md` | likely_stale | 8 | 0 |
| `10_blueprint/30_data/05_namespace_registry.md` | likely_stale | 7 | 0 |
| `10_blueprint/30_data/02_bands.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/03_domains.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/09_placement_rules.md` | likely_stale | 6 | 0 |
| `10_blueprint/40_compute/01_apis.md` | likely_stale | 5 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 12 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Every new Supabase schema must be declared in `registry/band_registry.yaml` before use.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> All domains in QiOS map to a single Postgres schema in Supabase. No domain logic lives in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/05_namespace_registry.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, tenant, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant workspaces
### `10_blueprint/30_data/05_namespace_registry.md:93`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:109`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for tenant, matter, project, or equivalent governed workspace allocation.
### `10_blueprint/30_data/05_namespace_registry.md:133`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:147`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = tenant workspace
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:10`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure tenant-scoped documents |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/09_placement_rules.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? → qione
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? → qione
### `10_blueprint/30_data/09_placement_rules.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Is it a global auth record? → auth (Supabase managed)
### `10_blueprint/30_data/09_placement_rules.md:45`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email must be modeled as an integration path into the canonical Spine, relying on `qione` for configuration, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory. Durable, secure email attachments may be promoted to `qiva
### `10_blueprint/30_data/10_schema.md:10`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **retrieval-oriented** — embeddings and vector search are first-class citizens via `pgvector`
### `10_blueprint/30_data/10_schema.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> ## Namespace Map (Live Supabase Schemas)
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:55`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:70`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:104`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Migration-as-Truth**: Supabase migrations are the canonical schema authority. ORMs and client models may reflect the schema, but they do not define it.
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Cloud-hosted / Supabase |
### `10_blueprint/40_compute/01_apis.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase | Cloud-hosted / Supabase Edge Functions |
### `10_blueprint/40_compute/01_apis.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Authenticate requests via Supabase JWT
### `10_blueprint/40_compute/01_apis.md:53`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Never return records from another tenant (enforced by RLS)
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:196`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 6. call Ollama embeddings endpoint
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:198`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> 8. project derived graph records into Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:207`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama installed and serving locally
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:210`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:211`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:212`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve configured for private Open WebUI access
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:217`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **qiserver** is the current active runtime.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:227`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Runs locally at `127.0.0.1:8088`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:228`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Runs locally at `127.0.0.1:3000`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:230`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Runs locally at `127.0.0.1:9443` and is an admin service.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
_Showing first 300 findings out of 1754. See CSV for full detail._
docs_alignment_audit_20260512_040828.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T04:08:28`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **114**
- Likely stale files: **28**
- Mixed review files: **32**
- Current/aligned files: **6**
- Reference/audit files: **9**
- Neutral/unknown files: **39**
- Total findings: **2299**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/30_data/10_schema.md` | likely_stale | 10 | 0 |
| `10_blueprint/registry/domain_registry.yaml` | likely_stale | 9 | 0 |
| `10_blueprint/30_data/08_objects.md` | likely_stale | 8 | 0 |
| `10_blueprint/30_data/05_namespace_registry.md` | likely_stale | 7 | 0 |
| `10_blueprint/30_data/02_bands.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/03_domains.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/09_placement_rules.md` | likely_stale | 6 | 0 |
| `10_blueprint/40_compute/01_apis.md` | likely_stale | 5 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 12 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Every new Supabase schema must be declared in `registry/band_registry.yaml` before use.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> All domains in QiOS map to a single Postgres schema in Supabase. No domain logic lives in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/05_namespace_registry.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, tenant, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant workspaces
### `10_blueprint/30_data/05_namespace_registry.md:93`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:109`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for tenant, matter, project, or equivalent governed workspace allocation.
### `10_blueprint/30_data/05_namespace_registry.md:133`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:147`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = tenant workspace
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:10`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure tenant-scoped documents |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/09_placement_rules.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? → qione
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? → qione
### `10_blueprint/30_data/09_placement_rules.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Is it a global auth record? → auth (Supabase managed)
### `10_blueprint/30_data/09_placement_rules.md:45`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email must be modeled as an integration path into the canonical Spine, relying on `qione` for configuration, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory. Durable, secure email attachments may be promoted to `qiva
### `10_blueprint/30_data/10_schema.md:10`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **retrieval-oriented** — embeddings and vector search are first-class citizens via `pgvector`
### `10_blueprint/30_data/10_schema.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> ## Namespace Map (Live Supabase Schemas)
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:55`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:70`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:104`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Migration-as-Truth**: Supabase migrations are the canonical schema authority. ORMs and client models may reflect the schema, but they do not define it.
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Cloud-hosted / Supabase |
### `10_blueprint/40_compute/01_apis.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase | Cloud-hosted / Supabase Edge Functions |
### `10_blueprint/40_compute/01_apis.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Authenticate requests via Supabase JWT
### `10_blueprint/40_compute/01_apis.md:53`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Never return records from another tenant (enforced by RLS)
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:196`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 6. call Ollama embeddings endpoint
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:198`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> 8. project derived graph records into Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:207`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama installed and serving locally
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:210`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:211`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:212`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve configured for private Open WebUI access
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:217`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **qiserver** is the current active runtime.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:227`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Runs locally at `127.0.0.1:8088`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:228`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Runs locally at `127.0.0.1:3000`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:230`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Runs locally at `127.0.0.1:9443` and is an admin service.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
_Showing first 300 findings out of 2299. See CSV for full detail._
docs_alignment_audit_20260512_043926.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T04:39:26`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **157**
- Likely stale files: **28**
- Mixed review files: **32**
- Current/aligned files: **26**
- Reference/audit files: **10**
- Neutral/unknown files: **61**
- Total findings: **2939**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/30_data/10_schema.md` | likely_stale | 10 | 0 |
| `10_blueprint/registry/domain_registry.yaml` | likely_stale | 9 | 0 |
| `10_blueprint/30_data/08_objects.md` | likely_stale | 8 | 0 |
| `10_blueprint/30_data/05_namespace_registry.md` | likely_stale | 7 | 0 |
| `10_blueprint/30_data/02_bands.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/03_domains.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/09_placement_rules.md` | likely_stale | 6 | 0 |
| `10_blueprint/40_compute/01_apis.md` | likely_stale | 5 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 12 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `.obsidian-qidocs/community-plugins.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "table-editor-obsidian",
### `.obsidian-qidocs/community-plugins.json:7`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-enhancing-export",
### `.obsidian-qidocs/community-plugins.json:12`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-icon-folder",
### `.obsidian-qidocs/community-plugins.json:13`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-importer",
### `.obsidian-qidocs/community-plugins.json:14`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-linter",
### `.obsidian-qidocs/community-plugins.json:15`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-mind-map",
### `.obsidian-qidocs/community-plugins.json:17`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-markmind",
### `.obsidian-qidocs/community-plugins.json:19`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-pandoc",
### `.obsidian-qidocs/community-plugins.json:22`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-style-settings",
### `.obsidian-qidocs/community-plugins.json:23`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "obsidian-tasks-plugin",
### `.obsidian-qidocs/community-plugins.json:24`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "templater-obsidian",
### `.obsidian-qidocs/plugins/dataview/manifest.json:9`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "helpUrl": "https://blacksmithgu.github.io/obsidian-dataview/",
### `.obsidian-qidocs/plugins/local-graphql/manifest.json:6`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "description": "Export Obsidian data as a local GraphQL server.",
### `.obsidian-qidocs/plugins/obsidian-enhancing-export/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-enhancing-export",
### `.obsidian-qidocs/plugins/obsidian-enhancing-export/manifest.json:6`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "description": "This is a enhancing export plugin for Obsidian. It allows to export to formats like Html, DOCX, ePub and PDF or Markdown(Hugo) etc.",
### `.obsidian-qidocs/plugins/obsidian-icon-folder/data.json:4`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "iconPacksPath": ".obsidian/icons",
### `.obsidian-qidocs/plugins/obsidian-icon-folder/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-icon-folder",
### `.obsidian-qidocs/plugins/obsidian-icon-folder/manifest.json:6`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "description": "Add icons to anything you desire in Obsidian, including files, folders, and text.",
### `.obsidian-qidocs/plugins/obsidian-importer/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-importer",
### `.obsidian-qidocs/plugins/obsidian-importer/manifest.json:7`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "author": "Obsidian",
### `.obsidian-qidocs/plugins/obsidian-importer/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://obsidian.md",
### `.obsidian-qidocs/plugins/obsidian-linter/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-linter",
### `.obsidian-qidocs/plugins/obsidian-linter/manifest.json:9`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "helpUrl": "https://platers.github.io/obsidian-linter/",
### `.obsidian-qidocs/plugins/obsidian-markmind/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-markmind",
### `.obsidian-qidocs/plugins/obsidian-markmind/manifest.json:6`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "description": "This is a mindmap , outline tool for obsidian.",
### `.obsidian-qidocs/plugins/obsidian-markmind/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/MarkMindCkm/obsidian-markmind",
### `.obsidian-qidocs/plugins/obsidian-mind-map/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-mind-map",
### `.obsidian-qidocs/plugins/obsidian-pandoc/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-pandoc",
### `.obsidian-qidocs/plugins/obsidian-pandoc/manifest.json:6`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "description": "This is a Pandoc export plugin for Obsidian. It provides commands to export to formats like DOCX, ePub and PDF.",
### `.obsidian-qidocs/plugins/obsidian-pandoc/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/OliverBalfour/obsidian-pandoc",
### `.obsidian-qidocs/plugins/obsidian-style-settings/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-style-settings",
### `.obsidian-qidocs/plugins/obsidian-style-settings/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/mgmeyers/obsidian-style-settings",
### `.obsidian-qidocs/plugins/obsidian-tasks-plugin/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "obsidian-tasks-plugin",
### `.obsidian-qidocs/plugins/obsidian-tasks-plugin/manifest.json:7`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "helpUrl": "https://publish.obsidian.md/tasks/",
### `.obsidian-qidocs/plugins/obsidian-tasks-plugin/manifest.json:9`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/obsidian-tasks-group",
### `.obsidian-qidocs/plugins/omnisearch/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/scambier/obsidian-omnisearch",
### `.obsidian-qidocs/plugins/table-editor-obsidian/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "table-editor-obsidian",
### `.obsidian-qidocs/plugins/templater-obsidian/manifest.json:2`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "id": "templater-obsidian",
### `.obsidian-qidocs/plugins/webpage-html-export/data.json:174`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "featureId": "obsidian-document",
### `.obsidian-qidocs/plugins/webpage-html-export/manifest.json:8`
- Severity: `current_marker`
- Category: `markdown_vault`
- Match: `\bObsidian\b`
> "authorUrl": "https://github.com/KosmosisDire/obsidian-webpage-export",
### `.smart-env/smart_env.json:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> "adapter": "ollama",
### `.smart-env/smart_env.json:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> "ollama": {}
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Every new Supabase schema must be declared in `registry/band_registry.yaml` before use.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> All domains in QiOS map to a single Postgres schema in Supabase. No domain logic lives in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/05_namespace_registry.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, tenant, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant workspaces
### `10_blueprint/30_data/05_namespace_registry.md:93`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:109`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for tenant, matter, project, or equivalent governed workspace allocation.
### `10_blueprint/30_data/05_namespace_registry.md:133`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:147`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = tenant workspace
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:10`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure tenant-scoped documents |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/09_placement_rules.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? → qione
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? → qione
### `10_blueprint/30_data/09_placement_rules.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Is it a global auth record? → auth (Supabase managed)
### `10_blueprint/30_data/09_placement_rules.md:45`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email must be modeled as an integration path into the canonical Spine, relying on `qione` for configuration, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory. Durable, secure email attachments may be promoted to `qiva
### `10_blueprint/30_data/10_schema.md:10`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **retrieval-oriented** — embeddings and vector search are first-class citizens via `pgvector`
### `10_blueprint/30_data/10_schema.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> ## Namespace Map (Live Supabase Schemas)
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:55`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:70`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:104`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Migration-as-Truth**: Supabase migrations are the canonical schema authority. ORMs and client models may reflect the schema, but they do not define it.
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Cloud-hosted / Supabase |
### `10_blueprint/40_compute/01_apis.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase | Cloud-hosted / Supabase Edge Functions |
### `10_blueprint/40_compute/01_apis.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Authenticate requests via Supabase JWT
### `10_blueprint/40_compute/01_apis.md:53`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Never return records from another tenant (enforced by RLS)
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
_Showing first 300 findings out of 2939. See CSV for full detail._
docs_alignment_audit_20260512_044141.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T04:41:41`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **112**
- Likely stale files: **28**
- Mixed review files: **32**
- Current/aligned files: **7**
- Reference/audit files: **11**
- Neutral/unknown files: **34**
- Total findings: **3451**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/30_data/10_schema.md` | likely_stale | 10 | 0 |
| `10_blueprint/registry/domain_registry.yaml` | likely_stale | 9 | 0 |
| `10_blueprint/30_data/08_objects.md` | likely_stale | 8 | 0 |
| `10_blueprint/30_data/05_namespace_registry.md` | likely_stale | 7 | 0 |
| `10_blueprint/30_data/02_bands.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/03_domains.md` | likely_stale | 6 | 0 |
| `10_blueprint/30_data/09_placement_rules.md` | likely_stale | 6 | 0 |
| `10_blueprint/40_compute/01_apis.md` | likely_stale | 5 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 12 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are defined here but marked as **future-state** for the current runtime.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: Domain schemas must carry an `owner_user_id` FK to enforce user-level isolation in the current runtime. Multi-tenant `tenant_id` is deferred.
### `10_blueprint/30_data/02_bands.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Every new Supabase schema must be declared in `registry/band_registry.yaml` before use.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> All domains in QiOS map to a single Postgres schema in Supabase. No domain logic lives in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * All domain tables must carry `tenant_id` (FK to `qione.tenants`)
### `10_blueprint/30_data/05_namespace_registry.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, tenant, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - tenant workspaces
### `10_blueprint/30_data/05_namespace_registry.md:93`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:109`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for tenant, matter, project, or equivalent governed workspace allocation.
### `10_blueprint/30_data/05_namespace_registry.md:133`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:147`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = tenant workspace
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:10`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure tenant-scoped documents |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level multi-tenant containers |
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:35`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/09_placement_rules.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? → qione
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? → qione (Platform-Future)
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? → qione
### `10_blueprint/30_data/09_placement_rules.md:30`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Is it a global auth record? → auth (Supabase managed)
### `10_blueprint/30_data/09_placement_rules.md:45`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email must be modeled as an integration path into the canonical Spine, relying on `qione` for configuration, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory. Durable, secure email attachments may be promoted to `qiva
### `10_blueprint/30_data/10_schema.md:10`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **retrieval-oriented** — embeddings and vector search are first-class citizens via `pgvector`
### `10_blueprint/30_data/10_schema.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> ## Namespace Map (Live Supabase Schemas)
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:19`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry, app config, (Future: Tenants/RBAC) |
### `10_blueprint/30_data/10_schema.md:55`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:70`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:104`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Migration-as-Truth**: Supabase migrations are the canonical schema authority. ORMs and client models may reflect the schema, but they do not define it.
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **Hosted Admin API** | Fleet control — enrollment, dispatch, health | Cloud-hosted / Supabase |
### `10_blueprint/40_compute/01_apis.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | **App APIs** | Frontend interaction — read/write from Supabase | Cloud-hosted / Supabase Edge Functions |
### `10_blueprint/40_compute/01_apis.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Authenticate requests via Supabase JWT
### `10_blueprint/40_compute/01_apis.md:53`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Never return records from another tenant (enforced by RLS)
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:196`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 6. call Ollama embeddings endpoint
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:198`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> 8. project derived graph records into Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:207`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama installed and serving locally
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:210`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:211`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j deployed in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:212`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve configured for private Open WebUI access
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:217`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **qiserver** is the current active runtime.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:221`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - `/srv/qios/repos`: For cloned Git repos and coding work.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:222`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - `/srv/qios/stacks`: For Docker Compose runtime stacks. Do not create nested Git repos inside `/srv/qios/stacks`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:223`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - `/srv/qios/data`: For persistent app data.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:227`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Runs locally at `127.0.0.1:8088`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:228`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Runs locally at `127.0.0.1:3000`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:230`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Runs locally at `127.0.0.1:9443` and is an admin service.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:231`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Installed on qiserver and locked to `127.0.0.1:11434`.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
### `10_blueprint/40_compute/07_tech_stack.md:24`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * **Canonical Storage / Vector Data:** Supabase and pgvector may only be mentioned as future/conditional: "do not add unless it has a specific job."
_Showing first 300 findings out of 3451. See CSV for full detail._
docs_alignment_audit_20260512_044902.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T04:49:02`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **113**
- Likely stale files: **20**
- Mixed review files: **40**
- Current/aligned files: **7**
- Reference/audit files: **12**
- Neutral/unknown files: **34**
- Total findings: **4019**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/30_data/10_schema.md` | mixed_review | 9 | 6 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/05_namespace_registry.md` | mixed_review | 7 | 1 |
| `10_blueprint/registry/domain_registry.yaml` | mixed_review | 7 | 3 |
| `10_blueprint/30_data/03_domains.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/02_bands.md` | mixed_review | 6 | 3 |
| `10_blueprint/30_data/08_objects.md` | mixed_review | 6 | 4 |
| `10_blueprint/30_data/09_placement_rules.md` | mixed_review | 6 | 5 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 12 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/01_apis.md` | mixed_review | 3 | 6 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 6 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | mixed_review | 5 | 24 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` (legacy / future-conditional schemas) |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:37`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Any future shared-container access model requires a new ADR before tenant-style isolation assumptions become active doctrine.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/05_namespace_registry.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, legacy tenant container, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:95`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:111`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for matter, project, governed workspace, or equivalent routed allocation. Tenant wording here is legacy/future only.
### `10_blueprint/30_data/05_namespace_registry.md:135`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:149`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = legacy/future tenant workspace alias
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:14`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure document references; tenant-scoped assumptions are legacy/future only |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature-toggle reference |
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | memories | `qially` | AI memory references; embeddings remain future/conditional |
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:29`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:47`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email should be modeled as an integration path into the canonical Spine, relying on `qione` for configuration only if that relational layer is reactivated, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory only if that
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:24`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it an AI session or memory record? -> qially (future/conditional)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it a graph node or derived edge? -> qigraph (future/conditional)
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:61`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bunless it has a specific job\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:16`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> * **retrieval-oriented** — embeddings and vector search are future/conditional rather than current doctrine
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\boperational front door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:18`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **App APIs** | Frontend interaction — route-safe reads/writes against approved services | QiAccess Start and future adapters |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at \127.0.0.1:3002\. Future Wiki.js sync may happen by script or workflow, but do not build it now.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at \127.0.0.1:8010\. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:196`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> 6. call Ollama embeddings endpoint
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:198`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> 8. project derived graph records into Neo4j
_Showing first 300 findings out of 4019. See CSV for full detail._
docs_alignment_audit_20260512_052243.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T05:22:43`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **132**
- Likely stale files: **20**
- Mixed review files: **41**
- Current/aligned files: **21**
- Reference/audit files: **13**
- Neutral/unknown files: **37**
- Total findings: **4689**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/30_data/10_schema.md` | mixed_review | 9 | 6 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/05_namespace_registry.md` | mixed_review | 7 | 1 |
| `10_blueprint/registry/domain_registry.yaml` | mixed_review | 7 | 3 |
| `10_blueprint/30_data/03_domains.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/02_bands.md` | mixed_review | 6 | 3 |
| `10_blueprint/30_data/08_objects.md` | mixed_review | 6 | 4 |
| `10_blueprint/30_data/09_placement_rules.md` | mixed_review | 6 | 5 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 13 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/01_apis.md` | mixed_review | 3 | 6 |
| `10_blueprint/40_compute/07_tech_stack/_index.md` | mixed_review | 3 | 50 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/07_tech_stack/qdrant.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 7 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | missing | 0 | 0 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` (legacy / future-conditional schemas) |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:37`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Any future shared-container access model requires a new ADR before tenant-style isolation assumptions become active doctrine.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/05_namespace_registry.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, legacy tenant container, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:95`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:111`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for matter, project, governed workspace, or equivalent routed allocation. Tenant wording here is legacy/future only.
### `10_blueprint/30_data/05_namespace_registry.md:135`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:149`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = legacy/future tenant workspace alias
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:14`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure document references; tenant-scoped assumptions are legacy/future only |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature-toggle reference |
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | memories | `qially` | AI memory references; embeddings remain future/conditional |
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:29`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:47`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email should be modeled as an integration path into the canonical Spine, relying on `qione` for configuration only if that relational layer is reactivated, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory only if that
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:24`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it an AI session or memory record? -> qially (future/conditional)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it a graph node or derived edge? -> qigraph (future/conditional)
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:61`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bunless it has a specific job\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:16`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> * **retrieval-oriented** — embeddings and vector search are future/conditional rather than current doctrine
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\boperational front door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:18`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **App APIs** | Frontend interaction — route-safe reads/writes against approved services | QiAccess Start and future adapters |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Wiki.js**: Runs locally at `127.0.0.1:3002`. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` currently returns Bad Gateway and should be labeled degraded until the tunnel route is repaired. Future Wiki.js sync may happen by script or workflow,
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at `127.0.0.1:3002`. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` currently returns Bad Gateway and should be labeled degraded until the tunnel route is repaired. Future Wiki.js sync may happen by script or workflow,
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at `127.0.0.1:8010`. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at `127.0.0.1:8010`. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` is currently degraded and needs tunnel repair.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` is currently degraded and needs tunnel repair.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
_Showing first 300 findings out of 4689. See CSV for full detail._
docs_alignment_audit_20260512_052716.md
# QiAccess Docs Alignment Audit
Generated: `2026-05-12T05:27:16`
Root: `C:\QiLabs\_QiAccess_Start\docs`
## Summary
- Files scanned: **133**
- Likely stale files: **20**
- Mixed review files: **40**
- Current/aligned files: **20**
- Reference/audit files: **14**
- Neutral/unknown files: **39**
- Total findings: **5259**
## Highest Priority Active Review Files
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/adr/ADR-0004_single_account_modular_mode.md` | likely_stale | 21 | 0 |
| `10_blueprint/70_appendices/04_legacy_csv_migration_plan.md` | likely_stale | 16 | 0 |
| `10_blueprint/70_appendices/03_migration_notes.md` | likely_stale | 5 | 0 |
| `10_blueprint/10_governance/04_registry.md` | likely_stale | 4 | 0 |
| `10_blueprint/30_data/07_object_model.md` | likely_stale | 4 | 0 |
| `10_blueprint/60_operations/01_cases.md` | likely_stale | 3 | 0 |
| `10_blueprint/60_operations/02_templates.md` | likely_stale | 3 | 0 |
| `10_blueprint/adr/ADR-0007_unified_front_matter_and_progressive_doc_topology.md` | likely_stale | 3 | 0 |
| `10_blueprint/registry/band_registry.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/standards/naming_rules.yaml` | likely_stale | 3 | 0 |
| `10_blueprint/30_data/15_qievidence.md` | likely_stale | 2 | 0 |
| `10_blueprint/adr/ADR-0008_qilabs_root.md` | likely_stale | 2 | 0 |
| `10_blueprint/registry/sensitivity_classification.yaml` | likely_stale | 2 | 0 |
| `10_blueprint/20_architecture/04_device_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/11_front_matter.md` | likely_stale | 1 | 0 |
| `10_blueprint/30_data/12_metadata.md` | likely_stale | 1 | 0 |
| `10_blueprint/70_appendices/05_legacy_salvage.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0003_band_model.md` | likely_stale | 1 | 0 |
| `10_blueprint/adr/ADR-0006_narrative_and_knowledge_consolidation.md` | likely_stale | 1 | 0 |
| `10_blueprint/assets/diagrams/markmind-data.json` | likely_stale | 1 | 0 |
| `10_blueprint/20_architecture/01_identity.md` | mixed_review | 15 | 1 |
| `10_blueprint/50_applications/02_admin.md` | mixed_review | 14 | 3 |
| `10_blueprint/20_architecture/02_component_map.md` | mixed_review | 11 | 2 |
| `10_blueprint/70_appendices/06_qiaccess_start_legacy_quarantine.md` | mixed_review | 10 | 8 |
| `10_blueprint/30_data/10_schema.md` | mixed_review | 9 | 6 |
| `10_blueprint/20_architecture/05_runtime_zones.md` | mixed_review | 8 | 8 |
| `10_blueprint/30_data/05_namespace_registry.md` | mixed_review | 7 | 1 |
| `10_blueprint/registry/domain_registry.yaml` | mixed_review | 7 | 3 |
| `10_blueprint/30_data/03_domains.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/06_directory_tree.md` | mixed_review | 6 | 1 |
| `10_blueprint/50_applications/04_interfaces.md` | mixed_review | 6 | 1 |
| `10_blueprint/30_data/02_bands.md` | mixed_review | 6 | 3 |
| `10_blueprint/30_data/08_objects.md` | mixed_review | 6 | 4 |
| `10_blueprint/30_data/09_placement_rules.md` | mixed_review | 6 | 5 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/70_appendices/02_glossary.md` | mixed_review | 5 | 5 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/40_compute/05_runtime.md` | mixed_review | 4 | 13 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/20_architecture/07_data_flow.md` | mixed_review | 3 | 1 |
| `10_blueprint/40_compute/03_pipelines.md` | mixed_review | 3 | 1 |
| `10_blueprint/50_applications/_index.md` | mixed_review | 3 | 2 |
| `10_blueprint/40_compute/01_apis.md` | mixed_review | 3 | 6 |
| `10_blueprint/40_compute/02_workers.md` | mixed_review | 2 | 1 |
| `10_blueprint/40_compute/_index.md` | mixed_review | 2 | 1 |
| `10_blueprint/10_governance/03_standards.md` | mixed_review | 2 | 3 |
| `10_blueprint/70_appendices/01_changelog.md` | mixed_review | 2 | 3 |
## High-Value Active File Status
| File | Status | Legacy Hits | Current Hits |
|---|---:|---:|---:|
| `10_blueprint/_index.md` | mixed_review | 1 | 14 |
| `10_blueprint/README.md` | mixed_review | 6 | 6 |
| `10_blueprint/10_governance/01_principles.md` | mixed_review | 1 | 3 |
| `10_blueprint/10_governance/05_policies.md` | mixed_review | 5 | 3 |
| `10_blueprint/20_architecture/03_system_model.md` | mixed_review | 2 | 8 |
| `10_blueprint/20_architecture/06_service_boundaries.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/13_storage.md` | mixed_review | 2 | 6 |
| `10_blueprint/30_data/16_structure.md` | mixed_review | 2 | 7 |
| `10_blueprint/40_compute/04_integrations.md` | mixed_review | 1 | 7 |
| `10_blueprint/40_compute/06_qiserver_runtime_profile.md` | mixed_review | 4 | 49 |
| `10_blueprint/40_compute/07_tech_stack.md` | missing | 0 | 0 |
| `10_blueprint/50_applications/01_portal.md` | mixed_review | 4 | 5 |
| `10_blueprint/50_applications/03_tools.md` | mixed_review | 4 | 12 |
| `10_blueprint/standards/repo_rules.yaml` | mixed_review | 5 | 19 |
| `10_blueprint/registry/infrastructure_registry.yaml` | current_or_aligned | 0 | 2 |
## Findings
### `10_blueprint/10_governance/01_principles.md:27`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 7. **Legacy is preserved by quarantine, not by co-owning doctrine.** Older platform and tenant models may be referenced, but they do not define the active runtime unless promoted again on purpose.
### `10_blueprint/10_governance/01_principles.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start inherits the strongest parts of the QiOS constitutional model while locking the active portal doctrine to real daily use.
### `10_blueprint/10_governance/01_principles.md:17`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> ## QiAccess Start Operating Principles
### `10_blueprint/10_governance/01_principles.md:21`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> 1. **QiAccess is the portal.** The app is the front door, not an abstract platform diagram.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/01_principles.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/02_agent_rules.md:70`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Enforce the current runtime model that actually exists. Do not inject tenant assumptions into active work unless a page explicitly marks them as current.
### `10_blueprint/10_governance/02_agent_rules.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This document defines the mandatory behavior constraints for agents operating inside the QiAccess Start blueprint.
### `10_blueprint/10_governance/03_standards.md:71`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Note on v0.4**: The blueprint originally referenced "SQL / Prisma" as the canonical schema authority. In the actual QiOS implementation, **Supabase native migrations** are the canonical schema authority — not Prisma. Prisma may be used as a query layer but does not define the source of truth.
### `10_blueprint/10_governance/03_standards.md:75`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * All schema changes require a migration and must be applied via Supabase migration tooling
### `10_blueprint/10_governance/03_standards.md:95`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Exposure Boundary**: Admin surfaces (SSH, Portainer, DB Admin) and internal data services (Postgres, Vector DB) must never be exposed via public port forwarding or public tunnels.
### `10_blueprint/10_governance/03_standards.md:97`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **AI Runtime Privacy**: Local model runtimes (e.g., Ollama) must be internal-only or protected by an application layer with strong auth.
### `10_blueprint/10_governance/03_standards.md:106`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bPrivate Only\b`
> | Admin | `admin.<domain>` | Private only |
### `10_blueprint/10_governance/04_registry.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Schema | SQL / Supabase migrations | Structural truth |
### `10_blueprint/10_governance/04_registry.md:37`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> See `registry/domain_registry.yaml` for the machine-readable canonical map of all live Supabase schemas.
### `10_blueprint/10_governance/04_registry.md:41`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | QiOne Platform | Platform |
### `10_blueprint/10_governance/05_policies.md:64`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Current access control should default to owner-scoped or protected system-scoped behavior, not assumed tenant scaffolding.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:65`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> - Older multi-tenant language may be retained for history, but it must be labeled as future-state or quarantined.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - Legacy QiOS, QiOne, tenant, client, and business-delivery doctrine may be preserved for salvage.
### `10_blueprint/10_governance/05_policies.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Policies define how the QiAccess Start master blueprint is operated and changed.
### `10_blueprint/10_governance/05_policies.md:63`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> - The current QiAccess Start runtime is single-user and operator-centered unless a page explicitly marks another model as future-state.
### `10_blueprint/10_governance/05_policies.md:82`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start still enforces an Agent Governance Layer.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/05_policies.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/10_governance/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance is the constitutional layer for QiAccess Start.
### `10_blueprint/10_governance/_index.md:15`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Governance must support the active seven-root QiAccess Start model.
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/01_identity.md:6`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Auth and Identity are completely delegated to **Supabase Auth**.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:9`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Do **not** store tenant isolation logic or multi-tenant domain data in the `public` schema.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:11`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **`qione` (or `tenant_data`)**: A separate schema for all multi-tenant customer data, keeping domains strictly isolated.
### `10_blueprint/20_architecture/01_identity.md:13`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> ## The RBAC & Tenant Structure
### `10_blueprint/20_architecture/01_identity.md:16`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> 1. **`auth.users`**: Managed natively by Supabase.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 2. **`public.organizations` (or `tenants`)**: The canonical parent for a given tenant instance.
### `10_blueprint/20_architecture/01_identity.md:18`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> 3. **`public.tenant_members`**: The mapping layer that ties `auth.users.id` to `tenants.id` with a specific `role` (e.g., Owner, Admin, Member).
### `10_blueprint/20_architecture/01_identity.md:21`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Every mapped table in the tenant domain must contain a `tenant_id`.
### `10_blueprint/20_architecture/01_identity.md:22`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> RLS must be universally enforced utilizing a Supabase Postgres function that pulls the resolved `tenant_id` out of the user's secure bounded context (either via a JWT claim `app_metadata` or a secure database hook `auth.uid() -> tenant_members`).
### `10_blueprint/20_architecture/01_identity.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this page preserves older platform and tenant-model doctrine. Treat it as reference-only until it is rewritten to match the active QiAccess Start runtime. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiPortals\b`
> │ QiPortals · Web · Admin · Search · Setup │
### `10_blueprint/20_architecture/02_component_map.md:15`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ QiOne Portal · Tools · Interfaces │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:20`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ qione: tenants · members · RBAC │
### `10_blueprint/20_architecture/02_component_map.md:21`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ Supabase Auth: identity │
### `10_blueprint/20_architecture/02_component_map.md:42`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> LOCAL MACHINE CLOUD (Supabase)
### `10_blueprint/20_architecture/02_component_map.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Embedding engine → pgvector (archive_chunks.embedding)
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:56`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione.tenants` | All domain schemas | Provides `tenant_id` FK for RLS |
### `10_blueprint/20_architecture/02_component_map.md:57`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `auth.users` | `qione.tenant_members` | Identity mapping |
### `10_blueprint/20_architecture/02_component_map.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> > Quarantine notice: this diagram reflects the older QiOS and QiOne layer model. It is retained for salvage, not as the active QiAccess Start component map. See `08_appendices/20_legacy/qiaccess_start_legacy_quarantine.md`.
### `10_blueprint/20_architecture/02_component_map.md:33`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ qigraph: derived graph (Neo4j projection) │
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:83`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Older QiOS, QiOne, tenant, client, and multi-product doctrine remains useful only where it still supports:
### `10_blueprint/20_architecture/03_system_model.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is the active system model.
### `10_blueprint/20_architecture/03_system_model.md:11`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | Daily-use portal and navigation shell |
### `10_blueprint/20_architecture/03_system_model.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Protected runtime host for internal services |
### `10_blueprint/20_architecture/03_system_model.md:14`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js** | Readable knowledge base |
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:94`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> QiAccess Start is Cody's cognitive front door.
### `10_blueprint/20_architecture/03_system_model.md:108`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start has seven top-level roots only:
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/03_system_model.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/04_device_model.md:17`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * **Trust/Auth Boundary**: Access control and credentials managed securely separating local worker execution from cross-tenant operations.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:50`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Canonical metadata | **Supabase Postgres** | System of record |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:51`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> | Vector retrieval | **pgvector** (in Supabase) | Embedding index |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:69`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bclient portals?\b`
> * **Services**: Client portals, public webhooks, exposed app frontends, form endpoints.
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:5`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> > ⚠️ **Discrepancy Note (v0.4)**: An earlier version of the master README described the cloud runtime as "Railway Postgres / Railway Redis / Railway Neo4j / NocoDB on Railway." The v0.4 blueprint removes Railway branding. The **actual canonical cloud backend is Supabase Postgres** with pgvector, managed via Supabase migrations. Redis and Neo4j rema
### `10_blueprint/20_architecture/05_runtime_zones.md:53`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Knowledge graph | **Neo4j** | Derived graph (not canonical) |
### `10_blueprint/20_architecture/05_runtime_zones.md:54`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> | Admin surface | **NocoDB** | Human-friendly ops over Postgres |
### `10_blueprint/20_architecture/05_runtime_zones.md:56`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Cloud-hosted | pgvector + Neo4j coordination |
### `10_blueprint/20_architecture/05_runtime_zones.md:64`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> * **Services**: SSH, container management (Portainer), DB admin tools, system dashboards, backup management.
### `10_blueprint/20_architecture/05_runtime_zones.md:79`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> * **Services**: Local model runtime (Ollama/LM Studio), Embeddings pipeline, AI Chat UI.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\bprivate/protected\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:11`
- Severity: `current_marker`
- Category: `access_boundary`
- Match: `\badmin/control services\b`
> - Admin/control services (e.g. Portainer, NocoDB, Ollama) must stay private/protected.
### `10_blueprint/20_architecture/06_service_boundaries.md:29`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> *Note: Old tenant, RLS, and Supabase boundary doctrine is considered future/conditional or reference-only.*
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/06_service_boundaries.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/20_architecture/07_data_flow.md:48`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - push to pgvector (qiarchive.archive_chunks)
### `10_blueprint/20_architecture/07_data_flow.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Metadata filter in Postgres (Supabase)
### `10_blueprint/20_architecture/07_data_flow.md:72`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Semantic retrieval in pgvector
### `10_blueprint/20_architecture/07_data_flow.md:75`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> Graph expansion in Neo4j / qigraph
### `10_blueprint/20_architecture/_index.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> This section defines how QiAccess Start is structured as a working system rather than as an abstract platform stack.
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bcognitive front door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:9`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> | **QiAccess Start** | The portal and cognitive front door |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:10`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bself-hosted runtime\b`
> | **qiserver** | Primary self-hosted runtime and service host |
### `10_blueprint/20_architecture/_index.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | **Wiki.js and repo docs** | Knowledge surfaces and readable source material |
### `10_blueprint/20_architecture/_index.md:21`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> | Runtime host | qiserver and protected internal services |
### `10_blueprint/20_architecture/_index.md:23`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> | Knowledge base | Wiki.js plus repo documentation |
### `10_blueprint/20_architecture/_index.md:29`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start separates:
### `10_blueprint/30_data/01_infrastructure_layout.md:24`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bn8n\b`
> automation/ # Flow data and configs (e.g., n8n, Prefect)
### `10_blueprint/30_data/02_bands.md:10`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | **Platform** | `b_platform` | `qione`, `public` (legacy / future-conditional schemas) |
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:23`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> Operational services and deferred container model. Multi-tenant features (tenancy, member roles) are retained here as legacy/future-state reference rather than current runtime doctrine.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/02_bands.md:37`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Any future shared-container access model requires a new ADR before tenant-style isolation assumptions become active doctrine.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Bands are the top-level structural tiers of the QiOS ecosystem. In current doctrine they organize QiAccess Start documentation, QiNexus structures, qiserver runtime concepts, and any future relational domain work.
### `10_blueprint/30_data/02_bands.md:31`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> **Rule**: If a relational domain layer is activated, domain schemas should prefer `owner_user_id`-style user ownership. Multi-tenant `tenant_id` remains deferred and future/conditional.
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:22`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | QiOne Platform | `qione` | Platform | legacy/future tenants, tenant_members, member_roles, tenant_modules, module_role_access |
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:38`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bmulti-tenant\b`
> * Multi-tenant `tenant_id` assumptions are legacy/future only unless a specific job reactivates them
### `10_blueprint/30_data/03_domains.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Domains in QiOS are ownership boundaries first. Historically they mapped to Postgres schemas in Supabase, but that layer is now legacy/reference-only or future/conditional unless a specific job requires it. No new domain logic belongs in `public`.
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/05_namespace_registry.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> 3. Namespace allocation occurs only when a governed workspace, matter, project, legacy tenant container, archive block, or other approved routed container is required.
### `10_blueprint/30_data/05_namespace_registry.md:95`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> - every CRM row
### `10_blueprint/30_data/05_namespace_registry.md:111`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Reserved for matter, project, governed workspace, or equivalent routed allocation. Tenant wording here is legacy/future only.
### `10_blueprint/30_data/05_namespace_registry.md:135`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\bCRM\b`
> | 1000 | CRM | CRM | leads, active clients, engagements, closeout |
### `10_blueprint/30_data/05_namespace_registry.md:149`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - `5xxxTNT` = legacy/future tenant workspace alias
### `10_blueprint/30_data/05_namespace_registry.md:12`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine uses these routes to organize QiNexus work, QiAccess Start documentation, and related local operational containers. Old tenant/platform language below is reference-only unless a future shared-container model is explicitly activated.
### `10_blueprint/30_data/06_directory_tree.md:95`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ │ │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:104`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> │ │ └── qione-portal/
### `10_blueprint/30_data/06_directory_tree.md:140`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> │ │ ├── supabase/
### `10_blueprint/30_data/06_directory_tree.md:259`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> │ ├── mkdocs.yml
### `10_blueprint/30_data/06_directory_tree.md:261`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-lock.yaml
### `10_blueprint/30_data/06_directory_tree.md:262`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> │ ├── pnpm-workspace.yaml
### `10_blueprint/30_data/06_directory_tree.md:136`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> │ │ ├── neo4j/
### `10_blueprint/30_data/07_object_model.md:24`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature toggles |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Top-level containers |
### `10_blueprint/30_data/07_object_model.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | email_accounts | `qione` | Email platform configuration and ownership |
### `10_blueprint/30_data/08_objects.md:14`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> | documents | `qivault` | Secure document references; tenant-scoped assumptions are legacy/future only |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:26`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | tenants | `qione` | Legacy/future top-level containers |
### `10_blueprint/30_data/08_objects.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | modules | `qione` | Platform feature-toggle reference |
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:39`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> - `tenant_id` FK to `qione.tenants`
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on QiAccess Start, qiserver, QiNexus, and Markdown/YAML records. The relational object families below are retained as a reference model for future/conditional database work rather than current live platform requirements.
### `10_blueprint/30_data/08_objects.md:23`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | memories | `qially` | AI memory references; embeddings remain future/conditional |
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:27`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a modular config or module registry record? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:28`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it a tenant, member, or RBAC record? -> qione (Platform-Future only)
### `10_blueprint/30_data/09_placement_rules.md:29`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> Is it an email account integration param? -> qione (reference only)
### `10_blueprint/30_data/09_placement_rules.md:47`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * **Email**: Do not create a top-level `qiemail` schema unless a future ADR explicitly approves it. Email should be modeled as an integration path into the canonical Spine, relying on `qione` for configuration only if that relational layer is reactivated, `qiarchive` for content, `qisys` for sync state, and `qially` for semantic memory only if that
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:5`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine is document-first and runtime-first: QiAccess Start documentation lives in Markdown/YAML, qiserver owns local runtime execution, QiNexus remains the storage backbone, and Supabase-specific placement remains legacy/reference-only or future/conditional unless a specific job requires it.
### `10_blueprint/30_data/09_placement_rules.md:24`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it an AI session or memory record? -> qially (future/conditional)
### `10_blueprint/30_data/09_placement_rules.md:26`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Is it a graph node or derived edge? -> qigraph (future/conditional)
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/10_schema.md:61`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.app_module_registry` — modular capability tracking ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:62`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.tenants` — tenant identity (Platform-Future) ✅
### `10_blueprint/30_data/10_schema.md:76`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> * `qione.email_accounts` — user-owned integration integration ownership and IMAP/Gmail/connector configuration.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:5`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QiAccess Start currently operates as a Markdown/YAML doctrine vault rooted in `docs/`, with qiserver as the active runtime host and QiNexus as the storage backbone.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bunless it has a specific job\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:7`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Relational schema material below is retained as legacy/reference-only or future/conditional architecture guidance. Supabase is not active unless it has a specific job. `pgvector` is not active unless a future retrieval pipeline explicitly needs it.
### `10_blueprint/30_data/10_schema.md:16`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> * **retrieval-oriented** — embeddings and vector search are future/conditional rather than current doctrine
### `10_blueprint/30_data/10_schema.md:25`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> | `qione` | Platform | Modular registry and app config reference only; tenants/RBAC remain future/conditional |
### `10_blueprint/30_data/11_front_matter.md:552`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> target_scope: "" # optional: qione, qiarchive, qihome, etc.
### `10_blueprint/30_data/12_metadata.md:85`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * `realm_label`: An optional UI/UX workspace filter (e.g., `personal`, `work`, `legal`) governed by `registry/workspace_realms.yaml`. Realms do not dictate physical placement, tenant isolation, or schema mapping.
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase Postgres and pgvector are not active doctrine unless a future retrieval pipeline explicitly needs them.*
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data is for persistent app data.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks is for Docker Compose runtime stacks.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos is for cloned Git repos and coding work.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/13_storage.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenants\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/15_qievidence.md:42`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> The domain uses the following tables, linked to `qione.tenants` and `qicase.cases`.
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:34`
- Severity: `legacy_review`
- Category: `old_qially_suite_language`
- Match: `\bQiOne\b`
> *Note: Old QiOne/tenant root structures (e.g. apps, packages, workers) are removed or demoted.*
### `10_blueprint/30_data/16_structure.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The directory structure emphasizes QiNexus root bands and the qiserver path doctrine.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/repos`
> - /srv/qios/repos: For cloned Git repos and coding work.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/stacks`
> - /srv/qios/stacks: For Docker Compose runtime stacks.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios/data`
> - /srv/qios/data: For persistent app data.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_localhost`
- Match: `127\.0\.0\.1:8010`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::qidocs_wikijs_boundary`
- Match: `Wiki\.js|Markdown doctrine vault|Obsidian`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::paperless_10_doc_test`
- Match: `10 documents|max 10|ten documents`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/30_data/16_structure.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:54`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> * Treat tenant-scoped Supabase JWT patterns as legacy/future only unless a specific job requires them
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\boperational front door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bfront door\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:8`
- Severity: `current_marker`
- Category: `no_supabase_yet`
- Match: `\bfuture/conditional\b`
> Current active doctrine centers on qiserver local runtime surfaces, QiAccess Start as the cognitive/operational front door, and Markdown/YAML files as the source of truth. Old cloud-hosted Supabase admin/app API assumptions below are retained as legacy/reference-only or future/conditional patterns.
### `10_blueprint/40_compute/01_apis.md:18`
- Severity: `current_marker`
- Category: `qiaccess_start`
- Match: `\bQiAccess Start\b`
> | **App APIs** | Frontend interaction — route-safe reads/writes against approved services | QiAccess Start and future adapters |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/02_workers.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | **Background embedding** | Chunks ready | Embed and push to pgvector |
### `10_blueprint/40_compute/02_workers.md:15`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | **Retrieval orchestration** | Query received | Coordinate pgvector + Neo4j |
### `10_blueprint/40_compute/03_pipelines.md:18`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> → index (pgvector in qiarchive)
### `10_blueprint/40_compute/03_pipelines.md:35`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | `indexed` | Pushed to pgvector |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/03_pipelines.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> | Retrieval orchestration | Coordinate pgvector + Neo4j recall |
### `10_blueprint/40_compute/04_integrations.md:45`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> Integrations may never bypass tenant isolation — every record created via integration must carry a `tenant_id`.
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Wiki.js**: Runs locally at `127.0.0.1:3002`. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` currently returns Bad Gateway and should be labeled degraded until the tunnel route is repaired. Future Wiki.js sync may happen by script or workflow,
### `10_blueprint/40_compute/04_integrations.md:67`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Runs locally at `127.0.0.1:3002`. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` currently returns Bad Gateway and should be labeled degraded until the tunnel route is repaired. Future Wiki.js sync may happen by script or workflow,
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Runs locally at `127.0.0.1:8010`. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md:68`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Runs locally at `127.0.0.1:8010`. Paperless metadata must be configured before bulk import. Paperless should be tested with 10 documents max before large ingestion.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::repos_stacks_data_split`
- Match: `/srv/qios/repos|/srv/qios/stacks|/srv/qios/data`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::ollama_localhost`
- Match: `127\.0\.0\.1:11434`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::aider_repo_rule`
- Match: `Aider|nested Git|nested git|/srv/qios/repos`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/04_integrations.md`
- Severity: `review`
- Category: `missing_current_fact::private_admin_services`
- Match: `private/protected|Private Only|admin/control services|admin services`
> Important current doctrine/fact not found in this active target file.
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bMkDocs\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bPNPM\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bNext\.js\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:17`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> *Note: Supabase environments, PNPM commands, and Next.js start scripts are legacy. MkDocs is legacy and should not be restored.*
### `10_blueprint/40_compute/05_runtime.md:3`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> The active runtime is qiserver.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:6`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPaperless-ngx\b`
> - **Paperless-ngx**: Locally at 127.0.0.1:8010.
### `10_blueprint/40_compute/05_runtime.md:7`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNocoDB\b`
> - **NocoDB**: Locally at 127.0.0.1:8088.
### `10_blueprint/40_compute/05_runtime.md:8`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - **Open WebUI**: Locally at 127.0.0.1:3000.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` is currently degraded and needs tunnel repair.
### `10_blueprint/40_compute/05_runtime.md:9`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bWiki\.js\b`
> - **Wiki.js**: Locally at 127.0.0.1:3002. Verified internal/admin route via Tailscale Serve: `https://qiserver-1.cerberus-sirius.ts.net:9448`. Public Cloudflare route `https://wiki.qially.com` is currently degraded and needs tunnel repair.
### `10_blueprint/40_compute/05_runtime.md:11`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bPortainer\b`
> - **Portainer**: Locally at 127.0.0.1:9443 (admin service).
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:12`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - **Ollama**: Locked to 127.0.0.1:11434 on qiserver.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/05_runtime.md:13`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bAider\b`
> - **Aider**: Installed under /srv/qios/tools/aider.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:47`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bSupabase\b`
> - Conditional/Future: Supabase/pgvector upsert
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:69`
- Severity: `legacy_review`
- Category: `old_stack_assumptions`
- Match: `\bpgvector\b`
> - retrieval index in pgvector
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:72`
- Severity: `legacy_review`
- Category: `client_portal_language`
- Match: `\btenant\b`
> - Conditional/Future: tenant-aware data serving
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:2`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> title: QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:7`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> host: qiserver
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:8`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> tailscale_name: qiserver-1
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:11`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> # QIServer Private AI Node
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:15`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer is the current machine-local QiOS compute node for private AI access, local model execution, and future ingestion/runtime work. It exists to offload AI and document-processing workload from the primary workstation and to serve as the first live QiOS local runtime host.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:35`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama running on host
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:36`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:37`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j running in Docker
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:38`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve publishing Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:48`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j projection
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:53`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> QIServer implements the **local runtime** side of QiOS, not the canonical cloud data layer.
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:84`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `https://qiserver-1.cerberus-sirius.ts.net`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:88`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - OS hostname: `qiserver`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:89`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - Tailscale machine: `qiserver-1`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:96`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama API: `http://127.0.0.1:11434`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:100`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI: `http://127.0.0.1:3000`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:101`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Browser: `http://127.0.0.1:7474`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:102`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j Bolt: `bolt://127.0.0.1:7687`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:110`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOllama\b`
> - Ollama
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:114`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Open WebUI
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:115`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:120`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bOpen WebUI\b`
> - Tailscale Serve proxies Open WebUI privately to the tailnet
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:127`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - QiOS root: `/srv/qios`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:128`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - compose: `/srv/qios/compose`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:129`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - server runbook: `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:176`
- Severity: `current_marker`
- Category: `current_services`
- Match: `\bNeo4j\b`
> - Neo4j as derived graph
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:186`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `/srv/qios`
> - `/srv/qios/docs/000_RUN_ME_FIRST.md`
### `10_blueprint/40_compute/06_qiserver_runtime_profile.md:187`
- Severity: `current_marker`
- Category: `qiserver_runtime`
- Match: `\bqiserver\b`
> - `bash /usr/local/bin/qiserver-status`
_Showing first 300 findings out of 5259. See CSV for full detail._
qiaccess_start_current_state_audit.md
# QiAccess Start Current State Audit
Date: 2026-05-08
Repo: `C:\QiLabs\_QiAccess_Start`
Audit scope: current QiAccess Start app, adjacent legacy surfaces in this repo, deployment clues, and qiserver verification attempts.
## 1. Current app structure
This repo currently contains three different QiAccess-era surfaces plus one API:
1. Current app: root Vite/React SPA in `src/`
2. Legacy static site: `web/`
3. Legacy Homepage/docker setup: `local/`
4. Separate bookmarks API: `worker/`
That split is the main coherence problem. The repo is not one app right now; it is one active SPA plus two older front-door implementations that still look deployable.
High-level tree:
```text
.
|-- src/
| |-- app/
| |-- components/
| |-- data/
| |-- features/
| |-- lib/
| `-- types/
|-- web/
| |-- index.html
| |-- add.html
| |-- css/
| `-- js/
|-- worker/
| |-- src/index.ts
| |-- package.json
| |-- schema.sql
| `-- wrangler.jsonc
|-- local/
| |-- docker-compose.yml
| |-- config/
| `-- src/...
|-- package.json
|-- vite.config.ts
|-- tsconfig.json
`-- run_copy.bat
Observations:
src/is the real current QiAccess SPA.local/is an older Homepage-based dashboard stack and should not be mistaken for the current app.web/is an older hand-authored static portal that still points at real-looking URLs.worker/is a standalone Cloudflare Worker bookmarks API tied to the old static site.
2. Current routes
Source of truth: src/app/routes.tsx
Current top-level routes:
| Route | Component | Status |
|---|---|---|
/ |
DashboardPage |
Working UI shell, mostly static data |
/apps |
ResourcesPage |
Working UI shell, seeded data + local browser edits |
/map |
StackMapPage |
Working UI shell, seeded relationship graph |
/knowledge |
KnowledgePage |
Broken in current source; prevents clean build |
/runbooks |
RunbooksPage |
Static placeholder |
/prompts |
PromptsPage |
Static placeholder |
/settings |
SettingsPage |
Working local controls, contains placeholder/auth/backend copy |
There are no current routes for:
/start/capture/quick/memory/insights/system
There are also no nested System subroutes yet.
3. Current components/pages
Core shell:
src/app/App.tsxsrc/app/routes.tsxsrc/components/layout/AppShell.tsxsrc/components/layout/Sidebar.tsxsrc/components/layout/Topbar.tsxsrc/components/command/CommandBar.tsx
Feature pages:
src/features/dashboard/DashboardPage.tsxsrc/features/resources/ResourcesPage.tsxsrc/features/stack-map/StackMapPage.tsxsrc/features/knowledge/KnowledgePage.tsxsrc/features/runbooks/RunbooksPage.tsxsrc/features/prompts/PromptsPage.tsxsrc/features/settings/SettingsPage.tsx
Supporting pieces:
src/data/resources.ts: seed registry datasrc/features/resources/registry-store.tsx: browser localStorage patch layersrc/components/graph/StackMapCanvas.tsx: React Flow graphsrc/components/graph/StackPreview.tsx: lighter dashboard previewsrc/components/graph/ResourceDetailPanel.tsx: open/docs/repo/edit panelsrc/components/cards/ResourceEditorDrawer.tsx: local edit drawer
4. Current service links
Current SPA service/resource list lives in src/data/resources.ts.
Present in the SPA:
- QiAccess:
https://access.qially.com - qiserver:
http://qiserver - Cloudflare
- Supabase
- GitHub
- Google Drive
- Ollama
- Open WebUI
- AnythingLLM
- Portainer
- Cockpit
- Homepage
- Neo4j
- QiNote
- FamilyOS
- Lumara
- IND Loop
- EmpowerQNow
Present in legacy local/config/services.yaml but not in the current SPA:
- Paperless
- Qi Queue / n8n-like intake plane
Known infrastructure named in doctrine but missing from the current SPA seed data:
- Wiki.js
- QiNexus as explicit storage backbone
- Paperless as first-class ingestion target
- System submodules as dedicated navigation entities
5. Current deployment path
Verified locally:
- Repo path:
C:\QiLabs\_QiAccess_Start - Root app build system: Vite + TypeScript (
package.json,vite.config.ts) - Worker deployment mechanism: Cloudflare Wrangler in
worker/ - Legacy Homepage stack: Docker Compose in
local/docker-compose.yml - Legacy qiserver sync path:
run_copy.batcopieslocal/config/*to/srv/qios/stacks/_qiaccess_start/config
What appears to exist:
- Current SPA is intended to be a static build from the repo root.
- Old static portal is in
web/. - Old worker API is intended for
https://api.access.qially.com/bookmarks. - Old Homepage stack appears intended to run on qiserver from
/srv/qios/stacks/_qiaccess_start.
What is not verified from this machine:
- Exact live deployment target for the current Vite SPA
- Exact restart command used on qiserver
- Exact domain routing for
access.qially.com - Whether
access.qially.comis serving the SPA, the old static site, or something else right now
Why not verified:
- Live SSH verification attempt using
qiadmin@100.121.111.106failed withPermission denied (publickey,password).
6. Current build command and result
Root app build command:
npm run build
Result on 2026-05-08:
- Failed
Errors:
- Real source error in
src/features/knowledge/KnowledgePage.tsx TS2657: JSX expressions must have one parent elementTS1005: ':' expected- The conditional render is malformed around lines 72-113.
- Local environment write error
TS5033: Could not write file 'tsconfig.app.tsbuildinfo': EPERM
Interpretation:
- The current checked-in SPA source is not cleanly buildable.
- Even if the
.tsbuildinfowrite issue is environmental,KnowledgePage.tsxis still a real blocking source error.
Worker build/deploy path:
worker/package.jsonexposesnpm run devandnpm run deployworker/README.mddocuments deployment toqiaccessstartworker.qilife.workers.dev
7. Current environment/config files, without exposing secrets
Root SPA:
package.jsonvite.config.tstsconfig.jsontsconfig.app.jsontsconfig.node.jsontailwind.config.jspostcss.config.cjs
Runtime/env handling:
src/lib/supabase/client.tsreadsVITE_SUPABASE_URLandVITE_SUPABASE_ANON_KEY- No root
.envfile is committed in this repo snapshot
Worker:
worker/package.jsonworker/tsconfig.jsonworker/wrangler.jsoncworker/schema.sql
Legacy Homepage:
local/docker-compose.ymllocal/config/services.yamllocal/config/bookmarks.yamllocal/config/settings.yamllocal/config/widgets.yamllocal/config/docker.yaml
Potentially sensitive config container:
local/k3d/.envrcexists but was not opened in this audit
8. What already matches the blueprint
These parts are directionally aligned:
- QiAccess is treated as a front door, not a system of record.
- The app already behaves like a launcher + registry + map shell.
- There is already a working command/search surface in
CommandBar.tsx. - There is already a working launcher/registry surface in
ResourcesPage.tsx. - There is already a stack relationship surface in
StackMapPage.tsx. - The current app avoids overbuilt in-app auth and assumes Cloudflare/Zero Trust at the edge.
- qiserver, Open WebUI, Ollama, Portainer, Cockpit, and Google Drive are already part of the current mental model.
9. What conflicts with the blueprint
Major conflicts:
- Navigation doctrine is wrong
- Current top-level nav is
Dashboard, Apps, Stack Map, Knowledge, Runbooks, Prompts, Settings -
Required doctrine is
Home, Start, Capture, Knowledge, Memory, Insights, System -
Missing required roots
- No
Start - No
Capture - No
Memory - No
Insights -
No
System -
Extra top-level sections that should be folded down
AppsMapRunbooksPrompts-
Settings -
System doctrine is not modeled
- No
/system/*subroutes -
No first-class modules for access, server, storage, integrations, settings, blueprint, roadmap, security, diagnostics
-
Current app still centers generic resource inventory, not daily-use workflow
- No fast capture path
- No mobile quick capture route
- No explicit Paperless intake flow
-
No QiNexus bucket view
-
Current repo still carries legacy surfaces that compete with the new doctrine
web/local/-
worker/tied to old bookmark flow -
Current Settings page pushes a Supabase-forward story
- That conflicts with the current instruction to not add Supabase now
10. What is static/fake/demo-only
Current SPA:
src/data/resources.tsis a seed file, not live discovery- Service
statusvalues are asserted metadata, not health-checked - Topbar status chips are hard-coded to online
- Dashboard "Today / Active Work" is hard-coded
- Dashboard "Current Priority" is hard-coded
- Dashboard "Phase" is hard-coded
RunbooksPage.tsxis a hard-coded arrayPromptsPage.tsxis a hard-coded arrayAuthBoundary.tsxis explicitly a placeholder- Settings "Supabase readiness" is informational copy, not an active integration
Legacy static site:
web/index.htmlis a hand-authored static card wall- Connectivity indicator in
web/js/main.jsis a lightweight fetch heuristic, not a robust health system
11. What is operational
Operational in the current SPA:
- Router + lazy route setup
- App shell layout
- Sidebar/topbar shell
- Registry search/filter/select flow
- Resource detail drawer and local editing flow
- localStorage persistence for resource patches
- Export/reset of local registry patches
- Stack map visualization from seeded relationships
- Link launching from the registry/detail cards
Operational in legacy pieces:
local/docker-compose.ymlis a real compose file for Homepagerun_copy.batis a real sync script targeting qiserverworker/src/index.tsis a real CRUD API implementation for bookmarks on D1
Operational but unverified live:
- Cloudflare Worker deployment described in
worker/README.md - qiserver Homepage stack path implied by
run_copy.bat - service URLs in
src/data/resources.tsandlocal/config/services.yaml
12. What needs refactored
Shortest safe refactor targets:
- Navigation and folder model
-
Re-map the current app into the seven-root doctrine without deleting working components.
-
Data organization
-
Split generic
resources.tsinto doctrine-aligned static modules:launcherApps.tsserviceLinks.tsstorageBuckets.tsknowledgeLinks.tssystemModules.tsroadmapPhases.ts
-
Route structure
- Fold current
AppsintoStart - Fold current
Stack MapintoHomeorSystem -
Fold current
Runbooks,Prompts, andSettingsintoSystem -
Page naming
- Rename page purpose without deleting working guts
-
Example: keep
ResourcesPagebehavior, but move it underStart -
Doctrine gaps
- Add
Capture - Add
Memory - Add
Insights -
Add
Systemand its subroutes -
Build stability
- Fix
KnowledgePage.tsx - Resolve the TypeScript build write issue in a non-destructive way
13. What needs built for daily use
Highest-value gaps for actual daily use:
Startas the clean launcher root-
tools, services, projects, system entries
-
Capture - quick thought dump
- file drop targets
- Paperless consume target
- QiNexus inbox target
-
timeline note target
-
System -
explicit qiserver, Paperless, Open WebUI, Portainer, Cockpit, storage, diagnostics surfaces
-
Knowledge -
explicit Wiki.js linking, not generic note textarea only
-
Storage - doctrine places this under System
-
QiNexus buckets need to become visible and browsable conceptually
-
MemoryandInsights -
placeholders are acceptable until ingestion exists, but they should be doctrine-correct placeholders
-
Ingestion proof
- first real pipeline should be Capture -> Paperless consume / QiNexus inbox / note timeline
14. What is risky to touch
Highest risk items:
local/-
It appears to be tied to a real qiserver stack path.
-
run_copy.bat -
It targets
/srv/qios/stacks/_qiaccess_start/config, which may still matter for live operations. -
web/+worker/ -
These may still be the currently deployed public access experience or part of it.
-
src/data/resources.ts -
It currently drives the SPA. Changes are safe if mapped carefully, but a blunt rewrite would break the current launcher/map shell.
-
Any assumptions about qiserver live state
- Live SSH verification failed due auth, so server changes should not be made blindly.
15. Recommended next 7 tasks
- Fix the current source break in
KnowledgePage.tsxso the SPA builds again. - Freeze legacy surfaces in place by documenting
src/as current,web/as old static, andlocal/as old Homepage stack; do not delete them yet. - Refactor navigation to the seven-root doctrine using the existing SPA shell and components, not a rewrite.
- Move current
ResourcesPagebehavior intoStartand preserve existing working launch links. - Create
Systemplus its subroutes and relocate currentSettings, service status, runbooks, prompts, and infra links there. - Add a static
Capturesurface focused on Paperless consume, QiNexus inbox, and timeline-note entry points. - Re-attempt qiserver live verification with working SSH credentials so Paperless, Open WebUI, Ollama, and deployment paths can be confirmed before deeper integration.
Current routes/pages/service/status matrix
| Route | Page component | Main linked service/data source | Working / Placeholder / Broken | Notes |
|---|---|---|---|---|
/ |
DashboardPage |
src/data/resources.ts, StackPreview |
Working shell | Uses hard-coded priority/focus/phase copy and seeded statuses |
/apps |
ResourcesPage |
src/data/resources.ts, localStorage patches |
Working shell | Strongest reusable piece for future Start |
/map |
StackMapPage |
src/data/resources.ts + React Flow |
Working shell | Strong reusable piece; route name conflicts with seven-root doctrine |
/knowledge |
KnowledgePage |
local notes over seeded resources | Broken | Current source has malformed JSX and blocks build |
/runbooks |
RunbooksPage |
hard-coded runbooks array |
Placeholder | Should likely fold into System |
/prompts |
PromptsPage |
hard-coded prompts array |
Placeholder | Should likely fold into System |
/settings |
SettingsPage |
local registry export/reset, placeholder auth, Supabase env probe | Working shell with doctrine conflict | Control functions work locally; page positioning/content needs reframe |
Current deployment flow summary
Current evidence supports this picture:
- Current repo work is a Vite SPA at the repo root.
- Old qiserver homepage stack still exists in
local/and appears to deploy config to/srv/qios/stacks/_qiaccess_start. - Old static site exists in
web/. - Old bookmark API exists in
worker/.
Known commands:
- Root SPA build:
npm run build - Worker deploy:
cd worker && npm run deploy - Legacy config sync:
run_copy.bat
Unverified but likely:
- Legacy Homepage restart on qiserver would be from
/srv/qios/stacks/_qiaccess_start - It probably uses
docker compose up -dor equivalent, but that was not proven in this audit
qiserver audit status
Attempted live verification:
- SSH target:
qiadmin@100.121.111.106 - Result:
Permission denied (publickey,password).
Because of that, the following requested live items remain unverified in this audit:
- running containers
- compose stack locations on qiserver
- service folder tree under
/srv/qios - Paperless container status/logs
- Open WebUI/Ollama live state
- installed Ollama models
- whether Open WebUI currently sees Ollama
Smallest safe refactor plan
This is the smallest safe path that preserves the working app and avoids breaking deployment:
- Keep
src/as the active app and treatweb/andlocal/as legacy surfaces for now. - Fix the current build break first, without redesigning the app.
- Replace top-level nav only:
/-> Home/start-> reuse current launcher/registry behavior/capture-> new static ingestion page/quick-> mobile quick capture/knowledge-> keep, but refocus on Wiki.js and knowledge links/memory-> placeholder/insights-> placeholder/system-> fold in settings, runbooks, prompts, infra links- Keep existing working link cards and graph components; just remap them into the right doctrine locations.
- Move seed data into doctrine-aligned static files instead of one generic
resources.ts. - Do not touch qiserver deployment, DNS, or worker routing until live server access is verified.
Bottom line:
The shortest path to daily use is not a rebuild. It is:
- stabilize the current SPA build
- collapse the SPA into the seven roots
- preserve the existing launcher/map mechanics
- add a real Capture surface
- make Paperless/QiNexus ingestion the first explicit operational workflow
### qiserver_service_truth_audit.md
```text
# QiServer Service Truth Audit
Audit date: 2026-05-08
Scope: live qiserver truth verification for QiAccess Start Phase 2. This pass verified reachable private services and public edge behavior without changing deployment. Direct Docker and compose inspection on qiserver was attempted but blocked by SSH authentication.
## Command Summary
Live checks completed:
- `ssh -o BatchMode=yes -o ConnectTimeout=10 qiadmin@100.121.111.106 "hostname"`
- Result: `Permission denied (publickey,password).`
- `Test-NetConnection 100.121.111.106 -Port 22`
- Result: `TcpTestSucceeded : True`
- `curl.exe -I https://access.qially.com`
- Result: `302 Found` to Cloudflare Access login
- Private port probes on `100.121.111.106`
- Reachable: `22`, `9090`, `9443`, `9446`, `11434`, `3001`, `3002`
- Not reachable: `8000`, `3000`, `7474`
- Page fingerprints
- `https://100.121.111.106:9443` -> `Portainer`
- `https://100.121.111.106:9090` -> Cockpit login page, hostname `qiserver`
- `https://qiserver-1.cerberus-sirius.ts.net:9446` -> `Open WebUI`
- `http://100.121.111.106:3002` -> `Welcome | Wiki.js`
- `http://100.121.111.106:3001` -> `QiAccess` Next.js Homepage surface
- Ollama API
- `http://100.121.111.106:11434/api/tags` returned `embeddinggemma:latest` and `llama3.2:latest`
Blocked checks:
- `docker ps --format ...`
- `find /srv ... compose.yml`
- `find /srv/qios ...`
- `docker compose ps` for Paperless
- Paperless webserver logs
Reason blocked: qiserver is reachable, but `qiadmin@100.121.111.106` rejected available SSH auth.
## Service Truth Table
| Service Name | Container Name | Image | Port Mapping | Status | Private URL | Public / Restricted URL | Compose Path | Data / Volume Paths | Exposure Class | Verification Status | Notes |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| qiserver | Not verified | Not verified | `22` reachable; host also serves `9090`, `9443`, `9446`, `11434`, `3001`, `3002` | Online | `100.121.111.106` | None verified | Not verified | Not verified | Private Only | Verified | SSH is reachable over Tailscale, but auth failed. Cockpit identified hostname `qiserver`. |
| Paperless | Not verified | Not verified | Expected `8000`; TCP probe failed | Offline | `https://100.121.111.106:8000` | None verified | Not verified | Not verified | Private Only | Broken | Expected endpoint did not respond. Compose folder, consume path, and media/data paths could not be inspected without SSH. |
| Wiki.js | Not verified | Not verified | `3002` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3002` | `wiki.qially.com` referenced in page metadata, but DNS did not resolve during audit | Not verified | Not verified | Private Only | Verified | Live page title was `Welcome | Wiki.js`. Public hostname remains unverified. |
| Open WebUI | Not verified | Not verified | `9446` reachable and returned UI | Online | `https://qiserver-1.cerberus-sirius.ts.net:9446` | None verified | Not verified | Not verified | Private Only | Verified | Live page title was `Open WebUI`. Older direct `3000` assumption is not valid in the current server state. |
| Ollama | Not verified | Not verified | `11434` reachable; API responded | Online | `http://100.121.111.106:11434` | None | Not verified | Model store path not verified | Private Only | Verified | API exposed `embeddinggemma:latest` and `llama3.2:latest`. Open WebUI-to-Ollama connectivity was not directly confirmed from authenticated app state. |
| AnythingLLM | Not verified | Not verified | No verified runtime port found | Unknown | None verified | None | Not verified | Not verified | Private Only | Broken | The previous `3001` assumption is incorrect: `3001` is serving the legacy QiAccess Homepage surface instead. |
| Portainer | Not verified | Not verified | `9443` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9443` | None | Not verified | Not verified | Private Only | Verified | Live page title was `Portainer`. |
| Cockpit | Not verified | Not verified | `9090` reachable and returned HTTP `200` | Online | `https://100.121.111.106:9090` | None | Not verified | Not verified | Private Only | Verified | Live page identified hostname `qiserver`. |
| Neo4j | Not verified | Not verified | Expected `7474`; TCP probe failed | Offline | `http://100.121.111.106:7474` | None | Not verified | Not verified | Private Only | Broken | No responding web console was found on the expected port. |
| Homepage | Not verified | Not verified live; legacy repo compose uses `ghcr.io/gethomepage/homepage:latest` | `3001` reachable and returned HTTP `200` | Online | `http://100.121.111.106:3001` | None verified | Legacy deploy path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Legacy repo compose maps `./config`, `./config/images`, `./public`, and `/var/run/docker.sock`; actual qiserver host paths not verified | Private Only | Verified | Live page title was `QiAccess` and the page payload matched the legacy Homepage config from `local/config`. |
| QiAccess Start Deployment | Not verified | Not verified | Public edge reachable; protected origin not directly inspectable | Online | Likely private origin on `3001`, but not directly proven through Cloudflare Access | `https://access.qially.com` | Legacy qiserver stack path inferred as `/srv/qios/stacks/_qiaccess_start`; not SSH-verified | Not verified | Public Restricted | Pending | `access.qially.com` currently redirects to Cloudflare Access login. The strongest available evidence points to the protected origin still being the legacy Homepage-based QiAccess service on `3001`, not the current Vite SPA. |
## Deployment Truth Notes
- `access.qially.com` is currently protected by Cloudflare Access.
- The current root Vite SPA in `src/` is not proven to be what the public domain is serving.
- The live private service on `3001` is a Next.js Homepage surface titled `QiAccess`.
- That `3001` service strongly matches the legacy `local/docker-compose.yml` stack:
- service name: `homepage`
- image: `ghcr.io/gethomepage/homepage:latest`
- port mapping: `3001:3000`
- `run_copy.bat` still points legacy config syncs at `/srv/qios/stacks/_qiaccess_start/config`, which reinforces the legacy deployment path clue but does not prove the current running compose state.
## Truth-Based Conclusions
1. Open WebUI is live, but not on the previously assumed direct `3000` URL.
2. Ollama is live and serving models.
3. Wiki.js is live on private port `3002`.
4. Portainer and Cockpit are live and reachable on their private admin ports.
5. Paperless is not reachable on the expected `8000` endpoint.
6. Neo4j is not reachable on the expected `7474` endpoint.
7. AnythingLLM is not verified, and the old `3001` mapping is wrong.
8. The public `access.qially.com` edge is live and restricted, but the protected origin still appears to be the legacy Homepage-based QiAccess stack rather than the new Vite SPA.
## Next Verification Needed
1. Gain working SSH access to qiserver as `qiadmin` so Docker/container truth can be collected.
2. Run `docker ps`, compose discovery, and `/srv/qios` path checks on qiserver.
3. Inspect the Paperless stack folder, compose status, consume path, media/data mounts, and logs.
4. Identify the actual AnythingLLM container and runtime URL, if it still exists.
5. Confirm what Cloudflare Access is routing `access.qially.com` to, then plan the cutover from the legacy Homepage stack to the Vite SPA.
assets/
diagrams/
markmind-data.json
{
"name": "..",
"children": [
{
"name": ".gitignore"
},
{
"name": ".npm-cache",
"children": [
{
"name": "_cacache",
"children": [
{
"name": "content-v2",
"children": [
{
"name": "sha512",
"children": [
{
"name": "00",
"children": [
{
"name": "14",
"children": [
{
"name": "215983deb807fddeb3d71cbc3e02d497904d76b3a6572cd2a73650373eb74b386721b64abb50b85dfdffa565690c656dd2cc1324bc47d54c694ae2162401"
}
]
},
{
"name": "e2",
"children": [
{
"name": "2049009ea62258c0fdc04671b1fb95674eed870587736c63f8e5e2f0d6faf7cc1def64b7b279dd6c0bd8676dc39cf7f4ab33233944f42b906cf8692f59a3"
}
]
}
]
},
{
"name": "01",
"children": [
{
"name": "49",
"children": [
{
"name": "30cbffece31eb9fb73fc36df0727edbdef605b90c99390d73a13a671dd201c4a1064a0b987d3d27bb9f80baa3d0760e0c9438ab4fdd4972d38914ba98203"
}
]
},
{
"name": "53",
"children": [
{
"name": "cec9045342096845d70d1084590331c7ee3d3ac5e3cc9500a8262853040eb622e1a63a3a609ee007e3362403827ad56a926a69b4ad7c61fc373f2c6e7856"
}
]
},
{
"name": "69",
"children": [
{
"name": "0a95a01966259e500e47ce0763c944df2ef7a54ab2c8e93bbb2dc0530f7dc0cbe89e51fa3f1a379d6ddb0c10f8919260f19e7ff2c370e8ac07896b29750d"
}
]
},
{
"name": "9f",
"children": [
{
"name": "93d3fa0b0034f227ce953911fced670728dcba0128f67b8f31047ca05fc2aaa7814648c98be3f559dd093cb91f425ad75b785409d2d41ef2bfd1c7783ddd"
}
]
}
]
},
{
"name": "02",
"children": [
{
"name": "4c",
"children": [
{
"name": "231aa3faf1ec43cbd11ca769f1c2756a3efd7992ac32184ebf4f925e483edb213a0003610e5bffaaccf990040036142519ebb7007056d226280c71d5a2a3"
}
]
},
{
"name": "92",
"children": [
{
"name": "af7e3b1247ab60d3ac6b2f8df80b45b274bafb25ec0107757eff7f51307b1a5d3386d339adfce0177a78393392c19b4a239b126ba68990559d5a3ef04be3"
}
]
}
]
},
{
"name": "03",
"children": [
{
"name": "d6",
"children": [
{
"name": "2c0c11c34fef41a3464766d0d2cea58bcbbfebd6e97c5e9274d62f8cc706618ae921c9b7063a119e2ab5f26746ba35b3ccca08d9d2fd70dd397b8a9a58a0"
}
]
}
]
},
{
"name": "04",
"children": [
{
"name": "0e",
"children": [
{
"name": "9484588b5ee728aab0b00b761a063bb520b88e48d473eb9ef1511dc42a78dccba8418325fec080e7c63241c913f59111df3e2e0474143f038af2aa88993b"
}
]
},
{
"name": "b3",
"children": [
{
"name": "01f062f8bef4ffb3650e1209b7cb46c8b4f4faa07293f0c459d8c9f4a021a9a6ffaede086814d624b3ffe480daab01840d6565ca1b179bd8d0b3c86e2e49"
}
]
},
{
"name": "e5",
"children": [
{
"name": "f1bff15ebe7965b93a2dfcb09b2dad2f49b556f0b738a7b09672455538826a3a4b9eed94dd7c1cd746227117de1fdbd701c27f89eb9853d867417d40f984"
}
]
}
]
},
{
"name": "05",
"children": [
{
"name": "1e",
"children": [
{
"name": "d5bc30951cefaadb10445ac9314ba0c9135a919dbec3c7352ba206fbd425a849f89c07162c88019df8a9749a6abf329ac6f7202b464cab4314cee978cccc"
}
]
},
{
"name": "bc",
"children": [
{
"name": "b734eb276b68ec8df2d538729eb3cb06c209784d3d04eafbe96209c0603205fed89eecc45a16d8662ae1f1d4d4978e24ee7971f7768f3414c420bc492d46"
}
]
},
{
"name": "e3",
"children": [
{
"name": "4d640b69fd09d399cb3d3a1ddcf4f01420c3c441930d8fd8ee436e644ad48e07bd0d321da8c8302c35f70d3c1e4c07701a0afec14d6bd9909ba7ea72c9b9"
}
]
}
]
},
{
"name": "07",
"children": [
{
"name": "03",
"children": [
{
"name": "6c49b49cdd409e0281e97f73df6597386bfc8042a90843f34330d25329cb55aa1f60eb3ef256def5677a0203faf94d3f4ea1cab3f6ecb4e6a6ef1769393d"
}
]
},
{
"name": "0f",
"children": [
{
"name": "abb1271933e1094e088766664a05ed62c52218fccf7d4d7e183779b2658be7896888532577b40411fcbeb5200e6f0aae42bd5ac32f717473192c450aa471"
}
]
}
]
},
{
"name": "08",
"children": [
{
"name": "63",
"children": [
{
"name": "9f389a968e0daa5bf31beb336c0e6faee6f150f03c577db334f73ebda7967afa61358a43f68d45f0fa3e363dfd574d8103d919e2e5ff799e961ebb030340"
}
]
},
{
"name": "73",
"children": [
{
"name": "94cbb9aede56c3ea8e8b24b7e59698e4ce11d7481957f01f7ea8f75d52c21f785e52fd4679ab49260ac9d1a93d541c54197213450c3ccc6d0b2e7ac1d697"
}
]
}
]
},
{
"name": "09",
"children": [
{
"name": "e8",
"children": [
{
"name": "7eee8c79a9eecb26e2c7a18d1f7a1de91ee5031c071151ec8bd95620859c1fa64348cbffbc39c8346b752e4a86336af9b2970b8b59039fde19748e330c23"
}
]
}
]
},
{
"name": "0a",
"children": [
{
"name": "02",
"children": [
{
"name": "22e87c257075f09644e9af47f12efff4b1154d67c21dc0a2f3cde0ac71a601c29bdf707d5014e09e6930ae127d45404b3f07c0a39d34a386cf2e76098181"
}
]
}
]
},
{
"name": "0c",
"children": [
{
"name": "cd",
"children": [
{
"name": "6bc7e703a68d94df8f52c11afe039066afbff8bebe58f79d1a482b6b57e30694fbf001ee49b463ee8feaa078e89160008cdca970cd176c44caf258667f62"
}
]
}
]
},
{
"name": "0e",
"children": [
{
"name": "1b",
"children": [
{
"name": "939af656bb1e07d543a758c077b24d2c6da0953a84198eff2ed6b0e84d5d074dd19e9bd864019b65e09672f0fdb3e018349d3f9831e385c95af8cdc1b94f"
}
]
},
{
"name": "dc",
"children": [
{
"name": "0fd83604481e7784437592a81ffd56d1bc3674677d6c95a8e4afd1d3435cbf55a79e7fc4ddf7e923ae0bc1a9ecb17d0de27433ea9668276f545400e4c9ef"
}
]
}
]
},
{
"name": "0f",
"children": [
{
"name": "7d",
"children": [
{
"name": "9c357070629c3498ef83b5dc9d9d12ad6432fb82d4f6fd0c37c6cb2321fe78037c08a815476bf03454e3afa1d07ace8434ae8f24522dcb0a858e9e6575f7"
}
]
},
{
"name": "c0",
"children": [
{
"name": "0ff2bc35bf8a7dfc0f0f9616228be46207339dceea51c2a2f086f775291c90786f3f8b03eff990e26242cc6f76e577d9b01bcff740455701cb21e4a4504a"
}
]
},
{
"name": "fb",
"children": [
{
"name": "97427f4084c62336368f24a1169c93a15a381727702b8e0d18ce5f060e3faa7d063586b7246a8a41aeb5dc1b93b702f7e6ad5785add72f8e12c8f315c971"
}
]
}
]
},
{
"name": "10",
"children": [
{
"name": "f0",
"children": [
{
"name": "f9ab5b97c85c49a42acb9c27359c79eade039ae83641a1c008888d93692080ed5089d5424331a802cc891736c5187c3d5d68afff2d3110f318886eb1ed73"
}
]
}
]
},
{
"name": "13",
"children": [
{
"name": "91",
"children": [
{
"name": "1be47fc3a716a85c7fbe424bf6f1171425ba0ca2999d0d400b05ccef1cc7fb84d23168366ac18e652b5d942b504769c4a6beea681161aefa7f7ddd9d32d4"
}
]
},
{
"name": "f0",
"children": [
{
"name": "dead8f67bd68e5b764ddaaa09e4c2d68d15bc38d1bddb35f8981d79541818f2325488b6d6186463868104a16cb12c54d49239728a0fbb619194af4241796"
}
]
}
]
},
{
"name": "14",
"children": [
{
"name": "c8",
"children": [
{
"name": "4ea19578faa47a6935002ca5f6ac4a861bea32013bf006df48233551e6b31ad874563e4c5ff8ff8f0092c3d48fc7e7f208f87b99701258105069ab7f689e"
}
]
}
]
},
{
"name": "15",
"children": [
{
"name": "02",
"children": [
{
"name": "df197ac439d509174436473126dfdf49fd9a1e679c1f1884e5323d637ad35e6faf85c4eee91418f622d961ce1afe48d7ad649698134f8ef64bc9b501a57c"
}
]
},
{
"name": "d8",
"children": [
{
"name": "6ff7b68d5bb2dd663c68fb4f3a21c7dba567f1b2b6b7eeecdd35ceaae3ddc0430f11783d3735e137434b9dee67973f6839d3cbf1bd817be906e1c7fe4bb3"
}
]
}
]
},
{
"name": "16",
"children": [
{
"name": "51",
"children": [
{
"name": "f3510b42fa92913d5a533341af03d3dc73993017d8b45fd13a6cdd7d03089085b2fbe180acc14e19ee08e6d0da742411ab0dcb9b2b66220c6960478f6eb8"
}
]
}
]
},
{
"name": "17",
"children": [
{
"name": "95",
"children": [
{
"name": "4fe3baac02c9f686ac5e3bb7092bcb3cc1ada5699a1976477655ad0cbf8daaa449ec5a854599b354754ddf19b73708ecec21c3c9da88674bcb07904ad0f5"
}
]
}
]
},
{
"name": "18",
"children": [
{
"name": "64",
"children": [
{
"name": "e8c49ff0d71df6b3f0f610a343ee44e29789fc39593ff66c9c4dce150f36b5de53afa54653197de61520ad57d92c746055cefb320152ccea61c54e1c57c7"
}
]
},
{
"name": "8e",
"children": [
{
"name": "dde7591eb251880820fa16ca747a55ebefdbd1455e1a7974717bfa78565b9a8b559b8c367969098328dda33234991b0fc631e1f6fa2cb2dc635d59a76f1c"
}
]
},
{
"name": "aa",
"children": [
{
"name": "e5f9ae9bbe86ddd880e41b01323668480667377672e04d92586c427d9056eae0fb3be5772c807a1feaaa1da03f5903ad507846aa83abdc416715925801b0"
}
]
}
]
},
{
"name": "19",
"children": [
{
"name": "1a",
"children": [
{
"name": "38f1ca8ba9c05b364dafea9fc88f15724030e3bdf1579273a1b4551390e425527568b5f2ec16b41495105db66dc5684f5a50ecf2249ef751d752f6418677"
}
]
}
]
},
{
"name": "1a",
"children": [
{
"name": "01",
"children": [
{
"name": "283c05d59fdd167b8d607ce78559f943e5353c8479dfefde2bd168de4a0708d07539af84fd833053a49742745d9c70b41ddd8f4838380eebea0831e29e39"
}
]
},
{
"name": "08",
"children": [
{
"name": "fda907d8b91f37fcd197c0a0b67cd337beb03b189f39ed359b5c721f32d6530e98f686555af37b993e5897b7d9317606939cfa37e12d7cc1344b3fea46bb"
}
]
},
{
"name": "5c",
"children": [
{
"name": "681d78d5a385d73d6a947f7abd54187a46c133f439d3f38490ed574d732f5fbd7533414a8cc920920923669e1390f81632f13ea317aea9eb02c5d1da9132"
}
]
}
]
},
{
"name": "1b",
"children": [
{
"name": "06",
"children": [
{
"name": "8845c0592bd83018b9f633fc6f3ce5e97ae6aa122c936c458224cbebe2309aff9ff9305c016efd4376a3cd88cd21d34b0dd89f074b7b65294404d17a0915"
}
]
},
{
"name": "35",
"children": [
{
"name": "d1e216cd621c5fd6329b6c52eda0b4c45968797e45a738e5d2e887706b44452e332d7aeba05395918401eca07d5f1261d706d70bfb92ad1076f0e8674116"
}
]
}
]
},
{
"name": "1c",
"children": [
{
"name": "4d",
"children": [
{
"name": "e354a97353d01a31accdb9fa28449e59a5698b22873dd00dfb594d893267aadbcc35150a8266cc07677c51f92bb161fb731eae9653a2891efab12b34f1c5"
}
]
},
{
"name": "54",
"children": [
{
"name": "e851cdacd78f873abe9034f1449851ff6d1f522a1e6bfdfabe0289920104e34580ce792ab1dcb08d5652f121788b64357c068a32ab563b493241e971842c"
}
]
}
]
},
{
"name": "1d",
"children": [
{
"name": "06",
"children": [
{
"name": "eddbc2ae942e402731be719b63f64bca07ddc214274bbe88355852dfd43fb198cbcf1a506cb64a531197cae7e00df617c9a1cc81142362ab24b8f1ba60cd"
}
]
}
]
},
{
"name": "1e",
"children": [
{
"name": "0a",
"children": [
{
"name": "7df0ee3e0bb4617a6fc7e91634cf79b9b24f4d3a2b7ac1f1e68c4a040bcd7f258ce5105bee2fa569b4e6ff10a9e49513eb5683ed0f5bfa409b50a32c942a"
}
]
},
{
"name": "61",
"children": [
{
"name": "9e8b627b6c2ce72a85baebed2caebaa4c362bbeee5bdbff9c34be411f6bdda66b6c40f9a21e7a5ed19574e032a0af1a73af4f2789e5e0c2ddafc1182ce83"
}
]
},
{
"name": "81",
"children": [
{
"name": "ae52ce2c09935ecd510a755730aa664df06a078ab2d470b69854d04ad89d0369d1ad75caa0af70426ef1fcf97528e0d1a3365dd53ad4a310a373a9f1602b"
}
]
}
]
},
{
"name": "21",
"children": [
{
"name": "ce",
"children": [
{
"name": "a6d94feb3234e48444486bfd19b5724fd7b4148b609b584edcab1e09e7c33c680dd04df5bed94950e29b2f4d7f483b545f35584ade97297637a3ecbfaddb"
}
]
}
]
},
{
"name": "22",
"children": [
{
"name": "b9",
"children": [
{
"name": "3e9d6d44a86e9c1eb0350ef7ca6faec2e9d491b9c4202b6c7c7a179ae63e3a5f6c5bc8b333db4a513f67c6b2540aa7553e2ba4b42fdc526e6465d0ec5a4f"
}
]
}
]
},
{
"name": "23",
"children": [
{
"name": "1a",
"children": [
{
"name": "626d38f25679ab210a396aa3690a0a00080fdd4ca2d39613078a154785d9312b23ced6e041b61ba64f4add1e672c93db8ca272164b49b81658d6cc82e1df"
}
]
}
]
},
{
"name": "24",
"children": [
{
"name": "68",
"children": [
{
"name": "87d79fe1be3fa96e0023510d4c849183bd933f3330b877e5d363624b8306419cf92f06b83b0cdee97565984eff767a36984354fde68f0835ad171c3f9761"
}
]
}
]
},
{
"name": "25",
"children": [
{
"name": "8b",
"children": [
{
"name": "65b3786a8b5e5f731e4669234bed209327630d9a3ae41d7838152a4e03f82bc4af0ac326796ee6c7b02abc1570a4b9aeb186e69a062b7eddbefe55945f70"
}
]
}
]
},
{
"name": "26",
"children": [
{
"name": "16",
"children": [
{
"name": "544fb245710cbf1335bad3993f92d1ed9dca28f6f9f25bfd86b29358c0594dd42fd69a3b95ff1b52d387bd48e90bdac4ddc3454067650609c43d951ea9eb"
}
]
},
{
"name": "cd",
"children": [
{
"name": "26f5cc7ea8e803c68d1e32214612e796cedcfe778f8cdeb1a598a3d3f93e084bf8cfe32970dcdc29bba7294d33fc4753000b5905e156dd2eddc045fdb4f7"
}
]
}
]
},
{
"name": "27",
"children": [
{
"name": "96",
"children": [
{
"name": "c0673f835cc3305bfc15df1cca91ee7d01fe821d8ec6e2e60b3753af05c284b163ace29404c63f3a04129a9b197f224e5bc7dc213abbc19520df5b38126a"
}
]
},
{
"name": "ce",
"children": [
{
"name": "0ef8f1cf7cf77025e63c5b98840d250b72c58d7fa1f120665dc4505b30b5adad0711320c71fb77973238a1a9cb68748074744fbe6dbc8df99f7156115932"
}
]
}
]
},
{
"name": "28",
"children": [
{
"name": "71",
"children": [
{
"name": "fc4add904b6a87bb4ab33a54c20281e52dd944236c2275c4a925bd5d01862cd8f78635ce416e8d8454012d6736df65c343b2accbbd366dd1c858911ead28"
}
]
},
{
"name": "c4",
"children": [
{
"name": "5e154af4078b7e0fe381923477298aafa1ca765da4b33b9e54701ea681031ddca6dc13e9964f2bd557b0ffcec7446cd9d5e9a71952eb64887417bd3af547"
}
]
}
]
},
{
"name": "2a",
"children": [
{
"name": "57",
"children": [
{
"name": "f85314bac72de87fce8a7d783b0de546e217b04f88330a395879a32a5e1a7f6d9ace82e4560deb351691aff8e84781195bda481890b61051b2095050ef90"
}
]
},
{
"name": "93",
"children": [
{
"name": "40450037230bfe8d3034bad51555bae1f8996baf516fd1ee7a186cc014e5cdedd93f16f89a0d6f0b1e62b9d8395c1f858fda7ea023cbcdd5a7ac045828f7"
}
]
},
{
"name": "fa",
"children": [
{
"name": "78e7d1eb576144275080b22d4abbe318de46ac1f5f53172913cf6c5698c7aae9b936354dd75ef7c9f90eb59b4c64b56c2dfb51d261fdc966c4e6b3769126"
}
]
}
]
},
{
"name": "2c",
"children": [
{
"name": "32",
"children": [
{
"name": "733d510410f47ecb8f33f7703411dd325dbf29001c865a8fe4e5861d620a58dbfd84b0eb24b09aeaee5387c6bcab54e9f57a31baa00a7c6a1bce2100fcb3"
}
]
},
{
"name": "85",
"children": [
{
"name": "6a338eb34166618f5eea03cc1be275bf8b1af6cb5370fabd5eb6201681133a53522a3fe2cd84bd72838e348d8651ef68c259c59b2d6cc8a2c1feb8fd5faa"
}
]
},
{
"name": "8f",
"children": [
{
"name": "6effe95a606e03b354c3292256d983eb22571560ec22d9f502eb1078de5b9e0a383157895f7ce0990ad605887e9334e5feb50297c7ded3e082876e1c8711"
}
]
}
]
},
{
"name": "2d",
"children": [
{
"name": "cf",
"children": [
{
"name": "5fcab7fe437a7dac66f68a03050afa93a1cbbf4d9c7c9811b47db1dd92b0df007e6062b21af5a95615801aaffcba2c10202c58f8beebe688a81982d4980e"
}
]
}
]
},
{
"name": "2e",
"children": [
{
"name": "c0",
"children": [
{
"name": "c33e64731d2900f75e37dccf47936eb68ba3642dadd22d2c155a14e4ae7e59580eaaf8ac5b9420cd5594272ee3db3df9848a25106c1bc48a6bcca66c6ae2"
}
]
}
]
},
{
"name": "2f",
"children": [
{
"name": "07",
"children": [
{
"name": "591e949c338433f17c3688a4b34be71f825673246be87d0202cbb5bbbf871aaeee046809b252e3ba046adbc90da6615d755b453c8f998185dd7875ddc1d0"
}
]
},
{
"name": "b0",
"children": [
{
"name": "227e11763fdeb791ee31fe462a7e2d4b427055af235b03bbe184c2e21b5634343b2a26f2537985910e4f14115b8dee28928a07a4a45e261f19e12a8a3f34"
}
]
}
]
},
{
"name": "30",
"children": [
{
"name": "2a",
"children": [
{
"name": "940c292618f69378af99b694aea548f1eba0deaa5e74a0e45cb258b43714a562e52b19b54ea3d2f67b2bbd086906e80b6ee797e16342c7ee024eb43348e7"
}
]
},
{
"name": "54",
"children": [
{
"name": "949d9aa1e6bd99588e1885a8b42da515fc74e566beee2ad63d601531c69fe6a2c548c909f1c8b43a5a3afa75f9a214a877bcea55c3ceed12c158f75420d3"
}
]
},
{
"name": "9c",
"children": [
{
"name": "55810483df7f3cce675bfb67f038121b80b7deba357a41c14d9a833309979f18deb6623ef7397597ee3470a43d382671a85cfce128a3658cb218f530bbee"
}
]
}
]
},
{
"name": "31",
"children": [
{
"name": "c3",
"children": [
{
"name": "afb5d28d3a3b34b1e341f2f266adcc46a6d1d382d99853c7b423bdf2605681a0333efb66b297d012c146a14c0fa28bf37301e76a1ea1d83b41b66aa26dc6"
}
]
}
]
},
{
"name": "32",
"children": [
{
"name": "de",
"children": [
{
"name": "2a88828b76a99a4cbd675bc8039b5978d572c1859b134339e6a5300bfc8ce01ea4586c7f1c50ef2a98e00c0f37646862cc449cf7d29b3e4e08a1b5a3b0a7"
}
]
}
]
},
{
"name": "33",
"children": [
{
"name": "4d",
"children": [
{
"name": "5a32489c3fa733462c9190cd69e5e34a9208b5d0afd4cbe6e6344f4e0a8e7a1d4c63cac9d77bfa3a32ce8980a5cc60965b1da9827062ebb474a03869705b"
}
]
},
{
"name": "8b",
"children": [
{
"name": "94e37bb144dd1a20c63d1a5908093bb77617c2765e3012f8b113d68702cf372d4cb88d199e02e5a01b05d9646cb024985b8356ca035254268e28d974c79d"
}
]
},
{
"name": "e3",
"children": [
{
"name": "b0e8290f9fcb5033a598d67ca41e7338772d2dae1d3d5f7133c2c45f740b8fc4f26e4b295178b8f69ca2f8af64e423c75d7a227559589af6aa2cc1d89652"
}
]
}
]
},
{
"name": "34",
"children": [
{
"name": "4f",
"children": [
{
"name": "e55cc7915d764f69f175165116003ee09d029d7ed4b2f39f7f2c6bca9125a1f0a61429b4e2dd92e6ced31fe25837e7daac9e229cc0b6c516e71ca5fa0b73"
}
]
},
{
"name": "ae",
"children": [
{
"name": "0f41b3bc76d267fb4facf2f34c4abafff2b89aa97c466d165c93b5a96d7c986134c7566dede79b6459ee12eff3ad8daec730d3df49ca8c843e9b162b7fed"
}
]
},
{
"name": "e2",
"children": [
{
"name": "a6f31864cc08f3171f01dafe4e0074febb9a5141cd9409ad95abd8d82ffdf5a36c22f66c4103b2c816cdec5795520b8f73ea91217db3142ef4a12a3dba58"
}
]
}
]
},
{
"name": "36",
"children": [
{
"name": "e6",
"children": [
{
"name": "8d49ae9f94a4f925a498433268934e09cd32f5080e9a1a1bf9adf2d6dcf82a03e3360a1a59427002f21f22e19164052f17e51aa40c11c0eebe217a3dcaf4"
}
]
}
]
},
{
"name": "37",
"children": [
{
"name": "39",
"children": [
{
"name": "e331025e59c1597b5bc2bb705757bbb6befee8fa566fe5fb96bb789d4a0d93c578ceb1a45e89c004ca7285a277b151f69c71d2b6c69ee0493ebc019bb131"
}
]
}
]
},
{
"name": "38",
"children": [
{
"name": "8b",
"children": [
{
"name": "d018208d38d3b2e00a7571747b107db0a991b3ebd9d15fc2427f636e9b45db13ddf82b9b027b949cb9cc174996c029ddce0c93409ba9e9449a03b43fe9b7"
}
]
}
]
},
{
"name": "3b",
"children": [
{
"name": "07",
"children": [
{
"name": "6ffc5b7b2233a09bf8b4c6f3436752eb4403517dec386f6a6b1773963102f12dfbb76d2f055610acad208c2b8951e7a63dc9af804e1a13a43093c429a944"
}
]
}
]
},
{
"name": "3d",
"children": [
{
"name": "7c",
"children": [
{
"name": "1f06162ed210423f0f039f413e58361beda7f77522d558a8b71c6bfce08745e13c85a02d32b3115dd06a31c3b9d2bf84ff3f3109431b18b0488508aa3604"
}
]
},
{
"name": "88",
"children": [
{
"name": "f214e2ca43dcb9ec9bd0e902e8f1d02036ab3087c33544c25875076e4fac5b59280adfa3ff67fbfea7cf3ca4cebd8cc31f4bc5ddf05e88d6443f23d1d41a"
}
]
},
{
"name": "a9",
"children": [
{
"name": "83cac809f29621b97e8a9660ff1067d148d18ac12f846d38b2d5a7f4df898ca7966b420ed80f03ce4915b201f0ac5635416ad171eed99527e01541423d0a"
}
]
}
]
},
{
"name": "3e",
"children": [
{
"name": "9e",
"children": [
{
"name": "864b018ffcdacf22bc551402243907b2c3c9457a73878a34169144eb0efac5e002eaca53f60bf28291e4bd76950cdcabd84508676b9bedec82fde7e650f7"
}
]
}
]
},
{
"name": "40",
"children": [
{
"name": "6c",
"children": [
{
"name": "1bed08d627ab98d301d25b1c041047faadd6a81dbcb005d4d3b4fd3de5bfad19f9eb3a9fd537a40581d685c5225dab74ef9367f26c9f699f0cffc30c83a1"
}
]
},
{
"name": "e4",
"children": [
{
"name": "af7af86c9628e0630471e91bfbcca74c17c95b466c7eb901b1dbebc373e288fde067b32f648ade5a8f6dc0806bb7a5ae2df408306e75d6a92fa2398fb668"
}
]
},
{
"name": "ff",
"children": [
{
"name": "3c0402af31a9bfdcdc47eaf8f6a36d51e8c8f165401dea7970012fe99c6bcdf4854ba1c2c7c46608cc5860e9f510fb9b61e8fe1dbf8796f635f70d2223ec"
}
]
}
]
},
{
"name": "41",
"children": [
{
"name": "8d",
"children": [
{
"name": "e89ed4ca74150f4ece3c5f0da0cbe73c3335659c2c15a020e5f291853716da59b2d9a1bbb41159a4471e6bd42a4fa6be80fb0ddb49762d738f9266b42bb2"
}
]
}
]
},
{
"name": "42",
"children": [
{
"name": "04",
"children": [
{
"name": "f9fff0f78df8c96fa1ac8f1bf44a5a63db78a9f87b4ea673609dbd92e73537081dba1bf2033c6a32e11241e36c33144e3a0d1b2cb5b5bab4a1e829b840c7"
}
]
},
{
"name": "b5",
"children": [
{
"name": "805c6a7d3ae185e09fa309d039b510d56617c2a4dfc34db364765d6cf6298d13600badf20ca702c385437b408e869335051ab5a4149d168d20b795be97be"
}
]
},
{
"name": "c5",
"children": [
{
"name": "951b246e634ec0a9bdb7e10cad4dfc1de5df402657cd210e7020e9752fe3d90f323d77df859f41516a57bf418945c6dfdb527074fe72ddd6314f1b118ad4"
}
]
}
]
},
{
"name": "43",
"children": [
{
"name": "0e",
"children": [
{
"name": "d81f21bf5b43ab4552e8b01e5a0ad64af92a94a7a168edf83cac564659a765195b3eb0518182ea5ce5692a6a44aef9fd11aa2507666c522a5cdadc1634a7"
}
]
},
{
"name": "4a",
"children": [
{
"name": "9b68cd299f16f247250c191da4fadb349b910721438d72d7a85f80fe5941a2f0ba8d1e317a6f3da627da42942b3bc9d1a185b67123e414a715b42a485ce7"
}
]
},
{
"name": "ca",
"children": [
{
"name": "907cf899f931ceff766b3ab3b470924a7e96026a0b4c5245db9c47e68148f05e0eb3fd605e3b24bd00f0413c24d288357eb384b0406bbcc85b2231122e76"
}
]
},
{
"name": "db",
"children": [
{
"name": "8fbc1d7476a6d09203aee30fba69bd87554921896177d6fb966776a9fda4053076474c85ec86f8adc613547add06c35adf33cb8623491a57b36eb607483d"
}
]
},
{
"name": "e7",
"children": [
{
"name": "d922e3e7160ee58c2b19dcd807ebc0d6885d5194483768cc093d998a7422770580f0538bf6d84beb6d4fa91a9f7963e60c63e87c321fd2256114939564d9"
}
]
}
]
},
{
"name": "44",
"children": [
{
"name": "45",
"children": [
{
"name": "4c74aac08a8e3648132f4f263dae157c92be2eb364657269f66b6ae7832c53d7831e4157fc6044d2e678cec1764660718cb89d960aa92283f2e133640437"
}
]
},
{
"name": "6c",
"children": [
{
"name": "305a7c10be455f6af295b76d8518bc3ec5849dcc04709b4aeee83853540dee994e6165cdbc57790ee2cb6062bcab4e52e9baf808f468a28e5b408cd6dca8"
}
]
},
{
"name": "b0",
"children": [
{
"name": "4bfd03c7273a8e98e4e201af8196eff3c152549e3b7668d11956a82554a2fe38aa517a590c645b0d06ed76736987ca91829c54f93e304881ba796fd77b5b"
}
]
},
{
"name": "dc",
"children": [
{
"name": "501ffa88f3fb77b615c90f072cb543b8cdeaa8eb8f94cbffac355441c785e7d8e5fe399f683fe8899cd16aa6516b6b665455e28249ada85568b74f8b9598"
}
]
}
]
},
{
"name": "45",
"children": [
{
"name": "08",
"children": [
{
"name": "a22a07c32e1cd5b5399c079ab67badde5ce675d039e9f7065236b7023b56b4b02558b789816c9327b849b3cb8d0c6da3df478d17aed6e75aab4f34a7f032"
}
]
},
{
"name": "29",
"children": [
{
"name": "fd17af0f8c7f47aad96db129ea602d575e859ef418eee7edb5dd1f7c70d1adb5a83dabdc80393cdd6ecaaf21aeda366e567df059169598af6696ae495603"
}
]
},
{
"name": "39",
"children": [
{
"name": "acbc0d33b7a24f67fa216364ecd0e9d27a243cc623aeb0da16ed2c993d456703a2ad003aecf4483f6d702f5d0059d8257d223f3c42257500d0d98b4ffbc3"
}
]
},
{
"name": "56",
"children": [
{
"name": "52215e481b5d079377a7a2dae1bf3d13f5e9ba7321c12e41ff60066e2aa77c85190a8527c218870fd8a518d043f19ddcc034198d965cd63f06a4f9b85e4b"
}
]
},
{
"name": "70",
"children": [
{
"name": "7d5713447d1e2ba2b2877ab75469291b68b785db659f31fef1db3ec1938702b421ec14e6bd59e837697ce1dec2aba59e370b84b9d29c5be3163ec959a93a"
}
]
},
{
"name": "d2",
"children": [
{
"name": "547e5704ddc5332a232a420b02bb4e853eef5474824ed1b7986cf84737893a6a9809b627dca02b53f5b7313a9601b690f690233a49bce0e026aeb16fcf29"
}
]
}
]
},
{
"name": "46",
"children": [
{
"name": "48",
"children": [
{
"name": "4f3e9db3aea0c0400ff68cd867ced70f025bfae17761229edaef8e78039a2f23b06e93182decc5fbb9dc00bb7ce0d437293d4d2bcf7555d5279aaaf638f8"
}
]
},
{
"name": "b1",
"children": [
{
"name": "14a7e89f31aac1d2d99b4b430783af7dfcf8e902a2ea2131b9d6714865c8026ecb2b244c74b144cc31a6358a871a6ddf3c33f15f63e86eb63f8f5c0de5a6"
}
]
},
{
"name": "c4",
"children": [
{
"name": "6038bb5d37f4d8888585c8e743ea475f2470d8198c5053b929ab2a6629b2db6ff848a0d54ec6683ceaa27b3d1da4dd6129b9b2499d55deee09104d9eba1c"
}
]
},
{
"name": "dc",
"children": [
{
"name": "6dcedc0c713ea61a5d1d3dd5e776262185833c4f845b9d2a367090c20bee1afbbd74aee5f5fe267014d24ee0156fdda327293fd9f7730460e01885d846fb"
}
]
}
]
},
{
"name": "47",
"children": [
{
"name": "a0",
"children": [
{
"name": "ee267a8e98a09144e18edb066a35f3545e330c907018deedbd3b6fb931c75227bf9aa6754b85364cc4621976c2fdf8064299e5f90acc1e88870a03f2aee4"
}
]
}
]
},
{
"name": "49",
"children": [
{
"name": "2e",
"children": [
{
"name": "ac0ddadc45673e1875be27d9e800ecb71c6d19b3093d78eae941b57686d6db724a1416e97affe9b66f3897f6634e1238fad6515f2d530f293983e18230d3"
}
]
},
{
"name": "7b",
"children": [
{
"name": "3cdef2b029a20d9d818113de135d16c3e7c2b015c81fcc86487d5f2cb6171d71133389c09f8fd5a8f3025ce13bb21325770ef58f2aba9d0db549ca09a557"
}
]
},
{
"name": "b2",
"children": [
{
"name": "9b00d90deb4dd58b88c466fe3d2de549327e321b0b1bcd9c28ac4a32122badb0dde725875b3b7eb37e1189e90103a4e6481640ed9eae494719af9778eca1"
}
]
}
]
},
{
"name": "4a",
"children": [
{
"name": "84",
"children": [
{
"name": "8be3e39212d47df4b1c56508892e44f9f42e41d5a9863b53734f08fb4d3d6a0948143ba8713afce4398c43faf32b5c13375c920ace892811176a42afd99a"
}
]
}
]
},
{
"name": "4b",
"children": [
{
"name": "d8",
"children": [
{
"name": "3367f6f3f37191cac23b8000f8c0f4ff008dee0a763ef719fe331fca3ecd89c07248cf55bc3d9920d9cab2b7744d38133c7a3717855eb2f0e83b972fc3ba"
}
]
}
]
},
{
"name": "4d",
"children": [
{
"name": "fc",
"children": [
{
"name": "92aecff99e6f1f4090dc043b949e0dd53942ac77b4beceabdb3938865c77f15f8c0adf56ab77e86836ebe489c33fd981739690e000139ebca4ac0781bf14"
}
]
}
]
},
{
"name": "4f",
"children": [
{
"name": "27",
"children": [
{
"name": "89d7389fe7704f7c7a28b411b03d1613d5152dea8196b1a42bf14c995bf7809bd6caa228edbebb920c49991e6f760b04bd9e3eff7d6b6da8f0a0cdea7c08"
}
]
}
]
},
{
"name": "50",
"children": [
{
"name": "44",
"children": [
{
"name": "de6067a5732ebede6224d34fe5a22ddfa897412e164eeb3499ee4facb5fa5fa58633873a58079d5c4171a835ef9cacfed49fda8fcd9b4f57a387c09b8c05"
}
]
}
]
},
{
"name": "51",
"children": [
{
"name": "75",
"children": [
{
"name": "8c2a12cec1529bef6f0852d40f5f17d853ebac7726ed52b2bff2e184f0240cbeb84ea70bf30c1c23d108522fb31073bbc8b084811bc550f3e203431a5f40"
}
]
},
{
"name": "fa",
"children": [
{
"name": "1e300e9f209f304d81445237a59da188ebbbfaf8deea5c912f42e2066bdf65e31b02aee498395490d2e3c0367e1d0339bc96460f68a2ebae28cbabbc76df"
}
]
}
]
},
{
"name": "52",
"children": [
{
"name": "3d",
"children": [
{
"name": "c2b908b00953a0286f6a340377252af24bdb991992871d5e1af3351d093bc9349003de100c6417212f744df200e163c975ccfe80304dc4c5644d0c436b5a"
}
]
},
{
"name": "5b",
"children": [
{
"name": "ae575bbb348298203e2ed76d801f0c91dbd2886ba8714a5c05cbcf468dc5ca48938503059a3c494b6ff03d8e31667fd7ee6519374e5a047eeca5e73e68a6"
}
]
},
{
"name": "b7",
"children": [
{
"name": "00041fb86d4ac5001c1b96e4c8044ad7c2f6ec53f57b4d959f99b8097db930881bb3892f60c5d383532ba279c7dd190f398e094c5ba8ee4b7fb3e53b0a2f"
}
]
}
]
},
{
"name": "53",
"children": [
{
"name": "26",
"children": [
{
"name": "3385d66e6796675b48dfad02cf5c2e02c563459aeae00688403fb52c19645fe6a8493be8396bc8972a12e5fce4ce091d7a1a6011aaf09275ad5f5ac8216c"
}
]
}
]
},
{
"name": "54",
"children": [
{
"name": "ae",
"children": [
{
"name": "5adb2749ef19bc1af05e28b4bd9aed6954aeae71e7fdefcd095548f0e9b02324bfd05e7778634a7b48f78e50c0b6ed887334266f9b977f417d13a77adcd3"
}
]
}
]
},
{
"name": "55",
"children": [
{
"name": "c2",
"children": [
{
"name": "6633448cdd15e81d2022af2f24793efb9fe32eca177c3286d26b5291211b44a5a9353f9293d1642d420b1e3f3e7c3256635b2ff5b5b51d38f515b668cd58"
}
]
}
]
},
{
"name": "57",
"children": [
{
"name": "54",
"children": [
{
"name": "5b920e95e5621fccbc0e5bc6aac278b239b66ea2fb6de079adb1970325f2d34055cee309610c8f0d2d66144bbce1e20e2e811271885620ead05b3a72cf6e"
}
]
},
{
"name": "bf",
"children": [
{
"name": "af404274e99f9ce6d4b27bc4be9c751f239d71a172178c743df5c42d294910aaa3b590efca08951f657b81e3b87f60194385a8761f785d5065e7f227b4a0"
}
]
}
]
},
{
"name": "59",
"children": [
{
"name": "48",
"children": [
{
"name": "f6aa5c5a42d3b883a3eae5cdbd193716183c9df22b4bf334e58a98040b3dc97ac02288e2a8b5df0953aa2d0773c00a01bac64254c9585ba0c4be6e37bf8c"
}
]
},
{
"name": "80",
"children": [
{
"name": "fd33c468d32b0b794307afa7fd0c298ff0be06121ac225467605fc891b43113a397e44963794744bcea9078c68e0e2c25e64ec980479196f9ea984ec0b2b"
}
]
},
{
"name": "d9",
"children": [
{
"name": "5ced9c6941d8ff4d753c5e67056c063a5cd616e89ef125ed97fa04fae28ba2dd03e061c70d76a33614b28268cf8b9f34ba76ada87503ef71442362325251"
}
]
}
]
},
{
"name": "5a",
"children": [
{
"name": "64",
"children": [
{
"name": "2c6e0ff45254c24f44a89302ee6c3cdcb9d641f8392f762c8b4d5180d1576f7433bfbe078a68c5831633d677a45c62ad4c1f9385e3e9e009733f38013875"
}
]
}
]
},
{
"name": "5d",
"children": [
{
"name": "19",
"children": [
{
"name": "e56ca3139a4b4192308b13cfd77191659c7bebd8bb5daf57895f889d2f9e7ff416ce473c9911a2240450e1146084581048b6c56b0f1c31de09e2b0c8ad77"
}
]
}
]
},
{
"name": "5e",
"children": [
{
"name": "53",
"children": [
{
"name": "47c290e916e11ba9dcdbd5b8d514661ef6d48d3be784b80ca2ef6562be7f8165e69436e69c8d7d5a5f59126233c7e3bc4d71d75c5dc98959cfccd48bb6c6"
}
]
},
{
"name": "63",
"children": [
{
"name": "967bb7b21d81f5e1c2dd54fa3283e18e1f7ad85fef8aa73af2949c125bdf2ddcd93e53c5ce97c15628e830b7375bf255c67facd8c035337873167f16acca"
}
]
},
{
"name": "79",
"children": [
{
"name": "2b81ff97df0ca6d00e786eea69621c2f19d0a15139bbe9a7f9743d91ad090a9984f82871a7cadaac86081b0373a223d827e99338f88fc2555420595ddf59"
}
]
},
{
"name": "7a",
"children": [
{
"name": "20b2e2a1db438b450b69186f13b6eae85b07cd7231bfb0ac6761bf88b04a94ddc41e524f42f5ef19bdad52da8c594e1167db361ef2393eafee6ed64e37dc"
}
]
}
]
},
{
"name": "5f",
"children": [
{
"name": "1c",
"children": [
{
"name": "08f043a1550816a7a8832feddbd2bf3a7f877a017eb3494e791df078c9d084b972d773915c61e3aefa79c67ed4b84c48eeff5d6bb782893d33206df9afe0"
}
]
}
]
},
{
"name": "60",
"children": [
{
"name": "0e",
"children": [
{
"name": "8c6b62ac09d19bf960ba5290551491972f9f0c0c0ea8c8e35b8f217ffb9b0183163f7709212e881b313d865d7c94f38fc8851c3fd83d4eb3507f822cfe05"
}
]
},
{
"name": "31",
"children": [
{
"name": "5b27fa4f4f54dfd5ef209e9a590f6a9cd103f418ef60d110641ed40d2b1dad75b6724f5f6eb39f33393d49f1c20204729b919bd4b467aaee7e170c3a132b"
}
]
}
]
},
{
"name": "62",
"children": [
{
"name": "01",
"children": [
{
"name": "288feb2230fe7ab1a2fe42a69cef10d245e7bb1a971cdc46bff4d719f4d40770998ee439066707faf6b4dfe228c2027ff4e96c21b14134cf5f89377e201b"
}
]
},
{
"name": "62",
"children": [
{
"name": "a47e13808b7c2c0753e126ae52723dc65cc9f75afb50fc90b4c68a29b87a1749d9ad752b4ea45ad8693d6489ed9880505c21eeb844eccc6118c2ad839d63"
}
]
},
{
"name": "c1",
"children": [
{
"name": "a97b75872caf19622e2d583836272dde6d1cf6ad7a300f19e57786e4401d3471cff5670f405a70b48bdced0c98ad8afb50bda23d29a2f22ab73e8415b4ca"
}
]
},
{
"name": "f8",
"children": [
{
"name": "c9a30f45c5b84514a0d2b859d509ed96c57935cd6736d9f15e3d5344696244bbc22b65595d6ba374b87c3366b50cd6297b342f4c969e0c68961b61df494a"
}
]
}
]
},
{
"name": "63",
"children": [
{
"name": "70",
"children": [
{
"name": "808bc627d6841f92c7e213498e937fedd2013e98c15a08998139b50dab338b112604e93768be4d04798fd3ae44dffd353e155204c1f546895ecd8b6a5f9b"
}
]
},
{
"name": "9a",
"children": [
{
"name": "be37cb485b9964a2581ed86ec213067c60a49e1da40e9befdf0ab2c2a8c986311869e02ead604d0a998239d15ad12315d8328d4efbcba055adca6a95bf3d"
}
]
},
{
"name": "f6",
"children": [
{
"name": "abbdb9feaebcf72422a5f42e2454d7d37d29b6fe6129e454b3e44b194803463d2950ae9448e4ce0f285fa6267139da338ef743e73d273752bddb4d0c3480"
}
]
}
]
},
{
"name": "64",
"children": [
{
"name": "1f",
"children": [
{
"name": "511ffdfdaa9ab956ee98f8d99468585047aa69f8cd97b7be970671300da19c540aa196fc6b9770766ca4b90f7347dd047beafdda4ab29a17f2a2cbb944b5"
}
]
},
{
"name": "c1",
"children": [
{
"name": "1161eb3aa43c9dcae1a276c7bb3ac1f1b5b23b595794128ce047f83baddd31522998365bd9444fcad8c8194e35b2ef6e487de94b79570433dee69ad4465f"
}
]
},
{
"name": "f3",
"children": [
{
"name": "fe43edf7d5789693b94a7ddd51228a3785f7e26779794a0f530e2f8c1e4efdf859dfdcb6b08458bbfabbb72684a8d4fc5b29d60073dba426e2187bce5b8e"
}
]
}
]
},
{
"name": "65",
"children": [
{
"name": "84",
"children": [
{
"name": "d4fda2f2b39f931148384dd6809214974434dea574935f998bb336645d50896862cfa9c9d50c6a705d3fa02beea1b22319038cd6a056595515db2d4d53ba"
}
]
},
{
"name": "fe",
"children": [
{
"name": "47d8ac6ddb18d3bdb26f3f66562c4202c40ea3fa1026333225ca9cb8c5c060d6f2959f1f3d5b2d066d2fa47f9730095145cdd0858765d20853542d2e9cb3"
}
]
}
]
},
{
"name": "66",
"children": [
{
"name": "12",
"children": [
{
"name": "871f6dbfea77c7581356c041f2b2e785a09a712bea5156e5041c533763e9edc7a26f99ad7e849262176adcdc6c37eb0373d51f77327a2bea3b144109176e"
}
]
},
{
"name": "7f",
"children": [
{
"name": "563f5332efe7c581f7a3711aedc7348d1315124676ac408d4bcbe1bbeee9507259c069d3bc4deb400b474c198e9f9ee53e4ee1806079d37ccd90b90fe1e0"
}
]
}
]
},
{
"name": "6b",
"children": [
{
"name": "85",
"children": [
{
"name": "0641a58f1f9f663975189c01b67b09dc412e22e05e374efdc9a0033eb365430264bd36c2bc1a90cc2eb0873e4b054fb8772ba4cea14367da96fb4685f1e2"
}
]
}
]
},
{
"name": "6d",
"children": [
{
"name": "12",
"children": [
{
"name": "128022233f6d3fb5b5923d63048b9e1054f45913192e0fd9492fe508c542adc15240f305b54eb6f58ccb354455e8d42053359ff98690bd42f98a59da292b"
}
]
}
]
},
{
"name": "6e",
"children": [
{
"name": "10",
"children": [
{
"name": "17bb6dc3256b2b238e7169f629910e0db5c28cc169c00bfbcaaddda5fa7c4c16ebce4f75cc613223da8a6ff2fabc00ee5887b41a73f9d278fff7ce34cad3"
}
]
},
{
"name": "d8",
"children": [
{
"name": "4989154aa1b6ef0e6bc32cc213f92d699c244e17d556c25446d5c2b6dd1f7e037ad387a2893e6bdaaec50792b38991750fcf1af25e020e734c7a01d52cc6"
}
]
}
]
},
{
"name": "6f",
"children": [
{
"name": "77",
"children": [
{
"name": "2da50c29f8f44ebd4fdcb6d7383989783337c9516cba15983e3cc5dfce6b7ffb7f621d5174b037ea6b2f1340cdc90361143b229c159b7be635ab8908a3b0"
}
]
},
{
"name": "c0",
"children": [
{
"name": "2657791f41aa9602e69c6cfb8d6cbeaf6a19ce25f94e85ec4bccc30d2e06badbefe7874273bc9d1a3bfe5ae4c560505192ec7bb53fd3f4de8ddf2640c2cb"
}
]
}
]
},
{
"name": "71",
"children": [
{
"name": "84",
"children": [
{
"name": "3ddf5d20aeac6e7966e5f96b885086a251a0dc8fb58eab97d58449633558117ce52163d7f2db34ef7e8a96b2779b87c4a5ef45527056c80af2672ca0743a"
}
]
},
{
"name": "91",
"children": [
{
"name": "f99d7f6c8c47408df54b231b1a1d69ab2623735b94d7c26a897b0be9b44460ba17cce81f67129d9cd75ea6bf159408583db6f83ad24072dc1341808ae28a"
}
]
}
]
},
{
"name": "72",
"children": [
{
"name": "d0",
"children": [
{
"name": "7fc8c2f1a963c3636074a291b82e1b3cd143e06e9be438ae7227a387cbc9c15cd6acf0963d7ab970c1981246384d4907be0fe72a7f91bca99e12eed94e2b"
}
]
},
{
"name": "df",
"children": [
{
"name": "50d4de8d32890e8a9256b5a3da036a134f95bddf6dceb8fc0c46caec50eb82efcd650815940379f506db3660d183f234e272c2f94556e5eeca6562878c00"
}
]
}
]
},
{
"name": "73",
"children": [
{
"name": "ce",
"children": [
{
"name": "4942a677c9e15ebe307194d3235f5cc3ee11e0f64f7ccdb2c42afc537f9ac76e181b3c566a8ade7300cd3a94e3b119634a5b61b47eafdb19c38f53088f5d"
}
]
}
]
},
{
"name": "75",
"children": [
{
"name": "61",
"children": [
{
"name": "f31dad96a845c8fced44f4e8eba1c313289976992ac4a258752289abbfa53e26e3706875ec5f1f5b2eee601bb05458520dd2c90840943f2f5ac87b1e17eb"
}
]
},
{
"name": "6f",
"children": [
{
"name": "f956fe51ae8bda51f536b1ad503c61cc8bf9b9c508170026d3a271a663c2afeaea07472de2c613f12f0ff1db67ca5986b9d866bfb900ccca682e0b0b909f"
}
]
},
{
"name": "e1",
"children": [
{
"name": "bf368c63bc5a56b6a2435e625a910cab3c018418d9d5c307f7b5d9e03410761360c4e2ed599763fdbd7e237699c3696e60b0347fbff6cb6c84d6ad25bd35"
}
]
}
]
},
{
"name": "77",
"children": [
{
"name": "17",
"children": [
{
"name": "047e16e661dc247776114fd9af0610abcdcd0122e6d403d1b73b70d90699ce8b9d4c50af842b389199aa00d8f08e0e6ae9532006c46ccafc97cbc1d9f663"
}
]
},
{
"name": "c8",
"children": [
{
"name": "7a6873424b2fc72a7cba7b57e3d06d9b3a130e5f3d3d9273f276f265d34ebc09a08ac92bcee277ec078dbe17ba3b99d213f01d65daf1fa0951aeea6dea9c"
}
]
},
{
"name": "e8",
"children": [
{
"name": "869150854ecf1cee33ca4919c20ce731fba2286c0fceb5232ea849bc16c05dcb220b0d47a8adfb984421b3df1fccc48f9de19a6d035f0efbe9ea9d0df495"
}
]
}
]
},
{
"name": "78",
"children": [
{
"name": "db",
"children": [
{
"name": "fe5ab55b2aed5fdef6d8253ff1b62179b320391cf20cb5ff48818fe72a0d2c5aacc0504bea63fc66ece71973fa9a7cbc7f88ef4580e99e480a78bf9b62fd"
}
]
}
]
},
{
"name": "79",
"children": [
{
"name": "f4",
"children": [
{
"name": "7c1d25b2e224bb8bcd723a5624638ac56b62619c3c38190a1cee55694298178100fd122049f6cb2e51621c4dde903ff3fab60899e3308140cb4fd5348a91"
}
]
}
]
},
{
"name": "7a",
"children": [
{
"name": "3e",
"children": [
{
"name": "0085f85f2f6436ce93262e8ed4d54bfdf8fca1219a6040b193d45f668881a6882248a0281299ccc576b73dee6593e24558ef6280f969e7849e698214af4a"
}
]
},
{
"name": "82",
"children": [
{
"name": "e694cce0015ea1c373e08121e616f76e212c966861e7f4d65011879b5ac75a5eb72c662777c19b60132869701dfa2af09f275e86502a46731d8ff6c288d2"
}
]
}
]
},
{
"name": "7b",
"children": [
{
"name": "26",
"children": [
{
"name": "e4dd38f3cf357dec3963e5cf97ac1156e7b793361ce877aeb2f47ac197327a36c0ab582a7fda468f4b72bdc099aeac10b44ddc38c8f8d7299aa5ce78a6dd"
}
]
}
]
},
{
"name": "7e",
"children": [
{
"name": "64",
"children": [
{
"name": "d159b34c9ac996abac4957c0f5f54fe0c3f6f0ac77cd5f1ac837e1df6609f3a931e9f633a628c86c4d48d73899d939d658f50dbccb8c9e6cacea0ca97195"
}
]
}
]
},
{
"name": "80",
"children": [
{
"name": "15",
"children": [
{
"name": "b5134937298c33b826c48ba8217563bb53ccbc82b1a250a05ca6bce2e784c96c24c5255482b3cb5fcb8b7fa086d680189c23cbcaecf597442b7c47de4e4b"
}
]
}
]
},
{
"name": "81",
"children": [
{
"name": "92",
"children": [
{
"name": "ba9b3e22af5e12fb356e1e3336b1cabf7717f49600932d5ebaa4c985a4b90e32f59cbdc71c8883edad78c348cd85a5cb973a851e24c125fb1b005798d60f"
}
]
},
{
"name": "a8",
"children": [
{
"name": "d5f2ed64f6f40171d8aeb5fc3661ca6c7dd4f4cab7c913f32a2f7e2ddaaec5d694cbce5a7e2d8f651e09ff8714b655d89d093cb91e294665ff3c0dc007fa"
}
]
},
{
"name": "b5",
"children": [
{
"name": "566977ce80411b1e0555f97d6fc77d6b9fd5287ac8eaa595785bc5087ec5bfcfae60eef2a17bc0617373f3eb54b2677eb43c30cf989d6f8964c56d97c3e1"
}
]
}
]
},
{
"name": "82",
"children": [
{
"name": "fe",
"children": [
{
"name": "9fc5d40d37ca049f2c2bb7b6b4719074701c998270369c59c82c1f09b936ca4c05178b2d2d378bc3581cddb99624ddd76940f93a5dd4b724cc0e51ae1f11"
}
]
}
]
},
{
"name": "83",
"children": [
{
"name": "1b",
"children": [
{
"name": "727ea320ec62b285099bd39e8aeccdf1b33cbf9b21fcc3e078453f905c142cbc039d7375f29aa0c33c7c750603e0b1d000e522227e89daf3d62d4404c3cf"
}
]
},
{
"name": "a4",
"children": [
{
"name": "147dfd38a19a47b34786e69f37ac52e11de574d2e83f61ff6764ce9f2de52b3e0b814e44d039da40596b29321e794d97d54033da37735025f6d5440c5d23"
}
]
},
{
"name": "a6",
"children": [
{
"name": "9ba9c0cbe4bc9a35b7e3a035a8b33a0723a9e571458fe756ea7d617017dd53b6f46f73a2c7ed4c1325fdf0f91854e39c648b34d54ceacea9bffafb945bab"
}
]
},
{
"name": "d8",
"children": [
{
"name": "7d4d122afb91a55129b5912067c3303b7d95013235394641edd9a5c49aada09b816533cd36ac2609970c084a2c0129bb21b25a338faa1bf7ce2d94b62ade"
}
]
}
]
},
{
"name": "84",
"children": [
{
"name": "e4",
"children": [
{
"name": "b4f3da27f1176ea9d6e1bd0e59dfb0341128ecab3eaa9d171f7ec314df8f7916e4dda929beedb849dbd26f20eb010c41276a7e433eef6ddd3a3d55194ccc"
}
]
},
{
"name": "fb",
"children": [
{
"name": "7f6e02f9704f90a7efd33c706aa6d70080fce08f8ea63dc83fd7accd5266d09348fe98e11057ff8baaef1046d0d5dc493de50e85785213a6e865e8e4ec00"
}
]
}
]
},
{
"name": "85",
"children": [
{
"name": "c7",
"children": [
{
"name": "1bac3ce9bd4ed51685af8cd4c129cc522c63231392d703b08a817c5d186b387fc63e750340afeaee422a8b94fee0e981b4d7729d75dbf2f548c24f678557"
}
]
}
]
},
{
"name": "86",
"children": [
{
"name": "1d",
"children": [
{
"name": "e04807cb5626609821846a1ba1110aaeac7644a02bcd3885a49e915a1e0d2be815c1176726c404414bac9390e8fc616e69292de54fbf6fadad9635ab0c4c"
}
]
},
{
"name": "9a",
"children": [
{
"name": "fe274e41d855585005c778ad58c88dbaec9fdd0c384c53a07a722be6f21498d636099c15f1cca0ca0ecc33266b4b1ebcab8e19c38eaaa9ff8f6df0500b7b"
}
]
},
{
"name": "fc",
"children": [
{
"name": "2f9d14b5077444c150e559ec6cabb61068f65e1b7fe62a8d63bf7f149a7a569b18a1a75e1b5ba56d10eb87130257d85bf3170f24efb2f229293fc2265534"
}
]
},
{
"name": "ff",
"children": [
{
"name": "77262ef8b2dfecae660312b547304e2ce303042ae72f828fd611c89a31c83bdc870e3c1105e1a19f5a5020459ec7abf2978969bff52743a4a28df15cba1b"
}
]
}
]
},
{
"name": "87",
"children": [
{
"name": "81",
"children": [
{
"name": "785e5a0614c670be7887a55eba649eccde4504d4a17ca7fd00b909303c35ef622416366b2e9104207f83f5b3bad71f408ba60264508938d84d85abdab2d9"
}
]
},
{
"name": "f3",
"children": [
{
"name": "54692c86e44cb1048a7c611c68e1131edbfa9082fca8c11c1533385884108e35b5bc3d4b20e2590532b86066151ee73dcbdcc88b0eebf227f09a3dad80f0"
}
]
}
]
},
{
"name": "88",
"children": [
{
"name": "ef",
"children": [
{
"name": "74b1cb61f5601b9a0bfba20a2ae7b3bd6292a61416e6a04a021c3076c4c058d3efca56ba806820f2084d7a754b2978ebc8c4515123ed2c12da83ab2d9be0"
}
]
}
]
},
{
"name": "89",
"children": [
{
"name": "cb",
"children": [
{
"name": "5616ada3fb25eb679a243edf333045cb5944372f8f59ee1ee89d9c30256f6d547cde2f9eb080dae25e7e708d4546a01b9cc859796f2bcf06d3b058e2f4a1"
}
]
}
]
},
{
"name": "8a",
"children": [
{
"name": "57",
"children": [
{
"name": "131ff52788290c76d7b192808dd1b23ba4c7090ef99014fbee3ef98469803f3527c54c081d5122c0a158da4499bbfba3ef70cfaad7360ec12e304d8305f7"
}
]
},
{
"name": "a3",
"children": [
{
"name": "02e3f6251424a53bcfb6222d461869620806385dd786ef8f30e6f4146debe56c3bb4cd28c7ffe8e88e8ad05412bfb1ed23e8350534f0464aa0f76166270f"
}
]
},
{
"name": "f5",
"children": [
{
"name": "abc3c6f669874f41b7b436f54541b030757c91b4a560a69ebdc63493b313e010c34fae5eec65815d6cc9218d2f62c0a9db444d7686487fe246ec85b8b9be"
}
]
}
]
},
{
"name": "8e",
"children": [
{
"name": "5d",
"children": [
{
"name": "6f6733c38a72ebf5e52ddc9feded5e8580d130f508ef04f772b33f4a7d00c3e357d0ac2d98e2f290762694a454f86d795bd511e12e9a7cc2d9ba3394e04b"
}
]
},
{
"name": "9d",
"children": [
{
"name": "8bfde63a7e7f8a81555000ea9822d6c5d1563f600a5ee4ccf61746b29123bc831df56d8099caf49e6310872afcc71b97998dcfb3c9a4b906b056c9adbe91"
}
]
},
{
"name": "de",
"children": [
{
"name": "97c32396e11feef22e4a4828ffd4a1bc10531d1d3f6f5526902deb3ff8976eb238272d6ea02e86da2d5e1cfb13818b128f64d62cb75bd39cb05f05acf19e"
}
]
}
]
},
{
"name": "8f",
"children": [
{
"name": "8c",
"children": [
{
"name": "08c14d33858f151ccde47821addf4af3cd2288493a8a4d40456c28d7197e0d7d5c9f55c43d81ff02561973199875035d8b8ece468ddb4ab49d08fc156f1a"
}
]
},
{
"name": "cd",
"children": [
{
"name": "96fee80d5916df6c4c902de1659fffb293e61ee87716432cff34f155bb34d3b18a1855fdabb687c0ef5414030b3b93fb77a3a341662ee2ad6df78dc97e24"
}
]
}
]
},
{
"name": "91",
"children": [
{
"name": "7f",
"children": [
{
"name": "a139f2f3eb4d61a4263a3a4618796fd6372bbb7fa8a4cec3526ea6a84385c70a07285c7aaf5478edd19cd5f8595a74b9570e4d244494323074f9ca1d6a68"
}
]
}
]
},
{
"name": "92",
"children": [
{
"name": "9d",
"children": [
{
"name": "bcfedb6a61c722a0b6616706131f94253895cdf66b939944c2c6b232561841f630ecb8932078781121ed965e1c5b20e772671965fef1f1d3961863c3ca1b"
}
]
}
]
},
{
"name": "93",
"children": [
{
"name": "cc",
"children": [
{
"name": "832a201d8c0146706d4d1ee7715f4c61274ef0cec53de504175a06488bf13e880c5b36a4d123f048c54dd8898db9cd8498acfd1c8fda4f6c4f27d0ce7aea"
}
]
}
]
},
{
"name": "94",
"children": [
{
"name": "bd",
"children": [
{
"name": "1a0857fda1b11c876e222d34b089922c9f5d451d53e9ff4ebb5f010fae4e088a98c4ebbe617d3a73f19f389c65840c68e1c86bc5c978b6c6772f3520b759"
}
]
},
{
"name": "c3",
"children": [
{
"name": "277db7c02de625d280c9d0215bf2d4bfb21e0eb118ef7bb79597c6bf57d9718dc4124be7fe94b9b06f882a4bc49665de79485f0ba9a6130d0928a25d93bd"
}
]
},
{
"name": "c8",
"children": [
{
"name": "92a9d6f6563d8612dfb1b06b7953d9e992a41cc4de1c60052d87bf720ee7aa27a6ed53af8c3bfd4b5234a34d79b168a12093365293849de7c57b17f2277d"
}
]
}
]
},
{
"name": "95",
"children": [
{
"name": "a0",
"children": [
{
"name": "72ba3d8d21fa0df8de28c7cf63645bdd70a5be0543ae95a055e2d437047afa8a5904744cf7a1a9034a160bf7d7a188f5d56bcc01dadf2230813e7d2d0c47"
}
]
},
{
"name": "b3",
"children": [
{
"name": "d2a9636c9156f1fbd392ecec91d8fea13199bed9f0de9cb02b2d92e26a7c5a7b90b4cb4ed0a6567ecabfd902968f8f925392edb0ac40f243f0f8c49dbb94"
}
]
}
]
},
{
"name": "96",
"children": [
{
"name": "55",
"children": [
{
"name": "092f3cf5cd3501aec92dda9c1980bab9f407a689f21fb70e1a07b2713aa7f51d8d850da183c60c2900f5731d4d6475669b1fb15ab8fe22d6811e7abd9608"
}
]
}
]
},
{
"name": "97",
"children": [
{
"name": "00",
"children": [
{
"name": "26cd8cc8c21e787ef037c3e6a56daf34fa1a51147512b4b1f14b202c3af5172e213c0e393f70f88f244c101e7cad9068ac7a5d324c3264ed0f132756970d"
}
]
},
{
"name": "95",
"children": [
{
"name": "e464aeebef06bd2ee706c3d2f0672c8252c71be31dfb2564cfcfbb30c0513fd05310006a62594667f2ef43ce448158470adb98e6bee6dfa70d9d9c031d6f"
}
]
}
]
},
{
"name": "98",
"children": [
{
"name": "b9",
"children": [
{
"name": "814e1b1b0f8dda4f838f783d790127b920155ced219bd231c8d45ec46139b2335e3db7ed23f06a7207ec3020adbab5e441b9c56f703a875794e9ef4ea809"
}
]
}
]
},
{
"name": "99",
"children": [
{
"name": "5e",
"children": [
{
"name": "1c3a93fdd2a6d4ea0a65ad5f2a7e8a7bf3443994e311907c7842894352efe0fdab25a7cb6b572606216bd95aa5b97c1cf1efea3f0d2ff6eacee5d9cb3944"
}
]
}
]
},
{
"name": "9a",
"children": [
{
"name": "02",
"children": [
{
"name": "cf11396ba55575611248825af8133e3b83b6318e5d658fb60ab223026f6ed5247f56f0d54ce816fd77c924a46fee0104b90266c0e3cab6200a2528aa3530"
}
]
},
{
"name": "37",
"children": [
{
"name": "6a56ce890d23ebb476dd8bd68d3d1943a56acefde1a586ed55f286468f4cca8c69c5470b0f1fcbeac45be523614d50163afeeb7d781a218ba0895d424492"
}
]
}
]
},
{
"name": "9d",
"children": [
{
"name": "d7",
"children": [
{
"name": "c9fc9c7131dde7c37d6ec8aa18da76a2bc5fabdbd57e2dcd2cbd9c5ed49bef2119a2f2152caccbdd3b0812d68eae0479a2cfdd60790d3294f3f46a3d5550"
}
]
}
]
},
{
"name": "9e",
"children": [
{
"name": "54",
"children": [
{
"name": "9af838a1a27b948f5c4f22a57eae9d9b7fde487cad9f332440830789ebe5116464775fa626993bce2473f33fe719e09652ec9f5afdcd612599861f499e1e"
}
]
}
]
},
{
"name": "9f",
"children": [
{
"name": "c6",
"children": [
{
"name": "6f8beff05ed849fa24efc4314e2129f804d6ffe679ba95e714519540ebe954b486fd7b3a7eb4b0256dc9b5416dfb85964813fc2a4cf6f58f6a3ff8af450a"
}
]
},
{
"name": "e3",
"children": [
{
"name": "acbc94af5ec5c495c357e0136ff43c45b590f393ced2a434915a74d132cbf3b6880d2ab316e56a5171ca411a6973d715c4a14f5e316db8682082baf09978"
}
]
}
]
},
{
"name": "a0",
"children": [
{
"name": "40",
"children": [
{
"name": "92b2db1296a60c048c6f01ef553a461812c91c23d4ba1c9cafbd8773f43cd6f7690e1d2d7e84241c38fc190be0d9055f30cc4982635959adaeed2fd1d6e8"
}
]
},
{
"name": "43",
"children": [
{
"name": "5a570cf5a405b05d9a844b23fd70cb1c8ad184e196a86d2e9e69b758ef280ae7cd6c8987cfe6f6dc24937a9ed9a9290063c9e51239d5af45135dc310ebc0"
}
]
},
{
"name": "60",
"children": [
{
"name": "7e53196059c810920c28f067041b07a6a1316ddc520ef5a6da6c199a1b05c8a01299f864f2d293f5f396de1a0ecb96287f3521d25765c0b35967ce7a1c4a"
}
]
},
{
"name": "80",
"children": [
{
"name": "0e4ea808a3bab610ec1b85bf146a561e3ccbd8a0879163660a9ed7691505cda2c4aedef2eb9e21a0987f4e2acfea0247e88f9a01de57bfee620d5b52c27f"
}
]
},
{
"name": "fb",
"children": [
{
"name": "53338a1eacbf945e6c7ef77cad65537cd91ae563fc0f515f08783c45af32235ce2c5d6937e12628f2dbb9bbca1d3d870b6d315ec0801f667e08a57a3b3fe"
}
]
}
]
},
{
"name": "a1",
"children": [
{
"name": "40",
"children": [
{
"name": "5b433420da7939abdff0ea66bbc9371e0fe384fb875e3c4ba476a2e8e07be7006d8e4ad1a15e67ce3a90ae1603c4338aed185ec871273ab42ac17d2c2c66"
}
]
}
]
},
{
"name": "a2",
"children": [
{
"name": "dd",
"children": [
{
"name": "169d74bd7e076480871e3dee911cd935580f3e9ae3dae9c4a3791dd5f0adbbabd041d6b4c4dd1d69ec7bf4cf567201cf2ce95beff0323259febcd4c02dd3"
}
]
}
]
},
{
"name": "a4",
"children": [
{
"name": "04",
"children": [
{
"name": "0af476a513ce104a6e0fa3712658864f7771678e44a156488c973d62962816624590ef01d87753c5fd3ed06794d5483eae493a27e6005531233825f055f8"
}
]
}
]
},
{
"name": "a5",
"children": [
{
"name": "17",
"children": [
{
"name": "1937c00034e5f5bda03151054899d918117b9b333f59b947d51e67ae5569cf893b44ba891b7b713833752b86f294a21728cc4c53147498eb3d34146f3616"
}
]
},
{
"name": "66",
"children": [
{
"name": "d424b7444d503c95034979c331a177c7eb1fa63b6510a3cad2999f90ab171bc80de17dea6b160213fff1d6da79470a159e2083304b616afa010046485392"
}
]
}
]
},
{
"name": "a6",
"children": [
{
"name": "7f",
"children": [
{
"name": "7d561a0009847c9c51e1c6a8b1faebec6d78a77806ac5a6e688d7a0df311302b929ddff4eb84d9f5c01cae0f9d94c5644bcbca6efa444c9e2122e84abd66"
}
]
},
{
"name": "8c",
"children": [
{
"name": "8b4234d35bd01c5c4d31ad74797f46b22d9873cc5bb5933a5ed17082bea1074b1fdb37ba57184f79cc13722a033b3da889d0b0d9506a1ed5790b25fad410"
}
]
}
]
},
{
"name": "a7",
"children": [
{
"name": "13",
"children": [
{
"name": "dcbf501ccc3e2fb28ec6e19dd329cbe5c4aee0ed336ddff14d18c85fab29eda1cbd82a3f8609ab5f8a01838db2e8cc2e1b6a0b89d117828a0a032576f46a"
}
]
}
]
},
{
"name": "a8",
"children": [
{
"name": "c9",
"children": [
{
"name": "52c4a6e946502b89d0c4c64f769d2a1bc837693e28d4ab60d6ea80e752a77488e1b19908f2aa13088a123dfb3bf82cfc997518ded9c6af58f6c26d69b778"
}
]
}
]
},
{
"name": "a9",
"children": [
{
"name": "2b",
"children": [
{
"name": "3889fc33289495dfdb9c363b2f73a5951ece9bed2d37b0e87639c1c5f541df54fa965802d4b0d515ce1481888b63459a0b1f1ee721aad58ea295bac519d5"
}
]
}
]
},
{
"name": "aa",
"children": [
{
"name": "7b",
"children": [
{
"name": "02f992947f8e73458e4896b98baa71595e6c46498fbb17f988c1717276d10fbf1d381b51f57c610d30abb24445787e7fe0cc8a843d1b6d1a504db4b677fb"
}
]
},
{
"name": "84",
"children": [
{
"name": "29ad9bf3e70405270303a9eb1e4575afdeba8cbe18296d715f5725a16f1f57e3b3ce200ea2ffe75779f12664aa0080e69375a22035232a30853ad72472cc"
}
]
},
{
"name": "c6",
"children": [
{
"name": "85fbd41c9b642ff1244830cb1c02f1b83b7949d05d46b8ca391d1fc1a74d8ba293609d9042fc491b7af1c5786b3896cfe83f3f6ff81b26cdb91b7bed1d53"
}
]
}
]
},
{
"name": "ab",
"children": [
{
"name": "e3",
"children": [
{
"name": "5488591582d602b1f0d9b69e808ef073f23f3733e3f375d71f588c910949a0d55f5edcd61d24cff9749c96ce8920b71da589ae90f583856d257a1d6931e1"
}
]
},
{
"name": "e7",
"children": [
{
"name": "4faf17cacddcb42000856d40a496f9ae5d19bfc0d19154c0cf7918af79dca2789f520a90f68ae64619fb5e67f6bb0f439d6ce4c1b1c60cac272400523fe9"
}
]
},
{
"name": "f1",
"children": [
{
"name": "bcf3fd2565d1ab8683a9032c93d40ec69a153b22996cbadeb44a7ac084ca56c72c1688ebd5e0f823a0d8b7ee13cb9ecbdc0f6618585e61c24f3929cb48ea"
}
]
}
]
},
{
"name": "ac",
"children": [
{
"name": "98",
"children": [
{
"name": "134279149c7d6c170f324fa552537cc3dec5a6bbab19848b1e63c557f8646edcfe85ec5bbe24d0e85df9251256cb2529dcdc55101d57b8714e618fe05c52"
}
]
},
{
"name": "b6",
"children": [
{
"name": "53a37710371c162ac4ca13aedf81df481e30b3ebdb24c09d0025a1aef639d6056aa0f8963c870629fb4e035c8bd155c51f5e05bbae2521c9675078542f25"
}
]
}
]
},
{
"name": "af",
"children": [
{
"name": "35",
"children": [
{
"name": "323d4fd2eebc147e53322dcd444c37818f4351b8728a01cbee928cf086c86bea0e9ce5df338787368108d8d9b6747577862d67353c5d7be0fdad56f2a17e"
}
]
}
]
},
{
"name": "b0",
"children": [
{
"name": "7e",
"children": [
{
"name": "7c44d8921041e60ee894ddc9ddd30244be0c37f82bae2bdf246868cebc7fc08d5800f7a0f5d2ddeb0c96c2654684de6a5cd00a9564ff5d8442db546ce442"
}
]
}
]
},
{
"name": "b4",
"children": [
{
"name": "86",
"children": [
{
"name": "d8b596ee70eb340511aa3c992c84951874bf920c7edd54cf208f2f84469dd60148cb105244fb4da46a7c87b708d63a7c2b298062c0098cd29e242c90275e"
}
]
},
{
"name": "fe",
"children": [
{
"name": "acbe0f587d56db50d497b10fa9ddea2ac79c2ed3a44f6d46552668105fc103f76d21507ff790fdb55da7b320e329710db5de2c4155d7098a62e1c7fa8f56"
}
]
}
]
},
{
"name": "b5",
"children": [
{
"name": "34",
"children": [
{
"name": "e2ba440f764592758361b099103b981fbd0e7211b354d5ca8debed4e5df4c9172616428d61784614d00bcf8ddf89604db8afadfda7234737fc98cbbfa1e0"
}
]
},
{
"name": "36",
"children": [
{
"name": "895ff723cbf7e32002fc33ec1cb53f254849782e1ff290ab98547bed5297aec468ddfc120a6d8edf0aba79ac48ccc7b5b9301a26409679494ab646f8c084"
}
]
},
{
"name": "3b",
"children": [
{
"name": "258e1d7b681963195b06641f1e991823ef7be7d647b1c3b6128e5706bb74a80b44966dc5d75931103d6d38bee297cad2f8b3852febcf39e10bfb6358e265"
}
]
},
{
"name": "de",
"children": [
{
"name": "30e4ffbfeec05a7abd721439cf1d0673ec9d15e99dec721d0059e32e59e89dfe7afe62f6629758811d38974745f5373605404f850f2689c3b2831e7c0fb4"
}
]
}
]
},
{
"name": "b6",
"children": [
{
"name": "ac",
"children": [
{
"name": "7f4ce148e6e976241ef9e514986797dcac5733bdac64d938635e6ac19ddd81f3f5c94a33844c434772883ebceab1d451d08a407c51556b6a9c010fd31b8a"
}
]
}
]
},
{
"name": "b7",
"children": [
{
"name": "e3",
"children": [
{
"name": "42f56e4c94bbc657f57d327014244e3521fd70a32546f7892ed13c4ebd956521c8bb2b9596bf685274db71755807523b05a86f0ef6b98feced647f357b2e"
}
]
}
]
},
{
"name": "b8",
"children": [
{
"name": "ea",
"children": [
{
"name": "1151f62bef3a0b05a88c1c7040bf45f1c8b5cb35821a3da482c45d42c38e9fb2797e04ff02ecc5ff5ff30daaf427d0a20a6c6d02eee007f9e632b37b981f"
}
]
},
{
"name": "f4",
"children": [
{
"name": "29fa74fee77c7761103051cad3cd1731cd93a6735dff495bbae0af5a12128ca345a077a3c5ab8e93d07e2945f99c65275c709cb5f1be8a6f4cd4f09d9957"
}
]
}
]
},
{
"name": "b9",
"children": [
{
"name": "85",
"children": [
{
"name": "091c68ce6decd139e5ae943b796ee82d3c45c7a201aaabbff93b5ddbf48f99629667c1655d576c17ca17c0a10f30b80406ff18ef630ec239be37b114a9e6"
}
]
},
{
"name": "94",
"children": [
{
"name": "b9b217f1ccedeb1a5bb4702ddb8e63052ac5eff9299965c829d0a0f6dadb38b865e9e445581b3bbfd1877065e2a675d85c01c718b511092a43df5e466e0a"
}
]
},
{
"name": "d8",
"children": [
{
"name": "2c018f9f4e7befee423b69ac5bab058d6f4007881d2a04ef3d3d928f9284e618e81d6eb1c3283fb40765f8b937c9fc54f5474f6bf604ec8d48cd268b6ea2"
}
]
},
{
"name": "f1",
"children": [
{
"name": "5dd978bdd8e0153d8b32f8fe27eff53b7baf1f7b1d3e11ef20486f4a5fb7a8d3ce025a2438b1dc64b6f765d1b38fba95ed5493d8d7dce4e84c16a9443c96"
}
]
}
]
},
{
"name": "bc",
"children": [
{
"name": "3f",
"children": [
{
"name": "c147a8453aa61aa083cf7acfd811448a7ba241e2e3c0bd36c59a181b82fc229c7fcc30ac1f10f7d8e622cc7db59fbc9c472a1b0f55f26d56e46b7dcf4618"
}
]
},
{
"name": "c0",
"children": [
{
"name": "874629b04aabfa5c4d7d96a82e87245c1bdc99d6b3d6ec3b8d96afbffb336850563c0428fc9a3ec4fbfad7d4619ea31c4d90da4b9aa9fc6f643d4a0f7274"
}
]
}
]
},
{
"name": "bd",
"children": [
{
"name": "65",
"children": [
{
"name": "a58b45b2c6abcb96bdbc1d5d4ecb2d40b2d95ca3a61009ed7e179da39dfed074882f6af1256d9bce635058963ac000c020d5e872262ad7ac384188350177"
}
]
}
]
},
{
"name": "be",
"children": [
{
"name": "ad",
"children": [
{
"name": "b806adf29b91c4426d8d282af7c970f08dceef4ec1138510e7929d832bda75baa2d1f831eeae6fcd393a34286ec760753b7a9a4a663dcccaa62e3017fada"
}
]
}
]
},
{
"name": "bf",
"children": [
{
"name": "bb",
"children": [
{
"name": "baf90981fa2b975c0868d47d560f4dd554e3d808568dba91b0f3d4851cf46df6c1aafe6f70b424d7f3853f2aa2c54d5543c2e4ee8e35e414fe63fb45d15c"
}
]
}
]
},
{
"name": "c0",
"children": [
{
"name": "ac",
"children": [
{
"name": "fba7375431edc0c9a879350d126605c61a3c2c105d543fc01bbb71d32a348d4324b4387150486e9e72d5b7e113b752a6327791a2404d845b34303f161a90"
}
]
}
]
},
{
"name": "c1",
"children": [
{
"name": "1f",
"children": [
{
"name": "d72b70f75dc2c8670a5bbd0c10e5f2bef1891db358a9ec0d93c5ed32c6771749dab52fdb24706edb95c79d90e5fe65c83118098b5f516b4466c00f0ce2d3"
}
]
}
]
},
{
"name": "c3",
"children": [
{
"name": "3a",
"children": [
{
"name": "f806b4c8578bda3f3ce06d1c12ef2df4d91311fd3d36fb10ba45f4b123fb75c083eec386901048add037fd89922ca8a2da0e3cc4cc4809d4b93689caecb0"
}
]
}
]
},
{
"name": "c5",
"children": [
{
"name": "c7",
"children": [
{
"name": "87dac9e1b5be4cf658aa0ec984c39ea57b7efa993664117fe311bfd1c4d1727a036e97b78db250973fd1438ff2dcbb45fc284c8c71e3f69eda5a1eb0c454"
}
]
},
{
"name": "e9",
"children": [
{
"name": "526b21c7dfa66013b6568658bba56df884d6cd97c3a3bf92959a4243e2105d0f7b61f137e4f6f61ab0b33e99758e6611648197f184b4a7af046be1e9524a"
}
]
}
]
},
{
"name": "c6",
"children": [
{
"name": "16",
"children": [
{
"name": "f838af44afbf84ba69d5a6e5c60326ac6cbb55e18cb8b6dbc71058a2e4d81e6e602331044be1d7a44588bb88cb64f2ed061e648e0a8e31d5dd6e1ff36c13"
}
]
}
]
},
{
"name": "c7",
"children": [
{
"name": "80",
"children": [
{
"name": "361acaae2d4b9c0fe519169cbcd0824d869301f9e27ce0cdf09e941f4f75da8f899a54146552de9a9d081331fefde3103823f02a244fa84f1eaf51cc0e4e"
}
]
}
]
},
{
"name": "c8",
"children": [
{
"name": "1b",
"children": [
{
"name": "00e4a64ee21ed73fe17ae8c2b6d92c7db940f44f555ab9594a1bb7aab8bbd304f1f01e4a0a715b6be4891dbda5daab8a4044408bf0045fc366186b4e5017"
}
]
}
]
},
{
"name": "c9",
"children": [
{
"name": "06",
"children": [
{
"name": "d780efce499543d88b222e5ae8fbb1dfe90d7c109aca484b1da0ccca78f29772dde0bc3f282dc390748cc6ba9af9163f840def203bf9717350737cca71bc"
}
]
}
]
},
{
"name": "ca",
"children": [
{
"name": "4d",
"children": [
{
"name": "25fd84ab3a71599375113a90cb403f7e902d65e2678aff079de7cdc05ebce86ab30625c6d18b643845a5186cac5802c67cb1699a49afc3b0b99d05e235bd"
}
]
}
]
},
{
"name": "cb",
"children": [
{
"name": "d1",
"children": [
{
"name": "50f94d0dbe3e2ab2380afc3b8247cf1007037d7ee747f261fe5976e622b87f7f52c7753d72b0b6cc429068ae33695541963a47420d5178a2dd6d356fb495"
}
]
}
]
},
{
"name": "cc",
"children": [
{
"name": "46",
"children": [
{
"name": "6ba026ee26c6384fccd07894654a2ed13eeccc7815524b266d08259a808d4cb44c1e07cbcb3153e9f4dd61c18e9f1bb5e2ff67764b443a81480d64054b3e"
}
]
},
{
"name": "4b",
"children": [
{
"name": "3fb9f999a1477b59fb4aa4ac97693e91171a50e509bdc72b4a447bc97f1155f43149919a61f51bc9d4b70e522d19d595628ccb5eeb925b20b795fbc41010"
}
]
}
]
},
{
"name": "cd",
"children": [
{
"name": "bc",
"children": [
{
"name": "284ec06bb9378a07d852abbde16baea215e247b9a16451bc2fa84967ca0a0d6e3fe31d1b127a8928c1914ddc267ae08bc4a9c9a69157bcf4e3d773b95d03"
}
]
},
{
"name": "c3",
"children": [
{
"name": "935c8a0b099f66788ad58b98c23ca21bd445c1aa547b325662f52098acea32225ef08f2baf5751766267d4796827d2ba34e8602e24f4e7e0e8cc7f1a32b0"
}
]
}
]
},
{
"name": "ce",
"children": [
{
"name": "0f",
"children": [
{
"name": "dc85b5f2781b4c4352db0ff592a16d83a42dc8d26a663dd5beca74538ffc760c0598ac863ba9e6481e2768cf0576e26e226afaf5e653702302f14663b184"
}
]
},
{
"name": "64",
"children": [
{
"name": "8a127e79b1f2e8deb749446c7b869dd27e9370e889f8b17a80da3b580aa36442c93f594fb3c11560a0f51741212ba412d4c5808797fc8fcb07c8d6f9b774"
}
]
},
{
"name": "f3",
"children": [
{
"name": "9c9f2062d79a946acca8da6dcf41dd6f8cb0a6e287f8d60331cc61f5a51b681600e30fd763ab0efc09028f977112cfeeb02721c080d6e3d882be5e0e9f1a"
}
]
}
]
},
{
"name": "cf",
"children": [
{
"name": "02",
"children": [
{
"name": "1230304cf34a926f9f512658684c9c26ac67ca911c128ec41877da6b19cf363db7559de340560b3825ae1b232a36420dc42ed89f2a4e2b84e54d8a4c8b59"
}
]
},
{
"name": "33",
"children": [
{
"name": "51f9275048327373c8e869e3fc410a0242bf0db98c76748232b65d507811191c9f6e5ba85e6ecad881bcfc849c1441aa374d608cb667d5f0dbb5b7038b03"
}
]
},
{
"name": "51",
"children": [
{
"name": "c629c632db103c00641fc2b9f43c0cbe3c1ed7fc64a3dd45495bda8aca7e37c566be825e675e6538aaa2cc4735952c50bc2aeb145fc4ffd240a2398a4021"
}
]
},
{
"name": "95",
"children": [
{
"name": "5854a9368a878e408af6e88e3f93ce9de1cefe46569c7803a418065cd987bfdd5b6294a86f9b2cd013d0637dda8bf8f641eaa5f142dcce4b10db47f200ee"
}
]
},
{
"name": "cd",
"children": [
{
"name": "4634eee79d830486b1a1f4b7b29a8138f98af45a7e4c70721930ae5c7d00a5f8d0d7d3cb0266051cf7fe8c1e78bd216b852e6d59dc74c25eedb3f5f37ad9"
}
]
},
{
"name": "f9",
"children": [
{
"name": "599fb24971c494e2f0739d452ab9a12197e8a80e65865e8445563c6eb685440e99fe783d2cc38b0f1326f7894c2aa59b370d7dde6fb56b58f0b16aacdcf6"
}
]
}
]
},
{
"name": "d1",
"children": [
{
"name": "55",
"children": [
{
"name": "2881287de44bfa14f9fc54c1e104362a5835ee0e5e01f5b64111d353eea143ed6f9f4ee1d27385adc40deaa7d25caf31e28296f72a4701696397c8c6a93b"
}
]
}
]
},
{
"name": "d2",
"children": [
{
"name": "7e",
"children": [
{
"name": "5058325cf1225a09e6b56c27cf830d7b4d547194a63bfc540476977d70f2ca83317383ad5fed7372f7e5b2806b3d875b73f6f645414ea091647d5a14f63e"
}
]
}
]
},
{
"name": "d3",
"children": [
{
"name": "a6",
"children": [
{
"name": "c922d39566344edb3cd71649af92071bb12ca21ea36208113ea9637af03b9cd83798ca1777735e15294093c2a60a23b0c198d9d91ca374910d70ee53b759"
}
]
}
]
},
{
"name": "d4",
"children": [
{
"name": "d3",
"children": [
{
"name": "42b3abaeadf9156de5c6e12f09153f6dd7d9b8e480a789ff3358b779a0f499e74427c0c7caf87de3bf8d3c7788f0ffb06db6fe5ac52e48887a0b69534779"
}
]
}
]
},
{
"name": "d5",
"children": [
{
"name": "7d",
"children": [
{
"name": "4d4ed889a61af29ffb8b433df086d63a8caddf4eaa04de884ab34b53f948ebd56e7da28a719a8121ecbbb9a7abc168f6e0a0cd1bcef7805b8422e51c960d"
}
]
}
]
},
{
"name": "d9",
"children": [
{
"name": "72",
"children": [
{
"name": "d2243de8df155e9c9e8410ac386e3e8df3b5117ae3672b715c7ec36b9e5f7f05018b71e9a9b60ef47455324c6d29bd70e6ca7de759036c131ad81c11d947"
}
]
}
]
},
{
"name": "da",
"children": [
{
"name": "03",
"children": [
{
"name": "9938036b55a81602b171328351a29ccd0109c3d6fee523df9ba51ae423b5f17887e6fa63c2f75044062332db9bb088984b710f99502cf374463216052d79"
}
]
},
{
"name": "49",
"children": [
{
"name": "2dffb9e227a32010fc45d1b61d43a7ad65a03e7d0bc370b29c921cb5c8840ecdaa0a8c10634a3eb7fda2d58d8137aa146de5dbccfae5327c283a50a0816c"
},
{
"name": "f006852f244422a73435c62bc4da922790e1c27dbaf911bc559867075b5e7085a55097d1d1120df34d902467afb7f7a3f71d31bcd0335f52e6154271586a"
}
]
},
{
"name": "ac",
"children": [
{
"name": "fe0a4abee9af72131564de91a4b474ea6647cdf1a2f43fa32331d4dd8bd9800d2805373726d9b2c888f2daf9f5619b0116ea701b0fa57fbfdbb805cf2bf0"
}
]
}
]
},
{
"name": "dd",
"children": [
{
"name": "b6",
"children": [
{
"name": "2cd6b383df7ba8f1aa897ca3f72563c089b830f199b6f8bf6f04a107276460faf89347ba39326bf999972278df854586803965f94890135fa9353d6cfbda"
}
]
}
]
},
{
"name": "de",
"children": [
{
"name": "13",
"children": [
{
"name": "7b35ab2462f3032d0639e609d6dcd43e99eb0401ea53aa583e5446e3ef3cea10c055361cdc19861ea85a3f4e5633e9e42215ca751dcb0264efa71a04bcce"
}
]
},
{
"name": "87",
"children": [
{
"name": "e9f8b2fc13ea4afc9b8f2cf82054021a12e86f233e2a35c7f79c0d579f6a3fedf6fbb3f4d8a47870183bf5654dcf90196e515685f0fc821dc9b8f1c28b59"
}
]
},
{
"name": "a4",
"children": [
{
"name": "fff3c63715b1ff2b1e2cce9410e07cd46d5ac73ca4cb56956870a88b7e862fc3d5d218e5f61660f677a0eb5db558c804131761de17a332f239b3c7bfc247"
}
]
}
]
},
{
"name": "df",
"children": [
{
"name": "22",
"children": [
{
"name": "c3ef0ae9520adc3f827c2a11f3bbcbf7056a9068699ebd049028e62d9cc2d3e9463b776b1bb928b8f8fd5bfa0fa9bf18262e3eddbe6076f3b1111140facc"
}
]
},
{
"name": "9a",
"children": [
{
"name": "cc8e87bf107a5335b15d9eaea4f26523675b0305a6d48e35b34b208f03d8e0047360ddb343b88f0ba21ddd65c70dfe032fb8b783572f5b0aebfa0f26c4ac"
}
]
},
{
"name": "e0",
"children": [
{
"name": "7710b228f7c63fd3c30d9187729b177eae554fd39f7dea542498f86931e2099d706a62aa82d4cbfc97000c22d6d44fea87427fbadd521f89130cc1fdcae0"
}
]
}
]
},
{
"name": "e0",
"children": [
{
"name": "04",
"children": [
{
"name": "9bbc07729e9e520c9e6e72158d3ac93f29933f51fde3eb8ed4f91a5db0f71c2edf7ff2d01d9ccd7cc29604a1411d20828e19f87ffd8ea8878d551a184323"
}
]
},
{
"name": "73",
"children": [
{
"name": "e242bd17efec1a1dfc973d9a563df58bfc9edd70dd66c7d80be9675054c6cf9c5dfe66148cb3cb42c4dee81dd74913d7e1344efe9717679727a629f251b8"
}
]
},
{
"name": "c3",
"children": [
{
"name": "e4665942c13cc8dd96ce3f8c8f890f51689c3a0f0e3b99ac0915149c595d724931234b9ab0988da51736932bcd30bdf3f2320ac5396bcfa0311f6423b9e4"
}
]
}
]
},
{
"name": "e1",
"children": [
{
"name": "84",
"children": [
{
"name": "81356b24c4fa5f96b56932cb7a5ecc772635da9caceb89f7da5f71f304044a389cbef79ba713dd5652358de3d27bd229a5ffb999fc1f0f0982a83b4343cb"
}
]
}
]
},
{
"name": "e2",
"children": [
{
"name": "01",
"children": [
{
"name": "03961543459a8fe14f32b6554dda3293aef5bc5beeb89eb68892b284a11ba5a8eaf9521f1ff4c37330234219ad480f53a503b188e20061753e7f8256819e"
}
]
},
{
"name": "1b",
"children": [
{
"name": "e85f3bec2aa4e54c1e6b633f1bfc3d38b9685c6f5df950cda6108ea3e114bdc726b524ebb273d34bf47016d688ff5ae33d02dd145ea9efadd424b9ac4628"
}
]
},
{
"name": "9b",
"children": [
{
"name": "6da5f8d36fb819e92c7856576e63bcce078c0d8546b3305c7b2a2150de5964b1b796256789f1c943d1094350cc6963ea51a88dd90af9ffe3aa01b0d7c54b"
}
]
}
]
},
{
"name": "e3",
"children": [
{
"name": "50",
"children": [
{
"name": "a27e483a7bc4f2952a5db53a5e2d532abd20445734edb47bc4443ef8d7ea6767c00dbf4d34e0c44be3740a3c394af5c1af369e8d6566540656c65d8c719e"
}
]
},
{
"name": "cc",
"children": [
{
"name": "52ae2658620fbca979daf64c2a8c8573b90c62f8a616a76fb99c262760a3d3af42ef0fcf49aa4d8eaf9a20c73d0d50c7c88e1876948517fcbc97f41e2822"
}
]
}
]
},
{
"name": "e5",
"children": [
{
"name": "0a",
"children": [
{
"name": "ce3533972dbab5b6d62c6f31c71a1cb87385f83bb32a303d2bf5c44d0255c79bf1ce923d746e8e5ab43d58821c7605f45b4c7d3641ae8c2158b6f886433e"
}
]
}
]
},
{
"name": "e6",
"children": [
{
"name": "5e",
"children": [
{
"name": "15c9947ce8b67f943c594d1ea3a8bf00144d92d0814b30fdba01b8ec2d5003c4776107f734194b07fb2dfd51f0a2dddcf3f0e950b8f9a768938ca031d004"
}
]
}
]
},
{
"name": "e7",
"children": [
{
"name": "a8",
"children": [
{
"name": "620093e1c10d51e22fb6d45545ed5f24483e73653747715b9114c5b4867ef9def55f40df31971e2e38f4f8c68187d19fe85404ee47cd808aa4930c8a5a1e"
}
]
}
]
},
{
"name": "e8",
"children": [
{
"name": "08",
"children": [
{
"name": "4eb96e5adbfd57ab602779b915c5f062db5e6dcd10993512dcfd1250158e29698d7ec91e6fc161f6a04efff3f18db3551995f1f2b709fefca6617b03652b"
}
]
},
{
"name": "59",
"children": [
{
"name": "73b9b4cb646dc9d9afcd542025784863ceae68c601f268253dc985ef70bb2fa1568726afece715c8ebf5d73fab73ed1f7100eb479d23bfb57b45dd645394"
}
]
},
{
"name": "65",
"children": [
{
"name": "4f99a022ff92b498c0f60c4bd1db9285891a1c3fc118064d3940017af8930efa6067179c58de435422d8bf2f60a312385afd9d249d8ef7e73e12d915034e"
}
]
}
]
},
{
"name": "e9",
"children": [
{
"name": "4c",
"children": [
{
"name": "e40acf9e8c6759e661450bf38252bbf4dbc69bd9fa75ce76660998c03812a204ada35c3d4ef813d27d7f17daa8c9ef97d904c4a7427dd1ab69ab0492b69b"
}
]
},
{
"name": "e6",
"children": [
{
"name": "6ce4bb375ad0a2b075a9f52d86532f1daa4a468b80554b3dc66aa884e9ecee6f4e75d844b3b57530501e82e8829b4246363e76ff983e166288c24707302c"
}
]
},
{
"name": "f6",
"children": [
{
"name": "e208747e75681e294b250a06ac619e7224f863553cbaef98bac47fdb1624dc59388bcae0a600444dec0561018f0667af69e96d845a2c5f169580df686cff"
}
]
}
]
},
{
"name": "ea",
"children": [
{
"name": "6c",
"children": [
{
"name": "30941b032ed07590b29cf439dea95800b33d18a902e0c54ffcc41846508059ae05b4f5403b8ddb2960de2d0887d8c098b8d148bcdd5db908ec8b5f72a7cb"
}
]
},
{
"name": "7f",
"children": [
{
"name": "2448580239caaee38bdf160c8a574ffda756d4f2e022f23375a5898abd51f742d48e07333868224f4b3bd02dc41122d4939849a463f3a73e75d24b95523b"
}
]
}
]
},
{
"name": "eb",
"children": [
{
"name": "93",
"children": [
{
"name": "fb8b3e97e7212bd5cc1c82f4316db230ed493780ecb974876d678ac3bde2ea86b7493fe2e2fc7c7ab722b43446fed860b29de08c2621aaac00c248d93cb1"
}
]
},
{
"name": "ba",
"children": [
{
"name": "1714062bd9c0cb0d518b5d3100063741259e9dac4954488ed62a9ef436ba72212b28de9946f52006105eb2ef36e16bfc0ecd40725964c9bc40d534850670"
}
]
}
]
},
{
"name": "ec",
"children": [
{
"name": "ca",
"children": [
{
"name": "6d2fc53472a705773233c0e4c7a22957f71e41acdab27bb67f2ee0bb9023118a8d44312caa44adc1100503eec5d1ab8893e00cd356e65d8604364c2bd82e"
}
]
}
]
},
{
"name": "ed",
"children": [
{
"name": "4b",
"children": [
{
"name": "e629a95646dd708232f546b1b1a12256ff44191487a0a5e1af646f648e9f2fad1bb9e574c76f09eaab61a95e6f6e2db72e8719b722a5fd381e0c651d5bd8"
}
]
},
{
"name": "54",
"children": [
{
"name": "f5ddf9a3a2d2a91a2a425bd244400bac10f13e122f2797afe0e050409889b418e38b32e6bd3430e8fc35a9d190310abddc3eae59a41aa63c04200dd6b63f"
}
]
},
{
"name": "71",
"children": [
{
"name": "cdc47eea5fdc46e66230c6486e993a31fcc21135c3a00ebc56b0cb76a40af6dd61e9e8cad194dec50521690a9afea153b417be38894811f369c931f1b648"
}
]
},
{
"name": "84",
"children": [
{
"name": "ecadd251b38f2393ae4b84885168cea9b76a3c252486852767af57f49369ab8f2994369999a1cee0061375c68dbb9a728957298a32962ea3fdef1aae5bdc"
}
]
},
{
"name": "ab",
"children": [
{
"name": "0d9f14c9b0619c392355ebc53ae344f847729a2e185063a2f93835784dac3039d0f50704d224cb074cf8d49e1d0ab85034ac3a75270f01bccb0d74dfca76"
}
]
}
]
},
{
"name": "ee",
"children": [
{
"name": "90",
"children": [
{
"name": "7ba29c527b15cc882e55d11e4c3bc5cf578482f78115fc41f9de9877d5c9fd618ec2599f321b51dcc41ef47c44091aa6e577c8c6b9cddcbcd1dd8d84414d"
}
]
}
]
},
{
"name": "ef",
"children": [
{
"name": "29",
"children": [
{
"name": "7295eb1943f3d5dbd8e110397751f8e8e995fb802a89af917b3caaea73ddefedfcd2ca6b75069c0453c9c0517b3cab3cefaa16e384ae50660e8cb7f1e406"
}
]
}
]
},
{
"name": "f0",
"children": [
{
"name": "fb",
"children": [
{
"name": "dc5dfef48130d9060b7da6dc49f1e9417818dc2ce01c3ada0efe63c98ed8e2d7e09d19b1e09bbee89b51abb0fc6c884fae5c8a4d48aeb8518688c105dde1"
}
]
}
]
},
{
"name": "f2",
"children": [
{
"name": "0e",
"children": [
{
"name": "fa92afff0d4f62a5ae03e286de1d1c48007a3e0c46bd0a557735ed6a3151c5382f0ac133ca8f3f331278e3f224baaf10c43e9dbb42f68f07554a4bf818af"
}
]
},
{
"name": "4f",
"children": [
{
"name": "5947c7574d1d1db19d7d35783fde81bb8ee6747c02213808e3abdd8343ba9153a677d331130764af630efeae3e2cc91061868743ef701047bd627af7c191"
}
]
},
{
"name": "5d",
"children": [
{
"name": "5a391dc582dac47a260541cc1b4b5912e2116b6dacac508d8e768453269ed9744856b1bb40220f80e3c3f77557b7d25f13ccfa0772de321b8fe5f860ab7e"
}
]
},
{
"name": "ae",
"children": [
{
"name": "d51203095b827cb5c7d53f2f20d3d35c43065d6f0144aa17bf5999282338e7ff74c60f0b4e098b571b10373bcb4fce97330820e0bfe3f63f9cb4d1924e3a"
}
]
}
]
},
{
"name": "f3",
"children": [
{
"name": "29",
"children": [
{
"name": "19061ebeead410367c623f52d3995c81580140ba1249f01b83d0de12d52955751ec488d2916ada7849fc97e80fdb5ea077c4ee757a0f34d86d74f1564b55"
}
]
}
]
},
{
"name": "f4",
"children": [
{
"name": "4b",
"children": [
{
"name": "e4d780c635abed3f620aa21f814277b826cff97c1af5a408934cf145b871b7bfd12e2889fb3236c3e5e287a912579ef2294573f60bd0631b3066727e851b"
}
]
},
{
"name": "d8",
"children": [
{
"name": "427988eaf7edeec6076da76d0b4a225726f37415e0ad346a49c6e3056752afddc59435be833a127052f7150b328647ae9cc389e3c0cea1ac92ea80ec1b73"
}
]
}
]
},
{
"name": "f5",
"children": [
{
"name": "00",
"children": [
{
"name": "1a399f522b639f2028e580a293e6c99a646c8623e8066a1588885727b705d6c68eceeffc8d051f2da54cc4f70e8adb8b8d18e9c2dfed9f19228e342a6709"
}
]
},
{
"name": "0b",
"children": [
{
"name": "6ce246c56de6ff13df28927b994cd0c0ebdda1ac6b48037f2a726e3dea4e8ed20caf2013c144c9cc564fd1b03360fedbc07c01fd39ac1dc026d0da6076f2"
}
]
}
]
},
{
"name": "f8",
"children": [
{
"name": "2e",
"children": [
{
"name": "5e7a1a14b2f69aa2fd47558ecc4ba99228179ed5680772749efb85da02f736f70a069785bc2bd59f37a88c48acc8e9f70b078cd2256e6e62b355e22cf066"
}
]
},
{
"name": "79",
"children": [
{
"name": "72b728e53ca9c81bc5ee446f16be604ff31b3c3fbd72f9228a4ba6575a81202ee78fc6d0e8504887ed691d78f5ab439241a44e9aa15a9f65f2544248d7c0"
}
]
},
{
"name": "c8",
"children": [
{
"name": "69e9fe339688138e358b94506723d8f32906b44b85a21784a04c959de59142ae84178af79862d7a5b322bbc58efbb88139cb1eea8c536f33e27646cc39a4"
}
]
}
]
},
{
"name": "f9",
"children": [
{
"name": "6e",
"children": [
{
"name": "9c21291715ad635ec0c475803c1de7af413fc550b871cd1f7da71a6196d65c55aba0a6ce774c709e89603c4a0bb1c694a9de028f8ae61f496a2990b43887"
}
]
}
]
},
{
"name": "fb",
"children": [
{
"name": "ca",
"children": [
{
"name": "2f552916ba7548a39fc87ddb7ddecb4f58408b2e3cfee63c6b256be164bf40c5245d799269512d2650f028ad83a0970d4dcb87d4612f1b9d379408956292"
}
]
}
]
},
{
"name": "fc",
"children": [
{
"name": "cc",
"children": [
{
"name": "2b4a058cdaf75b3dad8ffb7f2072d0d69160ad6b6cdddabfd348d4defb96799baa61adc2ad9c254944e9c3286516534e61c34ffd2bc242537aa40b056d5a"
}
]
}
]
},
{
"name": "fd",
"children": [
{
"name": "06",
"children": [
{
"name": "26e173d7ea99bbbd2d4741385d378f38a5c551b00fd446af915b0ae8918cd8010624d475052a6d9f01c221cefaeea0f9b102f3b87042eedb9b3a43e1e422"
}
]
},
{
"name": "2e",
"children": [
{
"name": "2d3b0e50bb2d3cb74973d743ee5c47cae667d53477145ed4e94d09e7df4d07e92f724515d487a5a15a274d9dee161e21d23e8e42179a69eb0e72966c8274"
}
]
},
{
"name": "36",
"children": [
{
"name": "ff25c8cad75d67352706a1be4c36db27b4d3356823540e2a41fd39306458720ebac4e3b48ec7fd7cc05d9b6e381cdd9cc248a5b54f99ede446c5a00cff56"
}
]
}
]
},
{
"name": "fe",
"children": [
{
"name": "29",
"children": [
{
"name": "8a346e046d636b563a0d0bfd47e7ff46172fadaa31811c2692b0df8fd919cfaa3b0b9afe940f7123f8a8fc9c159a440c3293b90ae5951cf8e11ab674d1dc"
}
]
},
{
"name": "c3",
"children": [
{
"name": "3774ed853b35e3290849ba8d10d7bdf07f628ea3cb7823cbc7cba945f69a14a7b6ca4f4fcd1c4f1f3d7db73f07e19f291faa70b6c51c4e9d5c395ee18868"
}
]
},
{
"name": "f9",
"children": [
{
"name": "45280a07e4282ddc87be24b8516f03ac09078f001894ded2757a01afc90fb7dd1fef730336665d9047f2f38ec05e22d3edde84955daa67fa6e27403be9cf"
}
]
}
]
},
{
"name": "ff",
"children": [
{
"name": "09",
"children": [
{
"name": "6dfa9938771c84b30d967ff0d62482fedf2f893204f44ffa36e42d9ae8a38b59271dd67e79396c125780422ba21bebe1c1e65f3073954eeadb2d612de0ce"
}
]
},
{
"name": "db",
"children": [
{
"name": "6dfda814955cc11f27ecf0d7a105ef52ec40e092cbc431efbb88e6b8557136cce2fd5033dc7401893ad97be40a337e2a2f14a4fa30128996cabf9617137a"
}
]
}
]
}
]
}
]
},
{
"name": "index-v5",
"children": [
{
"name": "00",
"children": [
{
"name": "31",
"children": [
{
"name": "282a52d7ff98e5c2b63589e7ac3942da557cb7fbf6b14be414452ca7de4d"
}
]
},
{
"name": "53",
"children": [
{
"name": "2dbce8c065ed8006a4d96fcd6114cb1f6706c2a530478e3248bda6b0e47d"
}
]
}
]
},
{
"name": "01",
"children": [
{
"name": "7a",
"children": [
{
"name": "85e57baa9d925eb439766658c7cd72d41dfbdff23d9608399d25cb93b50e"
}
]
}
]
},
{
"name": "02",
"children": [
{
"name": "f5",
"children": [
{
"name": "edc1bbb9c74c3776beb4a96bd21991b46bb40507edd7be8d7c966577dcb5"
}
]
}
]
},
{
"name": "03",
"children": [
{
"name": "58",
"children": [
{
"name": "5f01dce87163b20c9c209fd3a3a1c9bf6c3f7de4a63436be40e76d952ebf"
}
]
}
]
},
{
"name": "04",
"children": [
{
"name": "6d",
"children": [
{
"name": "f95381672ddd05bd96782dc120fa2e84ce1cd1b937b6e389235d58ac0770"
}
]
},
{
"name": "df",
"children": [
{
"name": "36a31469755822907b76124883319ec864aa60a1986ce8d69e13b5c62701"
}
]
}
]
},
{
"name": "05",
"children": [
{
"name": "e4",
"children": [
{
"name": "f8ba472d7016da583b3aac2672436fd7d343373efa8c2fe198c22c445e8d"
}
]
}
]
},
{
"name": "08",
"children": [
{
"name": "c7",
"children": [
{
"name": "1b06241dca05cc2c2e892ff340b199de6286d22ee730339e6bcad25cfadd"
}
]
}
]
},
{
"name": "0a",
"children": [
{
"name": "55",
"children": [
{
"name": "3e747a60c9ac4933f4224d153487a0ec74dc10e0e25022793c62b6471bed"
}
]
},
{
"name": "d0",
"children": [
{
"name": "656d08a513cf41cf02f0fcb0e63ba171f108175b3c711837ec0c0f93f955"
}
]
}
]
},
{
"name": "0b",
"children": [
{
"name": "1c",
"children": [
{
"name": "3bcc6456c404a43cb11190e6fdfc9ad4151f45c296a345c9c361835dfc60"
}
]
}
]
},
{
"name": "0c",
"children": [
{
"name": "1e",
"children": [
{
"name": "a5d64f78dab70fc5126321fc020afa025727825de15a8ab182dbf59fea0f"
}
]
},
{
"name": "52",
"children": [
{
"name": "cfba3106ef0da44f06a883b7b9d1fc70b8ed2a1d170599f48805f689e53c"
}
]
}
]
},
{
"name": "0d",
"children": [
{
"name": "01",
"children": [
{
"name": "58cbe482acb2f4e2b961dfc2cdd7143d35b8f091f18831fcdcf72dc7cd4f"
}
]
},
{
"name": "35",
"children": [
{
"name": "9e1f98072240b36b23bd4b0c2851d77c503e802626ed480a926932785b6c"
}
]
},
{
"name": "48",
"children": [
{
"name": "832d9044b8612eac56cbe1d84af6b7366927098d116a74d28f7313f431e9"
}
]
},
{
"name": "52",
"children": [
{
"name": "6b8ad44ca9bb6c975c8622b00d4efaa28c4737e42debb1d3197be9a82fe7"
}
]
},
{
"name": "ae",
"children": [
{
"name": "44b21c0c5ec687506fbb00f6360e277ff873fca75f53de033e105f9e52a2"
}
]
}
]
},
{
"name": "0f",
"children": [
{
"name": "5f",
"children": [
{
"name": "afa7fe05b861b368b368dc9a7bb22c72bad04e1edb574ea72b215eff47ff"
}
]
},
{
"name": "8a",
"children": [
{
"name": "d93643d8b9faeaa5f5afc23d74f4f713c4819e4ab2afbc1206d18e08609a"
}
]
}
]
},
{
"name": "11",
"children": [
{
"name": "16",
"children": [
{
"name": "7fe9c1850598d69c02dccb67b0de622b9b0ee35fa27f3bb7693ad5c23acf"
}
]
}
]
},
{
"name": "12",
"children": [
{
"name": "73",
"children": [
{
"name": "152ca9a7cea6241cb02ed66c7dd7ebaf908007c54edfb1764e5ba25f6b20"
}
]
},
{
"name": "93",
"children": [
{
"name": "daa017bbd111eac093bb524cd18bea37bb66a234b3cf1e759d406defd48d"
}
]
},
{
"name": "e6",
"children": [
{
"name": "adcab1be7b7fc14da117a64bb8a260f85ebe31592aac409bef55659ce4f9"
}
]
}
]
},
{
"name": "13",
"children": [
{
"name": "49",
"children": [
{
"name": "a3badf2b8edb4522accc539393250280c89c5322dfc5f85258a570f501cd"
}
]
}
]
},
{
"name": "14",
"children": [
{
"name": "3c",
"children": [
{
"name": "643a509cd3b8f85a6af330767ac2626211c51d9ee613acc3492f1597977d"
}
]
},
{
"name": "5c",
"children": [
{
"name": "f096fae19d8a3df86b113bbd6e3fad4b2beae9893b4410ad87d2db681270"
}
]
},
{
"name": "9e",
"children": [
{
"name": "1315ee3f6553e14cefbc6f8812d13fbc3cdf8ebeda644980e66c5da10097"
}
]
}
]
},
{
"name": "15",
"children": [
{
"name": "ce",
"children": [
{
"name": "08aa6036a1a212066bd5b6871bd6dd93ab268e284b78703f6666d78dfa71"
}
]
}
]
},
{
"name": "16",
"children": [
{
"name": "4a",
"children": [
{
"name": "7195fcc6857299c4ab7e26014a8ae6e3c396507a2c8db3da1b74b005d574"
}
]
},
{
"name": "f8",
"children": [
{
"name": "afc88d2ed6b122863f94ceee7dcf2c558d4c7ae8f63cee2c33d3dd30b1ed"
}
]
}
]
},
{
"name": "18",
"children": [
{
"name": "49",
"children": [
{
"name": "efa14cd64efefaaed173aa9f0d54328e1c85bb5897cda7cd857b3dba6b06"
}
]
},
{
"name": "93",
"children": [
{
"name": "800def84bea3b566e0d6f0ef4e39bf15173131faff0848838aa6265c79e5"
}
]
},
{
"name": "ce",
"children": [
{
"name": "55345d3cba5b3c5650abf3687718415cbc865505089a50a09e96fb8cd897"
}
]
}
]
},
{
"name": "19",
"children": [
{
"name": "20",
"children": [
{
"name": "b20b90ba8f23e761027016c98fb0c72ad10c1214434a2902c843d20775d1"
}
]
},
{
"name": "a7",
"children": [
{
"name": "c08c5902d481154f472b2c4d2433878c5e74cd459450eeff8dbd41c88fc2"
}
]
}
]
},
{
"name": "1a",
"children": [
{
"name": "ce",
"children": [
{
"name": "81074d58a77282f7dd7953388ce20d4daba16ec3d5d76a4b98af4f0c6a81"
}
]
}
]
},
{
"name": "1b",
"children": [
{
"name": "ca",
"children": [
{
"name": "1903990d1568ffe9249af69993ca9383e2a1a3834dfe05af0a3a1efa9b56"
}
]
}
]
},
{
"name": "1c",
"children": [
{
"name": "a4",
"children": [
{
"name": "c7d3cc971492220b7cec031eec035df5e60b61a4319081d0cc87870409b3"
}
]
},
{
"name": "ee",
"children": [
{
"name": "3a45f8710835b97d0996c4c7c68405acc70dd5de91ed435f2d6eb89ca8fc"
}
]
}
]
},
{
"name": "1d",
"children": [
{
"name": "7f",
"children": [
{
"name": "8a43a93225b4554bc73b154d3196bef2d4ac44970a5c1b9051743330e8ea"
}
]
},
{
"name": "f1",
"children": [
{
"name": "ce5e4168fa5f662c23cbbd558c5d82ef5e57d137e2d329fbc17126408620"
}
]
}
]
},
{
"name": "1e",
"children": [
{
"name": "59",
"children": [
{
"name": "064ac66040d7820a41b4342f9685c2ed6b4556989cc76cf89118dd265f79"
}
]
},
{
"name": "fb",
"children": [
{
"name": "97ff179f2c0848443c394cef48b13c3c0972db4d8737a8e03fbf20f262d3"
}
]
}
]
},
{
"name": "1f",
"children": [
{
"name": "57",
"children": [
{
"name": "107b944a361608c104f32d39145afe3abee74b6d327c3b6559fcc7d61612"
}
]
}
]
},
{
"name": "20",
"children": [
{
"name": "e0",
"children": [
{
"name": "40122c5cee651bb244e17448855ba7beb1ffc43ef9d58d74671626ebedb0"
}
]
},
{
"name": "fa",
"children": [
{
"name": "89c6084e54180d5831e99e233bd3850dce0fdb48f1459ac4bd73a0f25aab"
}
]
}
]
},
{
"name": "21",
"children": [
{
"name": "28",
"children": [
{
"name": "7e9adb354ff8e79cb913cb842cfaed91f3bdbba65d3ecfb903c569f2340a"
}
]
},
{
"name": "5a",
"children": [
{
"name": "0bfaac0d30b529a0a41e0661a1b8108a0ab50e90ae5b7d892ddea4745faf"
}
]
},
{
"name": "a7",
"children": [
{
"name": "bd8af8e4938b9fee217abddb09ce52db330434e323c828aeabe5bd909ae7"
}
]
}
]
},
{
"name": "22",
"children": [
{
"name": "44",
"children": [
{
"name": "cb8820da33e4b6b8281e52263db9a95652cdeadc4c913c9381b108fec502"
}
]
},
{
"name": "c5",
"children": [
{
"name": "6556db83229020f545974c0a96daa105f2aa03edd95f7f8e2235cbeecf9e"
}
]
}
]
},
{
"name": "25",
"children": [
{
"name": "2d",
"children": [
{
"name": "cb27353e382265f8f1860479d989b960c3a951132d731e6cd55a4656aece"
}
]
}
]
},
{
"name": "26",
"children": [
{
"name": "9d",
"children": [
{
"name": "4d744c4096124c332524b54afad1a147d9bba8e9764fdf5b4698abe9b193"
}
]
}
]
},
{
"name": "27",
"children": [
{
"name": "26",
"children": [
{
"name": "56d3868cdb645b2dd09110debc35e2e7b4e26d0210d08755dce2a8cd9ae8"
}
]
},
{
"name": "d0",
"children": [
{
"name": "06516043136a49ef73a5f09d3972a008d903aa138bcb00552d82fafd0f20"
}
]
}
]
},
{
"name": "28",
"children": [
{
"name": "af",
"children": [
{
"name": "3f5b8e1c4db46b2c24d0264a2bb8ab473f22a4f13707d911085e0a717fb7"
}
]
}
]
},
{
"name": "29",
"children": [
{
"name": "da",
"children": [
{
"name": "115303ea18a519131a06a54e40e89d11ac3d6417db6551daad7b909f4d80"
}
]
}
]
},
{
"name": "2a",
"children": [
{
"name": "aa",
"children": [
{
"name": "9e398ff2889c2e748d6b4b55bb3b3a4d5c4466a83ab668a34f21ec0c1e3a"
}
]
}
]
},
{
"name": "2b",
"children": [
{
"name": "4d",
"children": [
{
"name": "b06fbfafc5d420e57bca9490af47c1d3339c777468f63d6b5487e02cd292"
}
]
},
{
"name": "95",
"children": [
{
"name": "6175d0c52bdfeffd12ab31bd36d8e6fae02371b27241cf6fa76c8bdf16a3"
}
]
},
{
"name": "a4",
"children": [
{
"name": "5041c4a1b2ff1b52a6e1b0bf859ef4e62186411afad0bf31e91b55417780"
}
]
}
]
},
{
"name": "2c",
"children": [
{
"name": "18",
"children": [
{
"name": "6405a31a57b0d29ea1d422153adc9471a2386c2458bedc1b48b1fda4eb40"
}
]
},
{
"name": "24",
"children": [
{
"name": "e89f8bf36bf4f4865512579b711f7cba1f7f3a4cc4d8b133abb9793b0ea9"
}
]
},
{
"name": "e7",
"children": [
{
"name": "6ebf7d8800a5b86530fd09b2f6e26da674d138a7f0e94f42b9be2ecc547a"
}
]
}
]
},
{
"name": "2f",
"children": [
{
"name": "a9",
"children": [
{
"name": "f0648b9edd6ef81c60299729ac5731b842466f730807d4d69fa10e6ba9ac"
}
]
},
{
"name": "d6",
"children": [
{
"name": "983b2a8f75359a5ef5034843700932f77eecd10a41efecd6be51e99c606e"
}
]
}
]
},
{
"name": "31",
"children": [
{
"name": "55",
"children": [
{
"name": "d8072ee82382881804b11da269e754a9e81ec3f56ef76675b467f07e5b9e"
}
]
},
{
"name": "78",
"children": [
{
"name": "da9ea6643e8a0142a039bf3cbd19dcbac51331f94543c348c9c153e4bd32"
}
]
},
{
"name": "d4",
"children": [
{
"name": "1349b57ac0ab0015bf5bc054e40c2f1b7c8de9f55f1b5fb2999a9d638024"
}
]
}
]
},
{
"name": "34",
"children": [
{
"name": "5d",
"children": [
{
"name": "80555de0d11e7ccc8b4c21fd66c91628d4b81b88cf7a2e7caf0397581e5b"
}
]
},
{
"name": "9e",
"children": [
{
"name": "9b1b5aa5889844cd472441c0c1f23172a8dfb7c90ff4d55a8de845646955"
}
]
}
]
},
{
"name": "36",
"children": [
{
"name": "7a",
"children": [
{
"name": "d1e81e03f5c2da0fdc7ac3dc9df740281dbb018019ab075d65b88b7171b5"
}
]
},
{
"name": "a5",
"children": [
{
"name": "f74042740cf491b55667cf1a269361282f02fa1c0ae653bffc8ea4b9e242"
}
]
}
]
},
{
"name": "37",
"children": [
{
"name": "14",
"children": [
{
"name": "8df8ac44018f0058dffca9fc3d47f27d58d392a759d465c6020a49352f84"
}
]
},
{
"name": "23",
"children": [
{
"name": "212967cc095d0a505921b885fb8787cf2ec98190533b10b7fdca2697a7dc"
}
]
},
{
"name": "a0",
"children": [
{
"name": "021ecffe3a6a03d09df754d273271105bfc55d701d3afa3f04d70bbee723"
}
]
},
{
"name": "f9",
"children": [
{
"name": "a47d5e82891c085f2fa155d225d518fe865af309f3e6890e2b184377dc52"
}
]
}
]
},
{
"name": "3a",
"children": [
{
"name": "e4",
"children": [
{
"name": "beb7058fe14ac8544fb67cedf4e074f87d6eb8ad9f92fbc990043aa4007f"
}
]
}
]
},
{
"name": "3b",
"children": [
{
"name": "17",
"children": [
{
"name": "f45e412c29aacbb328f9d4d864101d74f4ed118dfdb7fbf9054ad9586eac"
}
]
}
]
},
{
"name": "3c",
"children": [
{
"name": "a3",
"children": [
{
"name": "a4bb9281e5e4a2be3a38bfc40bce8b301bbc4d3e29e737ef36cd6b57063e"
}
]
},
{
"name": "d0",
"children": [
{
"name": "561b1f97ab1e17e95039d88af53dfd63ce8faf01868a2ad343c984352574"
}
]
}
]
},
{
"name": "3d",
"children": [
{
"name": "06",
"children": [
{
"name": "b510f18c3670f9ab1f493d6b890d8ffe17738d4341d853c630b2c7eb4344"
}
]
},
{
"name": "ef",
"children": [
{
"name": "3da36d54300ea57e1dfdf30f037a2da633f49cace62365fd7d6cc21cb724"
}
]
}
]
},
{
"name": "3e",
"children": [
{
"name": "11",
"children": [
{
"name": "c8a8a8262c48e83b6fd62f768ad22af5c71ff9472c30357ba9c124c409c7"
}
]
}
]
},
{
"name": "3f",
"children": [
{
"name": "78",
"children": [
{
"name": "f2ff796520f70d5b09d769dadfee369582e093105d8efb4de58b68d7639a"
}
]
},
{
"name": "db",
"children": [
{
"name": "d5f8ccfbb62d7e7a7ee4f06ad85054ca2d54ee156eb7eaee541e26d9e288"
}
]
}
]
},
{
"name": "40",
"children": [
{
"name": "1e",
"children": [
{
"name": "89f0b89d2ca92cd54ff481086fdd599c67170ea69eb9b22d37e34638d25e"
}
]
},
{
"name": "8d",
"children": [
{
"name": "dfbc293be9aec60d486ecfadc25eaa8563d97ba697984a0d25240d19a373"
}
]
}
]
},
{
"name": "41",
"children": [
{
"name": "74",
"children": [
{
"name": "c24cf3decd5bd43895806978decc2524d95e2230ea0e07b97dfc9c3be9e0"
}
]
},
{
"name": "83",
"children": [
{
"name": "49ee6c7a6d198c50ce7ba21c273b9f77e4dd1d412e56ffcd49e76245a031"
}
]
}
]
},
{
"name": "42",
"children": [
{
"name": "01",
"children": [
{
"name": "dc4d09c078e5fda1ffd8fe6224f320d36d4c62060b195159c328acfed935"
}
]
},
{
"name": "59",
"children": [
{
"name": "3ff52a189752cf015ec2e33a19ea5c22b74d1ad8ad2060561fcea676809b"
}
]
},
{
"name": "e1",
"children": [
{
"name": "21c3a47dc849cb2a50be6950783bc8fb2bcd893371757302272be0b3ece2"
}
]
}
]
},
{
"name": "43",
"children": [
{
"name": "33",
"children": [
{
"name": "305bf56940320eec7a16492a3715b6c80ecbe759a62ac61339da69e9490d"
}
]
}
]
},
{
"name": "44",
"children": [
{
"name": "21",
"children": [
{
"name": "a1a2cc621832381982b7c5720dc1f0571ffed6373447c01b5ac785526521"
}
]
},
{
"name": "7d",
"children": [
{
"name": "b60d39c1edd3572a1f9f3b78b5d93e7247d886ff84d067e2ff3bb1832718"
}
]
}
]
},
{
"name": "45",
"children": [
{
"name": "74",
"children": [
{
"name": "a45e494ca2e846d401646ceab55186fcfe87c4fa76d70a3850d08faf8949"
}
]
}
]
},
{
"name": "46",
"children": [
{
"name": "74",
"children": [
{
"name": "75e64158f92ce447941c0491cd0c337ccf20e22eec98ff35e5c58278de5c"
}
]
},
{
"name": "d0",
"children": [
{
"name": "ad5a13cb3c117456fa21364942799d30eda1173935fe360398263de81128"
}
]
}
]
},
{
"name": "48",
"children": [
{
"name": "e6",
"children": [
{
"name": "fffca2307f3b0f8d6e24e6580a6a6bf6700da6a6f2f27a6a8218edf09bb2"
}
]
}
]
},
{
"name": "4a",
"children": [
{
"name": "20",
"children": [
{
"name": "c8968ba9feb10004e7c9d0d9dbf5702f31bf1875f7af22100a3308c25343"
}
]
},
{
"name": "de",
"children": [
{
"name": "aa628f43a9795eee281604e011058393572a6a3b06712cb10d04bcc64997"
}
]
}
]
},
{
"name": "4e",
"children": [
{
"name": "7c",
"children": [
{
"name": "f98d77a1892f837878dca292a024201bc57e7c3caac6a7ac22fbc41cd72e"
}
]
},
{
"name": "e3",
"children": [
{
"name": "29f405d6028cdbcfac8cfc74e38bbdd52fcde77572d27a7cc1fb02ba49bc"
}
]
}
]
},
{
"name": "4f",
"children": [
{
"name": "51",
"children": [
{
"name": "e3d9d16667fc299e05653a1b7b92161b0ef33d238ab656b85567244aa93e"
}
]
}
]
},
{
"name": "51",
"children": [
{
"name": "24",
"children": [
{
"name": "5a3a63f373b73c8aedb555037b4b52193b1b0ab7b9bcc0091a0cc5c94b70"
}
]
}
]
},
{
"name": "52",
"children": [
{
"name": "1d",
"children": [
{
"name": "cece4a065d9009795606216ee3e75501611290013df6fa0039bed9edd10a"
}
]
}
]
},
{
"name": "53",
"children": [
{
"name": "80",
"children": [
{
"name": "4e29d148024a6ff9f3e641a42e77e36c0b86078eeac7871988791f78c959"
}
]
},
{
"name": "aa",
"children": [
{
"name": "7ad3e780625e9e2253e8fd66171af8b9391cae1bcaf476e5147be2722dd9"
}
]
}
]
},
{
"name": "55",
"children": [
{
"name": "ce",
"children": [
{
"name": "331f40e4939c4c0f52c1c890eb941ce45b314492dfa1d2eee3ce5871a206"
}
]
}
]
},
{
"name": "56",
"children": [
{
"name": "64",
"children": [
{
"name": "ed3d5de8c6d0d59951da1e504de02fdd08ee35a6146385991914f71e049b"
}
]
},
{
"name": "c5",
"children": [
{
"name": "6633f1c44e00f62fb33c4ed801fdd7f8ddfd7bbb964c51ab483aa7c06b3b"
}
]
}
]
},
{
"name": "58",
"children": [
{
"name": "34",
"children": [
{
"name": "395ccc35e013fa6e57d5b3b5d1c243fc4bb2a07d9651d84451073ef77b0a"
}
]
},
{
"name": "f0",
"children": [
{
"name": "4fe556f104b09be642895a82afa463fe560d9a0dc8f507efeef825a6905e"
}
]
}
]
},
{
"name": "59",
"children": [
{
"name": "25",
"children": [
{
"name": "308df508a58e8a5bcfc3519be49b8b0b08e7c694e63ef68863636690a659"
}
]
},
{
"name": "51",
"children": [
{
"name": "7d1dc2a7e1aaff52246d8b7a7b786596d31911b4285b62a65039fab15143"
}
]
},
{
"name": "c6",
"children": [
{
"name": "88f16af6bb6d5997afb1e2a18a8d3daae76ba8fb6b2f4160b885851fbe02"
}
]
},
{
"name": "e5",
"children": [
{
"name": "d9138623b3f2ac825cd4c259e661f15a3237b6a4e24000b754b700dc668c"
}
]
},
{
"name": "eb",
"children": [
{
"name": "f49b378059a9b1d2b4788f4d38bfcfbf32ab0a408e974921504c5c0ed54f"
}
]
}
]
},
{
"name": "5a",
"children": [
{
"name": "48",
"children": [
{
"name": "df2b2137355548fc0e2edd8c75e03ade0d1036d9466886d3c4f7ea6248af"
}
]
}
]
},
{
"name": "5b",
"children": [
{
"name": "60",
"children": [
{
"name": "abc8817693594e3f5397a1f22e643b0705e09227bf632a6a9832dfdd9153"
}
]
},
{
"name": "d7",
"children": [
{
"name": "09c859a04b187c559a129366eb4df71a6bce93cac03168bd35c53d781662"
}
]
},
{
"name": "ec",
"children": [
{
"name": "deaf5b1347d8a1f9e817f95a61baba304eebf763bee4e027a19e522344f2"
}
]
}
]
},
{
"name": "5c",
"children": [
{
"name": "0a",
"children": [
{
"name": "8698d2f58b689a7d98911e1cb1381eebd0e96c675bd06df0d9fac02913fb"
}
]
},
{
"name": "1c",
"children": [
{
"name": "906a8365307ec84f031d2a165e5675fbd213a90948829e31f40fc22072e6"
}
]
},
{
"name": "96",
"children": [
{
"name": "188695ea213d25600522779f6ebe61573b5cd60a2d9ca029a482a4da26c8"
}
]
},
{
"name": "d2",
"children": [
{
"name": "f36bff0aaae83f15480006f71bf426b82d785a76bf50c10dba6f2b191bb9"
}
]
}
]
},
{
"name": "5d",
"children": [
{
"name": "49",
"children": [
{
"name": "5c63c497140a0e53483db9525213c6d1fa9f35b45b1086d9fd5ba940da3e"
}
]
}
]
},
{
"name": "5e",
"children": [
{
"name": "0d",
"children": [
{
"name": "e01ce7f2ad332a34b72c8840f7d6be25a566057fa85f3905633071f13a02"
}
]
},
{
"name": "60",
"children": [
{
"name": "a3d7b522ab1c797a4998fcf731c9f135dfaab3d4714d61364f70e861612e"
}
]
}
]
},
{
"name": "60",
"children": [
{
"name": "5b",
"children": [
{
"name": "d061f03faba3b3c47f62d0a015be11004e903e73b12c938a858600af050c"
}
]
},
{
"name": "ac",
"children": [
{
"name": "5d76189907dc4f3d85b4cd5c4b8c3cfd77ebd6bbcd9b7d4cff27e1f5ff54"
}
]
}
]
},
{
"name": "61",
"children": [
{
"name": "da",
"children": [
{
"name": "42238d3023698a5e97124bb2bfb3a70f72fb5dad8e45321d35338042d343"
}
]
}
]
},
{
"name": "62",
"children": [
{
"name": "82",
"children": [
{
"name": "71d24cf34057d36cf27f9cc782bb6dd446e56a1987513836d5a2681a064d"
}
]
}
]
},
{
"name": "63",
"children": [
{
"name": "ad",
"children": [
{
"name": "04dcc124b868fe72a53e629c46cb25375815712232a39ec6b7b1adf56e20"
}
]
}
]
},
{
"name": "64",
"children": [
{
"name": "40",
"children": [
{
"name": "e11c87114aa2eb644ceb35fff755f62c221c65cf9b097eba8c89a874631f"
}
]
},
{
"name": "60",
"children": [
{
"name": "418df36f08d77db3d8e9bc6b4f37ace935b3618fd6b94e74736e8cbbb3cc"
}
]
}
]
},
{
"name": "65",
"children": [
{
"name": "04",
"children": [
{
"name": "2e6e5ca2dac42261d480c0743fce37ffe1148bbc193ab91b7229416a1b66"
}
]
},
{
"name": "6a",
"children": [
{
"name": "3b06ed2602a1e10b48be3a921b2ffbccf28e9450d8205112d4795ccfe3b7"
}
]
}
]
},
{
"name": "66",
"children": [
{
"name": "06",
"children": [
{
"name": "6f4a3160d205d0f2894bb594fefe40ef568a56c4b7b8845d240fb4444e3c"
}
]
}
]
},
{
"name": "67",
"children": [
{
"name": "0f",
"children": [
{
"name": "543b1a502c816fa068b4cc83acd74635d800e3a6555febc2e89559966605"
}
]
},
{
"name": "5f",
"children": [
{
"name": "28c12321d8b73cabed8e5f6d334222738f3757d989855c298742f545c38d"
}
]
}
]
},
{
"name": "69",
"children": [
{
"name": "02",
"children": [
{
"name": "ff7f56eddc258aff384202ff184eaf4040875aaad6619d79984740606441"
}
]
},
{
"name": "bf",
"children": [
{
"name": "80809f1dc7cd900d7f5deebaed4aab7a2f788123f16fcfa841e03dcd420a"
}
]
},
{
"name": "e3",
"children": [
{
"name": "1018bd2617c9bf8a0c2742b8d6db95d9995670b0e195cb06cfea9d61c009"
}
]
}
]
},
{
"name": "6a",
"children": [
{
"name": "90",
"children": [
{
"name": "3c603f9a799c6b9f0cb551b2d0bccbdb5d9e3031d3a7ec29d480f9b89cc1"
}
]
},
{
"name": "b2",
"children": [
{
"name": "cff74a8452b6159ec5df4cd310e05e05bfaa99de31da7de4b5a7a7a849d9"
}
]
},
{
"name": "f1",
"children": [
{
"name": "df8dd2b64513ef33299b5c4a1ac6058aafe05e2187686cdf28959d39bf72"
}
]
}
]
},
{
"name": "6b",
"children": [
{
"name": "ac",
"children": [
{
"name": "873bbccc3b70b17e1c1fbddbda99b69f0d507fd8d12442008ee2f2518c1f"
}
]
}
]
},
{
"name": "6c",
"children": [
{
"name": "65",
"children": [
{
"name": "d7752131dc29ed9a3f1b5ed3749f1e346be65b985028600b9da9d8d7182d"
}
]
},
{
"name": "6f",
"children": [
{
"name": "8e7e8934679b7b49b8240b1f2dcb66c25a5bd17f9629f8fe0ea634cab93c"
}
]
}
]
},
{
"name": "6d",
"children": [
{
"name": "83",
"children": [
{
"name": "04b563f9f41a3ba3b7df4541c2da4dc131b47234e904a7eebf0037238c08"
}
]
}
]
},
{
"name": "6e",
"children": [
{
"name": "d0",
"children": [
{
"name": "ac1ece8bd42660aa82a41ea66c46352b8cfc3b9f4f7a1ff35c3bc75b7f88"
}
]
}
]
},
{
"name": "6f",
"children": [
{
"name": "e1",
"children": [
{
"name": "a24dabc79158d070f1d3300bd2c396eed95cd588f3024e3c563bcc8ea9da"
}
]
}
]
},
{
"name": "70",
"children": [
{
"name": "42",
"children": [
{
"name": "4cc18d3de16a2f6fe4449e87b0e7c0d8b49272a49bf150863714d78d0052"
}
]
},
{
"name": "49",
"children": [
{
"name": "2b2b76a14deb987da08e2bfdcd6bd08c19124a0c0a5ad312ff578cc0bac7"
}
]
}
]
},
{
"name": "71",
"children": [
{
"name": "46",
"children": [
{
"name": "9ac9954d6abfe1864156c76181b8f7f5d6526b459632b74e64b50f2e6c30"
}
]
}
]
},
{
"name": "72",
"children": [
{
"name": "79",
"children": [
{
"name": "b9b46a893ce0821a0c223c78b2990a215e920a8e348fa2ea3acb1e2faac6"
}
]
}
]
},
{
"name": "73",
"children": [
{
"name": "21",
"children": [
{
"name": "1d875da2f746d474580cb0f196b311adcc3ff2bf1ee627b53bb0a433be96"
}
]
},
{
"name": "85",
"children": [
{
"name": "9271949cbe1cf24faeeb61a7d8c2ba5266bbf148d1fc84c7e8ff9b7622fb"
}
]
}
]
},
{
"name": "74",
"children": [
{
"name": "54",
"children": [
{
"name": "b740a9a80e5550356f6d262f934c142247144736e799b0258ea752d46b6a"
}
]
}
]
},
{
"name": "75",
"children": [
{
"name": "39",
"children": [
{
"name": "d0508114cab31da80963fa9f8a5d57c78c99121b1241b4af44d032412620"
}
]
},
{
"name": "4e",
"children": [
{
"name": "4071a40658890d8a5f681076ddd767d6e0c3632b3d1034c91b343e98dcf5"
}
]
}
]
},
{
"name": "77",
"children": [
{
"name": "ed",
"children": [
{
"name": "cc4c10a88dc8c991a9592264ec036324014e1d7c8c7e18cd950ecf8ba5db"
}
]
}
]
},
{
"name": "78",
"children": [
{
"name": "7f",
"children": [
{
"name": "9ef9ab5144e6b019334110485ca999cbb4a48561a66ade3185bf1d2fded9"
}
]
}
]
},
{
"name": "79",
"children": [
{
"name": "00",
"children": [
{
"name": "8e67706deb3cea89ee4fc68fd357ce0a72a64147a130e31279d34e012f8b"
}
]
}
]
},
{
"name": "7c",
"children": [
{
"name": "01",
"children": [
{
"name": "a2c7cee872051584ce9afbd7cd92701c7fe77cb8be37a304f4703459da8e"
}
]
},
{
"name": "22",
"children": [
{
"name": "e50fc0132ff15f9bd4ffd260aacb79b3ef25c78697efb5381a263eccb2b3"
}
]
}
]
},
{
"name": "7d",
"children": [
{
"name": "65",
"children": [
{
"name": "c2c4e4cf88f6f5a26a474eec1eb28a1a0c087f156fa82df974013a50081f"
}
]
},
{
"name": "9d",
"children": [
{
"name": "a787cb5fb8517d8f722961c5bfa0a1e43deee21881693fe21b525c063f64"
}
]
}
]
},
{
"name": "7e",
"children": [
{
"name": "1e",
"children": [
{
"name": "297e6081f2050d08959be634218f7dc79469d7a8742e8eb0d087205d0e19"
}
]
},
{
"name": "9f",
"children": [
{
"name": "dfa3e415b0b79f7647f544e46b110b6a5570206d9ca2b7a646db02e61ee4"
}
]
}
]
},
{
"name": "7f",
"children": [
{
"name": "37",
"children": [
{
"name": "35a1db3e28833675445dd5070d460a5c2d2f7a04d80bdbff6aad4190b647"
}
]
},
{
"name": "ad",
"children": [
{
"name": "ae007ee9f90f1cb8f4d6645f53a1f4a4b78b786d1b051f1108f5d127912f"
}
]
},
{
"name": "c3",
"children": [
{
"name": "dc0657b650edb6ea8e350ae8c6dd6cee5ca84fcc91d9d0b666cf225a139b"
}
]
},
{
"name": "f6",
"children": [
{
"name": "5e3925b158405271b2f44be4d1ecbb5c60b3b7da87819ce03956b759b051"
}
]
}
]
},
{
"name": "80",
"children": [
{
"name": "3a",
"children": [
{
"name": "4a5732c282b178c7db04d066e1bf72f3e188eb895364b06eb795a5f7e87b"
}
]
},
{
"name": "b4",
"children": [
{
"name": "93406ea1adf5e177b609f739dda6d432205e1670f3d4400370fd7b648e88"
}
]
}
]
},
{
"name": "81",
"children": [
{
"name": "fc",
"children": [
{
"name": "e4d97ae8eaf69be652abc9ecb933d34e8b6f426a8dabb0c84a7dd791f0c4"
}
]
}
]
},
{
"name": "82",
"children": [
{
"name": "9b",
"children": [
{
"name": "14cbab914a1f63d40eb9e86f6c8bbfdc77e802c37cb36c66a8d86735d313"
}
]
},
{
"name": "c9",
"children": [
{
"name": "ce0841be7e949bd7d0e6b58a00090519afd86b6dbccef45bba7f5e144f3d"
}
]
}
]
},
{
"name": "83",
"children": [
{
"name": "29",
"children": [
{
"name": "95541f70184429de2cfeeaba449cdbe3c35fd6214887edb56b0920f0dfd2"
}
]
}
]
},
{
"name": "84",
"children": [
{
"name": "42",
"children": [
{
"name": "78099c1f1419e99651e632f8161d708e8545b101052a116cf8a4ed588ea7"
}
]
}
]
},
{
"name": "85",
"children": [
{
"name": "60",
"children": [
{
"name": "f9e5f6e0524412e2ef34ad271d0a9836c9b3f4501551f5b43e0f7b0595b7"
}
]
},
{
"name": "8a",
"children": [
{
"name": "fa0a160bc9eaec4c272e6e7d2b586d4fdf4d2ee228f062ba4187eb4495cf"
}
]
},
{
"name": "e3",
"children": [
{
"name": "419224f61b4dee999548d94866a6d4732a1305a497db0e78f5af71aad359"
}
]
}
]
},
{
"name": "87",
"children": [
{
"name": "7a",
"children": [
{
"name": "6bff65d2ea046d0cbcb8b9c7a56dfc499fce22f35dcf898d6732fd0f99d4"
}
]
},
{
"name": "87",
"children": [
{
"name": "28ac78335d01618b24ae94fde5875a32b621af542c0f74c4ee94a4e0e88e"
}
]
},
{
"name": "da",
"children": [
{
"name": "af28f1133468f98432a0caf94d8a9e1a4f1bcd830398a06a4e51d9d17bcd"
}
]
}
]
},
{
"name": "88",
"children": [
{
"name": "24",
"children": [
{
"name": "3f09d4fd84eeb2ce94daf53f52fe553055f6b61b54ffff9dbbab3cbcf28c"
}
]
}
]
},
{
"name": "89",
"children": [
{
"name": "0a",
"children": [
{
"name": "30bd8a803a01faa1abd83fdfa7bfd3db720edee8d3094d486556c6d9b976"
}
]
},
{
"name": "48",
"children": [
{
"name": "b53660a6bedeb14f8bf9b40272b72516049c051ad67f47e108579dbc0a9d"
}
]
},
{
"name": "59",
"children": [
{
"name": "a033c0dc23d96c8c3c80ebc07d2acaaf0be5d85bd65b1da92f1c3c461bc3"
}
]
},
{
"name": "90",
"children": [
{
"name": "cc97fc6bbdde81c8664126ee6c42153a6c3e1ef1a7bdcc75560f15783c9a"
}
]
},
{
"name": "f8",
"children": [
{
"name": "98fd012d9409c4b27aca7d540538419a5365d03665e38b958232ee324ca6"
}
]
}
]
},
{
"name": "8a",
"children": [
{
"name": "35",
"children": [
{
"name": "11559ac769e79e13cbc493b7586224212c15b07c9d3c4787777408a5767b"
}
]
},
{
"name": "d6",
"children": [
{
"name": "7cedabc2e6a505dca3109032357d135bb901c6fe15b7142b0b79ec09c9f3"
}
]
}
]
},
{
"name": "8c",
"children": [
{
"name": "be",
"children": [
{
"name": "6a4a71333dc1139d7895bea4a1d4defbb536e3dd13a2a6a779d687261a46"
}
]
},
{
"name": "ce",
"children": [
{
"name": "6084eecc73caaa38e50178c1b29332fe5d5d9cd6180952c41afd4e4e5fc0"
}
]
}
]
},
{
"name": "8d",
"children": [
{
"name": "09",
"children": [
{
"name": "b8f5ca2fb119384681b46ab4e23e4621b770a9043991348d533c215b4433"
}
]
},
{
"name": "b2",
"children": [
{
"name": "efb98333ec63b6ca87cb7ae75f9390fcea80b2f93321dfa7e712deeea8ef"
}
]
}
]
},
{
"name": "8e",
"children": [
{
"name": "60",
"children": [
{
"name": "7a9fd5fe7946740e62fafa02372f524ec75f0f5a764dc6d50c6aa5d26d1f"
}
]
}
]
},
{
"name": "90",
"children": [
{
"name": "39",
"children": [
{
"name": "c67cc53a34aa0020c2a7c9b1c1f834db97cee886038b59b816100e59ac5b"
}
]
},
{
"name": "53",
"children": [
{
"name": "8c061789582f306e5cd49035ee51582e6495bd621f643d2451345dc3b3dc"
}
]
}
]
},
{
"name": "91",
"children": [
{
"name": "a0",
"children": [
{
"name": "1c683649971bd59b5be42fae73c07bbb1d8bfcf740da61276a25cacf3573"
}
]
}
]
},
{
"name": "94",
"children": [
{
"name": "74",
"children": [
{
"name": "3d96ac81f56812e167fd2acf24494cebe4d36a000fe87ad1772e5d84ca0d"
}
]
},
{
"name": "ec",
"children": [
{
"name": "1d986b441b00f96aeab7c88818f12cd70c4e141d124408f65ec640f20421"
}
]
}
]
},
{
"name": "95",
"children": [
{
"name": "0b",
"children": [
{
"name": "a7bd89d5e50b639d5d8ce521aa97b6d3195447b72a7ff9d2c0d1812f7be0"
}
]
},
{
"name": "75",
"children": [
{
"name": "687939821827baf89453eb86559a27c09f58aeb98ea6455ac1964224bc85"
}
]
},
{
"name": "9c",
"children": [
{
"name": "33a7acf0855ec12fd4b2bc61f94aea61c8ad83231f8fb8875350e5479a19"
}
]
},
{
"name": "b7",
"children": [
{
"name": "4b32eb8c50b3a92b9c7909c23280d933f4c7ebe4c8fd2de7d6fa33d5cef2"
}
]
}
]
},
{
"name": "96",
"children": [
{
"name": "51",
"children": [
{
"name": "5b3ad285c078f0cffb96a60e2a7d408d22c613d84bfcc1740c19c3ef2c25"
}
]
},
{
"name": "77",
"children": [
{
"name": "5f76d9dbd32f944f6293ac2dbbe02b0789c323f64cc4104a9e020557c4fd"
}
]
},
{
"name": "e8",
"children": [
{
"name": "97d2c6e5c772f993e1a5b5fdeae5e52c835ac89d689ba43dbe025d54d880"
}
]
}
]
},
{
"name": "97",
"children": [
{
"name": "2a",
"children": [
{
"name": "03a1b9559a3a37b035bdf0a91e5ef8519eda6c80bbecceed0e3b5e4dc88b"
}
]
},
{
"name": "5b",
"children": [
{
"name": "c35764344d904ccaaa6f75334f0b4599c5f5f35a260b6d695f08841db2a2"
}
]
},
{
"name": "bd",
"children": [
{
"name": "6e5ca07870d6109709e850596e888da4239c12d7ec58a9cb506c18fc011d"
},
{
"name": "beeb8b78e296c1ca18f47c961aa29ccdfb942efb374320ef064da2a2c060"
}
]
}
]
},
{
"name": "98",
"children": [
{
"name": "20",
"children": [
{
"name": "8cf39748e26add3139706a657e8908982a79143e5c985f1a3fd09031cf57"
}
]
},
{
"name": "31",
"children": [
{
"name": "8a41fc808dc3a75f728fad90921316b23f9325e5b104e74921762846f141"
}
]
},
{
"name": "f2",
"children": [
{
"name": "b821772aae78a7cc4aebf09dcceac3e1a5f5efe02d2d15a291b886ebe1fb"
}
]
}
]
},
{
"name": "99",
"children": [
{
"name": "46",
"children": [
{
"name": "15c562ddee4e9dbab27e6d26a197bc39bd88d4ef40dbfd163c8a2a793989"
}
]
},
{
"name": "a1",
"children": [
{
"name": "9ed69b326f493ba21906d6cab8a544a72cb6115ad4d5ce7001ab40e672be"
}
]
},
{
"name": "aa",
"children": [
{
"name": "125ade68f9bca1d65a843c2aab353f720ddf9eee7f97db630d6de39132d0"
}
]
},
{
"name": "c7",
"children": [
{
"name": "17fd3c84571557c89f427e72603dcdfbb2d7343b7b6a5d2e0de78f4be554"
}
]
},
{
"name": "e2",
"children": [
{
"name": "b5d441067698d74c6f1aede355a770879de88de1319ba75e5ead9d54b854"
}
]
}
]
},
{
"name": "9a",
"children": [
{
"name": "27",
"children": [
{
"name": "8a122dde0bd9fc067ad7aaac17e7c8d710946f73221248a7d31fdebfde17"
}
]
},
{
"name": "34",
"children": [
{
"name": "81b77c2ba4eb2956e6543fbb13267c6da9a207087448808785abe35eb2d2"
}
]
},
{
"name": "6d",
"children": [
{
"name": "7a0210a804c9f2e2af1c400afe42fe0d4ce4efc1fbaf21669744dc539077"
}
]
},
{
"name": "a8",
"children": [
{
"name": "572554214ddb7b0b4cc7b8beb0e6bd480b97ea86ec6b5d5b427d9cedae60"
}
]
},
{
"name": "de",
"children": [
{
"name": "e55058ce8e4373a683972ee4f367cac984ac7c58631661095c5a49983b4c"
}
]
}
]
},
{
"name": "9b",
"children": [
{
"name": "1a",
"children": [
{
"name": "ec60928049786692a17c5f7e860b59c183687431ccd34637ee8fb1e8213e"
}
]
}
]
},
{
"name": "9d",
"children": [
{
"name": "6b",
"children": [
{
"name": "76c21652f2169a69eaaea1063b83090d4a616b9b952147bafbb6e4588813"
}
]
}
]
},
{
"name": "9f",
"children": [
{
"name": "13",
"children": [
{
"name": "2f9a75e235fc2b8c5b2de1d382b04d6635f9aa0cd4301d7543f51e78d98e"
}
]
},
{
"name": "5a",
"children": [
{
"name": "50bd38ff6c87dbfd241ad6e511935b52d9c8d0582f51bc4610eba895906f"
}
]
},
{
"name": "80",
"children": [
{
"name": "5095f1e4a4f144a1b7c5af323372bb7f512b212ebf4de91c8d3ade240d0e"
}
]
}
]
},
{
"name": "a0",
"children": [
{
"name": "67",
"children": [
{
"name": "c0540355ba4652960ea1cfe82cd6e81919cf2abe5ae75731d2e3a00625f4"
}
]
},
{
"name": "c6",
"children": [
{
"name": "040205eebe8a1469c51bd2cf204508de0c8c99d31041c9481a8f7a10adb3"
}
]
},
{
"name": "c8",
"children": [
{
"name": "4193a7bcfde05c306568881e7385e5755199ee98b3afbd2f6c2496f98d57"
}
]
}
]
},
{
"name": "a1",
"children": [
{
"name": "5e",
"children": [
{
"name": "c9aa1c46bf0c67511379e97bd07fca87532422f2506214f94db8861160d3"
}
]
}
]
},
{
"name": "a2",
"children": [
{
"name": "b5",
"children": [
{
"name": "f2c35332a5ab256ee9271034e3b3b301ece6931e6e92531ca0bd8c08fe9a"
}
]
}
]
},
{
"name": "a3",
"children": [
{
"name": "7a",
"children": [
{
"name": "cc45d47b4d1152a677d98126d48387ebc8959de01678a99b39663fe082f8"
}
]
},
{
"name": "f8",
"children": [
{
"name": "82fd361282bf55c08ac7f2c6179e53ec0ec571cce707141b4169879cd52e"
}
]
},
{
"name": "fb",
"children": [
{
"name": "1c1ca0b2fa7cedbc3d75a969973c3c927a116d14526631a5abab7c464295"
}
]
}
]
},
{
"name": "a4",
"children": [
{
"name": "96",
"children": [
{
"name": "1394bfe3119ef9620ccb5d4eb6c4001ab70c64efb55f558a35ad46138686"
}
]
}
]
},
{
"name": "a5",
"children": [
{
"name": "d9",
"children": [
{
"name": "e1291d6f9191333fd86bcddf75984c43c3c146953d90c11e1cb5d5309bf2"
}
]
},
{
"name": "ef",
"children": [
{
"name": "2ac2cd4303cbe93e3d5a762a96c6ed6a474ff2a42a2947e338332cb4ac57"
}
]
}
]
},
{
"name": "a7",
"children": [
{
"name": "c2",
"children": [
{
"name": "fc191e46d9f2fca4414c2c2dcec2d277703791c8b0d45501dd393374594d"
}
]
},
{
"name": "eb",
"children": [
{
"name": "724a7465b65799bce994b435b2e0f60c0fbe6d898b5904e7787a6f420aef"
}
]
}
]
},
{
"name": "a8",
"children": [
{
"name": "0b",
"children": [
{
"name": "5ef143bcf405ebaf57486111066a504ead6234b21fe984630b314feca49c"
}
]
},
{
"name": "f7",
"children": [
{
"name": "6e508e390e4911a9cedbbfc3ab741c34cbd0815f7336c2226f82ed5838ae"
}
]
}
]
},
{
"name": "a9",
"children": [
{
"name": "92",
"children": [
{
"name": "c230215c94371d341f1b38927e5f481994a870132101fd50efb0449f27c2"
}
]
}
]
},
{
"name": "aa",
"children": [
{
"name": "2d",
"children": [
{
"name": "44f0d9dd71e63a0fc715428e074a259491468a5d05342afc8b40e72c802a"
}
]
}
]
},
{
"name": "ab",
"children": [
{
"name": "0c",
"children": [
{
"name": "4c5a5794f45f9a44e15dc85f7700d286651c9df1bdb98b69fd4304c2f397"
}
]
},
{
"name": "a3",
"children": [
{
"name": "6abc84291759cb5b5ed9f06186f33ea909a68cd960206d57e16032623327"
}
]
}
]
},
{
"name": "ac",
"children": [
{
"name": "f0",
"children": [
{
"name": "7a8beb06a8fd4638cdba34925f9f425882003f502b4019194e8df5f5e90a"
}
]
}
]
},
{
"name": "ae",
"children": [
{
"name": "04",
"children": [
{
"name": "0ab846c8ec22e323e9328c9c38d9592d98379603cf76b2db1b42d49ae12d"
}
]
},
{
"name": "73",
"children": [
{
"name": "fa1bf017d324702659b6a24df03dd5596d768e4bcba7826de11314548045"
}
]
}
]
},
{
"name": "af",
"children": [
{
"name": "bc",
"children": [
{
"name": "a192012145418d110a524426072bc9265ee2fc93b0a67eb175c371423ae4"
}
]
},
{
"name": "cf",
"children": [
{
"name": "b0bc8d9598cd60c11dcff96df7ad297070277b460dfd146672c742469dd4"
}
]
}
]
},
{
"name": "b0",
"children": [
{
"name": "18",
"children": [
{
"name": "7bd13a4fbca4723a579cab6019efcd5e03ff32581fd276a8f79738dc7a68"
}
]
}
]
},
{
"name": "b1",
"children": [
{
"name": "90",
"children": [
{
"name": "b179097bf33c30fcd5322583f45c0ffe91cb5b4b04eba298df4fb2468743"
}
]
}
]
},
{
"name": "b3",
"children": [
{
"name": "5d",
"children": [
{
"name": "850786d7e2de0e0b0cdde1466bbd998b492f2dd9a8d68344f7ada9249810"
}
]
}
]
},
{
"name": "b6",
"children": [
{
"name": "ec",
"children": [
{
"name": "b1ccc6576fd094e8ad4e6eef40ae1b375cc30655523ae64966330c83cfa7"
}
]
}
]
},
{
"name": "b7",
"children": [
{
"name": "03",
"children": [
{
"name": "7656e893b33fd5a01f87dd76dacaf28b6a34b5b270ea44e576781983e9a9"
}
]
},
{
"name": "5a",
"children": [
{
"name": "f8afb0e55be6ce2d428c15a7ef92b85b990c009cc259869a8d3f4e2631e7"
}
]
},
{
"name": "6c",
"children": [
{
"name": "09a653ae745f2a6ce9bc9757f1642f3bc8b27c2f4d328ffaa7d6d190f472"
}
]
},
{
"name": "76",
"children": [
{
"name": "4eed964864e68c7ff22e686999bd98d76c08c237402cace9784105e47826"
}
]
}
]
},
{
"name": "b9",
"children": [
{
"name": "3e",
"children": [
{
"name": "e1c919691404eced63bb79741aebed16955d91a0e69f5a7a9555c00993f6"
}
]
},
{
"name": "91",
"children": [
{
"name": "367420e70c3c9a20a84ffa83050f9a20bcb297b7e0f015d3992bdf909158"
}
]
},
{
"name": "bf",
"children": [
{
"name": "1e3daaea93f68bf9dcdd7e978b6dd8f43627145028c05ccc5d6187e7a25d"
},
{
"name": "d7c97e76694e2668372ea24799bda303855bdc25e192bc2a61f2d34c822a"
}
]
}
]
},
{
"name": "ba",
"children": [
{
"name": "1a",
"children": [
{
"name": "29a0208c073447be0af35c79e18b8b2edb9642b3fd2605c0d2329626575d"
}
]
},
{
"name": "24",
"children": [
{
"name": "069dd810af2d3b29e009db1dc5158b1dc6a14c29afa31754a2a89363c8ac"
}
]
},
{
"name": "4f",
"children": [
{
"name": "fddbf64ed4cbdb1144820308c212c1b452435bdbaa41d7c35ac8e35da5ae"
}
]
},
{
"name": "e1",
"children": [
{
"name": "1db388ef1f191bb91372bde36fe04181bfcd85b33e4c3459e39bb3559acd"
}
]
}
]
},
{
"name": "bd",
"children": [
{
"name": "8b",
"children": [
{
"name": "4c4c54cff61b4b8ec71f89677ec6e4446cb074c722cc7d4428a42ab0559b"
}
]
}
]
},
{
"name": "be",
"children": [
{
"name": "e2",
"children": [
{
"name": "143183f58120d62fd9cf31072d974fc16e43f510c791bf3c3c5f98ee3715"
}
]
}
]
},
{
"name": "bf",
"children": [
{
"name": "07",
"children": [
{
"name": "9672ccd5d1b968aaac0d946fa3edfb7bf457bbf9ea32c1949fbe55b875f4"
}
]
}
]
},
{
"name": "c0",
"children": [
{
"name": "97",
"children": [
{
"name": "d219a86c2dd1e627799e3f884a3850634031990733acec5604fd4424e34d"
}
]
}
]
},
{
"name": "c1",
"children": [
{
"name": "02",
"children": [
{
"name": "d8075e0f65536acf7e0f5ec13ddad3156936c45ad00b5abe3929099d34e8"
}
]
},
{
"name": "08",
"children": [
{
"name": "50bd6bdef0e7d09ebc6d2c8b2068246e767a8b2eec3d6189d689d4720c94"
}
]
},
{
"name": "3e",
"children": [
{
"name": "4c4d082623156529b4fa73601a4ac92e33a6b20f963f1096cee31b6d9010"
}
]
},
{
"name": "54",
"children": [
{
"name": "64ff17064f8b6d1cba61d90bbd9b83995b6a83c3e2e6619a4cdb7bde67d8"
}
]
}
]
},
{
"name": "c2",
"children": [
{
"name": "07",
"children": [
{
"name": "d11ddeba48531efda921a74303f0a8580b36662493d6611e89c8446533ee"
}
]
},
{
"name": "a4",
"children": [
{
"name": "488f71f39bc65742422faf2c74e3b330852ef2192dbb3198fed044e60c20"
}
]
},
{
"name": "ba",
"children": [
{
"name": "986a984b5f35ab2d37137aaa7fa8e905cccd2f9614d45637750dcbedca8e"
}
]
}
]
},
{
"name": "c3",
"children": [
{
"name": "cb",
"children": [
{
"name": "b4b9308433eb3379d175bfa8ae99fa8c0a13ae2919de342b6041ead66f8e"
}
]
},
{
"name": "ea",
"children": [
{
"name": "2ac6234e08578459cc70534addafba44ecd5267c7510db659945c34b184d"
}
]
}
]
},
{
"name": "c6",
"children": [
{
"name": "d3",
"children": [
{
"name": "f92784c140619e2b5f75b09975a6221a7dcc6affb633011ec2f186cf5262"
}
]
}
]
},
{
"name": "c7",
"children": [
{
"name": "12",
"children": [
{
"name": "102bb07d3c5cf86819fc13e6524871176ba5f8fc8238351433c746c98db4"
}
]
},
{
"name": "a4",
"children": [
{
"name": "356c5215c5306570d50eb1cb3f2f89e7af7fdc22b26fc5bf32ef13e56887"
}
]
}
]
},
{
"name": "c8",
"children": [
{
"name": "29",
"children": [
{
"name": "bac56552c297c7629e0376e89839d6a33001452285e699707cb6b7bef1c6"
}
]
}
]
},
{
"name": "c9",
"children": [
{
"name": "10",
"children": [
{
"name": "cad7da4af9d0c38ac3630bbda497b855ab102f7d7450d32d1b4f0802c8fa"
}
]
},
{
"name": "1f",
"children": [
{
"name": "e25f670d26bc26d1cb236efef449fc8718223fd484c4107ba797934cb10c"
}
]
},
{
"name": "76",
"children": [
{
"name": "1ccce278b248e3116c2fc9031752dd4534a8ca5ddf79862795c953e35a61"
}
]
}
]
},
{
"name": "ca",
"children": [
{
"name": "12",
"children": [
{
"name": "bc5fdc7cd0a8d1167bf80eb528874a6405e3f171e49e9610f99acd4b74d1"
}
]
},
{
"name": "df",
"children": [
{
"name": "47ad3339702a2c41ec2a91ffb26f69a27ea4970819848aabc395cd5b6b65"
}
]
}
]
},
{
"name": "cb",
"children": [
{
"name": "54",
"children": [
{
"name": "ff5a8c00f00f1e41d4f86e066a061cda3b337a649d5a381c4e3dda706262"
}
]
},
{
"name": "81",
"children": [
{
"name": "aaee7450a7a357a420fe671eabf98b9bc51511cca5c513044e4a8881a9bb"
}
]
}
]
},
{
"name": "cc",
"children": [
{
"name": "07",
"children": [
{
"name": "b0402d07ca95dc146a41000d30c59ac2652f68282d9e311e5cd261817aca"
}
]
},
{
"name": "0c",
"children": [
{
"name": "5a578c04b206bec88a8d3b6a18f0c6d6b87adb6b3a875bc0666d7997d6d5"
}
]
},
{
"name": "67",
"children": [
{
"name": "1109d179ab88f9d67092a9d19c47276461432cd6d0ac2b7ce68b9e6b8619"
}
]
}
]
},
{
"name": "cd",
"children": [
{
"name": "80",
"children": [
{
"name": "879c1bb2e94362027b71210c395dacf2dc0a174a3e2ffae82b6ac6683216"
}
]
}
]
},
{
"name": "cf",
"children": [
{
"name": "4b",
"children": [
{
"name": "00d89bfd0ac984d06a82cd31f98d8509bc0bf7eb452d723a00985ef6c590"
}
]
}
]
},
{
"name": "d1",
"children": [
{
"name": "26",
"children": [
{
"name": "8e01e6bce59ac02f0d20fc97382749190cb73f6006f9526fc7fb1ec79dd4"
}
]
},
{
"name": "33",
"children": [
{
"name": "ce3a378c4de4a984c94c9359bec933afe97a60f0ea6330d9e8f3908bc184"
}
]
},
{
"name": "97",
"children": [
{
"name": "607cf9828aa87029b5ec1e5a59c7ee0474d138399095e86f33bddffd5dff"
}
]
}
]
},
{
"name": "d6",
"children": [
{
"name": "4d",
"children": [
{
"name": "95351bd7b1c4630fa6590049d83b56ced950f5f2fd281f27e28527249cee"
}
]
},
{
"name": "9a",
"children": [
{
"name": "e8bc27510c4d79a1e1ea8154a02ae29d70cdb92077213ec966a298832d6c"
}
]
}
]
},
{
"name": "d7",
"children": [
{
"name": "a6",
"children": [
{
"name": "c03dba161160479f1f708cacd81371560ae8ffdc732a1d90ff9019b67464"
}
]
}
]
},
{
"name": "d8",
"children": [
{
"name": "90",
"children": [
{
"name": "fe1e5bf54c6111708a78cd66613e0a69271ab056e9925db28b5d49664f6e"
}
]
}
]
},
{
"name": "d9",
"children": [
{
"name": "12",
"children": [
{
"name": "d9d201a5b440cf5e3d9fe4fd277d173efc5975b1a84bfc4f5eec4cb9da6f"
}
]
},
{
"name": "a4",
"children": [
{
"name": "db2e039be9a81e2058c9d622dac229262690638d51ee6bfad5c7d7fd7049"
}
]
}
]
},
{
"name": "da",
"children": [
{
"name": "89",
"children": [
{
"name": "37c729afcd15ea273fa4419cf4001538540b9642d5ca204bd9c6d9cd9750"
}
]
},
{
"name": "f5",
"children": [
{
"name": "d08e71cc440b62e4b2f1792cd1a5e61f48d4637c178483bde82d8bc2337f"
}
]
}
]
},
{
"name": "dc",
"children": [
{
"name": "59",
"children": [
{
"name": "eb2f859fa4cfbe5267ea25086b2ff91a7c429579cfc5f83632f993e98d6b"
}
]
},
{
"name": "a5",
"children": [
{
"name": "b134aa08160183bd0b203e522dce5467fb9491ab59411c1c1b6d32b7d39a"
}
]
}
]
},
{
"name": "dd",
"children": [
{
"name": "38",
"children": [
{
"name": "c4afbe3f64967556faf1049536c1dfbb141aed19d466aa19f225896d04eb"
}
]
},
{
"name": "98",
"children": [
{
"name": "9416c5c997b420dc78c6694ec378efa0b1a02ff5b14d0de06dd9bca00c1e"
}
]
}
]
},
{
"name": "de",
"children": [
{
"name": "91",
"children": [
{
"name": "e3b3bd6981857ddf14c601499463187edf790fa01a030e30e12197cf4d3d"
}
]
}
]
},
{
"name": "df",
"children": [
{
"name": "03",
"children": [
{
"name": "f1c20a0c21d4bf40bf6bf49c0396850c37fd9f17645a2100f38ecfe0c8eb"
}
]
}
]
},
{
"name": "e0",
"children": [
{
"name": "9e",
"children": [
{
"name": "0fd312def6de344310f1bee3f5675f0cea9565faccfe4349babb249d5402"
}
]
}
]
},
{
"name": "e1",
"children": [
{
"name": "13",
"children": [
{
"name": "48011259d0e96d76bb6477a88e2828eb597909fd035b03109bd1f2cc4e3e"
}
]
}
]
},
{
"name": "e3",
"children": [
{
"name": "c5",
"children": [
{
"name": "2be2733f1784f3546a0e9916468c603c7d4a71abaa209681fa9111713e46"
}
]
}
]
},
{
"name": "e4",
"children": [
{
"name": "b3",
"children": [
{
"name": "d31ce3c508d1b731330fba2e63bcb4dc75e8f3aa98da45a05bf1a0214185"
}
]
},
{
"name": "e4",
"children": [
{
"name": "c83c9229540ac315d269d33328cd7ef6fab84d931bc13d8b277768456b8a"
}
]
},
{
"name": "e6",
"children": [
{
"name": "03fed098adb549001322a5169e2ae1d73a5f6f85db982f02b249dc8227d3"
}
]
}
]
},
{
"name": "e5",
"children": [
{
"name": "28",
"children": [
{
"name": "6cb7ceea594b63b308624d0ea3afb8a96e8b28887c04fac1b96594699140"
}
]
},
{
"name": "c7",
"children": [
{
"name": "229d967eb0f3616c4c3ff5e60628d8a5e97bd8512cc05abc3e1a07a4896b"
}
]
},
{
"name": "de",
"children": [
{
"name": "4fc01480fd304d06155d8a502537a6419e97ea7b973977f2e919611cc948"
}
]
}
]
},
{
"name": "e6",
"children": [
{
"name": "b9",
"children": [
{
"name": "c262607742a3ef38b1772599ae8e3f6d8f48c929a7f9846b251395e96916"
}
]
},
{
"name": "c0",
"children": [
{
"name": "ff384093f49efb49f01942f4930980f806184b0f69492a275a1bd9859f6d"
}
]
}
]
},
{
"name": "e7",
"children": [
{
"name": "6f",
"children": [
{
"name": "6df2d13a4e315af18cce3e1c8a09c911262fc54f57e6fc47d361ddcf408d"
}
]
},
{
"name": "e9",
"children": [
{
"name": "d2369beb18730dc4f30e1c9dcdf5bf16ac9bd28dec641b81ff8e8616e7fc"
}
]
}
]
},
{
"name": "e9",
"children": [
{
"name": "9b",
"children": [
{
"name": "1f186c35fc54d4603e72fb472bf5529913795710d3c5af1b1006fd027158"
}
]
}
]
},
{
"name": "ea",
"children": [
{
"name": "5f",
"children": [
{
"name": "ed9fbd5bd146db522eb110c35f223340a514174c0f8ba9132ea20b8f6721"
}
]
}
]
},
{
"name": "eb",
"children": [
{
"name": "61",
"children": [
{
"name": "09319958990cf29548f3d94275674b4b96127bf2f4aca28775a64a95d00c"
}
]
},
{
"name": "82",
"children": [
{
"name": "2576ae8153168ef3ff62456d3e09e17adbeabc3c9c4051a5cd9344d2bc8b"
}
]
}
]
},
{
"name": "ec",
"children": [
{
"name": "04",
"children": [
{
"name": "0eabb80170888ce55af056c8fe77e60aaba98345a102c4b2039499dba606"
}
]
},
{
"name": "52",
"children": [
{
"name": "1da406197170b616eda8e749f38787cc2f6a51a7cc273ecb5c757804513e"
}
]
},
{
"name": "ef",
"children": [
{
"name": "ccf9aef86dfb3881688e87eab760ddc9eeecb229c496217e6d7c587a408a"
}
]
},
{
"name": "f8",
"children": [
{
"name": "dedd27024eb08dd582a1cbda3c4e67b4daa330433ce610779e2c6ed7ec85"
}
]
}
]
},
{
"name": "ed",
"children": [
{
"name": "40",
"children": [
{
"name": "e67da4ad085eef0344d8e253e4455423e0efc042d3898be0a399d1a76b79"
}
]
},
{
"name": "ae",
"children": [
{
"name": "7ba0b9b690691f421a084eac76303bb06beadc65796c38a94889436512be"
}
]
},
{
"name": "b8",
"children": [
{
"name": "21f3b978a3a22da2c741a07872da75d54875dd2620f1fbe58f0b0f9d92a9"
}
]
}
]
},
{
"name": "ee",
"children": [
{
"name": "a7",
"children": [
{
"name": "aa2963609015952b7265560957bf41da4bd96554abcdba7d3c9a9acce9fe"
}
]
},
{
"name": "a9",
"children": [
{
"name": "a1b586563ac42851ea993f16ea0eed415ce3753d41265b50f2f25a3e7e91"
}
]
}
]
},
{
"name": "ef",
"children": [
{
"name": "a8",
"children": [
{
"name": "3cd0f8280df9b64e2a15d5f2a87f89a9504addb17b238fb9b5963c9f2b72"
}
]
},
{
"name": "b8",
"children": [
{
"name": "50a9644b8731b4284c1d7aabb3b7daf145de8ce16430c3dfd4fc8dd016cc"
}
]
}
]
},
{
"name": "f0",
"children": [
{
"name": "db",
"children": [
{
"name": "def09ce184e9a8bd86b3296a0292ae835d80cf51f1c3b7b3f94db922437a"
}
]
}
]
},
{
"name": "f2",
"children": [
{
"name": "03",
"children": [
{
"name": "4cdd87c852740b791b19574d50671ec36f9cea73ea8e4795487a8fd804d0"
}
]
},
{
"name": "8d",
"children": [
{
"name": "974109f301d73dda14d7278c08e812ce432dcb3479eaac7e2139f2587d72"
}
]
}
]
},
{
"name": "f3",
"children": [
{
"name": "30",
"children": [
{
"name": "f1b32ab563cfe3dd7fc92b43d9aacbf2d94a801073b58f6cd7cb45d7e883"
}
]
}
]
},
{
"name": "f4",
"children": [
{
"name": "cb",
"children": [
{
"name": "7fedeb7de5b6cf4cb4db8eaa962d6eedeb6be41cba81a81e795136a5401d"
}
]
},
{
"name": "e8",
"children": [
{
"name": "f64e55889c24b95ae1a41df23ab129d0f33551831210bcec228fbe08bc70"
}
]
}
]
},
{
"name": "f6",
"children": [
{
"name": "1e",
"children": [
{
"name": "43dd60366be65c5f8ca04b4eb5db775b532409eea23ecd69af06d23043bd"
}
]
},
{
"name": "44",
"children": [
{
"name": "be954aca6e8bac59ed3f9aeedddfb27aff4451daf808e122d86491a37f77"
}
]
},
{
"name": "45",
"children": [
{
"name": "1c2df76c18314bc869cacb60d2e253056eb007429cad68d34c421088d7be"
}
]
},
{
"name": "c1",
"children": [
{
"name": "6c9c9231215f8aa032f741c4282b0dbfa4bb3c9518bb84675174dd7173b1"
}
]
}
]
},
{
"name": "f7",
"children": [
{
"name": "05",
"children": [
{
"name": "7f3d7ab71095c636b2fd54a6dac2eb353d3ccea0f2bdfebf43fc2a99a7ab"
}
]
},
{
"name": "53",
"children": [
{
"name": "0b0cdb1490c3d5fb51e1939201c88e1611296d3c19790599d35af7d70bd8"
}
]
}
]
},
{
"name": "fa",
"children": [
{
"name": "f7",
"children": [
{
"name": "11f4afdbf609c163af138c0a7c56fcf36a589296ee3f5d5b1de48e3cad64"
}
]
}
]
},
{
"name": "fb",
"children": [
{
"name": "9c",
"children": [
{
"name": "9895b84e9e0839de47cb507c867efe39e75a98bae9f69ca3b16e28020666"
}
]
}
]
},
{
"name": "fc",
"children": [
{
"name": "ee",
"children": [
{
"name": "fc3e1dd6706bd557d2840d92ff10cdd6928b92fb8c46d2195dfbd8d4b2be"
}
]
}
]
},
{
"name": "fd",
"children": [
{
"name": "f3",
"children": [
{
"name": "7e6bf68e985e99da651cab0d850eaeff1cee7376435a6fc5ffc00fde028b"
}
]
}
]
},
{
"name": "fe",
"children": [
{
"name": "a0",
"children": [
{
"name": "d1dbccdb7070bea42a52a7a2dd2d216d8fd1a66bceaaae8bf7bad3f92731"
}
]
}
]
},
{
"name": "ff",
"children": [
{
"name": "35",
"children": [
{
"name": "a8c67630e81313b6dab703b2939c389fa80084af6535ce4f0f24b99d1088"
}
]
}
]
}
]
},
{
"name": "tmp",
"children": [
{
"name": "1878cfcc"
},
{
"name": "3de9991d"
},
{
"name": "9110744b"
},
{
"name": "96d51911"
},
{
"name": "ffea3283"
}
]
}
]
},
{
"name": "_logs",
"children": [
{
"name": "2026-05-05T10_33_24_296Z-debug-0.log"
},
{
"name": "2026-05-05T10_37_52_952Z-debug-0.log"
},
{
"name": "2026-05-05T10_55_33_099Z-debug-0.log"
},
{
"name": "2026-05-05T11_37_39_054Z-debug-0.log"
}
]
},
{
"name": "_update-notifier-last-checked"
}
]
},
{
"name": ".runtime",
"children": [
{
"name": "mkdocs",
"children": [
{
"name": "docs",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.md"
},
{
"name": "20_rules.md"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_policies.md"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_single_account_modular_mode.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "ADR-0008_qilabs_root.md"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.md"
},
{
"name": "20_templates.md"
},
{
"name": "30_qiserver_setup_runbook.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.md"
},
{
"name": "README.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
},
{
"name": "templates",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.md"
}
]
},
{
"name": "templates",
"children": [
{
"name": "README.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "README.md"
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.md"
},
{
"name": "01_binder_cover_sheet.md"
},
{
"name": "02_print_assembly_and_tab_guide.md"
},
{
"name": "05_master_outline.md"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.md"
},
{
"name": "emergency_grab_sheet.md"
},
{
"name": "executive_care_summary.md"
},
{
"name": "index.md"
},
{
"name": "medication_list.md"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.md"
},
{
"name": "index.md"
},
{
"name": "medication_schedule.md"
},
{
"name": "mobility_hygiene_nutrition_and_logs.md"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.md"
},
{
"name": "medical_history_and_diagnoses.md"
},
{
"name": "provider_directory_and_appointments.md"
},
{
"name": "treatments_health_education_and_visit_notes.md"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.md"
},
{
"name": "index.md"
},
{
"name": "station_map_restock_and_home_safety.md"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.md"
},
{
"name": "caregiver_onboarding_and_communication.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.md"
},
{
"name": "advance_directive_last_wishes_summary.md"
},
{
"name": "index.md"
},
{
"name": "legal_authority_hipaa_poa_summary.md"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.md"
},
{
"name": "QiServer_Service_Truth_Audit.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "docs_staging",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.md"
},
{
"name": "20_rules.md"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_policies.md"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_single_account_modular_mode.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "ADR-0008_qilabs_root.md"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.md"
},
{
"name": "20_templates.md"
},
{
"name": "30_qiserver_setup_runbook.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.md"
},
{
"name": "README.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
},
{
"name": "templates",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.md"
}
]
},
{
"name": "templates",
"children": [
{
"name": "README.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "README.md"
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.md"
},
{
"name": "01_binder_cover_sheet.md"
},
{
"name": "02_print_assembly_and_tab_guide.md"
},
{
"name": "05_master_outline.md"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.md"
},
{
"name": "emergency_grab_sheet.md"
},
{
"name": "executive_care_summary.md"
},
{
"name": "index.md"
},
{
"name": "medication_list.md"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.md"
},
{
"name": "index.md"
},
{
"name": "medication_schedule.md"
},
{
"name": "mobility_hygiene_nutrition_and_logs.md"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.md"
},
{
"name": "medical_history_and_diagnoses.md"
},
{
"name": "provider_directory_and_appointments.md"
},
{
"name": "treatments_health_education_and_visit_notes.md"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.md"
},
{
"name": "index.md"
},
{
"name": "station_map_restock_and_home_safety.md"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.md"
},
{
"name": "caregiver_onboarding_and_communication.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.md"
},
{
"name": "advance_directive_last_wishes_summary.md"
},
{
"name": "index.md"
},
{
"name": "legal_authority_hipaa_poa_summary.md"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.md"
},
{
"name": "QiServer_Service_Truth_Audit.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "runs",
"children": [
{
"name": "20260516-124313-792051",
"children": [
{
"name": "assets",
"children": [
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
}
]
},
{
"name": "docs",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.md"
},
{
"name": "20_rules.md"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_policies.md"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_single_account_modular_mode.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "ADR-0008_qilabs_root.md"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.md"
},
{
"name": "20_templates.md"
},
{
"name": "30_qiserver_setup_runbook.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.md"
},
{
"name": "README.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
},
{
"name": "templates",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.md"
}
]
},
{
"name": "templates",
"children": [
{
"name": "README.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "README.md"
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.md"
},
{
"name": "01_binder_cover_sheet.md"
},
{
"name": "02_print_assembly_and_tab_guide.md"
},
{
"name": "05_master_outline.md"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.md"
},
{
"name": "emergency_grab_sheet.md"
},
{
"name": "executive_care_summary.md"
},
{
"name": "index.md"
},
{
"name": "medication_list.md"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.md"
},
{
"name": "index.md"
},
{
"name": "medication_schedule.md"
},
{
"name": "mobility_hygiene_nutrition_and_logs.md"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.md"
},
{
"name": "medical_history_and_diagnoses.md"
},
{
"name": "provider_directory_and_appointments.md"
},
{
"name": "treatments_health_education_and_visit_notes.md"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.md"
},
{
"name": "index.md"
},
{
"name": "station_map_restock_and_home_safety.md"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.md"
},
{
"name": "caregiver_onboarding_and_communication.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.md"
},
{
"name": "advance_directive_last_wishes_summary.md"
},
{
"name": "index.md"
},
{
"name": "legal_authority_hipaa_poa_summary.md"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.md"
},
{
"name": "QiServer_Service_Truth_Audit.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "mkdocs.generated.yml"
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
},
{
"name": "site",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.html"
},
{
"name": "20_rules.html"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.html"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_policies.html"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.html"
},
{
"name": "ADR-0001_blueprint_scope.html"
},
{
"name": "ADR-0002_single_domain_rule.html"
},
{
"name": "ADR-0003_band_model.html"
},
{
"name": "ADR-0004_single_account_modular_mode.html"
},
{
"name": "ADR-0005_fleet_orchestration.html"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.html"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.html"
},
{
"name": "ADR-0008_qilabs_root.html"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.html"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.html"
},
{
"name": "20_system_model.html"
},
{
"name": "30_component_map.html"
},
{
"name": "40_service_boundaries.html"
},
{
"name": "50_data_flow.html"
},
{
"name": "60_device_model.html"
},
{
"name": "70_runtime_zones.html"
},
{
"name": "index.html"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.html"
},
{
"name": "10_infrastructure_layout.html"
},
{
"name": "110_front_matter.html"
},
{
"name": "120_storage.html"
},
{
"name": "130_placement_rules.html"
},
{
"name": "140_exports.html"
},
{
"name": "150_qievidence.html"
},
{
"name": "160_vectorization_pipeline.html"
},
{
"name": "20_bands.html"
},
{
"name": "30_domains.html"
},
{
"name": "40_subdomains.html"
},
{
"name": "50_namespace_registry.html"
},
{
"name": "60_directory_tree.html"
},
{
"name": "70_object_model.html"
},
{
"name": "80_objects.html"
},
{
"name": "90_schema.html"
},
{
"name": "index.html"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.html"
},
{
"name": "index.html"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.html"
},
{
"name": "cockpit.html"
},
{
"name": "docker_compose.html"
},
{
"name": "gethomepage.html"
},
{
"name": "index.html"
},
{
"name": "portainer.html"
},
{
"name": "tailscale.html"
},
{
"name": "uptime_kuma.html"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.html"
},
{
"name": "runtime.html"
},
{
"name": "runtime_profile.html"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.html"
},
{
"name": "index.html"
},
{
"name": "portal.html"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.html"
},
{
"name": "index.html"
},
{
"name": "neo4j.html"
},
{
"name": "ollama.html"
},
{
"name": "open_webui.html"
},
{
"name": "qdrant.html"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.html"
},
{
"name": "nocodb.html"
},
{
"name": "obsidian_qidocs.html"
},
{
"name": "paperless.html"
},
{
"name": "wikijs.html"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.html"
},
{
"name": "index.html"
},
{
"name": "n8n.html"
},
{
"name": "qiledger.html"
},
{
"name": "solidtime.html"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.html"
},
{
"name": "portal_api.html"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.html"
},
{
"name": "system_workers.html"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.html"
},
{
"name": "index.html"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.html"
},
{
"name": "operator_tools.html"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.html"
},
{
"name": "public_interfaces.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.html"
},
{
"name": "20_templates.html"
},
{
"name": "30_qiserver_setup_runbook.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.html"
},
{
"name": "20_glossary.html"
},
{
"name": "30_migration_notes.html"
},
{
"name": "40_legacy_csv_migration_plan.html"
},
{
"name": "50_legacy_salvage.html"
},
{
"name": "60_qiaccess_start_legacy_quarantine.html"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.html"
},
{
"name": "index.html"
},
{
"name": "qi_os_home_blueprint.html"
},
{
"name": "tech_stack_markmind.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.html"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.html"
},
{
"name": "diagrams.html"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.html"
}
]
},
{
"name": "templates",
"children": [
{
"name": "adr_template.html"
},
{
"name": "appendix_template.html"
},
{
"name": "artifact_template.html"
},
{
"name": "index.html"
},
{
"name": "note_template.html"
},
{
"name": "operational_template.html"
},
{
"name": "page_template.html"
},
{
"name": "registry_reference_template.html"
},
{
"name": "section_index_template.html"
},
{
"name": "standard_template.html"
},
{
"name": "templates.html"
}
]
}
]
},
{
"name": "file-index.json"
},
{
"name": "index.html"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.html"
},
{
"name": "01_binder_cover_sheet.html"
},
{
"name": "02_print_assembly_and_tab_guide.html"
},
{
"name": "05_master_outline.html"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.html"
},
{
"name": "emergency_grab_sheet.html"
},
{
"name": "executive_care_summary.html"
},
{
"name": "index.html"
},
{
"name": "medication_list.html"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.html"
},
{
"name": "index.html"
},
{
"name": "medication_schedule.html"
},
{
"name": "mobility_hygiene_nutrition_and_logs.html"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.html"
},
{
"name": "medical_history_and_diagnoses.html"
},
{
"name": "provider_directory_and_appointments.html"
},
{
"name": "treatments_health_education_and_visit_notes.html"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.html"
},
{
"name": "index.html"
},
{
"name": "station_map_restock_and_home_safety.html"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.html"
},
{
"name": "caregiver_onboarding_and_communication.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.html"
},
{
"name": "advance_directive_last_wishes_summary.html"
},
{
"name": "index.html"
},
{
"name": "legal_authority_hipaa_poa_summary.html"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.html"
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.html"
},
{
"name": "master_map.html"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "404.html"
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.html"
},
{
"name": "QiServer_Service_Truth_Audit.html"
},
{
"name": "docs_alignment_audit_20260512_020923.html"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.html"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.html"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.html"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.html"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.html"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.html"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.html"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.html"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.html"
}
]
},
{
"name": "assets",
"children": [
{
"name": "images",
"children": [
{
"name": "favicon.png"
}
]
},
{
"name": "javascripts",
"children": [
{
"name": "bundle.e71a0d61.min.js"
},
{
"name": "bundle.e71a0d61.min.js.map"
},
{
"name": "lunr",
"children": [
{
"name": "min",
"children": [
{
"name": "lunr.ar.min.js"
},
{
"name": "lunr.da.min.js"
},
{
"name": "lunr.de.min.js"
},
{
"name": "lunr.du.min.js"
},
{
"name": "lunr.el.min.js"
},
{
"name": "lunr.es.min.js"
},
{
"name": "lunr.fi.min.js"
},
{
"name": "lunr.fr.min.js"
},
{
"name": "lunr.he.min.js"
},
{
"name": "lunr.hi.min.js"
},
{
"name": "lunr.hu.min.js"
},
{
"name": "lunr.hy.min.js"
},
{
"name": "lunr.it.min.js"
},
{
"name": "lunr.ja.min.js"
},
{
"name": "lunr.jp.min.js"
},
{
"name": "lunr.kn.min.js"
},
{
"name": "lunr.ko.min.js"
},
{
"name": "lunr.multi.min.js"
},
{
"name": "lunr.nl.min.js"
},
{
"name": "lunr.no.min.js"
},
{
"name": "lunr.pt.min.js"
},
{
"name": "lunr.ro.min.js"
},
{
"name": "lunr.ru.min.js"
},
{
"name": "lunr.sa.min.js"
},
{
"name": "lunr.stemmer.support.min.js"
},
{
"name": "lunr.sv.min.js"
},
{
"name": "lunr.ta.min.js"
},
{
"name": "lunr.te.min.js"
},
{
"name": "lunr.th.min.js"
},
{
"name": "lunr.tr.min.js"
},
{
"name": "lunr.vi.min.js"
},
{
"name": "lunr.zh.min.js"
}
]
},
{
"name": "tinyseg.js"
},
{
"name": "wordcut.js"
}
]
},
{
"name": "workers",
"children": [
{
"name": "search.7a47a382.min.js"
},
{
"name": "search.7a47a382.min.js.map"
}
]
}
]
},
{
"name": "stylesheets",
"children": [
{
"name": "main.618322db.min.css"
},
{
"name": "main.618322db.min.css.map"
},
{
"name": "palette.ab4e12ef.min.css"
},
{
"name": "palette.ab4e12ef.min.css.map"
}
]
}
]
},
{
"name": "blueprint_master_map-mindmap.html"
},
{
"name": "index.html"
},
{
"name": "search",
"children": [
{
"name": "search_index.json"
}
]
},
{
"name": "sitemap.xml"
},
{
"name": "sitemap.xml.gz"
}
]
}
]
},
{
"name": "20260516-124401-780243",
"children": [
{
"name": "assets",
"children": [
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
}
]
},
{
"name": "docs",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.md"
},
{
"name": "20_rules.md"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_policies.md"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_single_account_modular_mode.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "ADR-0008_qilabs_root.md"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.md"
},
{
"name": "20_templates.md"
},
{
"name": "30_qiserver_setup_runbook.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.md"
},
{
"name": "README.md"
},
{
"name": "index.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
},
{
"name": "templates",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "index.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
},
{
"name": "templates",
"children": [
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.md"
},
{
"name": "01_binder_cover_sheet.md"
},
{
"name": "02_print_assembly_and_tab_guide.md"
},
{
"name": "05_master_outline.md"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.md"
},
{
"name": "emergency_grab_sheet.md"
},
{
"name": "executive_care_summary.md"
},
{
"name": "index.md"
},
{
"name": "medication_list.md"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.md"
},
{
"name": "index.md"
},
{
"name": "medication_schedule.md"
},
{
"name": "mobility_hygiene_nutrition_and_logs.md"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.md"
},
{
"name": "medical_history_and_diagnoses.md"
},
{
"name": "provider_directory_and_appointments.md"
},
{
"name": "treatments_health_education_and_visit_notes.md"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.md"
},
{
"name": "index.md"
},
{
"name": "station_map_restock_and_home_safety.md"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.md"
},
{
"name": "caregiver_onboarding_and_communication.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.md"
},
{
"name": "advance_directive_last_wishes_summary.md"
},
{
"name": "index.md"
},
{
"name": "legal_authority_hipaa_poa_summary.md"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.md"
},
{
"name": "QiServer_Service_Truth_Audit.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "mkdocs.generated.yml"
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
},
{
"name": "site",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.html"
},
{
"name": "20_rules.html"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.html"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_policies.html"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.html"
},
{
"name": "ADR-0001_blueprint_scope.html"
},
{
"name": "ADR-0002_single_domain_rule.html"
},
{
"name": "ADR-0003_band_model.html"
},
{
"name": "ADR-0004_single_account_modular_mode.html"
},
{
"name": "ADR-0005_fleet_orchestration.html"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.html"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.html"
},
{
"name": "ADR-0008_qilabs_root.html"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.html"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.html"
},
{
"name": "20_system_model.html"
},
{
"name": "30_component_map.html"
},
{
"name": "40_service_boundaries.html"
},
{
"name": "50_data_flow.html"
},
{
"name": "60_device_model.html"
},
{
"name": "70_runtime_zones.html"
},
{
"name": "index.html"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.html"
},
{
"name": "10_infrastructure_layout.html"
},
{
"name": "110_front_matter.html"
},
{
"name": "120_storage.html"
},
{
"name": "130_placement_rules.html"
},
{
"name": "140_exports.html"
},
{
"name": "150_qievidence.html"
},
{
"name": "160_vectorization_pipeline.html"
},
{
"name": "20_bands.html"
},
{
"name": "30_domains.html"
},
{
"name": "40_subdomains.html"
},
{
"name": "50_namespace_registry.html"
},
{
"name": "60_directory_tree.html"
},
{
"name": "70_object_model.html"
},
{
"name": "80_objects.html"
},
{
"name": "90_schema.html"
},
{
"name": "index.html"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.html"
},
{
"name": "index.html"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.html"
},
{
"name": "cockpit.html"
},
{
"name": "docker_compose.html"
},
{
"name": "gethomepage.html"
},
{
"name": "index.html"
},
{
"name": "portainer.html"
},
{
"name": "tailscale.html"
},
{
"name": "uptime_kuma.html"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.html"
},
{
"name": "runtime.html"
},
{
"name": "runtime_profile.html"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.html"
},
{
"name": "index.html"
},
{
"name": "portal.html"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.html"
},
{
"name": "index.html"
},
{
"name": "neo4j.html"
},
{
"name": "ollama.html"
},
{
"name": "open_webui.html"
},
{
"name": "qdrant.html"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.html"
},
{
"name": "nocodb.html"
},
{
"name": "obsidian_qidocs.html"
},
{
"name": "paperless.html"
},
{
"name": "wikijs.html"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.html"
},
{
"name": "index.html"
},
{
"name": "n8n.html"
},
{
"name": "qiledger.html"
},
{
"name": "solidtime.html"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.html"
},
{
"name": "portal_api.html"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.html"
},
{
"name": "system_workers.html"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.html"
},
{
"name": "index.html"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.html"
},
{
"name": "operator_tools.html"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.html"
},
{
"name": "public_interfaces.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.html"
},
{
"name": "20_templates.html"
},
{
"name": "30_qiserver_setup_runbook.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.html"
},
{
"name": "20_glossary.html"
},
{
"name": "30_migration_notes.html"
},
{
"name": "40_legacy_csv_migration_plan.html"
},
{
"name": "50_legacy_salvage.html"
},
{
"name": "60_qiaccess_start_legacy_quarantine.html"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.html"
},
{
"name": "index.html"
},
{
"name": "qi_os_home_blueprint.html"
},
{
"name": "tech_stack_markmind.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.html"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.html"
},
{
"name": "diagrams.html"
},
{
"name": "index.html"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.html"
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
},
{
"name": "templates",
"children": [
{
"name": "adr_template.html"
},
{
"name": "appendix_template.html"
},
{
"name": "artifact_template.html"
},
{
"name": "index.html"
},
{
"name": "note_template.html"
},
{
"name": "operational_template.html"
},
{
"name": "page_template.html"
},
{
"name": "registry_reference_template.html"
},
{
"name": "section_index_template.html"
},
{
"name": "standard_template.html"
},
{
"name": "templates.html"
}
]
}
]
},
{
"name": "file-index.json"
},
{
"name": "index.html"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.html"
},
{
"name": "01_binder_cover_sheet.html"
},
{
"name": "02_print_assembly_and_tab_guide.html"
},
{
"name": "05_master_outline.html"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.html"
},
{
"name": "emergency_grab_sheet.html"
},
{
"name": "executive_care_summary.html"
},
{
"name": "index.html"
},
{
"name": "medication_list.html"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.html"
},
{
"name": "index.html"
},
{
"name": "medication_schedule.html"
},
{
"name": "mobility_hygiene_nutrition_and_logs.html"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.html"
},
{
"name": "medical_history_and_diagnoses.html"
},
{
"name": "provider_directory_and_appointments.html"
},
{
"name": "treatments_health_education_and_visit_notes.html"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.html"
},
{
"name": "index.html"
},
{
"name": "station_map_restock_and_home_safety.html"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.html"
},
{
"name": "caregiver_onboarding_and_communication.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.html"
},
{
"name": "advance_directive_last_wishes_summary.html"
},
{
"name": "index.html"
},
{
"name": "legal_authority_hipaa_poa_summary.html"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.html"
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.html"
},
{
"name": "master_map.html"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "404.html"
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.html"
},
{
"name": "QiServer_Service_Truth_Audit.html"
},
{
"name": "docs_alignment_audit_20260512_020923.html"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.html"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.html"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.html"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.html"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.html"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.html"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.html"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.html"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.html"
}
]
},
{
"name": "assets",
"children": [
{
"name": "images",
"children": [
{
"name": "favicon.png"
}
]
},
{
"name": "javascripts",
"children": [
{
"name": "bundle.e71a0d61.min.js"
},
{
"name": "bundle.e71a0d61.min.js.map"
},
{
"name": "lunr",
"children": [
{
"name": "min",
"children": [
{
"name": "lunr.ar.min.js"
},
{
"name": "lunr.da.min.js"
},
{
"name": "lunr.de.min.js"
},
{
"name": "lunr.du.min.js"
},
{
"name": "lunr.el.min.js"
},
{
"name": "lunr.es.min.js"
},
{
"name": "lunr.fi.min.js"
},
{
"name": "lunr.fr.min.js"
},
{
"name": "lunr.he.min.js"
},
{
"name": "lunr.hi.min.js"
},
{
"name": "lunr.hu.min.js"
},
{
"name": "lunr.hy.min.js"
},
{
"name": "lunr.it.min.js"
},
{
"name": "lunr.ja.min.js"
},
{
"name": "lunr.jp.min.js"
},
{
"name": "lunr.kn.min.js"
},
{
"name": "lunr.ko.min.js"
},
{
"name": "lunr.multi.min.js"
},
{
"name": "lunr.nl.min.js"
},
{
"name": "lunr.no.min.js"
},
{
"name": "lunr.pt.min.js"
},
{
"name": "lunr.ro.min.js"
},
{
"name": "lunr.ru.min.js"
},
{
"name": "lunr.sa.min.js"
},
{
"name": "lunr.stemmer.support.min.js"
},
{
"name": "lunr.sv.min.js"
},
{
"name": "lunr.ta.min.js"
},
{
"name": "lunr.te.min.js"
},
{
"name": "lunr.th.min.js"
},
{
"name": "lunr.tr.min.js"
},
{
"name": "lunr.vi.min.js"
},
{
"name": "lunr.zh.min.js"
}
]
},
{
"name": "tinyseg.js"
},
{
"name": "wordcut.js"
}
]
},
{
"name": "workers",
"children": [
{
"name": "search.7a47a382.min.js"
},
{
"name": "search.7a47a382.min.js.map"
}
]
}
]
},
{
"name": "stylesheets",
"children": [
{
"name": "main.618322db.min.css"
},
{
"name": "main.618322db.min.css.map"
},
{
"name": "palette.ab4e12ef.min.css"
},
{
"name": "palette.ab4e12ef.min.css.map"
}
]
}
]
},
{
"name": "blueprint_master_map-mindmap.html"
},
{
"name": "index.html"
},
{
"name": "search",
"children": [
{
"name": "search_index.json"
}
]
},
{
"name": "sitemap.xml"
},
{
"name": "sitemap.xml.gz"
}
]
}
]
},
{
"name": "20260516-124432-319210",
"children": [
{
"name": "assets",
"children": [
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
}
]
},
{
"name": "docs",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.md"
},
{
"name": "20_rules.md"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_policies.md"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.md"
},
{
"name": "ADR-0001_blueprint_scope.md"
},
{
"name": "ADR-0002_single_domain_rule.md"
},
{
"name": "ADR-0003_band_model.md"
},
{
"name": "ADR-0004_single_account_modular_mode.md"
},
{
"name": "ADR-0005_fleet_orchestration.md"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "ADR-0008_qilabs_root.md"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.md"
},
{
"name": "20_templates.md"
},
{
"name": "30_qiserver_setup_runbook.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.md"
},
{
"name": "index.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
},
{
"name": "templates",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "index.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
},
{
"name": "templates",
"children": [
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.md"
},
{
"name": "01_binder_cover_sheet.md"
},
{
"name": "02_print_assembly_and_tab_guide.md"
},
{
"name": "05_master_outline.md"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.md"
},
{
"name": "emergency_grab_sheet.md"
},
{
"name": "executive_care_summary.md"
},
{
"name": "index.md"
},
{
"name": "medication_list.md"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.md"
},
{
"name": "index.md"
},
{
"name": "medication_schedule.md"
},
{
"name": "mobility_hygiene_nutrition_and_logs.md"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.md"
},
{
"name": "medical_history_and_diagnoses.md"
},
{
"name": "provider_directory_and_appointments.md"
},
{
"name": "treatments_health_education_and_visit_notes.md"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.md"
},
{
"name": "index.md"
},
{
"name": "station_map_restock_and_home_safety.md"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.md"
},
{
"name": "caregiver_onboarding_and_communication.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.md"
},
{
"name": "advance_directive_last_wishes_summary.md"
},
{
"name": "index.md"
},
{
"name": "legal_authority_hipaa_poa_summary.md"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.md"
},
{
"name": "QiServer_Service_Truth_Audit.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "mkdocs.generated.yml"
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
},
{
"name": "site",
"children": [
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles.html"
},
{
"name": "20_rules.html"
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.html"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_policies.html"
},
{
"name": "50_decisions",
"children": [
{
"name": "ADR-0000_template.html"
},
{
"name": "ADR-0001_blueprint_scope.html"
},
{
"name": "ADR-0002_single_domain_rule.html"
},
{
"name": "ADR-0003_band_model.html"
},
{
"name": "ADR-0004_single_account_modular_mode.html"
},
{
"name": "ADR-0005_fleet_orchestration.html"
},
{
"name": "ADR-0006_narrative_and_knowledge_consolidation.html"
},
{
"name": "ADR-0007_unified_front_matter_and_progressive_doc_topology.html"
},
{
"name": "ADR-0008_qilabs_root.html"
},
{
"name": "ADR-0009_backup_server_control_plane_and_public_edge_pattern.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.html"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.html"
},
{
"name": "20_system_model.html"
},
{
"name": "30_component_map.html"
},
{
"name": "40_service_boundaries.html"
},
{
"name": "50_data_flow.html"
},
{
"name": "60_device_model.html"
},
{
"name": "70_runtime_zones.html"
},
{
"name": "index.html"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.html"
},
{
"name": "10_infrastructure_layout.html"
},
{
"name": "110_front_matter.html"
},
{
"name": "120_storage.html"
},
{
"name": "130_placement_rules.html"
},
{
"name": "140_exports.html"
},
{
"name": "150_qievidence.html"
},
{
"name": "160_vectorization_pipeline.html"
},
{
"name": "20_bands.html"
},
{
"name": "30_domains.html"
},
{
"name": "40_subdomains.html"
},
{
"name": "50_namespace_registry.html"
},
{
"name": "60_directory_tree.html"
},
{
"name": "70_object_model.html"
},
{
"name": "80_objects.html"
},
{
"name": "90_schema.html"
},
{
"name": "index.html"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.html"
},
{
"name": "index.html"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.html"
},
{
"name": "cockpit.html"
},
{
"name": "docker_compose.html"
},
{
"name": "gethomepage.html"
},
{
"name": "index.html"
},
{
"name": "portainer.html"
},
{
"name": "tailscale.html"
},
{
"name": "uptime_kuma.html"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.html"
},
{
"name": "runtime.html"
},
{
"name": "runtime_profile.html"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.html"
},
{
"name": "index.html"
},
{
"name": "portal.html"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.html"
},
{
"name": "index.html"
},
{
"name": "neo4j.html"
},
{
"name": "ollama.html"
},
{
"name": "open_webui.html"
},
{
"name": "qdrant.html"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.html"
},
{
"name": "nocodb.html"
},
{
"name": "obsidian_qidocs.html"
},
{
"name": "paperless.html"
},
{
"name": "wikijs.html"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.html"
},
{
"name": "index.html"
},
{
"name": "n8n.html"
},
{
"name": "qiledger.html"
},
{
"name": "solidtime.html"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.html"
},
{
"name": "portal_api.html"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.html"
},
{
"name": "system_workers.html"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.html"
},
{
"name": "index.html"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.html"
},
{
"name": "operator_tools.html"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.html"
},
{
"name": "public_interfaces.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases.html"
},
{
"name": "20_templates.html"
},
{
"name": "30_qiserver_setup_runbook.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.html"
},
{
"name": "20_glossary.html"
},
{
"name": "30_migration_notes.html"
},
{
"name": "40_legacy_csv_migration_plan.html"
},
{
"name": "50_legacy_salvage.html"
},
{
"name": "60_qiaccess_start_legacy_quarantine.html"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "QiAccess_Start_Blueprint.html"
},
{
"name": "index.html"
},
{
"name": "qi_os_home_blueprint.html"
},
{
"name": "tech_stack_markmind.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.html"
},
{
"name": "diagrams",
"children": [
{
"name": "blueprint_map.html"
},
{
"name": "diagrams.html"
},
{
"name": "index.html"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_QiOS_Master_Document.jpg"
},
{
"name": "images.html"
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
},
{
"name": "templates",
"children": [
{
"name": "adr_template.html"
},
{
"name": "appendix_template.html"
},
{
"name": "artifact_template.html"
},
{
"name": "index.html"
},
{
"name": "note_template.html"
},
{
"name": "operational_template.html"
},
{
"name": "page_template.html"
},
{
"name": "registry_reference_template.html"
},
{
"name": "section_index_template.html"
},
{
"name": "standard_template.html"
},
{
"name": "templates.html"
}
]
}
]
},
{
"name": "file-index.json"
},
{
"name": "index.html"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "10_flow",
"children": [
{
"name": "10_inbox",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_life_areas",
"children": [
{
"name": "10_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_people",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_finance_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_knowledge",
"children": [
{
"name": "10_data",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_reference",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_people",
"children": [
{
"name": "10_holistic_care_binder",
"children": [
{
"name": "00_start_here.html"
},
{
"name": "01_binder_cover_sheet.html"
},
{
"name": "02_print_assembly_and_tab_guide.html"
},
{
"name": "05_master_outline.html"
},
{
"name": "10_fast_access",
"children": [
{
"name": "emergency_contacts_and_safety.html"
},
{
"name": "emergency_grab_sheet.html"
},
{
"name": "executive_care_summary.html"
},
{
"name": "index.html"
},
{
"name": "medication_list.html"
}
]
},
{
"name": "20_daily_operations",
"children": [
{
"name": "daily_care_plan.html"
},
{
"name": "index.html"
},
{
"name": "medication_schedule.html"
},
{
"name": "mobility_hygiene_nutrition_and_logs.html"
}
]
},
{
"name": "30_medical",
"children": [
{
"name": "index.html"
},
{
"name": "medical_history_and_diagnoses.html"
},
{
"name": "provider_directory_and_appointments.html"
},
{
"name": "treatments_health_education_and_visit_notes.html"
}
]
},
{
"name": "40_home_and_supplies",
"children": [
{
"name": "equipment_and_supply_inventory.html"
},
{
"name": "index.html"
},
{
"name": "station_map_restock_and_home_safety.html"
}
]
},
{
"name": "50_care_team",
"children": [
{
"name": "care_team_directory_and_roles.html"
},
{
"name": "caregiver_onboarding_and_communication.html"
},
{
"name": "index.html"
}
]
},
{
"name": "60_legal_admin_end_of_life",
"children": [
{
"name": "administrative_access_and_after_death_checklist.html"
},
{
"name": "advance_directive_last_wishes_summary.html"
},
{
"name": "index.html"
},
{
"name": "legal_authority_hipaa_poa_summary.html"
}
]
},
{
"name": "70_goals_and_review",
"children": [
{
"name": "goals_progress_and_review.html"
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_system",
"children": [
{
"name": "index.html"
},
{
"name": "master_map.html"
}
]
},
{
"name": "20_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_business",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_archive",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "404.html"
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.html"
}
]
},
{
"name": "QiAccess_Start_Current_State_Audit.html"
},
{
"name": "QiServer_Service_Truth_Audit.html"
},
{
"name": "docs_alignment_audit_20260512_020923.html"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.html"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.html"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.html"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.html"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.html"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.html"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.html"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.html"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.html"
}
]
},
{
"name": "assets",
"children": [
{
"name": "images",
"children": [
{
"name": "favicon.png"
}
]
},
{
"name": "javascripts",
"children": [
{
"name": "bundle.e71a0d61.min.js"
},
{
"name": "bundle.e71a0d61.min.js.map"
},
{
"name": "lunr",
"children": [
{
"name": "min",
"children": [
{
"name": "lunr.ar.min.js"
},
{
"name": "lunr.da.min.js"
},
{
"name": "lunr.de.min.js"
},
{
"name": "lunr.du.min.js"
},
{
"name": "lunr.el.min.js"
},
{
"name": "lunr.es.min.js"
},
{
"name": "lunr.fi.min.js"
},
{
"name": "lunr.fr.min.js"
},
{
"name": "lunr.he.min.js"
},
{
"name": "lunr.hi.min.js"
},
{
"name": "lunr.hu.min.js"
},
{
"name": "lunr.hy.min.js"
},
{
"name": "lunr.it.min.js"
},
{
"name": "lunr.ja.min.js"
},
{
"name": "lunr.jp.min.js"
},
{
"name": "lunr.kn.min.js"
},
{
"name": "lunr.ko.min.js"
},
{
"name": "lunr.multi.min.js"
},
{
"name": "lunr.nl.min.js"
},
{
"name": "lunr.no.min.js"
},
{
"name": "lunr.pt.min.js"
},
{
"name": "lunr.ro.min.js"
},
{
"name": "lunr.ru.min.js"
},
{
"name": "lunr.sa.min.js"
},
{
"name": "lunr.stemmer.support.min.js"
},
{
"name": "lunr.sv.min.js"
},
{
"name": "lunr.ta.min.js"
},
{
"name": "lunr.te.min.js"
},
{
"name": "lunr.th.min.js"
},
{
"name": "lunr.tr.min.js"
},
{
"name": "lunr.vi.min.js"
},
{
"name": "lunr.zh.min.js"
}
]
},
{
"name": "tinyseg.js"
},
{
"name": "wordcut.js"
}
]
},
{
"name": "workers",
"children": [
{
"name": "search.7a47a382.min.js"
},
{
"name": "search.7a47a382.min.js.map"
}
]
}
]
},
{
"name": "stylesheets",
"children": [
{
"name": "main.618322db.min.css"
},
{
"name": "main.618322db.min.css.map"
},
{
"name": "palette.ab4e12ef.min.css"
},
{
"name": "palette.ab4e12ef.min.css.map"
}
]
}
]
},
{
"name": "blueprint_master_map-mindmap.html"
},
{
"name": "index.html"
},
{
"name": "search",
"children": [
{
"name": "search_index.json"
}
]
},
{
"name": "sitemap.xml"
},
{
"name": "sitemap.xml.gz"
}
]
}
]
},
{
"name": "20260518-115319-679021",
"children": [
{
"name": "assets",
"children": [
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
}
]
},
{
"name": "docs",
"children": [
{
"name": ".gitignore"
},
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_standards",
"children": [
{
"name": "content_metadata_profile.yaml"
},
{
"name": "index.md"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_decisions",
"children": [
{
"name": "adr-0000_template.md"
},
{
"name": "adr-0001_blueprint_scope.md"
},
{
"name": "adr-0002_single_domain_rule.md"
},
{
"name": "adr-0003_band_model.md"
},
{
"name": "adr-0004_single_account_modular_mode.md"
},
{
"name": "adr-0005_fleet_orchestration.md"
},
{
"name": "adr-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "adr-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "adr-0008_qilabs_root.md"
},
{
"name": "adr-0009_backup_server_control_plane_and_public_edge_pattern.md"
},
{
"name": "index.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "index.md"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "external_integrations.md"
},
{
"name": "index.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "index.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "admin.md"
},
{
"name": "carelite.md"
},
{
"name": "firefly.md"
},
{
"name": "index.md"
},
{
"name": "portal.md"
},
{
"name": "roadmap.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "aider.md"
},
{
"name": "index.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless.md"
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "activitywatch.md"
},
{
"name": "index.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "data_pipelines.md"
},
{
"name": "index.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_qiserver",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_dev_history",
"children": [
{
"name": "2026-05-16_dev_session_directory_markmind_mapper.md"
},
{
"name": "index.md"
}
]
},
{
"name": "40_dev_testing",
"children": [
{
"name": "index.md"
},
{
"name": "momscare",
"children": [
{
"name": "2026-05-17_momcare_app_qa_checklist.md"
},
{
"name": "index.md"
}
]
},
{
"name": "qiaccessstart",
"children": [
{
"name": "2026-05-17_qiaccess_start_qa_checklist.md"
},
{
"name": "index.md"
}
]
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "70_repo_sync_status_20260516.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "index.md"
},
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "qiaccess_start_blueprint.md"
},
{
"name": "readme.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "2026-05-17_supabase_markmind.md"
},
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "index.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_qios_master_document.jpg"
},
{
"name": "images.md"
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
},
{
"name": "templates",
"children": [
{
"name": "2026-05-16_dev_session_template.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "index.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "readme.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "Untitled mindmap.md"
},
{
"name": "file-index.json"
},
{
"name": "index.md"
},
{
"name": "readme.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_people",
"children": []
},
{
"name": "40_system",
"children": []
},
{
"name": "50_business",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "_templates",
"children": []
},
{
"name": "index.md"
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "index.md"
},
{
"name": "qiaccess_start_current_state_audit.md"
},
{
"name": "qiserver_service_truth_audit.md"
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
},
{
"name": "index.md"
}
]
},
{
"name": "mkdocs.generated.yml"
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
}
]
}
]
}
]
},
{
"name": "preview.err.log"
},
{
"name": "preview.out.log"
}
]
},
{
"name": "README.md"
},
{
"name": "dist",
"children": [
{
"name": "assets",
"children": [
{
"name": "CapturePage-DVAvCCks.js"
},
{
"name": "DevSessionCapturePage-Bs6Eu-Xs.js"
},
{
"name": "InsightsPage-CMMPXJnf.js"
},
{
"name": "KnowledgePage-FAijYi0I.js"
},
{
"name": "MemoryPage-CayorBEh.js"
},
{
"name": "QuickCapturePage-DYDk8MWx.js"
},
{
"name": "StartPage-D8H2NyfU.js"
},
{
"name": "SystemAccessPage-QT4Zfaua.js"
},
{
"name": "SystemBlueprintPage-C7RlBXt0.js"
},
{
"name": "SystemDiagnosticsPage-CJdg-PPc.js"
},
{
"name": "SystemIntegrationsPage-BOc8jn6N.js"
},
{
"name": "SystemLayout-BXiBiRz9.js"
},
{
"name": "SystemOverviewPage-N0I7Xb8m.js"
},
{
"name": "SystemRoadmapPage-BJAbpwE0.js"
},
{
"name": "SystemSectionPage-ys09T1wh.js"
},
{
"name": "SystemSecurityPage-B11LFBBz.js"
},
{
"name": "SystemServerPage-ClFNg1R0.js"
},
{
"name": "SystemSettingsPage-Cy_ekWYI.js"
},
{
"name": "SystemStoragePage-BaXsrJ_b.js"
},
{
"name": "captureDraftStore-BgjFn8Y2.js"
},
{
"name": "captureLabels-CG9_Pz74.js"
},
{
"name": "flow-vendor-BZV40eAE.css"
},
{
"name": "flow-vendor-DsXXakbC.js"
},
{
"name": "index-Ma7C-DBc.css"
},
{
"name": "index-jhEQsN2R.js"
},
{
"name": "react-vendor-DzL9owjO.js"
},
{
"name": "systemModules-CJ_9GJ0a.js"
},
{
"name": "vendor-DYjcNqPT.js"
}
]
},
{
"name": "index.html"
}
]
},
{
"name": "docs",
"children": [
{
"name": ".gitignore"
},
{
"name": ".obsidian-qidocs",
"children": [
{
"name": "app.json"
},
{
"name": "appearance.json"
},
{
"name": "canvas.json"
},
{
"name": "community-plugins.json"
},
{
"name": "core-plugins.json"
},
{
"name": "file-recovery.json"
},
{
"name": "graph.json"
},
{
"name": "plugins",
"children": [
{
"name": "auto-classifier",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "better-export-pdf",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "book-smith",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "dataview",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "export-to-html",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
}
]
},
{
"name": "file-tree-alternative",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "homepage",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "local-graphql",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "nexus-ai-chat-importer",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-enhancing-export",
"children": [
{
"name": "lua",
"children": [
{
"name": "citefilter.lua"
},
{
"name": "markdown+hugo.lua"
},
{
"name": "markdown.lua"
},
{
"name": "math_block.lua"
},
{
"name": "newline_to_para.lua"
},
{
"name": "pdf.lua"
},
{
"name": "polyfill.lua"
},
{
"name": "shift_headings.lua"
},
{
"name": "url.lua"
}
]
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
},
{
"name": "textemplate",
"children": [
{
"name": "dissertation.tex"
},
{
"name": "neurips.sty"
},
{
"name": "neurips.tex"
}
]
}
]
},
{
"name": "obsidian-icon-folder",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-importer",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-linter",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-markmind",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-mind-map",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
}
]
},
{
"name": "obsidian-pandoc",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-style-settings",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "obsidian-tasks-plugin",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "omnisearch",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "smart-connections",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "table-editor-obsidian",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "tag-wrangler",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
}
]
},
{
"name": "templater-obsidian",
"children": [
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
},
{
"name": "webpage-html-export",
"children": [
{
"name": "data.json"
},
{
"name": "main.js"
},
{
"name": "manifest.json"
},
{
"name": "styles.css"
}
]
}
]
},
{
"name": "templates.json"
},
{
"name": "types.json"
},
{
"name": "webviewer.json"
},
{
"name": "workspace.json"
}
]
},
{
"name": ".smart-env",
"children": [
{
"name": "embedding_models",
"children": [
{
"name": "embedding_models.ajson"
}
]
},
{
"name": "event_logs",
"children": [
{
"name": "event_logs.ajson"
}
]
},
{
"name": "multi",
"children": [
{
"name": "10_blueprint_10_governance_01_principles_md.ajson"
},
{
"name": "10_blueprint_10_governance_02_agent_rules_md.ajson"
},
{
"name": "10_blueprint_10_governance_03_standards_md.ajson"
},
{
"name": "10_blueprint_10_governance_04_registry_md.ajson"
},
{
"name": "10_blueprint_10_governance_05_policies_md.ajson"
},
{
"name": "10_blueprint_10_governance_06_decisions_md.ajson"
},
{
"name": "10_blueprint_10_governance__index_md.ajson"
},
{
"name": "10_blueprint_20_architecture_01_identity_md.ajson"
},
{
"name": "10_blueprint_20_architecture_02_component_map_md.ajson"
},
{
"name": "10_blueprint_20_architecture_03_system_model_md.ajson"
},
{
"name": "10_blueprint_20_architecture_04_device_model_md.ajson"
},
{
"name": "10_blueprint_20_architecture_05_runtime_zones_md.ajson"
},
{
"name": "10_blueprint_20_architecture_06_service_boundaries_md.ajson"
},
{
"name": "10_blueprint_20_architecture_07_data_flow_md.ajson"
},
{
"name": "10_blueprint_20_architecture__index_md.ajson"
},
{
"name": "10_blueprint_30_data_01_infrastructure_layout_md.ajson"
},
{
"name": "10_blueprint_30_data_02_bands_md.ajson"
},
{
"name": "10_blueprint_30_data_03_domains_md.ajson"
},
{
"name": "10_blueprint_30_data_04_subdomains_md.ajson"
},
{
"name": "10_blueprint_30_data_05_namespace_registry_md.ajson"
},
{
"name": "10_blueprint_30_data_06_directory_tree_md.ajson"
},
{
"name": "10_blueprint_30_data_07_object_model_md.ajson"
},
{
"name": "10_blueprint_30_data_08_objects_md.ajson"
},
{
"name": "10_blueprint_30_data_09_placement_rules_md.ajson"
},
{
"name": "10_blueprint_30_data_10_schema_md.ajson"
},
{
"name": "10_blueprint_30_data_11_front_matter_md.ajson"
},
{
"name": "10_blueprint_30_data_12_metadata_md.ajson"
},
{
"name": "10_blueprint_30_data_13_storage_md.ajson"
},
{
"name": "10_blueprint_30_data_14_exports_md.ajson"
},
{
"name": "10_blueprint_30_data_15_qievidence_md.ajson"
},
{
"name": "10_blueprint_30_data_16_structure_md.ajson"
},
{
"name": "10_blueprint_30_data__index_md.ajson"
},
{
"name": "10_blueprint_40_compute_01_apis_md.ajson"
},
{
"name": "10_blueprint_40_compute_02_workers_md.ajson"
},
{
"name": "10_blueprint_40_compute_03_pipelines_md.ajson"
},
{
"name": "10_blueprint_40_compute_04_integrations_md.ajson"
},
{
"name": "10_blueprint_40_compute_05_runtime_md.ajson"
},
{
"name": "10_blueprint_40_compute_06_qiserver_runtime_profile_md.ajson"
},
{
"name": "10_blueprint_40_compute_07_tech_stack_md.ajson"
},
{
"name": "10_blueprint_40_compute__index_md.ajson"
},
{
"name": "10_blueprint_50_applications_01_portal_md.ajson"
},
{
"name": "10_blueprint_50_applications_02_admin_md.ajson"
},
{
"name": "10_blueprint_50_applications_03_tools_md.ajson"
},
{
"name": "10_blueprint_50_applications_04_interfaces_md.ajson"
},
{
"name": "10_blueprint_50_applications__index_md.ajson"
},
{
"name": "10_blueprint_60_operations_01_cases_md.ajson"
},
{
"name": "10_blueprint_60_operations_02_templates_md.ajson"
},
{
"name": "10_blueprint_60_operations_03_qiserver_setup_runbook_md.ajson"
},
{
"name": "10_blueprint_60_operations__index_md.ajson"
},
{
"name": "10_blueprint_70_appendices_01_changelog_md.ajson"
},
{
"name": "10_blueprint_70_appendices_02_glossary_md.ajson"
},
{
"name": "10_blueprint_70_appendices_03_migration_notes_md.ajson"
},
{
"name": "10_blueprint_70_appendices_04_legacy_csv_migration_plan_md.ajson"
},
{
"name": "10_blueprint_70_appendices_05_legacy_salvage_md.ajson"
},
{
"name": "10_blueprint_70_appendices_06_qiaccess_start_legacy_quarantine_md.ajson"
},
{
"name": "10_blueprint_70_appendices_07_superseded_sources_qi_os_home_blueprint_md.ajson"
},
{
"name": "10_blueprint_70_appendices_07_superseded_sources_qiaccess_start_blueprint_md.ajson"
},
{
"name": "10_blueprint_70_appendices_07_superseded_sources_readme_md.ajson"
},
{
"name": "10_blueprint_70_appendices_07_superseded_sources_tech_stack_markmind_md.ajson"
},
{
"name": "10_blueprint__index_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0000_template_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0001_blueprint_scope_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0002_single_domain_rule_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0003_band_model_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0004_single_account_modular_mode_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0005_fleet_orchestration_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0006_narrative_and_knowledge_consolidation_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0007_unified_front_matter_and_progressive_doc_topology_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0008_qilabs_root_md.ajson"
},
{
"name": "10_blueprint_adr_adr-0009_backup_server_control_plane_and_public_edge_pattern_md.ajson"
},
{
"name": "10_blueprint_adr_adr_md.ajson"
},
{
"name": "10_blueprint_assets_diagrams_blueprint_map_md.ajson"
},
{
"name": "10_blueprint_readme_md.ajson"
},
{
"name": "10_blueprint_templates__index_md.ajson"
},
{
"name": "10_blueprint_templates_adr_template_md.ajson"
},
{
"name": "10_blueprint_templates_appendix_template_md.ajson"
},
{
"name": "10_blueprint_templates_artifact_template_md.ajson"
},
{
"name": "10_blueprint_templates_note_template_md.ajson"
},
{
"name": "10_blueprint_templates_operational_template_md.ajson"
},
{
"name": "10_blueprint_templates_page_template_md.ajson"
},
{
"name": "10_blueprint_templates_readme_md.ajson"
},
{
"name": "10_blueprint_templates_registry_reference_template_md.ajson"
},
{
"name": "10_blueprint_templates_section_index_template_md.ajson"
},
{
"name": "10_blueprint_templates_standard_template_md.ajson"
},
{
"name": "10_blueprint_templates_templates_md.ajson"
},
{
"name": "10_core_10_governance_10_principles__index_md.ajson"
},
{
"name": "10_core_10_governance_20_rules__index_md.ajson"
},
{
"name": "10_core_10_governance_30_standards__index_md.ajson"
},
{
"name": "10_core_10_governance_40_policies__index_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions__index_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0000_template_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0001_blueprint_scope_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0002_single_domain_rule_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0003_band_model_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0004_single_account_modular_mode_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0005_fleet_orchestration_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0006_narrative_and_knowledge_consolidation_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0007_unified_front_matter_and_progressive_doc_topology_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0008_qilabs_root_md.ajson"
},
{
"name": "10_core_10_governance_50_decisions_adr-0009_backup_server_control_plane_and_public_edge_pattern_md.ajson"
},
{
"name": "10_core_10_governance_60_registry__index_md.ajson"
},
{
"name": "10_core_10_governance__index_md.ajson"
},
{
"name": "10_core_20_structure_10_identity_md.ajson"
},
{
"name": "10_core_20_structure_20_system_model_md.ajson"
},
{
"name": "10_core_20_structure_30_component_map_md.ajson"
},
{
"name": "10_core_20_structure_40_service_boundaries_md.ajson"
},
{
"name": "10_core_20_structure_50_data_flow_md.ajson"
},
{
"name": "10_core_20_structure_60_device_model_md.ajson"
},
{
"name": "10_core_20_structure_70_runtime_zones_md.ajson"
},
{
"name": "10_core_20_structure__index_md.ajson"
},
{
"name": "10_core_30_data_100_metadata_md.ajson"
},
{
"name": "10_core_30_data_10_infrastructure_layout_md.ajson"
},
{
"name": "10_core_30_data_110_front_matter_md.ajson"
},
{
"name": "10_core_30_data_120_storage_md.ajson"
},
{
"name": "10_core_30_data_130_placement_rules_md.ajson"
},
{
"name": "10_core_30_data_140_exports_md.ajson"
},
{
"name": "10_core_30_data_150_qievidence_md.ajson"
},
{
"name": "10_core_30_data_160_vectorization_pipeline_md.ajson"
},
{
"name": "10_core_30_data_20_bands_md.ajson"
},
{
"name": "10_core_30_data_30_domains_md.ajson"
},
{
"name": "10_core_30_data_40_subdomains_md.ajson"
},
{
"name": "10_core_30_data_50_namespace_registry_md.ajson"
},
{
"name": "10_core_30_data_60_directory_tree_md.ajson"
},
{
"name": "10_core_30_data_70_object_model_md.ajson"
},
{
"name": "10_core_30_data_80_objects_md.ajson"
},
{
"name": "10_core_30_data_90_schema_md.ajson"
},
{
"name": "10_core_30_data__index_md.ajson"
},
{
"name": "10_core_40_service_apps_100_integrations__index_md.ajson"
},
{
"name": "10_core_40_service_apps_100_integrations_external_integrations_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure__index_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_cloudflare_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_cockpit_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_docker_compose_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_gethomepage_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_portainer_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_tailscale_md.ajson"
},
{
"name": "10_core_40_service_apps_10_infrastructure_uptime_kuma_md.ajson"
},
{
"name": "10_core_40_service_apps_110_qiserver__index_md.ajson"
},
{
"name": "10_core_40_service_apps_110_qiserver_runtime_md.ajson"
},
{
"name": "10_core_40_service_apps_110_qiserver_runtime_profile_md.ajson"
},
{
"name": "10_core_40_service_apps_120_applications__index_md.ajson"
},
{
"name": "10_core_40_service_apps_120_applications_admin_md.ajson"
},
{
"name": "10_core_40_service_apps_120_applications_portal_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute__index_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute_aider_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute_neo4j_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute_ollama_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute_open_webui_md.ajson"
},
{
"name": "10_core_40_service_apps_20_ai_compute_qdrant_md.ajson"
},
{
"name": "10_core_40_service_apps_30_capture__index_md.ajson"
},
{
"name": "10_core_40_service_apps_30_capture_nocodb_md.ajson"
},
{
"name": "10_core_40_service_apps_30_capture_obsidian_qidocs_md.ajson"
},
{
"name": "10_core_40_service_apps_30_capture_paperless_md.ajson"
},
{
"name": "10_core_40_service_apps_30_capture_wikijs_md.ajson"
},
{
"name": "10_core_40_service_apps_40_productivity__index_md.ajson"
},
{
"name": "10_core_40_service_apps_40_productivity_activitywatch_md.ajson"
},
{
"name": "10_core_40_service_apps_40_productivity_n8n_md.ajson"
},
{
"name": "10_core_40_service_apps_40_productivity_qiledger_md.ajson"
},
{
"name": "10_core_40_service_apps_40_productivity_solidtime_md.ajson"
},
{
"name": "10_core_40_service_apps_50_apis__index_md.ajson"
},
{
"name": "10_core_40_service_apps_50_apis_portal_api_md.ajson"
},
{
"name": "10_core_40_service_apps_60_workers__index_md.ajson"
},
{
"name": "10_core_40_service_apps_60_workers_system_workers_md.ajson"
},
{
"name": "10_core_40_service_apps_70_pipelines__index_md.ajson"
},
{
"name": "10_core_40_service_apps_70_pipelines_data_pipelines_md.ajson"
},
{
"name": "10_core_40_service_apps_80_tools__index_md.ajson"
},
{
"name": "10_core_40_service_apps_80_tools_operator_tools_md.ajson"
},
{
"name": "10_core_40_service_apps_90_interfaces__index_md.ajson"
},
{
"name": "10_core_40_service_apps_90_interfaces_public_interfaces_md.ajson"
},
{
"name": "10_core_40_service_apps__index_md.ajson"
},
{
"name": "10_core_50_operations_10_cases__index_md.ajson"
},
{
"name": "10_core_50_operations_20_qiserver__index_md.ajson"
},
{
"name": "10_core_50_operations_30_dev_history_2026-05-16_dev_session_directory_markmind_mapper_md.ajson"
},
{
"name": "10_core_50_operations_40_dev_testing_momscare_2026-05-17_momcare_app_qa_checklist_md.ajson"
},
{
"name": "10_core_50_operations_40_dev_testing_qiaccessstart_2026-05-17_qiaccess_start_qa_checklist_md.ajson"
},
{
"name": "10_core_50_operations__index_md.ajson"
},
{
"name": "10_core_60_knowledge_10_changelog_md.ajson"
},
{
"name": "10_core_60_knowledge_20_glossary_md.ajson"
},
{
"name": "10_core_60_knowledge_30_migration_notes_md.ajson"
},
{
"name": "10_core_60_knowledge_40_legacy_csv_migration_plan_md.ajson"
},
{
"name": "10_core_60_knowledge_50_legacy_salvage_md.ajson"
},
{
"name": "10_core_60_knowledge_60_qiaccess_start_legacy_quarantine_md.ajson"
},
{
"name": "10_core_60_knowledge_70_repo_sync_status_20260516_md.ajson"
},
{
"name": "10_core_60_knowledge_90_superseded_sources_qi_os_home_blueprint_md.ajson"
},
{
"name": "10_core_60_knowledge_90_superseded_sources_qiaccess_start_blueprint_md.ajson"
},
{
"name": "10_core_60_knowledge_90_superseded_sources_readme_md.ajson"
},
{
"name": "10_core_60_knowledge_90_superseded_sources_tech_stack_markmind_md.ajson"
},
{
"name": "10_core_60_knowledge__index_md.ajson"
},
{
"name": "10_core_70_assets_diagrams_2026-05-17_supabase_markmind_md.ajson"
},
{
"name": "10_core_70_assets_diagrams_blueprint_map_md.ajson"
},
{
"name": "10_core_70_assets_templates_2026-05-16_dev_session_template_md.ajson"
},
{
"name": "10_core_70_assets_templates__index_md.ajson"
},
{
"name": "10_core_70_assets_templates_adr_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_appendix_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_artifact_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_note_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_operational_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_page_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_readme_md.ajson"
},
{
"name": "10_core_70_assets_templates_registry_reference_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_section_index_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_standard_template_md.ajson"
},
{
"name": "10_core_70_assets_templates_templates_md.ajson"
},
{
"name": "10_core_Untitled_mindmap_md.ajson"
},
{
"name": "10_core__index_md.ajson"
},
{
"name": "10_core_readme_md.ajson"
},
{
"name": "20_qinexus_00_inbox__index_md.ajson"
},
{
"name": "20_qinexus_100_data__index_md.ajson"
},
{
"name": "20_qinexus_10_flow_10_inbox__index_md.ajson"
},
{
"name": "20_qinexus_10_flow_20_workbench__index_md.ajson"
},
{
"name": "20_qinexus_10_flow_30_timeline__index_md.ajson"
},
{
"name": "20_qinexus_10_flow__index_md.ajson"
},
{
"name": "20_qinexus_10_workbench_10_inbox__index_md.ajson"
},
{
"name": "20_qinexus_10_workbench_20_workbench__index_md.ajson"
},
{
"name": "20_qinexus_10_workbench_30_timeline__index_md.ajson"
},
{
"name": "20_qinexus_10_workbench__index_md.ajson"
},
{
"name": "20_qinexus_110_reference__index_md.ajson"
},
{
"name": "20_qinexus_120_archive__index_md.ajson"
},
{
"name": "20_qinexus_130_system__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas_10_life__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas_20_people__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas_30_business__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas_40_finance_legal__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas_50_tech__index_md.ajson"
},
{
"name": "20_qinexus_20_life_areas__index_md.ajson"
},
{
"name": "20_qinexus_20_timeline__index_md.ajson"
},
{
"name": "20_qinexus_30_knowledge_10_data__index_md.ajson"
},
{
"name": "20_qinexus_30_knowledge_20_reference__index_md.ajson"
},
{
"name": "20_qinexus_30_knowledge__index_md.ajson"
},
{
"name": "20_qinexus_30_life_10_life__index_md.ajson"
},
{
"name": "20_qinexus_30_life_20_people__index_md.ajson"
},
{
"name": "20_qinexus_30_life_30_business__index_md.ajson"
},
{
"name": "20_qinexus_30_life_40_finance_legal__index_md.ajson"
},
{
"name": "20_qinexus_30_life_50_tech__index_md.ajson"
},
{
"name": "20_qinexus_30_life__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_00_start_here_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_01_binder_cover_sheet_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_02_print_assembly_and_tab_guide_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_05_master_outline_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_10_fast_access__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_10_fast_access_emergency_contacts_and_safety_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_10_fast_access_emergency_grab_sheet_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_10_fast_access_executive_care_summary_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_10_fast_access_medication_list_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_20_daily_operations__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_20_daily_operations_daily_care_plan_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_20_daily_operations_medication_schedule_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_20_daily_operations_mobility_hygiene_nutrition_and_logs_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_30_medical__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_30_medical_medical_history_and_diagnoses_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_30_medical_provider_directory_and_appointments_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_30_medical_treatments_health_education_and_visit_notes_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_40_home_and_supplies__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_40_home_and_supplies_equipment_and_supply_inventory_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_40_home_and_supplies_station_map_restock_and_home_safety_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_50_care_team__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_50_care_team_care_team_directory_and_roles_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_50_care_team_caregiver_onboarding_and_communication_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_60_legal_admin_end_of_life__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_60_legal_admin_end_of_life_administrative_access_and_after_death_checklist_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_60_legal_admin_end_of_life_advance_directive_last_wishes_summary_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_60_legal_admin_end_of_life_legal_authority_hipaa_poa_summary_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_70_goals_and_review__index_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder_70_goals_and_review_goals_progress_and_review_md.ajson"
},
{
"name": "20_qinexus_40_people_10_holistic_care_binder__index_md.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive__index_md.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive_archive_operating_guide_md.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive_files_template-patient_30_clinical_history_health_history_starter_txt.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive_ocr_and_rag_pipeline_md.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive_patient_folder_template_md.ajson"
},
{
"name": "20_qinexus_40_people_20_patient_record_archive_pdf_repo_rules_md.ajson"
},
{
"name": "20_qinexus_40_people__index_md.ajson"
},
{
"name": "20_qinexus_40_system_10_system__index_md.ajson"
},
{
"name": "20_qinexus_40_system_10_system_master_map_md.ajson"
},
{
"name": "20_qinexus_40_system_20_assets__index_md.ajson"
},
{
"name": "20_qinexus_40_system__index_md.ajson"
},
{
"name": "20_qinexus_50_business__index_md.ajson"
},
{
"name": "20_qinexus_60_finance__index_md.ajson"
},
{
"name": "20_qinexus_70_legal__index_md.ajson"
},
{
"name": "20_qinexus_80_tech__index_md.ajson"
},
{
"name": "20_qinexus_90_archive__index_md.ajson"
},
{
"name": "20_qinexus_90_assets__index_md.ajson"
},
{
"name": "20_qinexus_90_assets_master_map_md.ajson"
},
{
"name": "20_qinexus__index_md.ajson"
},
{
"name": "30_audits_docs_alignment_audit_20260512_020923_md.ajson"
},
{
"name": "30_audits_docs_alignment_audit_20260512_031245_md.ajson"
},
{
"name": "30_audits_docs_alignment_audit_20260512_035449_md.ajson"
},
{
"name": "30_audits_docs_alignment_audit_20260512_040828_md.ajson"
},
{
"name": "30_audits_qiaccess_start_current_state_audit_md.ajson"
},
{
"name": "30_audits_qiserver_service_truth_audit_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion_10_paperless__index_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion_20_drive_imports__index_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion_30_manual_uploads__index_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion_40_email_exports__index_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion_50_web_clips__index_md.ajson"
},
{
"name": "30_qiarchive_10_ingestion__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction_10_ocr_text__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction_20_markdown_exports__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction_30_transcripts__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction_40_metadata__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction_50_clean_text__index_md.ajson"
},
{
"name": "30_qiarchive_20_extraction__index_md.ajson"
},
{
"name": "30_qiarchive_30_chunking_10_chunk_manifests__index_md.ajson"
},
{
"name": "30_qiarchive_30_chunking_20_chunk_rules__index_md.ajson"
},
{
"name": "30_qiarchive_30_chunking_30_source_maps__index_md.ajson"
},
{
"name": "30_qiarchive_30_chunking_40_quality_checks__index_md.ajson"
},
{
"name": "30_qiarchive_30_chunking__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings_10_qdrant__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings_20_embedding_models__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings_30_collection_manifests__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings_40_rebuild_logs__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings_50_vector_quality_tests__index_md.ajson"
},
{
"name": "30_qiarchive_40_embeddings__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs_10_graphify__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs_20_markmap__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs_30_entity_maps__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs_40_relationship_exports__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs_50_graph_quality_reports__index_md.ajson"
},
{
"name": "30_qiarchive_50_graphs__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval_10_rag_profiles__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval_20_query_logs__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval_30_retrieval_tests__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval_40_prompt_contexts__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval_50_source_citation_tests__index_md.ajson"
},
{
"name": "30_qiarchive_60_retrieval__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory_10_gina_profiles__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory_20_durable_facts__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory_30_session_summaries__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory_40_preference_maps__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory_50_context_packs__index_md.ajson"
},
{
"name": "30_qiarchive_70_memory__index_md.ajson"
},
{
"name": "30_qiarchive_80_sync_backups_10_index_snapshots__index_md.ajson"
},
{
"name": "30_qiarchive_80_sync_backups_20_backup_manifests__index_md.ajson"
},
{
"name": "30_qiarchive_80_sync_backups_30_restore_points__index_md.ajson"
},
{
"name": "30_qiarchive_80_sync_backups_40_sync_manifests__index_md.ajson"
},
{
"name": "30_qiarchive_80_sync_backups__index_md.ajson"
},
{
"name": "30_qiarchive__index_md.ajson"
},
{
"name": "40_system_10_logs__index_md.ajson"
},
{
"name": "40_system_20_audits__index_md.ajson"
},
{
"name": "40_system_30_backups__index_md.ajson"
},
{
"name": "40_system_40_health_checks__index_md.ajson"
},
{
"name": "40_system_50_generated_reports__index_md.ajson"
},
{
"name": "40_system_60_generated_indexes__index_md.ajson"
},
{
"name": "40_system_70_maintenance__index_md.ajson"
},
{
"name": "40_system__index_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_020923_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_031245_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_035449_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_040828_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_043926_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_044141_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_044902_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_052243_md.ajson"
},
{
"name": "40_system_docs_alignment_audit_20260512_052716_md.ajson"
},
{
"name": "40_system_qiaccess_start_current_state_audit_md.ajson"
},
{
"name": "40_system_qiserver_service_truth_audit_md.ajson"
},
{
"name": "_index_md.ajson"
},
{
"name": "blueprint_master_map-mindmap_md.ajson"
}
]
},
{
"name": "smart_components",
"children": []
},
{
"name": "smart_contexts",
"children": []
},
{
"name": "smart_env.json"
}
]
},
{
"name": "10_core",
"children": [
{
"name": "10_governance",
"children": [
{
"name": "10_principles",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_rules",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_standards",
"children": [
{
"name": "_index.md"
},
{
"name": "content_metadata_profile.yaml"
},
{
"name": "metadata_rules.yaml"
},
{
"name": "naming_rules.yaml"
},
{
"name": "pdf_standards.yaml"
},
{
"name": "repo_rules.yaml"
}
]
},
{
"name": "40_policies",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_decisions",
"children": [
{
"name": "_index.md"
},
{
"name": "adr-0000_template.md"
},
{
"name": "adr-0001_blueprint_scope.md"
},
{
"name": "adr-0002_single_domain_rule.md"
},
{
"name": "adr-0003_band_model.md"
},
{
"name": "adr-0004_single_account_modular_mode.md"
},
{
"name": "adr-0005_fleet_orchestration.md"
},
{
"name": "adr-0006_narrative_and_knowledge_consolidation.md"
},
{
"name": "adr-0007_unified_front_matter_and_progressive_doc_topology.md"
},
{
"name": "adr-0008_qilabs_root.md"
},
{
"name": "adr-0009_backup_server_control_plane_and_public_edge_pattern.md"
}
]
},
{
"name": "60_registry",
"children": [
{
"name": "_index.md"
},
{
"name": "band_registry.yaml"
},
{
"name": "deprecation_registry.yaml"
},
{
"name": "domain_registry.yaml"
},
{
"name": "folder_registry.yaml"
},
{
"name": "infrastructure_registry.yaml"
},
{
"name": "realms_registry.yaml"
},
{
"name": "sensitivity_classification.yaml"
},
{
"name": "subdomain_registry.yaml"
},
{
"name": "workspace_realms.yaml"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "20_structure",
"children": [
{
"name": "10_identity.md"
},
{
"name": "20_system_model.md"
},
{
"name": "30_component_map.md"
},
{
"name": "40_service_boundaries.md"
},
{
"name": "50_data_flow.md"
},
{
"name": "60_device_model.md"
},
{
"name": "70_runtime_zones.md"
},
{
"name": "_index.md"
}
]
},
{
"name": "30_data",
"children": [
{
"name": "100_metadata.md"
},
{
"name": "10_infrastructure_layout.md"
},
{
"name": "110_front_matter.md"
},
{
"name": "120_storage.md"
},
{
"name": "130_placement_rules.md"
},
{
"name": "140_exports.md"
},
{
"name": "150_qievidence.md"
},
{
"name": "160_vectorization_pipeline.md"
},
{
"name": "20_bands.md"
},
{
"name": "30_domains.md"
},
{
"name": "40_subdomains.md"
},
{
"name": "50_namespace_registry.md"
},
{
"name": "60_directory_tree.md"
},
{
"name": "70_object_model.md"
},
{
"name": "80_objects.md"
},
{
"name": "90_schema.md"
},
{
"name": "_index.md"
},
{
"name": "schemas",
"children": [
{
"name": "band_registry.schema.json"
}
]
}
]
},
{
"name": "40_service_apps",
"children": [
{
"name": "100_integrations",
"children": [
{
"name": "_index.md"
},
{
"name": "external_integrations.md"
}
]
},
{
"name": "10_infrastructure",
"children": [
{
"name": "_index.md"
},
{
"name": "cloudflare.md"
},
{
"name": "cockpit.md"
},
{
"name": "docker_compose.md"
},
{
"name": "gethomepage.md"
},
{
"name": "portainer.md"
},
{
"name": "tailscale.md"
},
{
"name": "uptime_kuma.md"
}
]
},
{
"name": "110_qiserver",
"children": [
{
"name": "_index.md"
},
{
"name": "runtime.md"
},
{
"name": "runtime_profile.md"
}
]
},
{
"name": "120_applications",
"children": [
{
"name": "_index.md"
},
{
"name": "admin.md"
},
{
"name": "carelite.md"
},
{
"name": "firefly.md"
},
{
"name": "portal.md"
},
{
"name": "qinote",
"children": [
{
"name": "qinote_salvage_extract.md"
}
]
},
{
"name": "roadmap.md"
}
]
},
{
"name": "130_GINA",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_ai_compute",
"children": [
{
"name": "_index.md"
},
{
"name": "aider.md"
},
{
"name": "neo4j.md"
},
{
"name": "ollama.md"
},
{
"name": "open_webui.md"
},
{
"name": "qdrant.md"
}
]
},
{
"name": "30_capture",
"children": [
{
"name": "_index.md"
},
{
"name": "nocodb.md"
},
{
"name": "obsidian_qidocs.md"
},
{
"name": "paperless",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "wikijs.md"
}
]
},
{
"name": "40_productivity",
"children": [
{
"name": "_index.md"
},
{
"name": "activitywatch.md"
},
{
"name": "n8n.md"
},
{
"name": "qiledger.md"
},
{
"name": "solidtime.md"
}
]
},
{
"name": "50_apis",
"children": [
{
"name": "_index.md"
},
{
"name": "portal_api.md"
}
]
},
{
"name": "60_workers",
"children": [
{
"name": "_index.md"
},
{
"name": "system_workers.md"
}
]
},
{
"name": "70_pipelines",
"children": [
{
"name": "_index.md"
},
{
"name": "data_pipelines.md"
}
]
},
{
"name": "80_tools",
"children": [
{
"name": "_index.md"
},
{
"name": "operator_tools.md"
}
]
},
{
"name": "90_interfaces",
"children": [
{
"name": "_index.md"
},
{
"name": "public_interfaces.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "50_operations",
"children": [
{
"name": "10_cases",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_qiserver",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_dev_history",
"children": [
{
"name": "2026-05-16_dev_session_directory_markmind_mapper.md"
},
{
"name": "2026-05-17_open_loop_reset_paperless_ingestion_runbook.md"
}
]
},
{
"name": "40_dev_testing",
"children": [
{
"name": "momscare",
"children": [
{
"name": "2026-05-17_momcare_app_qa_checklist.md"
}
]
},
{
"name": "qiaccessstart",
"children": [
{
"name": "2026-05-17_qiaccess_start_qa_checklist.md"
}
]
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "60_knowledge",
"children": [
{
"name": "10_changelog.md"
},
{
"name": "20_glossary.md"
},
{
"name": "30_migration_notes.md"
},
{
"name": "40_legacy_csv_migration_plan.md"
},
{
"name": "50_legacy_salvage.md"
},
{
"name": "60_qiaccess_start_legacy_quarantine.md"
},
{
"name": "70_repo_sync_status_20260516.md"
},
{
"name": "90_superseded_sources",
"children": [
{
"name": "qi_os_home_blueprint.md"
},
{
"name": "qiaccess_start_blueprint.md"
},
{
"name": "readme.md"
},
{
"name": "tech_stack_markmind.md"
}
]
},
{
"name": "_index.md"
},
{
"name": "indexes",
"children": []
},
{
"name": "maps",
"children": []
}
]
},
{
"name": "70_assets",
"children": [
{
"name": "assets.md"
},
{
"name": "diagrams",
"children": [
{
"name": "2026-05-17_supabase_markmind.md"
},
{
"name": "blueprint_map.md"
},
{
"name": "diagrams.md"
},
{
"name": "markmind-data.json"
},
{
"name": "markmind.html"
}
]
},
{
"name": "images",
"children": [
{
"name": "_qios_master_document.jpg"
},
{
"name": "images.md"
}
]
},
{
"name": "templates",
"children": [
{
"name": "2026-05-16_dev_session_template.md"
},
{
"name": "_index.md"
},
{
"name": "adr_template.md"
},
{
"name": "appendix_template.md"
},
{
"name": "artifact_template.md"
},
{
"name": "note_template.md"
},
{
"name": "operational_template.md"
},
{
"name": "page_template.md"
},
{
"name": "readme.md"
},
{
"name": "registry_reference_template.md"
},
{
"name": "section_index_template.md"
},
{
"name": "standard_template.md"
},
{
"name": "templates.md"
}
]
}
]
},
{
"name": "Untitled mindmap.md"
},
{
"name": "_index.md"
},
{
"name": "file-index.json"
},
{
"name": "readme.md"
},
{
"name": "rebuild.bat"
},
{
"name": "vizvibe.mmd"
}
]
},
{
"name": "20_qinexus",
"children": [
{
"name": "00_inbox",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "100_data",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "10_workbench",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "110_reference",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "120_archive",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "130_system",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_timeline",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_life",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_people",
"children": []
},
{
"name": "40_system",
"children": []
},
{
"name": "50_business",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "60_finance",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "70_legal",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "80_tech",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "90_assets",
"children": [
{
"name": "_index.md"
},
{
"name": "master_map.md"
}
]
},
{
"name": "_index.md"
},
{
"name": "_templates",
"children": []
}
]
},
{
"name": "30_qiarchive",
"children": [
{
"name": "10_ingestion",
"children": [
{
"name": "10_paperless",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_drive_imports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_manual_uploads",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_email_exports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_web_clips",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "20_extraction",
"children": [
{
"name": "10_ocr_text",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_markdown_exports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_transcripts",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_metadata",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_clean_text",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "30_chunking",
"children": [
{
"name": "10_chunk_manifests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_chunk_rules",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_source_maps",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_quality_checks",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "40_embeddings",
"children": [
{
"name": "10_qdrant",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_embedding_models",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_collection_manifests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_rebuild_logs",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_vector_quality_tests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "50_graphs",
"children": [
{
"name": "10_graphify",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_markmap",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_entity_maps",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_relationship_exports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_graph_quality_reports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "60_retrieval",
"children": [
{
"name": "10_rag_profiles",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_query_logs",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_retrieval_tests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_prompt_contexts",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_source_citation_tests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "70_memory",
"children": [
{
"name": "10_gina_profiles",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_durable_facts",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_session_summaries",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_preference_maps",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_context_packs",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "80_sync_backups",
"children": [
{
"name": "10_index_snapshots",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_backup_manifests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_restore_points",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_sync_manifests",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
}
]
},
{
"name": "40_system",
"children": [
{
"name": "10_logs",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "20_audits",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "30_backups",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "40_health_checks",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "50_generated_reports",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "60_generated_indexes",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "70_maintenance",
"children": [
{
"name": "_index.md"
}
]
},
{
"name": "_index.md"
},
{
"name": "docs_alignment_audit_20260512_020923.md"
},
{
"name": "docs_alignment_audit_20260512_020923_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_020923_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_031245.md"
},
{
"name": "docs_alignment_audit_20260512_031245_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_031245_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_035449.md"
},
{
"name": "docs_alignment_audit_20260512_035449_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_035449_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_040828.md"
},
{
"name": "docs_alignment_audit_20260512_040828_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_040828_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_043926.md"
},
{
"name": "docs_alignment_audit_20260512_043926_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_043926_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044141.md"
},
{
"name": "docs_alignment_audit_20260512_044141_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044141_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_044902.md"
},
{
"name": "docs_alignment_audit_20260512_044902_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_044902_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052243.md"
},
{
"name": "docs_alignment_audit_20260512_052243_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052243_summary.csv"
},
{
"name": "docs_alignment_audit_20260512_052716.md"
},
{
"name": "docs_alignment_audit_20260512_052716_findings.csv"
},
{
"name": "docs_alignment_audit_20260512_052716_summary.csv"
},
{
"name": "qiaccess_start_current_state_audit.md"
},
{
"name": "qiserver_service_truth_audit.md"
}
]
},
{
"name": "_index.md"
},
{
"name": "assets",
"children": [
{
"name": "diagrams",
"children": []
}
]
},
{
"name": "blueprint_master_map-mindmap.md"
}
]
},
{
"name": "docs-site",
"children": [
{
"name": "README.md"
},
{
"name": "assets",
"children": [
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
}
]
},
{
"name": "mkdocs.yml"
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
}
]
},
{
"name": "index.html"
},
{
"name": "local",
"children": [
{
"name": ".all-contributorsrc"
},
{
"name": ".codecov.yml"
},
{
"name": ".devcontainer",
"children": [
{
"name": "Dockerfile"
},
{
"name": "devcontainer.json"
},
{
"name": "setup.sh"
}
]
},
{
"name": ".dockerignore"
},
{
"name": ".editorconfig"
},
{
"name": ".gitignore"
},
{
"name": ".pre-commit-config.yaml"
},
{
"name": ".prettierrc.js"
},
{
"name": ".python-version"
},
{
"name": "CODE_OF_CONDUCT.md"
},
{
"name": "CONTRIBUTING.md"
},
{
"name": "Dockerfile"
},
{
"name": "LICENSE"
},
{
"name": "README.md"
},
{
"name": "config",
"children": [
{
"name": "bookmarks.yaml"
},
{
"name": "custom.css"
},
{
"name": "custom.js"
},
{
"name": "docker.yaml"
},
{
"name": "images",
"children": [
{
"name": "banner_dark@2x.png"
},
{
"name": "banner_dark@2x.webp"
},
{
"name": "banner_light@2x.png"
},
{
"name": "banner_light@2x.webp"
},
{
"name": "blossom_valley.jpg"
},
{
"name": "blossom_valley_blur.jpg"
},
{
"name": "favicon.ico"
},
{
"name": "light_squircle@2x.png"
},
{
"name": "light_squircle@2x.webp"
},
{
"name": "widget_stocks_demo.png"
}
]
},
{
"name": "kubernetes.yaml"
},
{
"name": "proxmox.yaml"
},
{
"name": "services.yaml"
},
{
"name": "settings.yaml"
},
{
"name": "widgets.yaml"
}
]
},
{
"name": "crowdin.yml"
},
{
"name": "docker-compose.yml"
},
{
"name": "docker-entrypoint.sh"
},
{
"name": "docs",
"children": [
{
"name": "CNAME"
},
{
"name": "assets",
"children": [
{
"name": "banner_dark@2x.png"
},
{
"name": "banner_dark@2x.webp"
},
{
"name": "banner_light@2x.png"
},
{
"name": "banner_light@2x.webp"
},
{
"name": "blossom_valley.jpg"
},
{
"name": "blossom_valley_blur.jpg"
},
{
"name": "favicon.ico"
},
{
"name": "light_squircle@2x.png"
},
{
"name": "light_squircle@2x.webp"
},
{
"name": "widget_stocks_demo.png"
}
]
},
{
"name": "configs",
"children": [
{
"name": "bookmarks.md"
},
{
"name": "custom-css-js.md"
},
{
"name": "docker.md"
},
{
"name": "index.md"
},
{
"name": "info-widgets.md"
},
{
"name": "kubernetes.md"
},
{
"name": "proxmox.md"
},
{
"name": "services.md"
},
{
"name": "settings.md"
}
]
},
{
"name": "index.md"
},
{
"name": "installation",
"children": [
{
"name": "docker.md"
},
{
"name": "index.md"
},
{
"name": "k8s.md"
},
{
"name": "source.md"
},
{
"name": "unraid.md"
}
]
},
{
"name": "layouts",
"children": [
{
"name": "custom.yml"
}
]
},
{
"name": "more",
"children": [
{
"name": "coverage.md"
},
{
"name": "homepage-move.md"
},
{
"name": "index.md"
},
{
"name": "sponsors.md"
},
{
"name": "translations.md"
}
]
},
{
"name": "overrides",
"children": [
{
"name": "main.html"
}
]
},
{
"name": "stylesheets",
"children": [
{
"name": "extra.css"
}
]
},
{
"name": "troubleshooting",
"children": [
{
"name": "index.md"
}
]
},
{
"name": "widgets",
"children": [
{
"name": "authoring",
"children": [
{
"name": "api.md"
},
{
"name": "component.md"
},
{
"name": "getting-started.md"
},
{
"name": "index.md"
},
{
"name": "metadata.md"
},
{
"name": "proxies.md"
},
{
"name": "translations.md"
},
{
"name": "tutorial.md"
}
]
},
{
"name": "index.md"
},
{
"name": "info",
"children": [
{
"name": "datetime.md"
},
{
"name": "glances.md"
},
{
"name": "greeting.md"
},
{
"name": "index.md"
},
{
"name": "kubernetes.md"
},
{
"name": "logo.md"
},
{
"name": "longhorn.md"
},
{
"name": "openmeteo.md"
},
{
"name": "openweathermap.md"
},
{
"name": "resources.md"
},
{
"name": "search.md"
},
{
"name": "stocks.md"
},
{
"name": "unifi_controller.md"
}
]
},
{
"name": "services",
"children": [
{
"name": "adguard-home.md"
},
{
"name": "apcups.md"
},
{
"name": "arcane.md"
},
{
"name": "argocd.md"
},
{
"name": "atsumeru.md"
},
{
"name": "audiobookshelf.md"
},
{
"name": "authentik.md"
},
{
"name": "autobrr.md"
},
{
"name": "azuredevops.md"
},
{
"name": "backrest.md"
},
{
"name": "bazarr.md"
},
{
"name": "beszel.md"
},
{
"name": "booklore.md"
},
{
"name": "caddy.md"
},
{
"name": "calendar.md"
},
{
"name": "calibre-web.md"
},
{
"name": "changedetectionio.md"
},
{
"name": "channelsdvrserver.md"
},
{
"name": "checkmk.md"
},
{
"name": "cloudflared.md"
},
{
"name": "coin-market-cap.md"
},
{
"name": "crowdsec.md"
},
{
"name": "customapi.md"
},
{
"name": "deluge.md"
},
{
"name": "develancacheui.md"
},
{
"name": "diskstation.md"
},
{
"name": "dispatcharr.md"
},
{
"name": "dockhand.md"
},
{
"name": "downloadstation.md"
},
{
"name": "emby.md"
},
{
"name": "esphome.md"
},
{
"name": "evcc.md"
},
{
"name": "filebrowser.md"
},
{
"name": "fileflows.md"
},
{
"name": "firefly.md"
},
{
"name": "flood.md"
},
{
"name": "freshrss.md"
},
{
"name": "frigate.md"
},
{
"name": "fritzbox.md"
},
{
"name": "gamedig.md"
},
{
"name": "gatus.md"
},
{
"name": "ghostfolio.md"
},
{
"name": "gitea.md"
},
{
"name": "gitlab.md"
},
{
"name": "glances.md"
},
{
"name": "gluetun.md"
},
{
"name": "gotify.md"
},
{
"name": "grafana.md"
},
{
"name": "hdhomerun.md"
},
{
"name": "headscale.md"
},
{
"name": "healthchecks.md"
},
{
"name": "homeassistant.md"
},
{
"name": "homebox.md"
},
{
"name": "homebridge.md"
},
{
"name": "iframe.md"
},
{
"name": "immich.md"
},
{
"name": "index.md"
},
{
"name": "jackett.md"
},
{
"name": "jdownloader.md"
},
{
"name": "jellyfin.md"
},
{
"name": "jellystat.md"
},
{
"name": "karakeep.md"
},
{
"name": "kavita.md"
},
{
"name": "komga.md"
},
{
"name": "komodo.md"
},
{
"name": "kopia.md"
},
{
"name": "lidarr.md"
},
{
"name": "linkwarden.md"
},
{
"name": "lubelogger.md"
},
{
"name": "mailcow.md"
},
{
"name": "mastodon.md"
},
{
"name": "mealie.md"
},
{
"name": "medusa.md"
},
{
"name": "mikrotik.md"
},
{
"name": "minecraft.md"
},
{
"name": "miniflux.md"
},
{
"name": "mjpeg.md"
},
{
"name": "moonraker.md"
},
{
"name": "mylar.md"
},
{
"name": "myspeed.md"
},
{
"name": "navidrome.md"
},
{
"name": "netalertx.md"
},
{
"name": "netdata.md"
},
{
"name": "nextcloud.md"
},
{
"name": "nextdns.md"
},
{
"name": "nginx-proxy-manager.md"
},
{
"name": "nzbget.md"
},
{
"name": "octoprint.md"
},
{
"name": "omada.md"
},
{
"name": "ombi.md"
},
{
"name": "opendtu.md"
},
{
"name": "openmediavault.md"
},
{
"name": "openwrt.md"
},
{
"name": "opnsense.md"
},
{
"name": "pangolin.md"
},
{
"name": "paperlessngx.md"
},
{
"name": "peanut.md"
},
{
"name": "pfsense.md"
},
{
"name": "photoprism.md"
},
{
"name": "pihole.md"
},
{
"name": "plantit.md"
},
{
"name": "plex-tautulli.md"
},
{
"name": "plex.md"
},
{
"name": "portainer.md"
},
{
"name": "prometheus.md"
},
{
"name": "prometheusmetric.md"
},
{
"name": "prowlarr.md"
},
{
"name": "proxmox.md"
},
{
"name": "proxmoxbackupserver.md"
},
{
"name": "pterodactyl.md"
},
{
"name": "pyload.md"
},
{
"name": "qbittorrent.md"
},
{
"name": "qnap.md"
},
{
"name": "radarr.md"
},
{
"name": "readarr.md"
},
{
"name": "romm.md"
},
{
"name": "rutorrent.md"
},
{
"name": "sabnzbd.md"
},
{
"name": "scrutiny.md"
},
{
"name": "seerr.md"
},
{
"name": "slskd.md"
},
{
"name": "sonarr.md"
},
{
"name": "sparkyfitness.md"
},
{
"name": "speedtest-tracker.md"
},
{
"name": "spoolman.md"
},
{
"name": "stash.md"
},
{
"name": "stocks.md"
},
{
"name": "suwayomi.md"
},
{
"name": "swagdashboard.md"
},
{
"name": "syncthing-relay-server.md"
},
{
"name": "tailscale.md"
},
{
"name": "tandoor.md"
},
{
"name": "tdarr.md"
},
{
"name": "technitium.md"
},
{
"name": "tracearr.md"
},
{
"name": "traefik.md"
},
{
"name": "transmission.md"
},
{
"name": "trilium.md"
},
{
"name": "truenas.md"
},
{
"name": "tubearchivist.md"
},
{
"name": "unifi-controller.md"
},
{
"name": "unifi-drive.md"
},
{
"name": "unmanic.md"
},
{
"name": "unraid.md"
},
{
"name": "uptime-kuma.md"
},
{
"name": "uptimerobot.md"
},
{
"name": "urbackup.md"
},
{
"name": "vikunja.md"
},
{
"name": "wallos.md"
},
{
"name": "watchtower.md"
},
{
"name": "wgeasy.md"
},
{
"name": "whatsupdocker.md"
},
{
"name": "xteve.md"
},
{
"name": "yourspotify.md"
},
{
"name": "zabbix.md"
}
]
}
]
}
]
},
{
"name": "eslint.config.mjs"
},
{
"name": "images",
"children": [
{
"name": "1.png"
},
{
"name": "2.png"
},
{
"name": "3.png"
},
{
"name": "4.png"
},
{
"name": "5.png"
},
{
"name": "6.png"
},
{
"name": "banner_dark@2x.png"
},
{
"name": "banner_light@2x.png"
},
{
"name": "icons",
"children": [
{
"name": "coinmarketcap.png"
}
]
}
]
},
{
"name": "jsconfig.json"
},
{
"name": "k3d",
"children": [
{
"name": ".envrc"
},
{
"name": ".gitignore"
},
{
"name": "README.md"
},
{
"name": "Tiltfile"
},
{
"name": "k3d-deploy.sh"
},
{
"name": "k3d-down.sh"
},
{
"name": "k3d-helm-values.yaml"
},
{
"name": "k3d-up.sh"
},
{
"name": "k3d.yaml"
}
]
},
{
"name": "kubernetes.md"
},
{
"name": "mkdocs.yml"
},
{
"name": "next-i18next.config.js"
},
{
"name": "next.config.js"
},
{
"name": "package.json"
},
{
"name": "pnpm-lock.yaml"
},
{
"name": "postcss.config.js"
},
{
"name": "public",
"children": [
{
"name": "android-chrome-192x192.png"
},
{
"name": "android-chrome-512x512.png"
},
{
"name": "apple-touch-icon.png"
},
{
"name": "assets",
"children": [
{
"name": "banner_dark@2x.png"
},
{
"name": "banner_dark@2x.webp"
},
{
"name": "banner_light@2x.png"
},
{
"name": "banner_light@2x.webp"
},
{
"name": "blossom_valley.jpg"
},
{
"name": "blossom_valley_blur.jpg"
},
{
"name": "favicon.ico"
},
{
"name": "light_squircle@2x.png"
},
{
"name": "light_squircle@2x.webp"
},
{
"name": "widget_stocks_demo.png"
}
]
},
{
"name": "favicon-16x16.png"
},
{
"name": "favicon-32x32.png"
},
{
"name": "favicon.ico"
},
{
"name": "homepage.ico"
},
{
"name": "locales",
"children": [
{
"name": "en",
"children": [
{
"name": "common.json"
}
]
},
{
"name": "es",
"children": [
{
"name": "common.json"
}
]
}
]
},
{
"name": "mstile-144x144.png"
},
{
"name": "mstile-150x150.png"
},
{
"name": "mstile-310x150.png"
},
{
"name": "mstile-310x310.png"
},
{
"name": "mstile-70x70.png"
},
{
"name": "safari-pinned-tab.svg"
}
]
},
{
"name": "pyproject.toml"
},
{
"name": "src",
"children": [
{
"name": "components",
"children": [
{
"name": "bookmarks",
"children": [
{
"name": "group.jsx"
},
{
"name": "group.test.jsx"
},
{
"name": "group.transition.test.jsx"
},
{
"name": "item.jsx"
},
{
"name": "item.test.jsx"
},
{
"name": "list.jsx"
},
{
"name": "list.test.jsx"
}
]
},
{
"name": "errorboundry.jsx"
},
{
"name": "errorboundry.test.jsx"
},
{
"name": "favicon.jsx"
},
{
"name": "favicon.test.jsx"
},
{
"name": "quicklaunch.jsx"
},
{
"name": "quicklaunch.test.jsx"
},
{
"name": "resolvedicon.jsx"
},
{
"name": "resolvedicon.test.jsx"
},
{
"name": "services",
"children": [
{
"name": "dropdown.jsx"
},
{
"name": "dropdown.test.jsx"
},
{
"name": "group.jsx"
},
{
"name": "group.test.jsx"
},
{
"name": "group.transition.test.jsx"
},
{
"name": "item.jsx"
},
{
"name": "item.test.jsx"
},
{
"name": "kubernetes-status.jsx"
},
{
"name": "kubernetes-status.test.jsx"
},
{
"name": "list.jsx"
},
{
"name": "list.test.jsx"
},
{
"name": "ping.jsx"
},
{
"name": "ping.test.jsx"
},
{
"name": "proxmox-status.jsx"
},
{
"name": "proxmox-status.test.jsx"
},
{
"name": "site-monitor.jsx"
},
{
"name": "site-monitor.test.jsx"
},
{
"name": "status.jsx"
},
{
"name": "status.test.jsx"
},
{
"name": "widget",
"children": [
{
"name": "block.jsx"
},
{
"name": "block.test.jsx"
},
{
"name": "container.jsx"
},
{
"name": "container.test.jsx"
},
{
"name": "error.jsx"
},
{
"name": "error.test.jsx"
},
{
"name": "highlight-context.jsx"
},
{
"name": "highlight-context.test.jsx"
}
]
},
{
"name": "widget.jsx"
},
{
"name": "widget.test.jsx"
}
]
},
{
"name": "tab.jsx"
},
{
"name": "tab.test.jsx"
},
{
"name": "toggles",
"children": [
{
"name": "color.jsx"
},
{
"name": "color.test.jsx"
},
{
"name": "revalidate.jsx"
},
{
"name": "revalidate.test.jsx"
},
{
"name": "theme.jsx"
},
{
"name": "theme.test.jsx"
}
]
},
{
"name": "version.jsx"
},
{
"name": "version.test.jsx"
},
{
"name": "widgets",
"children": [
{
"name": "datetime",
"children": [
{
"name": "datetime.jsx"
},
{
"name": "datetime.test.jsx"
}
]
},
{
"name": "glances",
"children": [
{
"name": "glances.jsx"
},
{
"name": "glances.test.jsx"
}
]
},
{
"name": "greeting",
"children": [
{
"name": "greeting.jsx"
},
{
"name": "greeting.test.jsx"
}
]
},
{
"name": "kubernetes",
"children": [
{
"name": "kubernetes.jsx"
},
{
"name": "kubernetes.test.jsx"
},
{
"name": "node.jsx"
},
{
"name": "node.test.jsx"
}
]
},
{
"name": "logo",
"children": [
{
"name": "logo.jsx"
},
{
"name": "logo.test.jsx"
}
]
},
{
"name": "longhorn",
"children": [
{
"name": "longhorn.jsx"
},
{
"name": "longhorn.test.jsx"
},
{
"name": "node.jsx"
},
{
"name": "node.test.jsx"
}
]
},
{
"name": "openmeteo",
"children": [
{
"name": "openmeteo.jsx"
},
{
"name": "openmeteo.test.jsx"
}
]
},
{
"name": "openweathermap",
"children": [
{
"name": "weather.jsx"
},
{
"name": "weather.test.jsx"
}
]
},
{
"name": "queue",
"children": [
{
"name": "queueEntry.jsx"
},
{
"name": "queueEntry.test.jsx"
}
]
},
{
"name": "resources",
"children": [
{
"name": "cpu.jsx"
},
{
"name": "cpu.test.jsx"
},
{
"name": "cputemp.jsx"
},
{
"name": "cputemp.test.jsx"
},
{
"name": "disk.jsx"
},
{
"name": "disk.test.jsx"
},
{
"name": "memory.jsx"
},
{
"name": "memory.test.jsx"
},
{
"name": "network.jsx"
},
{
"name": "network.test.jsx"
},
{
"name": "resources.jsx"
},
{
"name": "resources.test.jsx"
},
{
"name": "uptime.jsx"
},
{
"name": "uptime.test.jsx"
},
{
"name": "usage-bar.jsx"
},
{
"name": "usage-bar.test.jsx"
}
]
},
{
"name": "search",
"children": [
{
"name": "search.jsx"
},
{
"name": "search.test.jsx"
}
]
},
{
"name": "stocks",
"children": [
{
"name": "stocks.jsx"
},
{
"name": "stocks.test.jsx"
}
]
},
{
"name": "unifi_console",
"children": [
{
"name": "unifi_console.jsx"
},
{
"name": "unifi_console.test.jsx"
}
]
},
{
"name": "weather",
"children": [
{
"name": "weather.jsx"
},
{
"name": "weather.test.jsx"
}
]
},
{
"name": "widget",
"children": [
{
"name": "container.jsx"
},
{
"name": "container.test.jsx"
},
{
"name": "container_button.jsx"
},
{
"name": "container_button.test.jsx"
},
{
"name": "container_form.jsx"
},
{
"name": "container_form.test.jsx"
},
{
"name": "container_link.jsx"
},
{
"name": "container_link.test.jsx"
},
{
"name": "error.jsx"
},
{
"name": "error.test.jsx"
},
{
"name": "primary_text.jsx"
},
{
"name": "primary_text.test.jsx"
},
{
"name": "raw.jsx"
},
{
"name": "raw.test.jsx"
},
{
"name": "resource.jsx"
},
{
"name": "resource.test.jsx"
},
{
"name": "resources.jsx"
},
{
"name": "resources.test.jsx"
},
{
"name": "secondary_text.jsx"
},
{
"name": "secondary_text.test.jsx"
},
{
"name": "widget_icon.jsx"
},
{
"name": "widget_icon.test.jsx"
},
{
"name": "widget_label.jsx"
},
{
"name": "widget_label.test.jsx"
}
]
},
{
"name": "widget.jsx"
},
{
"name": "widget.test.jsx"
}
]
}
]
},
{
"name": "middleware.js"
},
{
"name": "pages",
"children": [
{
"name": "_app.jsx"
},
{
"name": "_document.jsx"
},
{
"name": "api",
"children": [
{
"name": "bookmarks.js"
},
{
"name": "config",
"children": [
{
"name": "[path].js"
}
]
},
{
"name": "docker",
"children": [
{
"name": "stats",
"children": [
{
"name": "[...service].js"
}
]
},
{
"name": "status",
"children": [
{
"name": "[...service].js"
}
]
}
]
},
{
"name": "hash.js"
},
{
"name": "healthcheck.js"
},
{
"name": "kubernetes",
"children": [
{
"name": "stats",
"children": [
{
"name": "[...service].js"
}
]
},
{
"name": "status",
"children": [
{
"name": "[...service].js"
}
]
}
]
},
{
"name": "ping.js"
},
{
"name": "proxmox",
"children": [
{
"name": "stats",
"children": [
{
"name": "[...service].js"
}
]
}
]
},
{
"name": "releases.js"
},
{
"name": "revalidate.js"
},
{
"name": "search",
"children": [
{
"name": "searchSuggestion.js"
}
]
},
{
"name": "services",
"children": [
{
"name": "index.js"
},
{
"name": "proxy.js"
}
]
},
{
"name": "siteMonitor.js"
},
{
"name": "theme.js"
},
{
"name": "validate.js"
},
{
"name": "widgets",
"children": [
{
"name": "glances.js"
},
{
"name": "index.js"
},
{
"name": "kubernetes.js"
},
{
"name": "longhorn.js"
},
{
"name": "openmeteo.js"
},
{
"name": "openweathermap.js"
},
{
"name": "resources.js"
},
{
"name": "stocks.js"
},
{
"name": "weather.js"
}
]
}
]
},
{
"name": "browserconfig.xml.jsx"
},
{
"name": "index.jsx"
},
{
"name": "robots.txt.js"
},
{
"name": "site.webmanifest.jsx"
}
]
},
{
"name": "styles",
"children": [
{
"name": "font",
"children": [
{
"name": "Manrope.ttf"
},
{
"name": "Manrope.woff2"
}
]
},
{
"name": "globals.css"
},
{
"name": "manrope.css"
},
{
"name": "theme.css"
}
]
},
{
"name": "utils",
"children": [
{
"name": "config",
"children": [
{
"name": "api-response.js"
},
{
"name": "api-response.test.js"
},
{
"name": "config.check-copy.test.js"
},
{
"name": "config.js"
},
{
"name": "config.test.js"
},
{
"name": "docker.js"
},
{
"name": "docker.test.js"
},
{
"name": "kubernetes.js"
},
{
"name": "kubernetes.test.js"
},
{
"name": "proxmox.js"
},
{
"name": "proxmox.test.js"
},
{
"name": "service-helpers.js"
},
{
"name": "service-helpers.test.js"
},
{
"name": "shvl.js"
},
{
"name": "shvl.test.js"
},
{
"name": "widget-helpers.js"
},
{
"name": "widget-helpers.test.js"
}
]
},
{
"name": "contexts",
"children": [
{
"name": "color.jsx"
},
{
"name": "color.test.jsx"
},
{
"name": "settings.jsx"
},
{
"name": "settings.test.jsx"
},
{
"name": "tab.jsx"
},
{
"name": "tab.test.jsx"
},
{
"name": "theme.jsx"
},
{
"name": "theme.test.jsx"
}
]
},
{
"name": "highlights.js"
},
{
"name": "highlights.test.js"
},
{
"name": "hooks",
"children": [
{
"name": "window-focus.js"
},
{
"name": "window-focus.test.jsx"
}
]
},
{
"name": "kubernetes",
"children": [
{
"name": "export.js"
},
{
"name": "export.test.js"
},
{
"name": "httproute-list.js"
},
{
"name": "httproute-list.test.js"
},
{
"name": "ingress-list.js"
},
{
"name": "ingress-list.test.js"
},
{
"name": "resource-helpers.js"
},
{
"name": "resource-helpers.test.js"
},
{
"name": "traefik-list.js"
},
{
"name": "traefik-list.test.js"
},
{
"name": "utils.js"
},
{
"name": "utils.test.js"
}
]
},
{
"name": "layout",
"children": [
{
"name": "columns.js"
},
{
"name": "columns.test.js"
}
]
},
{
"name": "logger.js"
},
{
"name": "logger.test.js"
},
{
"name": "proxy",
"children": [
{
"name": "api-helpers.js"
},
{
"name": "api-helpers.test.js"
},
{
"name": "cookie-jar.js"
},
{
"name": "cookie-jar.test.js"
},
{
"name": "handlers",
"children": [
{
"name": "credentialed.js"
},
{
"name": "credentialed.test.js"
},
{
"name": "generic.js"
},
{
"name": "generic.test.js"
},
{
"name": "jsonrpc.js"
},
{
"name": "jsonrpc.test.js"
},
{
"name": "synology.js"
},
{
"name": "synology.test.js"
},
{
"name": "unifi.js"
}
]
},
{
"name": "http.js"
},
{
"name": "http.test.js"
},
{
"name": "use-widget-api.js"
},
{
"name": "use-widget-api.test.js"
},
{
"name": "validate-widget-data.js"
},
{
"name": "validate-widget-data.test.js"
}
]
},
{
"name": "styles",
"children": [
{
"name": "themes.js"
},
{
"name": "themes.test.js"
}
]
},
{
"name": "weather",
"children": [
{
"name": "condition-map.js"
},
{
"name": "condition-map.test.js"
},
{
"name": "openmeteo-condition-map.js"
},
{
"name": "openmeteo-condition-map.test.js"
},
{
"name": "owm-condition-map.js"
},
{
"name": "owm-condition-map.test.js"
}
]
}
]
},
{
"name": "widgets",
"children": [
{
"name": "adguard",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "apcups",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "arcane",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "argocd",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "atsumeru",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "audiobookshelf",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "authentik",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "autobrr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "azuredevops",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "backrest",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "bazarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "beszel",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "booklore",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "caddy",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "calendar",
"children": [
{
"name": "agenda.jsx"
},
{
"name": "agenda.test.jsx"
},
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "event.jsx"
},
{
"name": "event.test.jsx"
},
{
"name": "integrations",
"children": [
{
"name": "ical.jsx"
},
{
"name": "ical.test.jsx"
},
{
"name": "lidarr.jsx"
},
{
"name": "lidarr.test.jsx"
},
{
"name": "radarr.jsx"
},
{
"name": "radarr.test.jsx"
},
{
"name": "readarr.jsx"
},
{
"name": "readarr.test.jsx"
},
{
"name": "sonarr.jsx"
},
{
"name": "sonarr.test.jsx"
}
]
},
{
"name": "monthly.jsx"
},
{
"name": "monthly.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "calibreweb",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "changedetectionio",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "channelsdvrserver",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "checkmk",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "cloudflared",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "coinmarketcap",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "components.js"
},
{
"name": "crowdsec",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "customapi",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "deluge",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "develancacheui",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "diskstation",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "dispatcharr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "docker",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "stats-helpers.js"
},
{
"name": "stats-helpers.test.js"
}
]
},
{
"name": "dockhand",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "downloadstation",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "emby",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "esphome",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "evcc",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "filebrowser",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "fileflows",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "firefly",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "flood",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "freshrss",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "frigate",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "fritzbox",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gamedig",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gatus",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "ghostfolio",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gitea",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gitlab",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "glances",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "components",
"children": [
{
"name": "block.jsx"
},
{
"name": "block.test.jsx"
},
{
"name": "chart.jsx"
},
{
"name": "chart.test.jsx"
},
{
"name": "chart_dual.jsx"
},
{
"name": "chart_dual.test.jsx"
},
{
"name": "container.jsx"
},
{
"name": "container.test.jsx"
},
{
"name": "custom_tooltip.jsx"
},
{
"name": "custom_tooltip.test.jsx"
},
{
"name": "error.jsx"
},
{
"name": "error.test.jsx"
}
]
},
{
"name": "metrics",
"children": [
{
"name": "containers.jsx"
},
{
"name": "containers.test.jsx"
},
{
"name": "cpu.jsx"
},
{
"name": "cpu.test.jsx"
},
{
"name": "disk.jsx"
},
{
"name": "disk.test.jsx"
},
{
"name": "fs.jsx"
},
{
"name": "fs.test.jsx"
},
{
"name": "gpu.jsx"
},
{
"name": "gpu.test.jsx"
},
{
"name": "info.jsx"
},
{
"name": "info.test.jsx"
},
{
"name": "memory.jsx"
},
{
"name": "memory.test.jsx"
},
{
"name": "net.jsx"
},
{
"name": "net.test.jsx"
},
{
"name": "process.jsx"
},
{
"name": "process.test.jsx"
},
{
"name": "sensor.jsx"
},
{
"name": "sensor.test.jsx"
}
]
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gluetun",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "gotify",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "grafana",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "hdhomerun",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "headscale",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "healthchecks",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "homeassistant",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "homebox",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "homebridge",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "iframe",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "immich",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "jackett",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "jdownloader",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "tools.js"
},
{
"name": "tools.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "jellyfin",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "jellystat",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "karakeep",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "kavita",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "komga",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "komodo",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "kopia",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "kubernetes",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
}
]
},
{
"name": "lidarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "linkwarden",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "lubelogger",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mailcow",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mastodon",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mealie",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "medusa",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mikrotik",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "minecraft",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "miniflux",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mjpeg",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "moonraker",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "mylar",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "myspeed",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "navidrome",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "netalertx",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "netdata",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "nextcloud",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "nextdns",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "npm",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "nzbget",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "octoprint",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "omada",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "ombi",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "opendtu",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "openmediavault",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "methods",
"children": [
{
"name": "downloader_get_downloadlist.jsx"
},
{
"name": "downloader_get_downloadlist.test.jsx"
},
{
"name": "services_get_status.jsx"
},
{
"name": "services_get_status.test.jsx"
},
{
"name": "smart_get_list.jsx"
},
{
"name": "smart_get_list.test.jsx"
}
]
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "openwrt",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "methods",
"children": [
{
"name": "interface.jsx"
},
{
"name": "interface.test.jsx"
},
{
"name": "system.jsx"
},
{
"name": "system.test.jsx"
}
]
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "opnsense",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "overseerr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "pangolin",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "paperlessngx",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "peanut",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "pfsense",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "photoprism",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "pihole",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "plantit",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "plex",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "portainer",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "prometheus",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "prometheusmetric",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "prowlarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "proxmox",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "proxmoxbackupserver",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "proxmoxvm",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
}
]
},
{
"name": "pterodactyl",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "pyload",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "qbittorrent",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "qnap",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "radarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "readarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "romm",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "rutorrent",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "sabnzbd",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "scrutiny",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "seerr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "slskd",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "sonarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "sparkyfitness",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "speedtest",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "spoolman",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "stash",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "stocks",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "strelaysrv",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "suwayomi",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "swagdashboard",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tailscale",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tandoor",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tautulli",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tdarr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "technitium",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tracearr",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "traefik",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "transmission",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "trilium",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "truenas",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "pool.jsx"
},
{
"name": "pool.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "tubearchivist",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "unifi",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "unifi_drive",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "unmanic",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "unraid",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "uptimekuma",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "uptimerobot",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "urbackup",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "vikunja",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "wallos",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "watchtower",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "wgeasy",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "whatsupdocker",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "widgets.js"
},
{
"name": "xteve",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "proxy.js"
},
{
"name": "proxy.test.js"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "yourspotify",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
},
{
"name": "zabbix",
"children": [
{
"name": "component.jsx"
},
{
"name": "component.test.jsx"
},
{
"name": "widget.js"
},
{
"name": "widget.test.js"
}
]
}
]
}
]
},
{
"name": "tailwind.config.js"
},
{
"name": "uv.lock"
}
]
},
{
"name": "package-lock.json"
},
{
"name": "package.json"
},
{
"name": "postcss.config.cjs"
},
{
"name": "run_copy.bat"
},
{
"name": "scripts",
"children": [
{
"name": "enforce_structure.py"
},
{
"name": "generate_markmind.py"
},
{
"name": "normalize_front_matter.bat"
},
{
"name": "normalize_front_matter.py"
},
{
"name": "sync_docs_site.py"
},
{
"name": "update_indexes.py"
}
]
},
{
"name": "src",
"children": [
{
"name": "components",
"children": [
{
"name": "app",
"children": [
{
"name": "App.tsx"
},
{
"name": "routes.tsx"
}
]
},
{
"name": "cards",
"children": [
{
"name": "LaunchCard.tsx"
},
{
"name": "ResourceCard.tsx"
},
{
"name": "ResourceEditorDrawer.tsx"
},
{
"name": "StatusCard.tsx"
}
]
},
{
"name": "command",
"children": []
},
{
"name": "docs",
"children": [
{
"name": "DocLayout.tsx"
},
{
"name": "MDXProvider.tsx"
}
]
},
{
"name": "feedback",
"children": [
{
"name": "FeedbackProvider.tsx"
}
]
},
{
"name": "graph",
"children": [
{
"name": "ResourceDetailPanel.tsx"
},
{
"name": "ResourceNode.tsx"
},
{
"name": "StackMapCanvas.tsx"
},
{
"name": "StackPreview.tsx"
}
]
},
{
"name": "icons",
"children": [
{
"name": "qi-icons.tsx"
}
]
},
{
"name": "layout",
"children": [
{
"name": "AppShell.tsx"
},
{
"name": "AuthBoundary.tsx"
},
{
"name": "Sidebar.tsx"
},
{
"name": "Topbar.tsx"
},
{
"name": "TreeMenu.tsx"
}
]
},
{
"name": "ui",
"children": [
{
"name": "InfoTip.tsx"
}
]
}
]
},
{
"name": "data",
"children": [
{
"name": "blueprintSections.ts"
},
{
"name": "captureModes.ts"
},
{
"name": "launcherApps.ts"
},
{
"name": "resources.ts"
},
{
"name": "roadmapPhases.ts"
},
{
"name": "serviceLinks.ts"
},
{
"name": "storageBuckets.ts"
},
{
"name": "systemModules.ts"
}
]
},
{
"name": "features",
"children": [
{
"name": "01_start",
"children": [
{
"name": "StartPage.tsx"
}
]
},
{
"name": "02_server",
"children": [
{
"name": "ServerPage.tsx"
}
]
},
{
"name": "03_capture",
"children": [
{
"name": "CapturePage.tsx"
},
{
"name": "README.md"
},
{
"name": "captureDraftStore.ts"
},
{
"name": "dev_session",
"children": [
{
"name": "DevSessionCapturePage.tsx"
},
{
"name": "components",
"children": [
{
"name": ".gitkeep"
},
{
"name": "DevSessionArrayField.tsx"
},
{
"name": "RecentDevHistoryList.tsx"
}
]
},
{
"name": "devHistoryApi.ts"
},
{
"name": "devHistoryTypes.ts"
},
{
"name": "devSessionTemplate.ts"
},
{
"name": "hooks",
"children": [
{
"name": ".gitkeep"
},
{
"name": "useDevSessionDraft.ts"
}
]
}
]
},
{
"name": "quick_notes",
"children": [
{
"name": "QuickCapturePage.tsx"
},
{
"name": "components",
"children": [
{
"name": ".gitkeep"
}
]
},
{
"name": "hooks",
"children": [
{
"name": ".gitkeep"
}
]
},
{
"name": "quickNotesApi.ts"
},
{
"name": "quickNotesTypes.ts"
}
]
},
{
"name": "shared",
"children": [
{
"name": "captureLabels.ts"
},
{
"name": "captureRouting.ts"
},
{
"name": "captureTypes.ts"
},
{
"name": "components",
"children": [
{
"name": ".gitkeep"
}
]
}
]
}
]
},
{
"name": "04_knowledge",
"children": [
{
"name": "KnowledgePage.tsx"
}
]
},
{
"name": "05_memory",
"children": [
{
"name": "MemoryPage.tsx"
}
]
},
{
"name": "06_insights",
"children": [
{
"name": "InsightsPage.tsx"
}
]
},
{
"name": "07_system",
"children": [
{
"name": "SystemAccessPage.tsx"
},
{
"name": "SystemBlueprintPage.tsx"
},
{
"name": "SystemDiagnosticsPage.tsx"
},
{
"name": "SystemIntegrationsPage.tsx"
},
{
"name": "SystemLayout.tsx"
},
{
"name": "SystemOverviewPage.tsx"
},
{
"name": "SystemRoadmapPage.tsx"
},
{
"name": "SystemSectionPage.tsx"
},
{
"name": "SystemSecurityPage.tsx"
},
{
"name": "SystemServerPage.tsx"
},
{
"name": "SystemSettingsPage.tsx"
},
{
"name": "SystemStoragePage.tsx"
}
]
},
{
"name": "resources",
"children": [
{
"name": "registry-store.tsx"
}
]
}
]
},
{
"name": "index.css"
},
{
"name": "lib",
"children": [
{
"name": "navigation.ts"
},
{
"name": "status",
"children": [
{
"name": "resource-status.ts"
}
]
},
{
"name": "supabase",
"children": [
{
"name": "client.ts"
}
]
}
]
},
{
"name": "main.tsx"
},
{
"name": "types",
"children": [
{
"name": "resource.ts"
}
]
},
{
"name": "vite-env.d.ts"
}
]
},
{
"name": "tailwind.config.d.ts"
},
{
"name": "tailwind.config.js"
},
{
"name": "tailwind.config.ts"
},
{
"name": "tools",
"children": [
{
"name": "audit_docs_alignment.py"
},
{
"name": "doc_markmind_exporter",
"children": [
{
"name": "README.md"
},
{
"name": "__init__.py"
},
{
"name": "doc_markmind_exporter.py"
},
{
"name": "manifest.yaml"
}
]
}
]
},
{
"name": "tsconfig.app.json"
},
{
"name": "tsconfig.app.tsbuildinfo"
},
{
"name": "tsconfig.json"
},
{
"name": "tsconfig.node.json"
},
{
"name": "tsconfig.node.tsbuildinfo"
},
{
"name": "vite.config.ts"
},
{
"name": "web",
"children": [
{
"name": "add.html"
},
{
"name": "android-chrome-192x192.png"
},
{
"name": "android-chrome-512x512.png"
},
{
"name": "apple-touch-icon.png"
},
{
"name": "css",
"children": [
{
"name": "style.css"
}
]
},
{
"name": "favicon-16x16.png"
},
{
"name": "favicon-32x32.png"
},
{
"name": "favicon.ico"
},
{
"name": "index.html"
},
{
"name": "js",
"children": [
{
"name": "main.js"
}
]
},
{
"name": "mstile-144x144.png"
},
{
"name": "mstile-150x150.png"
},
{
"name": "mstile-310x150.png"
},
{
"name": "mstile-310x310.png"
},
{
"name": "mstile-70x70.png"
},
{
"name": "site.webmanifest"
}
]
},
{
"name": "worker",
"children": [
{
"name": "README.md"
},
{
"name": "package-lock.json"
},
{
"name": "package.json"
},
{
"name": "schema.sql"
},
{
"name": "src",
"children": [
{
"name": "index.ts"
}
]
},
{
"name": "tsconfig.json"
},
{
"name": "wrangler.jsonc"
}
]
}
]
}
_index.md
# Knowledge System Map
<sub>Blueprint root map for the docs knowledge system</sub>
This documentation system is organized into four primary bands from `blueprint_master_map-mindmap.md`.
## 1. [10 Core](10_core/_index.md)
**Foundation / Rules / Structure / Source-of-Truth Doctrine**
The canonical home for governance, structure, data doctrine, service maps, operations, and knowledge support.
## 2. [20 QiNexus](20_qinexus/_index.md)
**Human life, project, and reference workspace**
The living workspace for inbox, workbench, timeline, life, people, business, finance, legal, tech, assets, data, reference, archive, and system material.
## 3. [30 QiArchive](30_qiarchive/_index.md)
**AI memory and retrieval pipeline**
The archive and machine-knowledge band for ingestion, extraction, chunking, embeddings, graphs, retrieval, memory, and sync backups.
## 4. [40 System](40_system/_index.md)
**Operational integrity and generated system outputs**
The system band for logs, audits, backups, health checks, generated reports, generated indexes, and maintenance records.
blueprint_master_map-mindmap.md
---
mindmap-plugin: markdown
---
# Knowledge System Map
## 10_core
<sub>Foundation / Rules / Structure / Source-of-Truth Doctrine</sub>
### Purpose
- Defines how the knowledge system thinks
- Holds governance
- Holds standards
- Holds registries
- Holds system maps
- Holds naming and metadata rules
- Holds QiCode doctrine
- Holds source-of-truth rules
- Describes the knowledge base from inside the knowledge base
### 10_governance
<sub>Principles / Rules / Policies / Decisions / Registries</sub>
#### Purpose
- Defines authority
- Defines operating principles
- Defines system rules
- Defines policy boundaries
- Tracks architectural decisions
- Maintains official registries
#### 10_principles.md
- Core principles
- Source-of-truth principle
- Clarity over cleverness
- Static-first principle
- Local-first where practical
- Derived systems are not truth
- One clear home per concern
#### 20_rules.md
- Folder rules
- Naming rules
- Placement rules
- Canonical truth rules
- Derived artifact rules
- AI retrieval boundaries
- “No floating root doctrine” rule
#### 30_standards
<sub>Machine-readable and human-readable standards</sub>
##### 10_content_metadata_profile.yaml
- Required front matter fields
- Optional front matter fields
- Display fields
- Hidden fields
- AI indexing fields
- Version fields
- Source-tracing fields
##### 20_metadata_rules.yaml
- Metadata validation rules
- Required fields by document type
- Status values
- Domain values
- Section values
- Tag rules
- Date rules
##### 30_naming_rules.yaml
- Folder naming rules
- File naming rules
- Slug rules
- Display name rules
- Numeric prefix rules
- Human-readable title rules
##### 40_pdf_standards.yaml
- PDF naming rules
- PDF metadata rules
- OCR expectations
- Exhibit handling
- Court/e-filing safety notes
- Compression/export rules
##### 50_repo_rules.yaml
- Repo structure rules
- App folder rules
- Script placement rules
- README requirements
- AI/tooling manifest requirements
- Build artifact exclusions
##### 60_qicode_standard.md
- QiCode purpose
- QiCode format
- QiCode derivation
- QiCode type prefixes
- QiCode depth rules
- QiCode examples
##### 70_numbering_standard.md
- Decimal-style folder ordering
- Prefix spacing
- Insertion rules
- UI display rules
- Sort order rules
- Prefix hiding rules
##### 80_date_version_standard.md
- `YYYYMMDD` date rule
- Created date rule
- Event date rule
- Ingestion date rule
- Version increment rules
- Updated date rule
##### _index.md
- Standards overview
- Standard categories
- How to apply standards
- Links to active standards
#### 40_policies
<sub>System-level policy boundaries</sub>
##### 10_access_policy.md
- Public vs private access
- Admin tool exposure rules
- Cloudflare Access rules
- Tailscale/private-only rules
##### 20_ai_usage_policy.md
- What AI can read
- What AI should not ingest
- Sensitive corpus restrictions
- Local model preference
- Human review requirements
##### 30_data_safety_policy.md
- Legal data handling
- Medical/care data handling
- Finance data handling
- Private identity documents
- Backup and export caution
##### _index.md
- Policy overview
- Active policy list
- Policy review rules
#### 50_decisions
<sub>Architecture Decision Records / ADRs</sub>
##### ADR-0000_template.md
- ADR template
- Decision status
- Context
- Decision
- Consequences
- Review date
##### ADR-0001_blueprint_scope.md
- Defines scope of current knowledge system
- Separates current personal/family/care system from older business-first blueprint
##### ADR-0002_single_domain_rule.md
- Every durable artifact has one primary home
- Cross-links are allowed
- Duplicate truth is not allowed
##### ADR-0003_markdown_first_kb.md
- Markdown files remain portable source
- QiAccess renders knowledge
- Wiki.js may remain optional or transitional
##### ADR-0004_qiarchive_as_ai_memory_pipeline.md
- QiArchive replaces vague “nexus core”
- QiArchive owns ingestion, extraction, chunking, embeddings, graphs, retrieval, and memory artifacts
##### ADR-0005_qicode_decimal_identity.md
- QiCode format
- Date inclusion
- Version rule
- ULID/UUID permanent identity rule
##### _index.md
- ADR list
- Decision status
- Decision review queue
#### 60_registry
<sub>Official controlled lists and lookup tables</sub>
##### 10_band_registry.yaml
- Top-level band definitions
- Domain order
- Display names
- Sort codes
- Descriptions
##### 20_domain_registry.yaml
- `10_core`
- `20_qinexus`
- `30_qiarchive`
- `40_system`
- Domain display names
- Domain descriptions
- Domain ownership
##### 30_folder_registry.yaml
- Folder codes
- Folder slugs
- Display names
- Parent-child relationships
- Allowed child types
##### 40_doc_type_registry.yaml
- doctrine
- standard
- policy
- decision
- registry
- system_map
- runbook
- audit
- log
- backup_manifest
- graph_artifact
- vector_artifact
- extraction_artifact
- retrieval_profile
##### 50_qicode_prefix_registry.yaml
- `QK` QiKnowledge article
- `QC` QiCore doctrine
- `QD` QiDecision / ADR
- `QR` QiRegistry
- `QS` QiSystem record
- `QA` QiArchive artifact
- `QV` QiVector artifact
- `QG` QiGraph artifact
- `QT` Transcript artifact
- `QX` Extracted text artifact
- `QL` QiLog
- `QB` QiBackup
- `QH` Health check
- `QF` Generated report
- `QE` Evidence artifact
##### _index.md
- Registry overview
- Registry maintenance rules
- Registry validation rules
##### _index.md
- Governance overview
- Principles
- Rules
- Standards
- Policies
- Decisions
- Registries
---
### 20_structure
<sub>System Maps / Identity / Components / Boundaries / Runtime</sub>
#### Purpose
- Describes how the knowledge system is structured
- Holds maps of the full system
- Defines how the parts relate
- Describes QiAccess as renderer/front door
- Describes Core, QiNexus, QiArchive, and System boundaries
#### 10_knowledge_system_map.md
<sub>This Markmind map</sub>
- Lives inside Core
- Describes the knowledge system from within the system
- Maps Core, QiNexus, QiArchive, and System
- Does not float above the four root domains
- Source map for review before finalization
#### 20_identity.md
- What QiAccess is
- What QiNexus is
- What QiArchive is
- What GINA is
- What Core is
- What System is
- What the knowledge base is not
#### 30_system_model.md
- Core as rules and structure
- QiNexus as human workspace
- QiArchive as AI memory pipeline
- System as operations/health layer
- QiAccess as front door and renderer
- GINA as retrieval/reasoning interface
#### 40_component_map.md
- QiAccess app
- Knowledge base module
- Markdown source files
- Asset folders
- Generated indexes
- Graphify outputs
- Qdrant collections
- Paperless records
- Google Drive / QiNexus source material
- Wiki.js optional reader/editor
#### 50_service_boundaries.md
- QiAccess boundary
- Wiki.js boundary
- Paperless boundary
- Qdrant boundary
- Ollama boundary
- Graphify boundary
- Google Drive boundary
- qiserver boundary
- Cloudflare/Tailscale boundary
#### 60_data_flow.md
- Source file created
- Metadata generated
- QiCode derived
- Index generated
- Article rendered in QiAccess
- Selected source ingested into QiArchive
- Text extracted
- Chunks created
- Embeddings generated
- Graphs generated
- GINA retrieves with source traceability
#### 70_device_model.md
- qiserver
- main Windows machine
- mobile devices
- Google Drive sync/local stream
- Tailscale devices
- Cloudflare-facing surface
- private LAN surface
#### 80_runtime_zones.md
- Public safe
- Public restricted
- Private only
- Local-only
- Server-hosted
- Cloud-backed
- Generated/derived
#### 90_qiaccess_kb_module.md
- QiAccess renders Markdown-backed KB
- Tree navigation
- Search
- Breadcrumbs
- Tags
- Status badges
- QiCode display
- Version display
- Asset rendering
- YAML artifact rendering
- Generated index loading
#### 100_markmind_and_graph_views.md
- Markmind maps
- Markmap exports
- Graphify relationship maps
- Visual system maps
- Generated map storage
- Map refresh rules
#### _index.md
- Structure overview
- System maps
- Identity docs
- Runtime model
- Component model
---
### 30_data
<sub>Object Model / Metadata / Storage / Naming / QiCode / Vectorization</sub>
#### Purpose
- Defines how knowledge objects are modeled
- Defines metadata and front matter
- Defines folder and file placement
- Defines QiCode and numbering standards
- Defines export and vectorization rules
#### 10_infrastructure_layout.md
- Repo layout
- Docs layout
- Assets layout
- Scripts layout
- Generated data layout
- Public/static output layout
#### 20_bands.md
- Core band
- QiNexus band
- QiArchive band
- System band
- Band descriptions
- Band responsibilities
#### 30_domains.md
- Domain model
- Domain codes
- Domain ownership
- Domain display rules
- Domain-to-folder mapping
#### 40_subdomains.md
- Section model
- Subsection model
- Category model
- When to use metadata instead of deeper folders
#### 50_namespace_registry.md
- Namespace rules
- QiCode prefixes
- Artifact namespaces
- App namespaces
- System namespaces
#### 60_directory_tree.md
- Canonical directory tree
- Folder codes
- Folder display names
- Allowed nesting depth
- Folder expansion rules
#### 70_object_model.md
- Knowledge article object
- Doctrine object
- Registry object
- Decision object
- Audit object
- Log object
- Backup object
- Graph artifact
- Vector artifact
- Source document reference
- Chunk object
- Retrieval profile
#### 80_objects.md
- Object examples
- Object lifecycle
- Object source-tracing
- Object status
- Object relationships
#### 90_schema.md
- JSON schema concepts
- YAML schema concepts
- Front matter schema
- Registry schema
- Validation rules
#### 100_metadata.md
- Required metadata
- Optional metadata
- Generated metadata
- Hidden metadata
- UI metadata
- AI retrieval metadata
#### 110_front_matter.md
- Minimal manual front matter
- Auto-generated fields
- Required fields by doc type
- Example front matter
- Repair rules
#### 120_storage.md
- Source storage
- Asset storage
- Generated storage
- QiArchive storage
- Backup storage
- Drive sync rules
- Repo storage rules
#### 130_placement_rules.md
- Where new docs go
- Where source files go
- Where generated files go
- Where logs go
- Where audits go
- Where graph/vector artifacts go
- Where personal/finance/legal/care files go
#### 140_exports.md
- Markdown export rules
- Wiki.js export rules
- JSON export rules
- Graph export rules
- Search index export rules
- Static site export rules
#### 150_qievidence.md
- Evidence artifact model
- Legal/case evidence references
- Source traceability
- Date anchoring
- Chain of custody notes
- Exhibit mapping
#### 160_vectorization_pipeline.md
- What gets vectorized
- What does not get vectorized
- Chunking rules
- Embedding rules
- Qdrant collection rules
- Rebuild rules
- Source traceability rules
#### 170_numbering_doctrine.md
- All folders numbered
- Numeric prefixes control order
- Prefixes are hidden in UI
- Display names are clean
- Decimal spacing
- Insertion numbers
- `00` for inbox/intake only
#### 180_qicode_doctrine.md
- QiCode purpose
- QiCode type prefixes
- Standard knowledge pattern
- Event record pattern
- Date in QiCode
- Version in QiCode
- ULID/UUID permanent ID
- Derivation from path
#### 190_date_version_rules.md
- `YYYYMMDD` rule
- Created date
- Published date
- Event date
- Ingestion date
- Processing date
- Version increments
- Updated timestamps
#### 200_deep_nesting_rules.md
- Maximum normal QiCode depth
- Domain / section / optional subsection / item
- Metadata instead of infinite nesting
- Path as physical address
- QiCode as conceptual shelfmark
- ULID/UUID as permanent identity
#### _index.md
- Data model overview
- Metadata model
- QiCode model
- Vectorization model
- Storage rules
---
### 40_service_apps
<sub>Purpose-Based Tools / Service Knowledge</sub>
#### Purpose
- Documents tools and services used by the system
- Explains what each service does
- Defines access rules
- Defines whether service is source, renderer, processor, or derived layer
#### 10_infrastructure
##### 10_cloudflare.md
- DNS
- Cloudflare Access
- Public restricted access
- Static hosting
- Tunnel/proxy notes
##### 20_gethomepage.md
- Server dashboard
- Service cards
- Internal links
- Local homepage role
##### 30_tailscale.md
- Private access
- Tailnet routing
- Private-only service rules
- Device access
##### 40_portainer.md
- Docker management
- Admin surface
- Private-only rule
- Container control risk
##### 50_cockpit.md
- Server admin console
- Private-only rule
- qiserver management
##### _index.md
- Infrastructure service overview
#### 20_ai_compute
##### 10_aider.md
- Code assistant
- Repo editing
- Agent workflows
- Context limitations
##### 20_ollama.md
- Local model runtime
- LAN API use
- Model management
- Privacy benefits
##### 30_qdrant.md
- Vector database
- Collections
- Embeddings
- Retrieval layer
##### 40_open_webui.md
- AI chat UI
- Local model access
- qiserver integration
##### 50_graphify.md
- Knowledge graph generation
- Graph reports
- Graph HTML
- Graph JSON
- Derived map layer
- Not source of truth
##### _index.md
- AI/compute service overview
#### 30_capture
##### 10_obsidian_qidocs.md
- Markdown editing
- Local-first notes
- Plugin use
- Manual review
##### 20_wikijs.md
- Optional reader/editor
- Transitional knowledge interface
- Not required as final source of truth
##### 30_paperless.md
- Document intake
- OCR
- Tags/correspondents
- Archive records
- Source references for QiArchive
##### 40_google_drive.md
- Storage backbone
- QiNexus source terrain
- Sync considerations
- Drive import manifests
##### _index.md
- Capture service overview
#### 40_productivity
##### 10_n8n.md
- Automation
- Workflow orchestration
- Ingestion triggers
- Report generation
##### 20_qiledger.md
- Finance tracking
- General ledger concepts
- Export integration
##### 30_solidtime.md
- Time tracking
- Work logs
- API possibilities
##### _index.md
- Productivity service overview
#### _index.md
- Service app map
- Service roles
- Service access classes
---
### 50_operations
<sub>Runbooks / Scripts / Templates / Execution</sub>
#### Purpose
- Holds operating instructions
- Holds build scripts doctrine
- Holds templates
- Holds runbooks
- Holds repeatable procedures
#### 10_cases.md
- Operating cases
- Use case examples
- Workflow examples
- System scenario notes
#### 20_templates.md
- Article template
- Index template
- ADR template
- Audit template
- Runbook template
- QiArchive manifest template
#### 30_qiserver_setup_runbook.md
- qiserver baseline
- Docker stack layout
- Portainer
- Cockpit
- Tailscale
- Backup basics
- Service health checks
#### 40_kb_build_script_doctrine.md
- Scan Markdown tree
- Extract numeric prefixes
- Derive metadata
- Generate QiCodes
- Repair missing front matter
- Generate tree nav
- Generate search index
- Validate assets
- Validate links
- Generate reports
#### 50_qicode_generation_runbook.md
- Path parsing
- Folder code extraction
- File code extraction
- Date selection
- Version selection
- Prefix selection by doc type
- Front matter write-back
#### 60_kb_validation_runbook.md
- Broken link checks
- Missing metadata checks
- Duplicate QiCode checks
- Duplicate slug checks
- Missing asset checks
- Stale generated file checks
#### 70_ingestion_runbook.md
- Select source
- Validate sensitivity
- Extract text
- Chunk
- Embed
- Graph if needed
- Register source map
- Store in QiArchive
#### _index.md
- Operations overview
- Active runbooks
- Template library
---
### 60_knowledge
<sub>Glossary / Changelog / Shared Understanding</sub>
#### Purpose
- Holds shared language
- Holds change history
- Explains terms
- Tracks conceptual evolution
#### 10_changelog.md
- Major system changes
- Naming changes
- Folder model changes
- Architecture shifts
- Deprecated concepts
#### 20_glossary.md
- QiAccess
- QiNexus
- QiArchive
- Core
- System
- GINA
- QiCode
- QiDecimal
- Source terrain
- Processed memory
- Derived artifact
- Canonical truth
#### 30_concept_index.md
- Core concepts
- Linked doctrine pages
- Related maps
- Frequently referenced terms
#### _index.md
- Knowledge overview
- Glossary
- Changelog
- Concept index
---
## 20_qinexus
<sub>Living Human Workspace / Source Terrain</sub>
### Purpose
- Holds Cody’s working life structure
- Organizes human-facing material
- Supports daily action
- Keeps files findable by function
- Acts as source terrain for selected AI ingestion
- Remains human-first, not machine-first
### Rule
- QiNexus is not GINA’s processed brain
- QiNexus is the organized source terrain
- QiArchive processes selected QiNexus material into retrievable memory
### 00_inbox
<sub>Temporary Landing Zone</sub>
#### Purpose
- Temporary capture
- Unprocessed files
- Notes waiting for placement
- Screenshots waiting for naming
- Downloads waiting for sorting
#### Proposed Contents
- `10_quick_captures/`
- `20_unsorted_files/`
- `30_pending_review/`
- `40_mobile_uploads/`
- `_index.md`
### 10_workbench
<sub>Active Work / Projects / Tasks / Drafts</sub>
#### Purpose
- Active projects
- Current tasks
- Working drafts
- Short-term builds
- Research in progress
#### Proposed Contents
- `10_active_projects/`
- `20_task_lists/`
- `30_drafts/`
- `40_builds/`
- `50_research_in_progress/`
- `_index.md`
### 20_timeline
<sub>Chronology / Logs / Journals / Event Trails</sub>
#### Purpose
- Time-based records
- Event logs
- Daily/weekly notes
- Personal chronology
- Legal/finance/care timelines
#### Proposed Contents
- `10_daily_notes/`
- `20_weekly_notes/`
- `30_event_trails/`
- `40_care_logs/`
- `50_legal_timelines/`
- `60_finance_timelines/`
- `70_system_timelines/`
- `_index.md`
### 30_life
<sub>Personal Operations / Home / Wellness / Routines</sub>
#### Purpose
- Home operations
- Personal routines
- Wellness systems
- Household needs
- Life planning
#### Proposed Contents
- `10_home/`
- `20_routines/`
- `30_wellness/`
- `40_planning/`
- `50_personal_guides/`
- `_index.md`
### 40_people
<sub>Family / Support Network / Relationship Context</sub>
#### Purpose
- Family coordination
- Support network notes
- Care coordination
- Communication plans
- Relationship context
#### Proposed Contents
- `10_family/`
- `20_support_network/`
- `30_care_coordination/`
- `40_communication_plans/`
- `50_relationship_context/`
- `_index.md`
### 50_business
<sub>Brand / Revenue / Client / Business Materials</sub>
#### Purpose
- Business materials
- Brand notes
- Revenue systems
- Client references
- Offers/products
#### Proposed Contents
- `10_brand/`
- `20_revenue/`
- `30_clients/`
- `40_offers_products/`
- `50_marketing_assets/`
- `60_business_operations/`
- `_index.md`
### 60_finance
<sub>Money / Bills / Reports / Reconciliations</sub>
#### Purpose
- Budgets
- Bills
- Accounts
- Statements
- Reconciliations
- Reports
- General ledger work
#### Proposed Contents
- `10_budget/`
- `20_bills/`
- `30_accounts/`
- `40_statements/`
- `50_reconciliations/`
- `60_reports/`
- `70_general_ledger/`
- `80_tax/`
- `_index.md`
### 70_legal
<sub>Legal Matters / Filings / Evidence / Research</sub>
#### Purpose
- Legal matters
- Court filings
- Evidence
- Timelines
- Motions
- Research
- Complaints
#### Proposed Contents
- `10_matters/`
- `20_filings/`
- `30_evidence/`
- `40_timelines/`
- `50_motions_drafts/`
- `60_research/`
- `70_regulatory_complaints/`
- `80_exhibits/`
- `_index.md`
### 80_tech
<sub>Servers / Apps / Code Notes / Infrastructure</sub>
#### Purpose
- qiserver notes
- App architecture
- Repo notes
- Scripts
- Deployments
- Tooling docs
- Dev runbooks
#### Proposed Contents
- `10_qiserver/`
- `20_apps/`
- `30_repos/`
- `40_scripts/`
- `50_deployments/`
- `60_tooling/`
- `70_dev_runbooks/`
- `_index.md`
### 90_assets
<sub>Reusable Media / Templates / Design / Brand Assets</sub>
#### Purpose
- Reusable visual/audio/template assets
- Brand assets
- Screenshots
- Diagrams
- Media
#### Proposed Contents
- `10_images/`
- `20_video/`
- `30_audio/`
- `40_templates/`
- `50_branding/`
- `60_icons/`
- `70_diagrams/`
- `80_screenshots/`
- `_index.md`
### 100_data
<sub>Structured Source Material / Exports / Datasets</sub>
#### Purpose
- CSV files
- JSON exports
- Database exports
- Raw structured data
- Data logs
- Source datasets
#### Proposed Contents
- `10_csv/`
- `20_json/`
- `30_database_exports/`
- `40_logs/`
- `50_datasets/`
- `60_source_tables/`
- `_index.md`
### 110_reference
<sub>External Knowledge / Guides / Laws / Articles / Examples</sub>
#### Purpose
- External references
- Research articles
- Legal references
- Technical docs
- Examples
- Citations
#### Proposed Contents
- `10_articles/`
- `20_research/`
- `30_legal_references/`
- `40_technical_guides/`
- `50_examples/`
- `60_citations/`
- `70_external_docs/`
- `_index.md`
### 120_archive
<sub>Inactive / Historical / Completed / Frozen Material</sub>
#### Purpose
- Completed work
- Deprecated docs
- Historical files
- Frozen exports
- Old working sets
- Superseded material
#### Proposed Contents
- `10_completed_projects/`
- `20_deprecated_docs/`
- `30_historical_files/`
- `40_frozen_exports/`
- `50_old_working_sets/`
- `60_superseded_material/`
- `_index.md`
### 130_system
<sub>QiNexus Rules / Indexes / Manifests / Local Structure</sub>
#### Purpose
- QiNexus local rules
- Folder manifests
- Placement guides
- Local indexes
- Sync notes
- Structure docs
#### Proposed Contents
- `10_qinexus_rules.md`
- `20_folder_manifest.yaml`
- `30_placement_guide.md`
- `40_local_indexes/`
- `50_sync_notes.md`
- `60_structure_docs/`
- `_index.md`
### _index.md
- QiNexus overview
- Human workspace doctrine
- Source terrain explanation
- Placement rules
- Link to QiArchive ingestion rules
---
## 30_qiarchive
<sub>AI Memory Pipeline / Ingestion / Embeddings / Graphs / Retrieval</sub>
### Purpose
- Converts selected source material into AI-readable memory
- Stores ingestion records
- Stores extraction outputs
- Stores chunk manifests
- Stores embedding metadata
- Stores graph exports
- Stores retrieval profiles
- Supports GINA’s memory and recall
- Preserves traceability back to source material
### Rule
- QiArchive is not a dumping ground
- QiArchive is not the same as old-file archive
- QiArchive is the processed knowledge substrate
- Every processed item traces back to a source
### 10_ingestion
<sub>Where source material enters the AI pipeline</sub>
#### Purpose
- Track source imports
- Track source manifests
- Track skipped files
- Track ingestion dates
- Track source-to-archive mapping
#### 10_paperless
- Paperless document manifests
- Paperless document IDs
- OCR references
- Source links
- Import dates
- Processing status
- `_index.md`
#### 20_drive_imports
- Google Drive import manifests
- QiNexus source mappings
- Folder scan records
- Import batches
- Skipped-file reports
- `_index.md`
#### 30_manual_uploads
- Manually added files
- One-off imports
- Temporary review files
- Upload notes
- `_index.md`
#### 40_email_exports
- Gmail exports
- Attachment manifests
- Message metadata
- Thread summaries
- Source references
- `_index.md`
#### 50_web_clips
- Saved pages
- Article captures
- Citation captures
- Download records
- `_index.md`
#### _index.md
- Ingestion overview
- Ingestion rules
- Sensitivity gate
- Source traceability requirements
### 20_extraction
<sub>Raw material converted into usable text/metadata</sub>
#### Purpose
- Hold extracted text
- Hold OCR output
- Hold transcripts
- Hold metadata extraction
- Preserve source references
#### 10_ocr_text
- OCR output
- Paperless text exports
- Image text extraction
- Scan corrections
- `_index.md`
#### 20_markdown_exports
- Converted Markdown files
- Wiki.js exports
- HTML-to-Markdown exports
- PDF-to-Markdown outputs
- `_index.md`
#### 30_transcripts
- Audio transcripts
- Video transcripts
- Meeting transcripts
- Voice note transcripts
- `_index.md`
#### 40_metadata
- Extracted metadata
- File metadata
- Document dates
- Entity hints
- Source fingerprints
- `_index.md`
#### 50_clean_text
- Normalized text
- Deduplicated text
- Cleaned OCR
- Human-reviewed corrections
- `_index.md`
#### _index.md
- Extraction overview
- Extraction quality rules
- Correction workflow
### 30_chunking
<sub>How source text becomes retrievable units</sub>
#### Purpose
- Define chunking rules
- Store chunk manifests
- Map chunks back to source
- Track chunk hashes
- Support retrieval and citation
#### 10_chunk_manifests
- Chunk IDs
- Source document IDs
- Chunk boundaries
- Token counts
- Chunk hashes
- `_index.md`
#### 20_chunk_rules
- Chunking strategy
- Overlap rules
- Document-type rules
- Sensitive-content handling
- `_index.md`
#### 30_source_maps
- Chunk-to-source mappings
- Source-to-chunk mappings
- Page references
- Section references
- Original file references
- `_index.md`
#### 40_quality_checks
- Missing chunk checks
- Oversized chunk checks
- Duplicate chunk checks
- Broken source-map checks
- `_index.md`
#### _index.md
- Chunking overview
- Chunking standards
- Source mapping rules
### 40_embeddings
<sub>Vector Memory / Qdrant / Embedding Metadata</sub>
#### Purpose
- Track vector memory
- Track embedding models
- Track Qdrant collections
- Track rebuilds
- Track stale embeddings
#### 10_qdrant
- Collection manifests
- Collection names
- Vector counts
- Index status
- Rebuild notes
- `_index.md`
#### 20_embedding_models
- Active embedding models
- Previous embedding models
- Model dimensions
- Model compatibility notes
- `_index.md`
#### 30_collection_manifests
- Collection purpose
- Source scope
- Last rebuild
- Included domains
- Excluded domains
- `_index.md`
#### 40_rebuild_logs
- Index rebuild logs
- Failed embeddings
- Skipped files
- Reprocessing notes
- Stale index warnings
- `_index.md`
#### 50_vector_quality_tests
- Retrieval tests
- Similarity checks
- Duplicate vector checks
- Missing embedding checks
- `_index.md`
#### _index.md
- Embeddings overview
- Vector collection rules
- Rebuild rules
### 50_graphs
<sub>Knowledge Graphs / Visual Maps / Relationship Exports</sub>
#### Purpose
- Store graph artifacts
- Store visual maps
- Store relationship exports
- Store Graphify outputs
- Store entity/topic maps
#### 10_graphify
- `graph.html`
- `graph.json`
- `GRAPH_REPORT.md`
- Graphify run logs
- Graphify source scopes
- `_index.md`
#### 20_markmap
- Markdown mind maps
- Visual system maps
- Tree maps
- Blueprint maps
- `_index.md`
#### 30_entity_maps
- People/entity maps
- Service maps
- Project maps
- Case maps
- Topic maps
- `_index.md`
#### 40_relationship_exports
- Node exports
- Edge exports
- Source relationship data
- Cross-reference maps
- `_index.md`
#### 50_graph_quality_reports
- Orphan node reports
- Broken edge reports
- High-degree node reports
- Duplicate entity reports
- `_index.md`
#### _index.md
- Graph overview
- Graph generation rules
- Graph validation rules
### 60_retrieval
<sub>RAG Profiles / Query Testing / Prompt Context</sub>
#### Purpose
- Define how GINA retrieves
- Store RAG profiles
- Store query logs
- Store retrieval tests
- Store prompt context bundles
#### 10_rag_profiles
- Retrieval profiles
- Domain-specific search settings
- System prompts for retrieval
- Access rules
- `_index.md`
#### 20_query_logs
- Retrieval query logs
- Failed query logs
- Useful query examples
- Search quality notes
- `_index.md`
#### 30_retrieval_tests
- Test questions
- Expected answers
- Source validation
- Retrieval accuracy checks
- `_index.md`
#### 40_prompt_contexts
- Context packs
- Agent instructions
- System context bundles
- Domain-specific prompt frames
- `_index.md`
#### 50_source_citation_tests
- Citation accuracy checks
- Source grounding tests
- Missing citation reports
- Unsupported-answer reports
- `_index.md`
#### _index.md
- Retrieval overview
- RAG rules
- Testing rules
### 70_memory
<sub>GINA Durable Memory / Session Artifacts / Preference Maps</sub>
#### Purpose
- Store approved durable memory artifacts
- Store session summaries
- Store preference maps
- Store GINA profile docs
- Store restart prompts
#### 10_gina_profiles
- GINA operating profile
- Assistant behavior rules
- Domain priorities
- System boundaries
- `_index.md`
#### 20_durable_facts
- Long-term stable facts
- Approved memory records
- User preferences
- System constants
- `_index.md`
#### 30_session_summaries
- Receipt-ready summaries
- Conversation artifacts
- Restart prompts
- Decision summaries
- `_index.md`
#### 40_preference_maps
- Cody preferences
- System design preferences
- Writing preferences
- Tooling preferences
- Workflow preferences
- `_index.md`
#### 50_context_packs
- Legal context packs
- Finance context packs
- Mom’s Care context packs
- QiAccess context packs
- qiserver context packs
- `_index.md`
#### _index.md
- Memory overview
- Durable memory rules
- Human review requirements
### 80_sync_backups
<sub>Snapshots / Backup Manifests / Restore Points</sub>
#### Purpose
- Track backup snapshots
- Track index snapshots
- Track restore points
- Track generated registry backups
- Track AI memory recovery points
#### 10_index_snapshots
- Search index snapshots
- Vector index snapshots
- Graph snapshots
- Generated registry snapshots
- `_index.md`
#### 20_backup_manifests
- Backup records
- Backup locations
- Backup dates
- Backup verification notes
- `_index.md`
#### 30_restore_points
- Restore instructions
- Known-good states
- Rollback notes
- Recovery checkpoints
- `_index.md`
#### 40_sync_manifests
- Drive sync manifests
- Repo sync manifests
- Paperless sync manifests
- Generated file sync records
- `_index.md`
#### _index.md
- Sync/backup overview
- Restore rules
- Backup validation rules
### _index.md
- QiArchive overview
- AI memory pipeline doctrine
- Source traceability rule
- Retrieval boundaries
---
## 40_system
<sub>Operational Health / Logs / Audits / Backups / Generated Reports</sub>
### Purpose
- Tracks system health
- Holds logs
- Holds audits
- Holds backup metadata
- Holds generated reports
- Tracks stale, broken, risky, or review-needed items
### Rule
- System artifacts are operational records
- Audits do not need their own root universe
- Logs, audits, and backups belong here unless they are part of QiArchive processing
### 10_logs
<sub>Operational logs</sub>
#### Purpose
- Build logs
- Sync logs
- Deployment logs
- Agent run logs
- Import logs
- Error logs
- Maintenance logs
#### Proposed Contents
- `10_build_logs/`
- `20_sync_logs/`
- `30_deployment_logs/`
- `40_agent_run_logs/`
- `50_import_logs/`
- `60_error_logs/`
- `70_maintenance_logs/`
- `_index.md`
### 20_audits
<sub>System audits and truth checks</sub>
#### Purpose
- Current-state audits
- Service audits
- Content audits
- Security audits
- Folder audits
- Stale document audits
#### Proposed Contents
- `10_qiaccess_start_current_state_audit.md`
- `20_qiserver_service_truth_audit.md`
- `30_content_audits/`
- `40_folder_audits/`
- `50_service_audits/`
- `60_security_audits/`
- `70_stale_document_audits/`
- `_index.md`
### 30_backups
<sub>Backup strategy and verification</sub>
#### Purpose
- Backup strategy
- Backup records
- Backup verification
- Restore notes
- Local backup metadata
- Cloud backup metadata
#### Proposed Contents
- `10_backup_strategy.md`
- `20_backup_records/`
- `30_backup_verification/`
- `40_restore_notes/`
- `50_local_backup_metadata/`
- `60_cloud_backup_metadata/`
- `_index.md`
### 40_health_checks
<sub>System health and uptime checks</sub>
#### Purpose
- qiserver health checks
- Docker service status
- App uptime
- Link checks
- Broken asset checks
- Broken Markdown link checks
#### Proposed Contents
- `10_qiserver_health/`
- `20_docker_service_status/`
- `30_app_uptime/`
- `40_link_checks/`
- `50_asset_checks/`
- `60_markdown_link_checks/`
- `_index.md`
### 50_generated_reports
<sub>Generated validation and build reports</sub>
#### Purpose
- KB build reports
- Search index reports
- Graph generation reports
- Link validation reports
- Metadata validation reports
- Front matter reports
#### Proposed Contents
- `10_kb_build_reports/`
- `20_search_index_reports/`
- `30_graph_generation_reports/`
- `40_link_validation_reports/`
- `50_metadata_validation_reports/`
- `60_front_matter_reports/`
- `70_qicode_registry_reports/`
- `_index.md`
### 60_generated_indexes
<sub>Generated indexes and registries</sub>
#### Purpose
- Store generated app-readable indexes
- Store generated registry exports
- Store search indexes
- Store tree indexes
- Store tag indexes
#### Proposed Contents
- `10_kb_index_generated.json`
- `20_kb_tree_generated.json`
- `30_kb_search_generated.json`
- `40_kb_tags_generated.json`
- `50_kb_assets_generated.json`
- `60_qicode_registry_generated.json`
- `_index.md`
### 70_maintenance
<sub>Recurring maintenance procedures</sub>
#### Purpose
- Cleanup tasks
- Rebuild tasks
- Review cycles
- Stale artifact cleanup
- Archive review
#### Proposed Contents
- `10_cleanup_tasks.md`
- `20_rebuild_tasks.md`
- `30_review_cycles.md`
- `40_stale_artifact_cleanup.md`
- `50_archive_review.md`
- `_index.md`
### _index.md
- System overview
- Logs
- Audits
- Backups
- Health checks
- Generated reports
- Maintenance