Placement audit — every skill, tool, scenario, process and role checked against its layer (2026-10-01)

Status: read-only audit for the separation arc (epic bean folio-assistant-7x5n, issue #1770, story S4 rfuq). Nothing was moved. The plan it serves is cat-harness/docs/proposals/separation-arc-2026-10-01.md (on branch claude/blissful-ride-c2f26u). Every row is in placement-audit-2026-10-01.json: {kind, id, path, instance, concern, verdict, target, signal, evidence, pr}.

Measured at: origin/main cdb0a018c4a, with the bootstrap (f70a56c) and bootstrap-tools (920c772) submodules initialised. 2266 items across 20 kinds in 14 instance directories (smart-l1, smart-dak, smart-ig and smart-immunizations hold none of these kinds yet: only a declaration and QA results).

Summary

Counts per kind × verdict

kindOKMOVESPLITCODETO-JSONAMBIGUOUStotal
skill335397032310480
voice411253
skill-command4444
tool231104128
tool-code112
process4925478
decision459
role3614252
role-extension2525
story8034114
actor27936
capability171128
methodology2121
code-list66113
template316120
schema872581861307
source-descriptor22
library-entry451459
script-group115282407552
code-group93211929243
all94529589790127202266

CODE means “executable in cat-harness → cat-harness-tools” (D1). TO-JSON means “placed right, but the .ts node becomes data” (D2). Neither changes the instance that owns the knowledge. A SPLIT either divides an item or keeps it and inverts its upward references; its signal says which.

Per instance

“Move out” counts this instance’s MOVE, SPLIT, CODE and AMBIGUOUS rows. “Move in” counts rows elsewhere whose primary target is this instance (a SPLIT counts toward its named higher instance).

instanceitemsOKTO-JSON (in place)move outmove in
agent-skills2100210
bootstrap2020000
bootstrap-tools4947020
cat-harness165244787110233
cat-harness-tools7700798
fhir-harness573614736
folio-assistant-core15013341396
folio-assistant-sci176161141156
large-datasets2300230
smart-base38288233
smart-trust22001
who-iris770020
who-style-guide70070
root5757005

Per planned PR

Which existing bean each non-OK row belongs to (iirv placement PR2–PR9: pzwb 63wl 4fv8 tlat apcg 8fq9 f8wp p9bu; S5 stages 70lx 8lcl y9r6). “unplanned” means no bean covers that row yet.

planned PRrows
70lx (S5 1a)553
8lcl (S5 1b)181
y9r6 (S5 1c)127
unplanned106
unplanned (#223 code partition; S5)73
4fv8 (PR4)70
70lx (S5 1a) + 8fq9 (PR7)52
unplanned (7x5n S4 subgraph ruling)38
pzwb (PR2)28
unplanned (tool placement; S5 70lx carries implementations)23
63wl (PR3)20
f8wp (PR8)19
apcg (PR6)15
#1735 (S3)7
tlat (PR5)5
mer2 (S6) + 70lx4

p9bu (PR9) owns no row here: it moves docs pages, which are outside this audit’s kinds. 8fq9 (PR7) appears only beside 70lx, because the tests it regroups are code that S5 moves first.

Method

One Python script (≈900 lines, kept out of the tree because it is not small; the method is below so it can be rebuilt). Every count comes from it; none from prose.

  1. Inventory = git ls-files plus git -C bootstrap ls-files and git -C bootstrap-tools ls-files. Kinds and their row unit:
    • skill: each .md/.json/.ts under any <instance>/skills/ (README excluded), plus .claude/skills/** and .claude/commands/* (skill-command); voice: each file under skills/voices/.
    • tool: each defineTool({ id }) block in <instance>/tools/*.ts; files there without one are tool-code.
    • process / decision: each .bpmn / .dmn. role: each entry of every scenarios/roles.json; role-extension: each extensions[] overlay entry (PR0b). story: each stories.json entry. actor, capability: each JSON file.
    • methodology, code-list, policy, template: each file. schema: each file under <instance>/schemas/. library-entry: each <instance>/library/<slug>/. source-descriptor: each large-datasets/sources/*.json.
    • script-group: each child of scripts/ (a subdirectory is one row; a flat script is one row). code-group: the same for src/, adapters/, content/pipeline/, deploy/, ui/, viewer/, types/ and test/ (results excluded).
  2. Layers (target, after the 2026-10-01 rulings): bootstrap → bootstrap-tools → cat-harness → cat-harness-tools → folio-assistant-core → {folio-assistant-sci, fhir-harness, who-iris} → smart-base → {smart-l1, smart-dak, smart-ig} → {smart-trust, smart-immunizations}. large-datasets and agent-skills are treated as cat-harness (subgraph ruling); who-style-guide as who-iris (#1735). The checkout root may reference everything. An edge is upward when its target instance is outside the source’s transitive needs. A KG item citing its own code half (cat-harness → cat-harness-tools) is a prose citation, not an upward edge (split plan §2).
  3. Signals per item
    • references: instance-prefixed paths in the text (lit:), relative markdown links (link:) and relative imports (imp:) resolved against git ls-files, plus structured id references resolved to their owning instance — skill ids in text and front matter, BPMN skill ref / role ref / calledElement / decisionRef, role skills, actor roles / capabilities, story role, tool satisfies. For code only imp: counts: a path literal in a corpus-wide checker is resolved through the checkout overlay (PR0a), not a placement signal, and is recorded in evidence.
    • vocabulary: counts of FHIR/IG/FSH, WHO/SMART/DAK, Lean/LaTeX/theorem/proof, IRIS/DSpace, folio/document and harness terms (the word “folio” is not counted when it is the repository name folio-assistant). A domain wins only at ≥ 6 hits, ≥ 4 per 1000 words, twice the runner-up and ≥ 0.6× the harness terms; for code it needs ≥ 12 hits and 1.5× the harness terms.
    • users: KG items that name the id — skills, processes, scenarios, methodologies, tool definitions. Registries (package-manifest.json, skills.json), docs pages, tests and code are not users. For library entries every authored file counts.
  4. Verdict rule, in order: instance-level rulings → code (D1, imports, then vocabulary gated by importers) → upward references (MOVE when the item also carries the target’s vocabulary; AMBIGUOUS when ≥ 3 same-layer items use it; otherwise SPLIT = keep and invert) → vocabulary above the layer (MOVE, or SPLIT when lower users exist) → sole higher user carrying that domain (rule 3) → OK. Then the standing rulings of placement-concern-groups-2026-10-01.md override the heuristic for the items they name (PR2 regroup, PR3 processes, PR4 roles/actors/capabilities, PR6 cataloguing, ruling 4B schemas), and the signal records what the heuristic said when it disagreed.
  5. Concern = the skill’s directory topic (authoring/ → content), else the majority concern of the skills an item references, else a keyword table over its id.

Known limits. Vocabulary is a proxy for subject, so every vocabulary-only MOVE says so in its signal, and code moved on vocabulary alone is held to AMBIGUOUS when three or more staying modules import it. Skill ids that are ordinary hyphenated words (content-validation) count as references wherever they appear. Users are counted per file, not per edge.

Findings that are not one row

  1. cat-harness-tools/cat-harness-tools.json still declares needs: ["folio-assistant-core"], which the “tools below core” ruling reverses. Its needs should become ["cat-harness", "bootstrap-tools"], and folio-assistant-core.json should add cat-harness-tools. With that, the C1 cycle in the seed-readiness section of the arc plan is gone: the 88 core → cat-harness-code references become core → cat-harness-tools, which points down. Measured here: of the 27 tracked cat-harness-tools/ files, 0 import core, so nothing in it has to move up today.
  2. The content concern lives in a directory called authoring/ (cat-harness/skills/authoring/{authoring-core,content-lifecycle}), while the code list cat-harness/code-lists/concern-group.json names it content. Every higher instance already uses skills/content/. Targets in this audit use content for higher instances and keep authoring/ inside cat-harness until that is ruled (owner question 6).
  3. tools has no directory yet. The MCP ruling puts the generic MCP skills in cat-harness/skills/tools/mcp/ and the general tool skills in cat-harness/skills/tools/; the folio-specific MCP surfaces go to folio-assistant-core/skills/tools/mcp/ and folio-assistant-core/tools/. The five folio-core skills measure as generic (0–10 folio terms vs 14–138 harness terms) and stay in cat-harness.
  4. Corpus-wide checkers name higher instances by literal path. 90 code rows carry such literals (recorded in evidence, not counted as placement). They are the R6 class of the arc plan and are fixed by resolving through the checkout overlay (PR0a), not by moving the checker.
  5. The checkout root’s .claude/commands/ hold sci-specific entry points (lean-*, latex-build-cache, proof-integration-watcher, …). They are OK where they are, because the root may reference every instance, but each follows its skill when the root stops aggregating (S8).

Where this disagrees with the earlier proposals (with evidence)

proposal saidthis audit saysevidence
PR2: sample-import → large-datasets/skills/stays in cat-harnessowner ruling 2026-10-01: large-datasets is a cat-harness subgraph, so the move is now inside one instance
PR5: materialization state vocabulary and extraction.ts / extract-assets.ts move down into cat-harness; sample-import-run.ts → large-datasetsthey move down into cat-harness-tools (schemas/library/, scripts/), and so does sample-import-run.tsD1 + “tools below core”: they are Zod and code, and large-datasets is now a cat-harness subgraph. The heuristic alone found them OK in core (none imports upward), so these rows carry the ruling, not a measurement
split plan blocker 1: graph-typology-registry.ts validators in core must be registered on load because tools must not reach upunchanged, and now mandatory rather than tidywith tools below core, a tools → core reference is a cycle, not a style issue
arc C1: core → tools while tools → core is a cycle needing a rulingresolvedowner ruling “tools below core” (relayed 2026-10-01); see finding 1
PR1 finished the content-type packages34 more cat-harness skills point at sci (2 MOVE, 22 SPLIT, 10 AMBIGUOUS)they link into sci skills or carry its vocabulary; none is in any PR list. Most sit in authoring/authoring-core (one-voice, Milnor exposition, the integration watchers, scientific-accuracy) and sdlc/sdlc-core
§1.3 / PR3: content-type processes up, harness processes regroup in placeagreed, plus 2 more SPLITsgraph-detanglement.bpmn cites smart-base/methodologies/diig.md; ig-ast-delta-review.bpmn binds an fhir-harness skill. Both stay and invert
PR4: 14 roles move upagreed, plus qc-reviewer and build-pipeline SPLITboth still list fhir-harness skills in the harness roles.json; those edges belong in fhir-harness/scenarios/roles.json extensions (the PR0b overlay already holds the rest)
PR8 / §4 issue 4: “28 schemas above the harness”, by category onlynamed here: 20 schemas, 28 rows with their tests: block-kinds, board, board-positions, builders, carried-note, constraints, dak, dak-blocks, dak-content-type, formal-ref, formalization-types, front-matter, ig-chrome, ig-menu, ig-metadata-index, lean-packages, note-anchor, refactor-strategy, types, window-stackthe 28 were never listed by name; the categories (content, boards, DAK/IG/FSH, sci) are applied to files by name. fsh-guts.ts is not moved: fsh-guts is a checkout-root graph (PR0a)

AMBIGUOUS — owner questions (20 rows, 7 questions)

Each question gives the context, the options, and a recommendation, so it can be answered from this page.

Q1. The integration-watcher family (5 rows: compute-integration-watcher, detangler-integration-watcher, devils-advocate-watcher, integration-watch, narrative-asserts-code)

  • Context: These skills link into sci skills (proof-integration-watcher, compute-audit, proof-gap-audit) and carry Lean/proof vocabulary, yet 3–5 harness skills (the dispatcher integration-watch, integration-backlog, siblings) name them.
  • Options: (a) move the whole family to folio-assistant-sci/skills/sdlc/ and let the generic integration-watcher lifecycle stay as the harness base; (b) split each into a generic watcher contract (harness) and a sci refinement; (c) keep all in the harness and drop the sci links.
  • Recommendation: (a): the generic part already exists as integration-watcher + lifecycle.md, which are SPLIT rows (keep, invert one link each).
  • If unanswered: the skills stay in cat-harness and keep their upward links, which check:reference-direction keeps reporting.

Q2. The editorial-graph skills (content-graph, uses-editorial-review, corpus-grep) (3 rows: content-graph, uses-editorial-review, corpus-grep)

  • Context: They define the uses[] editorial relation every folio uses, but their worked examples and links are Lean/proof (lean-formal-graph, critical-path-analysis). 8–11 harness items use them.
  • Options: (a) move to sci; (b) split: the relation and its rules stay in the harness, the Lean contrast moves to sci; (c) keep and generalise the examples.
  • Recommendation: (b): uses[] is a harness/core contract (AGENTS.md, BlockBase.uses); only the formal-graph comparison is sci.
  • If unanswered: the skills stay in cat-harness and keep their upward links, which check:reference-direction keeps reporting.

Q3. Exposition and render checks (milnor-exposition-standard, markdown-render-check) (2 rows: milnor-exposition-standard, markdown-render-check)

  • Context: Both cite sci material (folio-assistant-sci/library/milnorlink, rendering-auditor) and carry math vocabulary; 3–6 harness skills reference them.
  • Options: (a) move both to sci; (b) move milnor-exposition-standard to sci and split markdown-render-check; (c) keep both.
  • Recommendation: (b): the Milnor standard is a paper style; markdown rendering checks are generic once the math examples move.
  • If unanswered: the skills stay in cat-harness and keep their upward links, which check:reference-direction keeps reporting.

Q4. Content-pipeline modules that read as paper/Lean code but are imported by other harness modules (10 rows: translation.ts, content-graph.ts, lean-lexer.ts, markdown-ast.ts, profile-check.ts, qa-checkers-q-usage.ts, qa-checkers-voice.ts, qa-criteria-registry.ts, render-latex.ts, render-value.ts)

  • Context: They carry sci vocabulary (Lean lexing, LaTeX rendering, q-usage and voice QA checkers, the QA criteria registry), so rule 2 says folio-assistant-sci. But 3–12 non-test cat-harness modules import each one, so moving them alone creates harness → sci imports.
  • Options: (a) move each with its importers to folio-assistant-sci (the qou-era pipeline becomes sci code); (b) split: generic pipeline core to cat-harness-tools, the math checkers to sci; (c) keep all of content/pipeline/ in cat-harness-tools as the shared pipeline for now.
  • Recommendation: (b), done inside S5: it is the only option that leaves no upward import and does not drag the document path into sci.
  • If unanswered: S5 moves these modules to cat-harness-tools with the rest of content/pipeline/ (option c by default).

Q5. Form of the large-datasets and agent-skills subgraphs

  • Context: The ruling makes both cat-harness subgraphs. This audit targets them dissolved into concern groups (cat-harness/skills/library/large-datasets/…, cat-harness/library/<group>/<slug>), which matches PR8 ruling 3A. The alternative keeps them as nested directories (cat-harness/large-datasets/, cat-harness/agent-skills/).
  • Options: (a) dissolve into the eight groups (as targeted here); (b) nested directory per former instance, declared as one subgraph each; (c) dissolve agent-skills (it is only library + voices) but nest large-datasets (it has code, processes and sources).
  • Recommendation: (a): “one fact, one place”, and the group ids already exist.

Q6. skills/authoring/ vs the content concern code

  • Context: See finding 2: one concern, two names.
  • Options: (a) rename cat-harness/skills/authoring/ → skills/content/ in PR2 pzwb; (b) rename the code to authoring everywhere; (c) leave both.
  • Recommendation: (a): higher instances already use skills/content/.

Q7. Core’s schemas/{catalogue,dublin-core,fhir-artifact-index}.ts

  • Context: Core’s catalogue and Dublin Core schemas carry IRIS vocabulary and fhir-artifact-index.ts FHIR vocabulary, but cat-harness users read them (they are in graph-typology-registry.ts). They are SPLIT rows here.
  • Options: (a) generic shape stays in core, the IRIS/FHIR specifics move to who-iris / fhir-harness and register on load (split plan blocker 1); (b) move whole; (c) keep.
  • Recommendation: (a).

Per-kind tables

MOVE, SPLIT and AMBIGUOUS rows are listed in full. OK, CODE and TO-JSON rows are collapsed to a count per instance and concern; the JSON has every row.

skill (480)

verdictpathtargetconcernsignalPR
AMBIGUOUScat-harness/skills/authoring/authoring-core/compute-integration-watcher.mdfolio-assistant-sci/skills/content/compute-integration-watcher.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 4 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 4 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/authoring/authoring-core/content-graph.mdfolio-assistant-sci/skills/content/content-graph.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 10 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 10 users, (b) split: generic stub stays, sci body moves, (c) kee…unplanned
AMBIGUOUScat-harness/skills/authoring/authoring-core/detangler-integration-watcher.mdfolio-assistant-sci/skills/content/detangler-integration-watcher.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 4 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 4 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/authoring/authoring-core/devils-advocate-watcher.mdfolio-assistant-sci/skills/content/devils-advocate-watcher.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 3 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 3 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/authoring/authoring-core/milnor-exposition-standard.mdfolio-assistant-sci/skills/content/milnor-exposition-standard.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 3 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 3 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/authoring/authoring-core/uses-editorial-review.mdfolio-assistant-sci/skills/content/uses-editorial-review.mdcontentrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 8 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 8 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/kg/kg-core/corpus-grep.mdfolio-assistant-sci/skills/kg/corpus-grep.mdkgrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 11 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 11 users, (b) split: generic stub stays, sci body moves, (c) kee…unplanned
AMBIGUOUScat-harness/skills/sdlc/sdlc-core/integration-watch.mdfolio-assistant-sci/skills/sdlc/integration-watch.mdsdlcrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 5 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 5 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/sdlc/sdlc-core/narrative-asserts-code.mdfolio-assistant-sci/skills/sdlc/narrative-asserts-code.mdsdlcrule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 3 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 3 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
AMBIGUOUScat-harness/skills/ui/ui-core/markdown-render-check.mdfolio-assistant-sci/skills/ui/markdown-render-check.mduirule 1+2 say folio-assistant-sci (links into it, carries sci vocabulary) but rule 1 run backwards says stay: 6 cat-harness KG items use it. Q: (a) move to folio-assistant-sci and invert those 6 users, (b) split: generic stub stays, sci body moves, (c) keep …unplanned
MOVEagent-skills/skills/skills.jsoncat-harness/skills/content/agent-skills/skills.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEcat-harness/skills/authoring/authoring-core/editor.mdfolio-assistant-sci/skills/content/editor.mdcontentrule 1+2: references folio-assistant-sci and carries its vocabularyunplanned
MOVEcat-harness/skills/authoring/content-lifecycle/evidence-appraisal.mdfolio-assistant-core/skills/content/content-lifecycle-ext/evidence-appraisal.mdcontentplacement-concern-groups ruling (PR2 / §1.3); heuristic said SPLIT→folio-assistant-scipzwb (PR2)
MOVEcat-harness/skills/conduct/conduct-core/getting-started.mdfolio-assistant-core/skills/conduct/onboarding/getting-started.mdconductplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/conduct/conduct-core/repo-conversion.mdfolio-assistant-core/skills/conduct/onboarding/repo-conversion.mdconductplacement-concern-groups ruling (PR2 / §1.3); heuristic said SPLIT→folio-assistant-corepzwb (PR2)
MOVEcat-harness/skills/folio-core/covered-is-not-reachable.mdcat-harness/skills/tools/covered-is-not-reachable.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said SPLIT→folio-assistant-scipzwb (PR2)
MOVEcat-harness/skills/folio-core/mcp-assembly.mdcat-harness/skills/tools/mcp/mcp-assembly.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/folio-core/mcp-contract.mdcat-harness/skills/tools/mcp/mcp-contract.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/folio-core/mcp-projection.mdcat-harness/skills/tools/mcp/mcp-projection.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/folio-core/skills-and-tools.mdcat-harness/skills/tools/skills-and-tools.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/kg/graph-management/edge-kinds-and-blast-radius.mdfolio-assistant-sci/skills/kg/edge-kinds-and-blast-radius.mdkgrule 1+2: references folio-assistant-sci and carries its vocabularyunplanned
MOVEcat-harness/skills/library/library-core/archiving-arxiv.mdfolio-assistant-core/skills/library/cataloguing/archiving-arxiv.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/library/library-core/archiving-web-pages.mdfolio-assistant-core/skills/library/cataloguing/archiving-web-pages.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/library/library-core/bib-human-review.mdfolio-assistant-core/skills/library/cataloguing/bib-human-review.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/library/library-core/bib-photo-ingestion-watcher.mdfolio-assistant-core/skills/library/cataloguing/bib-photo-ingestion-watcher.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/library/library-core/bib-qa.mdfolio-assistant-core/skills/library/cataloguing/bib-qa.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said AMBIGUOUS→folio-assistant-sciapcg (PR6)
MOVEcat-harness/skills/library/library-core/filing-dublin-core.mdfolio-assistant-core/skills/library/cataloguing/filing-dublin-core.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/library/library-core/glossary-build.mdfolio-assistant-core/skills/library/cataloguing/glossary-build.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said SPLIT→folio-assistant-coreapcg (PR6)
MOVEcat-harness/skills/library/library-core/ontologist.mdfolio-assistant-core/skills/library/cataloguing/ontologist.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said SPLIT→folio-assistant-sciapcg (PR6)
MOVEcat-harness/skills/library/library-core/tabular-metadata.mdfolio-assistant-core/skills/library/ingestion/tabular-metadata.mdlibraryplacement-concern-groups ruling (PR6 §3.2); heuristic said OKapcg (PR6)
MOVEcat-harness/skills/process/workflow/branch-freshness.mdcat-harness/skills/sdlc/sdlc-core/branch-freshness.mdsdlcplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/process/workflow/code-review-process.mdcat-harness/skills/sdlc/sdlc-core/code-review-process.mdsdlcplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/process/workflow/release-epic-planning.mdcat-harness/skills/sdlc/sdlc-core/release-epic-planning.mdsdlcplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/process/workflow/release-lifecycle.mdcat-harness/skills/sdlc/sdlc-core/release-lifecycle.mdsdlcplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/sdlc/crdm/crdm-data-model.mdcat-harness/skills/process/crdm/crdm-data-model.mdprocessconcern group: sits in sdlc/ but its concern is process (owner ruling g43o: methodologies are process; §1.3)pzwb (PR2)
MOVEcat-harness/skills/sdlc/crdm/crdm-detect.mdcat-harness/skills/process/crdm/crdm-detect.mdprocessconcern group: sits in sdlc/ but its concern is process (owner ruling g43o: methodologies are process; §1.3)pzwb (PR2)
MOVEcat-harness/skills/sdlc/crdm/crdm-requirements-workflow.mdcat-harness/skills/process/crdm/crdm-requirements-workflow.mdprocessconcern group: sits in sdlc/ but its concern is process (owner ruling g43o: methodologies are process; §1.3)pzwb (PR2)
MOVEcat-harness/skills/sdlc/sdlc-core/deployment-auth.mdcat-harness/skills/tools/deployment-auth.mdtoolsplacement-concern-groups ruling (PR2 + MCP ruling 2026-10-01); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/sdlc/sdlc-core/diff.mdfolio-assistant-core/skills/sdlc/diff.mdsdlcrule 1+2: references folio-assistant-core and carries its vocabularyunplanned
MOVEcat-harness/skills/sdlc/spec-kit/spec-kit.mdcat-harness/skills/process/spec-kit/spec-kit.mdprocessconcern group: sits in sdlc/ but its concern is process (owner ruling g43o: methodologies are process; §1.3)pzwb (PR2)
MOVEcat-harness/skills/ui/ui-core/board-diagram-interchange.mdfolio-assistant-core/skills/ui/boards/board-diagram-interchange.mduiplacement-concern-groups ruling (PR2 / §1.3); heuristic said OKpzwb (PR2)
MOVEcat-harness/skills/ui/ui-core/board-windows.mdfolio-assistant-core/skills/ui/boards/board-windows.mduiplacement-concern-groups ruling (PR2 / §1.3); heuristic said SPLIT→folio-assistant-corepzwb (PR2)
MOVElarge-datasets/skills/copy-out-materialized.mdcat-harness/skills/library/large-datasets/copy-out-materialized.mdlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/skills/kg-subscription.mdcat-harness/skills/library/large-datasets/kg-subscription.mdlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/skills/materialize-on-demand.mdcat-harness/skills/library/large-datasets/materialize-on-demand.mdlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/skills/materialize-remote.mdcat-harness/skills/library/large-datasets/materialize-remote.mdlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/skills/package-manifest.jsoncat-harness/skills/content/large-datasets/package-manifest.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/skills/sample-import.mdcat-harness/skills/library/large-datasets/sample-import.mdlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEwho-style-guide/skills/skills.jsonwho-iris/skills/content/skills.jsoncontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
SPLITbootstrap-tools/skills/bootstrap-contract-semver.mdcat-harness/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into cat-harness — keep it here, invert the reference (the higher item links down)unplanned
SPLITbootstrap-tools/skills/package-manifest.jsonwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/block-density.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/canonical-watcher.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/chapter-complexity-review.mdfolio-assistant-core/skills/content/chapter-complexity-review.mdcontentrule 2 vs users: subject is doc but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the doc bodyunplanned
SPLITcat-harness/skills/authoring/authoring-core/content-profiles.mdfolio-assistant-sci/skills/content/content-profiles.mdcontentrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/authoring/authoring-core/integration-audit.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/md-authoring.mdfolio-assistant-sci/skills/content/md-authoring.mdcontentrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/authoring/authoring-core/one-voice-audit.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/one-voice-integration-watcher.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/production-vs-exploratory-discipline.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 3 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/readability-editing.mdfolio-assistant-sci/skills/content/readability-editing.mdcontentrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/authoring/authoring-core/review-comments.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 8 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/authoring-core/scientific-accuracy.mdfolio-assistant-sci/skills/content/scientific-accuracy.mdcontentrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/authoring/authoring-core/todo-review.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 4 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/authoring/content-lifecycle/content-test.mdfolio-assistant-sci/skills/content/content-test.mdcontentrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/conduct/conduct-core/where-does-this-go.mdroot/ (a checkout-root link: replace it, R6; the item stays)conductrule 1: generic item with 1 upward reference(s) into root — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/graph-management/domain-fencing.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 4 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/graph-management/graph-detanglement.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/graph-management/graph-rendering.mdfolio-assistant-sci/skills/kg/graph-rendering.mdkgrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/kg/kg-core/directory-conventions.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 10 upward reference(s) into folio-assistant-core, who-iris, smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/harness-requirements.mdroot/ (a checkout-root link: replace it, R6; the item stays)kgrule 1: generic item with 1 upward reference(s) into root — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/instance-publication.mdfhir-harness/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 2 upward reference(s) into fhir-harness, smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/kg-contribution-offer.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/kg-export.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/kg-to-portal.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/placement.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/schema-management.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 3 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/kg/kg-core/vocabulary-authority.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 3 upward reference(s) into folio-assistant-core, fhir-harness — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/asset-extraction.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 4 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/glossary-terms.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 7 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/library-ingestion.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 4 upward reference(s) into folio-assistant-core, who-iris, folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/translation-manager.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/upload-naming.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)libraryplacement §3.1: upload-naming is part of the basic ingestion flow that stays in cat-harness; heuristic said MOVE→who-iris — invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/library/library-core/upload-routes.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 1 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/process/process-core/role-model.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)processrule 1: generic item with 3 upward reference(s) into folio-assistant-core, folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/process/workflow/bpmn-authoring.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)processrule 1: generic item with 2 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/process/workflow/dmn-authoring.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)processrule 1: generic item with 2 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/requirements/fhir-validation.jsonfhir-harness/skills/content/fhir-validation.jsoncontentrule 2 vs users: subject is fhir but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the fhir bodyunplanned
SPLITcat-harness/skills/requirements/lean-verification.jsonfolio-assistant-sci/skills/sdlc/lean-verification.jsonsdlcrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/sdlc/sdlc-core/before-after-preview.mdfhir-harness/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 3 upward reference(s) into fhir-harness, folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/continual-progress.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/delivery-summary.mdfolio-assistant-sci/skills/sdlc/delivery-summary.mdsdlcrule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/sdlc/sdlc-core/integration-backlog.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 3 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/integration-watcher.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/integration-watcher/lifecycle.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/pickup.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/prepare-merge.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/staging-review.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/test-engineer.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)sdlcrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/sdlc/sdlc-core/todo-manager.mdroot/ (a checkout-root link: replace it, R6; the item stays)sdlcrule 1: generic item with 1 upward reference(s) into root — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/ui/theming/site-presentation-assets.mdroot/ (a checkout-root link: replace it, R6; the item stays)uirule 1: generic item with 1 upward reference(s) into root — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/ui/theming/theme-art-intake.mdfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)uirule 1: generic item with 1 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/ui/ui-core/docs-auto.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)uirule 1: generic item with 5 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/ui/ui-core/harness-tiles.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)uirule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/skills/ui/ui-core/html-rendering-qc.mdfolio-assistant-sci/skills/ui/html-rendering-qc.mduirule 2 vs users: subject is sci but used at/below cat-harness by [‘cat-harness’]; keep a generic stub, move the sci bodyunplanned
SPLITcat-harness/skills/ui/ui-core/incremental-render.mdwho-iris/ (receives the upward-pointing passage or link only; the item stays at its path)uirule 1: generic item with 1 upward reference(s) into who-iris — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/content/fhir-ig-authoring/ig-publication.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/content/fhir-ig-authoring/l3-fhir-authoring.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/content/fhir-ig-authoring/terminology-management.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentowner placement in #1702 (2026-09-30, “split by theme across harnesses”) put it in fhir-harness; heuristic said MOVE→smart-base — keep it, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/fhir-ig-base/ig-build-pipeline.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 3 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/fhir-ig-base/ig-publisher-fork.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/fhir-ig-base/ig-render-jekyll.mdsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)uirule 1: generic item with 3 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfhir-harness/skills/skill-definitions/l3-fhir-authoring.jsonsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITfolio-assistant-core/skills/content/content-lifecycle-ext/quality-control.mdfhir-harness/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into fhir-harness — keep it here, invert the reference (the higher item links down)unplanned
SPLITfolio-assistant-core/skills/content/folio-document-adapter/document-authoring.mdfolio-assistant-sci/skills/content/document-authoring.mdcontentrule 2 vs users: subject is sci but used at/below folio-assistant-core by [‘cat-harness’, ‘folio-assistant-core’]; keep a generic stub, move the sci bodyunplanned
SPLITfolio-assistant-core/skills/content/folio-document-adapter/document-publishing.mdfolio-assistant-sci/skills/content/document-publishing.mdcontentrule 2 vs users: subject is sci but used at/below folio-assistant-core by [‘cat-harness’, ‘folio-assistant-core’]; keep a generic stub, move the sci bodyunplanned
SPLITfolio-assistant-core/skills/library/ingestion/document-intake.mdfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)libraryrule 1: generic item with 2 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
SPLITfolio-assistant-sci/skills/content/folio-paper-adapter/q-usage-watcher.mdroot/ (a checkout-root link: replace it, R6; the item stays)contentrule 1: generic item with 1 upward reference(s) into root — keep it here, invert the reference (the higher item links down)unplanned
SPLITsmart-base/skills/content/authoring-who-smart-guidelines/ig-artifact-ingestion.mdsmart-trust/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 2 upward reference(s) into smart-trust — keep it here, invert the reference (the higher item links down)unplanned
collapsed: OK 335, CODE 3, TO-JSON 23
instanceconcernOKCODETO-JSON
bootstrapcontent3
bootstrapkg4
bootstrapui1
cat-harnessconduct15
cat-harnesscontent2413
cat-harnesskg1821
cat-harnesslibrary71
cat-harnessprocess20
cat-harnesssdlc422
cat-harnesstools1
cat-harnessui191
fhir-harnesscontent12
folio-assistant-corecontent19
folio-assistant-corelibrary1
folio-assistant-scicontent12314
folio-assistant-scilibrary1
rootconduct2
rootsdlc10
smart-basecontent12
who-iriscontent2

voice (53)

verdictpathtargetconcernsignalPR
MOVEagent-skills/skills/voices/agent-skill-authoring/voice.jsoncat-harness/skills/content/agent-skills/voice.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/skills/voices/vendors/agent-skill-authoring-claude/voice.jsoncat-harness/skills/content/agent-skills/voice.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/skills/voices/vendors/agent-skill-authoring-gemini-cli/voice.jsoncat-harness/skills/content/agent-skills/voice.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/skills/voices/vendors/agent-skill-authoring-openai/voice.jsoncat-harness/skills/content/agent-skills/voice.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/skills/voices/vendors/vendors.jsoncat-harness/skills/content/agent-skills/vendors.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/skills/voices/voices.jsoncat-harness/skills/content/agent-skills/voices.jsoncontentruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVEwho-style-guide/skills/voices/who-editorial/SKILL.mdwho-iris/skills/voices/who-editorial/SKILL.mdcontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
MOVEwho-style-guide/skills/voices/who-editorial/voice.jsonwho-iris/skills/voices/who-editorial/voice.jsoncontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
MOVEwho-style-guide/skills/voices/who-guideline-development/SKILL.mdwho-iris/skills/voices/who-guideline-development/SKILL.mdcontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
MOVEwho-style-guide/skills/voices/who-guideline-development/voice.jsonwho-iris/skills/voices/who-guideline-development/voice.jsoncontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
MOVEwho-style-guide/skills/voices/who-publication-design/SKILL.mdwho-iris/skills/voices/who-publication-design/SKILL.mdcontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
MOVEwho-style-guide/skills/voices/who-publication-design/voice.jsonwho-iris/skills/voices/who-publication-design/voice.jsoncontentruling: who-style-guide retires into who-iris (#1735)#1735 (S3)
collapsed: OK 41
instanceconcernOKCODETO-JSON
folio-assistant-corecontent37
folio-assistant-scicontent2
smart-basecontent2

skill-command (44)

collapsed: OK 44
instanceconcernOKCODETO-JSON
rootconduct4
rootcontent21
rootkg1
rootlibrary1
rootsdlc17

tool (128)

verdictpathtargetconcernsignalPR
MOVEcat-harness/tools/index.tsfolio-assistant-core/tools/folio-block-qa-summary.jsoncontentrefined MCP ruling 2026-10-01: folio-specific tool surface → folio-assistant-core (core tools/mcp subgraph for folio surfaces); also D2 JSON — subject is folio content (vocabulary)unplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-core/tools/folio-block-screenshots.jsonsdlcrefined MCP ruling 2026-10-01: folio-specific tool surface → folio-assistant-core (core tools/mcp subgraph for folio surfaces); also D2 JSONunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/latex-preflight.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/latex-overfull.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/tex-snippet-validate.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/tex-source-audit.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/headless-render-qc.jsonsdlcrule 2: tool subject is sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/lean-build.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/lean-cache.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/lean-toolchain-setup.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/lean-coverage.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/lean-audit.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/content-manifest-validate.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/paper-latex-build.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/proof-dependency-graph.jsonuirule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/proof-objects-extract.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-sci/tools/proof-status-update.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfolio-assistant-core/tools/glossary-build.jsonlibraryrule 1/3: satisfies skills owned by folio-assistant-core; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/index.tsfhir-harness/tools/fsh-cone.jsoncontentrule 1/3: satisfies skills owned by fhir-harness; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/mcp.tsfolio-assistant-sci/tools/check-dependencies.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/mcp.tsfolio-assistant-sci/tools/paper-preferences.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEcat-harness/tools/mcp.tsfolio-assistant-sci/tools/paper-preview.jsoncontentrule 1/3: satisfies skills owned by folio-assistant-sci; also D2 (definition becomes JSON); implementation → that instance’s codeunplanned (tool placement; S5 70lx carries implementations)
MOVEsmart-base/tools/index.tsfhir-harness/tools/valueset-schemas.jsoncontentrule 2: generic FHIR vocabulary, no WHO/SMART/DAK termsunplanned (tool placement; S5 70lx carries implementations)
SPLITcat-harness/tools/mcp.tscat-harness/tools/instance-init.json (generic instance init) + folio-assistant-core/tools/folio-init.json (content-adapter scaffold; core tools/mcp subgraph)conductrefined MCP ruling 2026-10-01 + mer2 (“split the operation”): generic init stays, folio scaffold half is core-specificmer2 (S6) + 70lx
collapsed: TO-JSON 104
instanceconcernOKCODETO-JSON
cat-harnesscontent5
cat-harnesskg19
cat-harnesslibrary17
cat-harnessprocess8
cat-harnesssdlc11
cat-harnesstools3
cat-harnessui15
fhir-harnesscontent14
folio-assistant-corecontent3
folio-assistant-coresdlc1
smart-basecontent8

tool-code (2)

collapsed: OK 1, CODE 1
instanceconcernOKCODETO-JSON
cat-harnesstools1
roottools1

process (78)

verdictpathtargetconcernsignalPR
MOVEcat-harness/processes/atomic-mass-drift-check.bpmnfolio-assistant-sci/processes/sdlc/atomic-mass-drift-check.bpmnsdlcplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/authoring-a-document.bpmnfolio-assistant-core/processes/content/authoring-a-document.bpmncontentplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/authoring-a-paper.bpmnfolio-assistant-sci/processes/content/authoring-a-paper.bpmncontentplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/board-open-close.bpmnfolio-assistant-core/processes/ui/board-open-close.bpmnuiplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/board-place-note.bpmnfolio-assistant-core/processes/ui/board-place-note.bpmnuiplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/board-relocate.bpmnfolio-assistant-core/processes/ui/board-relocate.bpmnuiplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/content-change-review.bpmnfolio-assistant-core/processes/sdlc/content-change-review.bpmnsdlcplacement PR3 ruling (63wl); heuristic said SPLIT→folio-assistant-sci63wl (PR3)
MOVEcat-harness/processes/content-lifecycle.bpmnfolio-assistant-core/processes/content/content-lifecycle.bpmncontentplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/draft-to-publication.bpmnfolio-assistant-core/processes/content/draft-to-publication.bpmncontentplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/editing-hci-validation.bpmnfolio-assistant-core/processes/content/editing-hci-validation.bpmncontentplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/evidence-retrieval.bpmnfolio-assistant-core/processes/library/evidence-retrieval.bpmnlibraryplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/getting-started.bpmnfolio-assistant-core/processes/conduct/getting-started.bpmnconductplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/ig-incremental-build.bpmnfhir-harness/processes/content/ig-incremental-build.bpmncontentplacement PR3 ruling (63wl); heuristic said SPLIT→folio-assistant-core63wl (PR3)
MOVEcat-harness/processes/ingest-build-l1-kg.bpmnfolio-assistant-core/processes/library/ingest-build-l1-kg.bpmnlibraryplacement §3.2 (apcg PR6): ingest-* subprocesses are core detailed methods; heuristic said SPLITapcg (PR6)
MOVEcat-harness/processes/ingest-derive-content.bpmnfolio-assistant-core/processes/library/ingest-derive-content.bpmnlibraryplacement §3.2 (apcg PR6): ingest-* subprocesses are core detailed methods; heuristic said SPLITapcg (PR6)
MOVEcat-harness/processes/ingest-extract-structure.bpmnfolio-assistant-core/processes/library/ingest-extract-structure.bpmnlibraryplacement §3.2 (apcg PR6): ingest-* subprocesses are core detailed methods; heuristic said SPLITapcg (PR6)
MOVEcat-harness/processes/ingest-l1-completeness-gate.bpmnfolio-assistant-core/processes/library/ingest-l1-completeness-gate.bpmnlibraryplacement §3.2 (apcg PR6): ingest-* subprocesses are core detailed methods; heuristic said SPLITapcg (PR6)
MOVEcat-harness/processes/ingest-theme.bpmnfolio-assistant-core/processes/library/ingest-theme.bpmnuiplacement §3.2 (apcg PR6): ingest-* subprocesses are core detailed methods; heuristic said OKapcg (PR6)
MOVEcat-harness/processes/l2-dak-authoring.bpmnsmart-base/processes/content/l2-dak-authoring.bpmncontentplacement PR3 ruling (63wl); heuristic said SPLIT→fhir-harness63wl (PR3)
MOVEcat-harness/processes/l3-fhir-pipeline.bpmnfhir-harness/processes/content/l3-fhir-pipeline.bpmncontentplacement PR3 ruling (63wl)63wl (PR3)
MOVElarge-datasets/processes/copy-out-materialized.bpmncat-harness/processes/library/copy-out-materialized.bpmnlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/processes/materialize-remote.bpmncat-harness/processes/library/materialize-remote.bpmnlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/processes/refresh-materialized.bpmncat-harness/processes/library/refresh-materialized.bpmnlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/processes/sample-import.bpmncat-harness/processes/library/sample-import.bpmnlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/processes/subscribe-kg.bpmncat-harness/processes/library/subscribe-kg.bpmnlibraryruling: large-datasets/agent-skills become cat-harness subgraphs (2026-10-01)unplanned (7x5n S4 subgraph ruling)
SPLITcat-harness/processes/document-ingestion.bpmncat-harness/processes/library/document-ingestion.bpmn (basic) + folio-assistant-core/processes/library/l1-document-ingestion.bpmnlibraryplacement §3.1 (apcg PR6): keep Process_Ingestion as the basic flow; L1 detail to coreapcg (PR6)
SPLITcat-harness/processes/graph-detanglement.bpmnsmart-base/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 1 upward reference(s) into smart-base — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/processes/ig-ast-delta-review.bpmnfhir-harness/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into fhir-harness — keep it here, invert the reference (the higher item links down)unplanned
SPLITcat-harness/processes/review-task.bpmnfolio-assistant-sci/ (receives the upward-pointing passage or link only; the item stays at its path)contentrule 1: generic item with 1 upward reference(s) into folio-assistant-sci — keep it here, invert the reference (the higher item links down)unplanned
collapsed: OK 49
instanceconcernOKCODETO-JSON
bootstrapcontent2
bootstrapkg1
cat-harnessconduct1
cat-harnesscontent2
cat-harnesskg4
cat-harnesslibrary4
cat-harnessprocess9
cat-harnesssdlc21
cat-harnessui3
folio-assistant-corecontent1
smart-baseprocess1

decision (9)

verdictpathtargetconcernsignalPR
MOVEcat-harness/processes/decisions/draft-qa-gate.dmnfolio-assistant-core/processes/sdlc/draft-qa-gate.dmnsdlcplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/decisions/folio-intent.dmnfolio-assistant-core/processes/content/folio-intent.dmncontentplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/decisions/lean-build-gate.dmnfolio-assistant-sci/processes/sdlc/lean-build-gate.dmnsdlcplacement PR3 ruling (63wl)63wl (PR3)
MOVEcat-harness/processes/decisions/pages-live-gate.dmnfolio-assistant-core/processes/sdlc/pages-live-gate.dmnsdlcplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
MOVEcat-harness/processes/decisions/review-coverage-gate.dmnfolio-assistant-core/processes/sdlc/review-coverage-gate.dmnsdlcplacement PR3 ruling (63wl); heuristic said OK63wl (PR3)
collapsed: OK 4
instanceconcernOKCODETO-JSON
cat-harnesscontent1
cat-harnesssdlc3

role (52)

verdictpathtargetconcernsignalPR
MOVEcat-harness/scenarios/roles.json#board-rendererfolio-assistant-core/scenarios/roles.jsonuiplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#clinical-smesmart-base/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#compute-authoring-agentfolio-assistant-sci/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#deep-researcherfolio-assistant-core/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#editorial-authoring-agentfolio-assistant-core/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#evidence-agentfolio-assistant-core/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#fhir-modellerfhir-harness/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#ig-publisher-servicefhir-harness/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#lean-authoring-agentfolio-assistant-sci/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#lean-toolchainfolio-assistant-sci/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#onboarding-agentfolio-assistant-core/scenarios/roles.jsonconductplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#proof-review-agentfolio-assistant-sci/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#review-coordinatorfolio-assistant-core/scenarios/roles.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/roles.json#terminologistfhir-harness/scenarios/roles.jsonlibraryplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
SPLITcat-harness/scenarios/roles.json#build-pipelinefhir-harness/scenarios/roles.json extensions (the upward role→skill edges only; the role stays)sdlcrule 1: generic item with 1 upward reference(s) into fhir-harness — keep it here, move the upward role→skill edges into the owner’s roles.json extensions overlay (PR0b mechanism)4fv8 (PR4)
SPLITcat-harness/scenarios/roles.json#qc-reviewerfhir-harness/scenarios/roles.json extensions (the upward role→skill edges only; the role stays)contentrule 1: generic item with 1 upward reference(s) into fhir-harness — keep it here, move the upward role→skill edges into the owner’s roles.json extensions overlay (PR0b mechanism)4fv8 (PR4)
collapsed: OK 36
instanceconcernOKCODETO-JSON
bootstrapcontent2
bootstrapkg2
cat-harnessconduct2
cat-harnesscontent9
cat-harnesskg2
cat-harnesslibrary6
cat-harnessprocess3
cat-harnesssdlc9
cat-harnessui1

role-extension (25)

collapsed: OK 25
instanceconcernOKCODETO-JSON
fhir-harnesscontent5
folio-assistant-corecontent3
folio-assistant-corelibrary6
folio-assistant-scicontent9
smart-basecontent2

story (114)

verdictpathtargetconcernsignalPR
MOVEcat-harness/scenarios/stories.json#clinical-sme-1smart-base/scenarios/stories.jsoncontentPR4 ruling: story follows its role clinical-sme4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#clinical-sme-2smart-base/scenarios/stories.jsoncontentPR4 ruling: story follows its role clinical-sme4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#clinical-sme-3smart-base/scenarios/stories.jsoncontentPR4 ruling: story follows its role clinical-sme4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#compute-authoring-agent-1folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role compute-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#compute-authoring-agent-2folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role compute-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#compute-authoring-agent-3folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role compute-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#deep-researcher-1folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role deep-researcher4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#deep-researcher-2folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role deep-researcher4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#deep-researcher-3folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role deep-researcher4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#deep-researcher-4folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role deep-researcher4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#editorial-authoring-agent-1folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role editorial-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#editorial-authoring-agent-2folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role editorial-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#editorial-authoring-agent-3folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role editorial-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#evidence-agent-1folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role evidence-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#evidence-agent-2folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role evidence-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#evidence-agent-3folio-assistant-core/scenarios/stories.jsoncontentPR4 ruling: story follows its role evidence-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#fhir-modeller-1fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role fhir-modeller4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#fhir-modeller-2fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role fhir-modeller4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#fhir-modeller-3fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role fhir-modeller4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#lean-authoring-agent-1folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role lean-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#lean-authoring-agent-2folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role lean-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#lean-authoring-agent-3folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role lean-authoring-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#onboarding-agent-1folio-assistant-core/scenarios/stories.jsonuiPR4 ruling: story follows its role onboarding-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#onboarding-agent-2folio-assistant-core/scenarios/stories.jsonuiPR4 ruling: story follows its role onboarding-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#onboarding-agent-3folio-assistant-core/scenarios/stories.jsonuiPR4 ruling: story follows its role onboarding-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#proof-review-agent-1folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role proof-review-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#proof-review-agent-2folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role proof-review-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#proof-review-agent-3folio-assistant-sci/scenarios/stories.jsoncontentPR4 ruling: story follows its role proof-review-agent4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#review-coordinator-1folio-assistant-core/scenarios/stories.jsonsdlcPR4 ruling: story follows its role review-coordinator4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#review-coordinator-2folio-assistant-core/scenarios/stories.jsonsdlcPR4 ruling: story follows its role review-coordinator4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#review-coordinator-3folio-assistant-core/scenarios/stories.jsonsdlcPR4 ruling: story follows its role review-coordinator4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#terminologist-1fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role terminologist4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#terminologist-2fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role terminologist4fv8 (PR4)
MOVEcat-harness/scenarios/stories.json#terminologist-3fhir-harness/scenarios/stories.jsoncontentPR4 ruling: story follows its role terminologist4fv8 (PR4)
collapsed: OK 80
instanceconcernOKCODETO-JSON
cat-harnesscontent39
cat-harnesslibrary14
cat-harnesssdlc12
cat-harnessui15

actor (36)

verdictpathtargetconcernsignalPR
MOVEcat-harness/scenarios/actors/board-renderer.jsonfolio-assistant-core/scenarios/actors/board-renderer.jsonuiplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/actors/clinical-sme.jsonsmart-base/scenarios/actors/clinical-sme.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/actors/deep-researcher.jsonfolio-assistant-core/scenarios/actors/deep-researcher.jsoncontentplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/actors/evidence-agent.jsonfolio-assistant-core/scenarios/actors/evidence-agent.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/actors/fhir-modeller.jsonfhir-harness/scenarios/actors/fhir-modeller.jsoncontentplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/actors/ig-publisher-service.jsonfhir-harness/scenarios/actors/ig-publisher-service.jsoncontentplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/actors/lean-mcp.jsonfolio-assistant-sci/scenarios/actors/lean-mcp.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/actors/onboarding-agent.jsonfolio-assistant-core/scenarios/actors/onboarding-agent.jsonuiplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/actors/terminologist.jsonfhir-harness/scenarios/actors/terminologist.jsoncontentplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
collapsed: OK 27
instanceconcernOKCODETO-JSON
cat-harnesscontent14
cat-harnesslibrary2
cat-harnessprocess3
cat-harnesssdlc1
cat-harnessui7

capability (28)

verdictpathtargetconcernsignalPR
MOVEcat-harness/scenarios/capabilities/fhir-validator.jsonfhir-harness/scenarios/capabilities/fhir-validator.jsontoolsplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/html-pdf-engine.jsonfolio-assistant-core/scenarios/capabilities/html-pdf-engine.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/ig-publisher.jsonfhir-harness/scenarios/capabilities/ig-publisher.jsontoolsplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/java-runtime.jsonfhir-harness/scenarios/capabilities/java-runtime.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/latex-compiler.jsonfolio-assistant-sci/scenarios/capabilities/latex-compiler.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/lean-atlas.jsonfolio-assistant-sci/scenarios/capabilities/lean-atlas.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/lean-mcp.jsonfolio-assistant-sci/scenarios/capabilities/lean-mcp.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/lean-toolchain.jsonfolio-assistant-sci/scenarios/capabilities/lean-toolchain.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/pandoc.jsonfolio-assistant-core/scenarios/capabilities/pandoc.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/smart-base.jsonsmart-base/scenarios/capabilities/smart-base.jsontoolsplacement PR4 ruling (4fv8)4fv8 (PR4)
MOVEcat-harness/scenarios/capabilities/sushi-compiler.jsonfhir-harness/scenarios/capabilities/sushi-compiler.jsontoolsplacement PR4 ruling (4fv8); heuristic said OK4fv8 (PR4)
collapsed: OK 17
instanceconcernOKCODETO-JSON
cat-harnesstools17

methodology (21)

collapsed: OK 21
instanceconcernOKCODETO-JSON
cat-harnesscontent2
cat-harnesskg2
cat-harnesslibrary2
cat-harnessprocess9
cat-harnessui1
folio-assistant-corecontent1
folio-assistant-scicontent2
folio-assistant-sciprocess1
smart-basecontent1

code-list (13)

verdictpathtargetconcernsignalPR
MOVEcat-harness/code-lists/grade-certainty.jsonsmart-base/code-lists/grade-certainty.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
MOVEcat-harness/code-lists/grade-etd-criterion.jsonsmart-base/code-lists/grade-etd-criterion.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
MOVEcat-harness/code-lists/grade-rating-down.jsonsmart-base/code-lists/grade-rating-down.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
MOVEcat-harness/code-lists/grade-rating-up.jsonsmart-base/code-lists/grade-rating-up.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
MOVEcat-harness/code-lists/grade-recommendation-direction.jsonsmart-base/code-lists/grade-recommendation-direction.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
MOVEcat-harness/code-lists/grade-recommendation-strength.jsonsmart-base/code-lists/grade-recommendation-strength.jsoncontentrule 2/3: GRADE evidence-to-decision vocabulary; placement §0 keeps GRADE in smart-base (the grade skill); heuristic said OKunplanned
SPLITcat-harness/code-lists/own-namespaces.jsonfolio-assistant-core/ (receives the upward-pointing passage or link only; the item stays at its path)kgrule 1: generic item with 3 upward reference(s) into folio-assistant-core — keep it here, invert the reference (the higher item links down)unplanned
collapsed: OK 6
instanceconcernOKCODETO-JSON
cat-harnesskg1
cat-harnesssdlc5

template (20)

verdictpathtargetconcernsignalPR
MOVEcat-harness/templates/document/github/workflows/qa-sweep-nightly.ymlfolio-assistant-core/templates/document/github/workflows/qa-sweep-nightly.ymlsdlcrule 2 + refined MCP ruling: document-content-type template is the folio_init adapter-scaffold half (mer2), which is core-specificmer2 (S6) + 70lx
MOVEcat-harness/templates/document/github/workflows/qa-sweep.ymlfolio-assistant-core/templates/document/github/workflows/qa-sweep.ymlsdlcrule 2 + refined MCP ruling: document-content-type template is the folio_init adapter-scaffold half (mer2), which is core-specificmer2 (S6) + 70lx
MOVEcat-harness/templates/document/github/workflows/section-title-audit.ymlfolio-assistant-core/templates/document/github/workflows/section-title-audit.ymlsdlcrule 2 + refined MCP ruling: document-content-type template is the folio_init adapter-scaffold half (mer2), which is core-specificmer2 (S6) + 70lx
MOVEcat-harness/templates/paper/github/actions/lake-cache-restore/action.ymlfolio-assistant-sci/templates/paper/github/actions/lake-cache-restore/action.ymlsdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/axiom_report.pyfolio-assistant-sci/templates/paper/github/scripts/axiom_report.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/extract_proof_objects.pyfolio-assistant-sci/templates/paper/github/scripts/extract_proof_objects.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/folio_lean/__init__.pyfolio-assistant-sci/templates/paper/github/scripts/folio_lean/__init__.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/folio_lean/config.pyfolio-assistant-sci/templates/paper/github/scripts/folio_lean/config.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/folio_lean/git_utils.pyfolio-assistant-sci/templates/paper/github/scripts/folio_lean/git_utils.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/folio_lean/manifest.pyfolio-assistant-sci/templates/paper/github/scripts/folio_lean/manifest.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/generate_dependency_graph.pyfolio-assistant-sci/templates/paper/github/scripts/generate_dependency_graph.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/scripts/update_proof_status.pyfolio-assistant-sci/templates/paper/github/scripts/update_proof_status.pysdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/workflows/blueprint.ymlfolio-assistant-sci/templates/paper/github/workflows/blueprint.ymlsdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/workflows/lean-build-sidecar.ymlfolio-assistant-sci/templates/paper/github/workflows/lean-build-sidecar.ymlsdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/workflows/lean-build.ymlfolio-assistant-sci/templates/paper/github/workflows/lean-build.ymlsdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
MOVEcat-harness/templates/paper/github/workflows/lean_ci.ymlfolio-assistant-sci/templates/paper/github/workflows/lean_ci.ymlsdlcrule 2: paper-content-type template (folio_init writes it for a paper folio)unplanned
collapsed: OK 3, CODE 1
instanceconcernOKCODETO-JSON
bootstrap-toolsprocess1
bootstrap-toolsui2
cat-harnesslibrary1

schema (307)

verdictpathtargetconcernsignalPR
AMBIGUOUScat-harness/schemas/translation.tsfolio-assistant-sci/schemas/translation.tslibraryrule 2 says folio-assistant-sci (sci vocabulary) but 3 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
MOVEcat-harness/schemas/board-positions.test.tsfolio-assistant-core/schemas/board-positions.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/board-positions.tsfolio-assistant-core/schemas/board-positions.tsuiowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/board.test.tsfolio-assistant-core/schemas/board.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/board.tsfolio-assistant-core/schemas/board.tsuiowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/carried-note.tsfolio-assistant-core/schemas/carried-note.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/constraints.tsfolio-assistant-sci/schemas/constraints.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); Lean / formalisation vocabulary; heuristic said AMBIGUOUSf8wp (PR8)
MOVEcat-harness/schemas/dak-blocks.tssmart-base/schemas/dak-blocks.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); DAK vocabularyf8wp (PR8)
MOVEcat-harness/schemas/dak-content-type.tssmart-base/schemas/dak-content-type.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); DAK vocabulary; heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/dak.test.tssmart-base/schemas/dak.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); DAK vocabularyf8wp (PR8)
MOVEcat-harness/schemas/dak.tssmart-base/schemas/dak.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); DAK vocabularyf8wp (PR8)
MOVEcat-harness/schemas/formal-ref.tsfolio-assistant-sci/schemas/formal-ref.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); Lean / formalisation vocabulary; heuristic said AMBIGUOUSf8wp (PR8)
MOVEcat-harness/schemas/formalization-types.tsfolio-assistant-sci/schemas/formalization-types.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); Lean / formalisation vocabularyf8wp (PR8)
MOVEcat-harness/schemas/ig-chrome.test.tsfhir-harness/schemas/ig-chrome.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes); heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/ig-chrome.tsfhir-harness/schemas/ig-chrome.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes); heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/ig-menu.test.tsfhir-harness/schemas/ig-menu.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes); heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/ig-menu.tsfhir-harness/schemas/ig-menu.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes); heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/ig-metadata-index.test.tsfhir-harness/schemas/ig-metadata-index.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes); heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/ig-metadata-index.tsfhir-harness/schemas/ig-metadata-index.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); generic FHIR IG publication shape (would a non-WHO IG need it? yes)f8wp (PR8)
MOVEcat-harness/schemas/lean-packages.tsfolio-assistant-sci/schemas/lean-packages.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); Lean / formalisation vocabulary; heuristic said CODEf8wp (PR8)
MOVEcat-harness/schemas/note-anchor.test.tsfolio-assistant-core/schemas/note-anchor.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/note-anchor.tsfolio-assistant-core/schemas/note-anchor.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/refactor-strategy.tsfolio-assistant-sci/schemas/refactor-strategy.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); Lean / formalisation vocabularyf8wp (PR8)
MOVEcat-harness/schemas/window-stack.test.tsfolio-assistant-core/schemas/window-stack.test.tssdlcowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEcat-harness/schemas/window-stack.tsfolio-assistant-core/schemas/window-stack.tscontentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); boards are a core concern (PR2 ui/boards, PR3 board-*.bpmn); heuristic said CODEpzwb (PR2)
MOVEfolio-assistant-core/schemas/extraction.tscat-harness-tools/schemas/library/extraction.tslibraryPR5 tlat: the tool behind the harness’s own asset-extraction skill moves down; Zod → cat-harness-tools (D1); heuristic said OKtlat (PR5)
SPLITcat-harness/schemas/block-kinds.tsfolio-assistant-core/schemas/block-kinds.ts (document kinds) + folio-assistant-sci/schemas/ (MATH_BLOCK_KINDS and math fields)contentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); content-block schema: DOCUMENT_BLOCK_KINDS is the derived complement of MATH_BLOCK_KINDS (AGENTS.md), so it splits core/sci; heuristic said CODEf8wp (PR8)
SPLITcat-harness/schemas/builders.tsfolio-assistant-core/schemas/builders.ts (document kinds) + folio-assistant-sci/schemas/ (MATH_BLOCK_KINDS and math fields)contentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); content-block schema: DOCUMENT_BLOCK_KINDS is the derived complement of MATH_BLOCK_KINDS (AGENTS.md), so it splits core/sci; heuristic said AMBIGUOUSf8wp (PR8)
SPLITcat-harness/schemas/front-matter.tsfolio-assistant-core/schemas/front-matter.ts (document kinds) + folio-assistant-sci/schemas/ (MATH_BLOCK_KINDS and math fields)contentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); content-block schema: DOCUMENT_BLOCK_KINDS is the derived complement of MATH_BLOCK_KINDS (AGENTS.md), so it splits core/sci; heuristic said CODEf8wp (PR8)
SPLITcat-harness/schemas/types.tsfolio-assistant-core/schemas/types.ts (document kinds) + folio-assistant-sci/schemas/ (MATH_BLOCK_KINDS and math fields)contentowner ruling 4B (2026-09-30): schemas above the harness move now, with their importers (placement §4 issue 4); content-block schema: DOCUMENT_BLOCK_KINDS is the derived complement of MATH_BLOCK_KINDS (AGENTS.md), so it splits core/sci; heuristic said AMBIGUOUSf8wp (PR8)
SPLITfolio-assistant-core/schemas/catalogue.tswho-iris/schemas/catalogue.tslibraryrule 2 vs users: subject is iris but used at/below folio-assistant-core by [‘cat-harness’]; keep a generic stub, move the iris bodyunplanned (#223 code partition; S5)
SPLITfolio-assistant-core/schemas/dublin-core.tswho-iris/schemas/dublin-core.tslibraryrule 2 vs users: subject is iris but used at/below folio-assistant-core by [‘cat-harness’]; keep a generic stub, move the iris bodyunplanned (#223 code partition; S5)
SPLITfolio-assistant-core/schemas/fhir-artifact-index.tsfhir-harness/schemas/fhir-artifact-index.tscontentrule 2 vs users: subject is fhir but used at/below folio-assistant-core by [‘cat-harness’]; keep a generic stub, move the fhir bodyunplanned (#223 code partition; S5)
SPLITfolio-assistant-core/schemas/materialization.tscat-harness-tools/schemas/library/materialization-state.ts (states + fixity) + the rest stays in folio-assistant-corelibraryplacement ruling 2 (A) / PR5 tlat: the state vocabulary and fixity move down; under D1 + “tools below core” the Zod lands in cat-harness-tools, not cat-harness; heuristic said OKtlat (PR5)
collapsed: OK 87, CODE 186
instanceconcernOKCODETO-JSON
bootstrapkg5
bootstrap-toolscontent3
bootstrap-toolskg4
bootstrap-toolssdlc4
cat-harnessconduct3
cat-harnesscontent2053
cat-harnesskg16
cat-harnesslibrary14
cat-harnessprocess67
cat-harnesssdlc274
cat-harnesstools3
cat-harnessui111
fhir-harnesscontent8
folio-assistant-corecontent13
folio-assistant-corelibrary6
folio-assistant-coresdlc7
folio-assistant-scicontent6
large-datasetscontent2
large-datasetslibrary2
large-datasetssdlc1
smart-basecontent2

source-descriptor (2)

verdictpathtargetconcernsignalPR
MOVElarge-datasets/sources/lean-mathlib.jsonfolio-assistant-sci/sources/lean-mathlib.jsonlibraryrule 2 + D3: a source descriptor names one corpus (lean-mathlib); it is data about folio-assistant-sci, and large-datasets folds into cat-harness (2026-10-01)unplanned (7x5n S4 subgraph ruling)
MOVElarge-datasets/sources/who-iris.jsonwho-iris/sources/who-iris.jsonlibraryrule 2 + D3: a source descriptor names one corpus (who-iris); it is data about who-iris, and large-datasets folds into cat-harness (2026-10-01)unplanned (7x5n S4 subgraph ruling)

library-entry (59)

verdictpathtargetconcernsignalPR
MOVEagent-skills/library/agent-skill-best-practices---gemini-cli/cat-harness/library/conduct/agent-skill-best-practices---gemini-cliconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/agent-skills---google-antigravity-docs/cat-harness/library/conduct/agent-skills---google-antigravity-docsconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/arxiv-2602.12670v4/cat-harness/library/conduct/arxiv-2602.12670v4conductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/arxiv-2607.25032v1/cat-harness/library/conduct/arxiv-2607.25032v1conductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/arxiv-2608.08453v1/cat-harness/library/conduct/arxiv-2608.08453v1conductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/best-practices---google-antigravity-docs/cat-harness/library/conduct/best-practices---google-antigravity-docsconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/equipping-agents-for-the-real-world-with-agent-skills-anthro/cat-harness/library/conduct/equipping-agents-for-the-real-world-with-agent-skills-anthroconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/hmans-2026-beans-readme/cat-harness/library/sdlc/hmans-2026-beans-readmesdlcruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/mcp-2026-specification-2026-07-28/cat-harness/library/tools/mcp-2026-specification-2026-07-28toolsruling 2026-10-01: agent-skills becomes a library subgraph of cat-harness; MCP spec → tools group (MCP ruling)unplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/rfc2119-key-words-requirement-levels/cat-harness/library/content/rfc2119-key-words-requirement-levelscontentruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/rfc8174-uppercase-vs-lowercase-2119-key-words/cat-harness/library/content/rfc8174-uppercase-vs-lowercase-2119-key-wordscontentruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/skill-authoring-best-practices---claude-platform-docs/cat-harness/library/conduct/skill-authoring-best-practices---claude-platform-docsconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/skills-in-openai-api-notebook/cat-harness/library/conduct/skills-in-openai-api-notebookconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
MOVEagent-skills/library/skills-in-openai-api/cat-harness/library/conduct/skills-in-openai-apiconductruling 2026-10-01: agent-skills becomes a library subgraph of cat-harnessunplanned (7x5n S4 subgraph ruling)
collapsed: OK 45
instanceconcernOKCODETO-JSON
cat-harnessconduct1
cat-harnesscontent4
cat-harnesskg7
cat-harnesslibrary5
cat-harnessprocess7
cat-harnessui1
fhir-harnesscontent3
folio-assistant-corecontent1
folio-assistant-scicontent5
smart-basecontent8
who-iriscontent3

script-group (552)

verdictpathtargetconcernsignalPR
MOVEcat-harness/scripts/artefact-verification.jsonfolio-assistant-core/scripts/artefact-verification.jsonsdlcrule 1: code reaches folio-assistant-core; above cat-harness-tools after “tools below core”unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/bib-papers-list.txtfolio-assistant-sci/scripts/bib-papers-list.txtlibraryrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/check-duplicate-decls.tsfolio-assistant-sci/scripts/check-duplicate-decls.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/check-self-discharging-instances.tsfolio-assistant-sci/scripts/check-self-discharging-instances.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/dak-pdf.tssmart-base/scripts/dak-pdf.tsuirule 2+4: executable whose subject is smart (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/docker-latex-build/folio-assistant-sci/scripts/docker-latex-build/contentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/extract-candidates.pyfolio-assistant-sci/scripts/extract-candidates.pylibraryrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/gen-content-graph-uml.tsfolio-assistant-sci/scripts/gen-content-graph-uml.tsuirule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/lean-audit.tsfolio-assistant-sci/scripts/lean-audit.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/lean-build-bg.shfolio-assistant-sci/scripts/lean-build-bg.shcontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/lean-compile-audit.shfolio-assistant-sci/scripts/lean-compile-audit.shsdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/lean-coverage.tsfolio-assistant-sci/scripts/lean-coverage.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; 2 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/lean_auto_discharge.pyfolio-assistant-sci/scripts/lean_auto_discharge.pycontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/measure-logic-layer-edges.tsfhir-harness/scripts/measure-logic-layer-edges.tscontentrule 2+4: executable whose subject is fhir (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/pin-smart-base-terminology.tssmart-base/scripts/pin-smart-base-terminology.tscontentrule 2+4: executable whose subject is smart (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/refresh-authors-note.tsfolio-assistant-sci/scripts/refresh-authors-note.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/reseed-lean-cache.shfolio-assistant-sci/scripts/reseed-lean-cache.shcontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/session-status.shfolio-assistant-sci/scripts/session-status.shsdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/setup-lean-toolchain.shfolio-assistant-sci/scripts/setup-lean-toolchain.shcontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/setup-sage.shfolio-assistant-sci/scripts/setup-sage.shcontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/simplify-links.pyfolio-assistant-sci/scripts/simplify-links.pycontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/smart-base-transform.pysmart-base/scripts/smart-base-transform.pycontentrule 2+4: executable whose subject is smart (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/scripts/witness-audit.tsfolio-assistant-sci/scripts/witness-audit.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEfolio-assistant-core/scripts/build-glossary.tsfolio-assistant-sci/scripts/build-glossary.tslibraryrule 2: executable whose subject is sci (vocabulary signal)unplanned (#223 code partition; S5)
MOVEfolio-assistant-core/scripts/extract-assets.tscat-harness-tools/scripts/extract-assets.tslibraryPR5 tlat: asset-extraction (cat-harness) runs it; code → cat-harness-tools (D1); heuristic said OKtlat (PR5)
MOVEfolio-assistant-core/scripts/sample-import-run.test.tscat-harness-tools/scripts/tests/sample-import-run.test.tslibraryfollows sample-import-run.ts (PR5 tlat); heuristic said OKtlat (PR5)
MOVEfolio-assistant-core/scripts/sample-import-run.tscat-harness-tools/scripts/sample-import-run.tslibraryPR5 tlat said → large-datasets; large-datasets now folds into cat-harness, so its code goes to cat-harness-tools; heuristic said OKtlat (PR5)
MOVElarge-datasets/id-lookup/who-iris/who-iris/id-lookup/contentD3: generated id-lookup output ABOUT who-iris is hosted by who-iris; the generator goes to cat-harness-toolsunplanned (#223 code partition; S5)
SPLITcat-harness/scripts/eval/cat-harness-tools/scripts/eval/ (generic) + folio-assistant-sci, smart-basecontentrule 1: code reaches folio-assistant-sci, smart-base — move the reaching files up (“tools below core”), the rest to cat-harness-toolsunplanned (#223 code partition; S5)
SPLITcat-harness/scripts/translation/cat-harness-tools/scripts/translation/ (generic) + smart-baselibraryrule 1: code reaches smart-base — move the reaching files up (“tools below core”), the rest to cat-harness-toolsunplanned (#223 code partition; S5)
collapsed: OK 115, CODE 407
instanceconcernOKCODETO-JSON
bootstrap-toolscontent9
bootstrap-toolskg3
bootstrap-toolsprocess1
bootstrap-toolssdlc16
bootstrap-toolsui4
cat-harnessconduct1
cat-harnesscontent697
cat-harnesskg229
cat-harnesslibrary34
cat-harnessprocess125
cat-harnesssdlc5149
cat-harnesstools7
cat-harnessui161
cat-harness-toolscontent5
cat-harness-toolskg1
cat-harness-toolssdlc1
fhir-harnesscontent1
fhir-harnesssdlc4
fhir-harnessui3
folio-assistant-corecontent7
folio-assistant-corelibrary17
folio-assistant-coresdlc12
folio-assistant-coreui1
folio-assistant-scicontent3
folio-assistant-scilibrary2
folio-assistant-scisdlc4
folio-assistant-scitools2
large-datasetscontent4
smart-trustsdlc1
smart-trustui1
who-irissdlc1
who-irisui1

code-group (243)

verdictpathtargetconcernsignalPR
AMBIGUOUScat-harness/content/pipeline/content-graph.tsfolio-assistant-sci/content/pipeline/content-graph.tskgrule 2 says folio-assistant-sci (sci vocabulary) but 8 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/lean-lexer.tsfolio-assistant-sci/content/pipeline/lean-lexer.tscontentrule 2 says folio-assistant-sci (sci vocabulary) but 8 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/markdown-ast.tsfolio-assistant-sci/content/pipeline/markdown-ast.tscontentrule 2 says folio-assistant-sci (sci vocabulary) but 3 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/profile-check.tsfolio-assistant-sci/content/pipeline/profile-check.tssdlcrule 2 says folio-assistant-sci (sci vocabulary) but 3 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/qa-checkers-q-usage.tsfolio-assistant-sci/content/pipeline/qa-checkers-q-usage.tssdlcrule 2 says folio-assistant-sci (sci vocabulary) but 3 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/qa-checkers-voice.tsfolio-assistant-sci/content/pipeline/qa-checkers-voice.tssdlcrule 2 says folio-assistant-sci (sci vocabulary) but 7 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/qa-criteria-registry.tsfolio-assistant-sci/content/pipeline/qa-criteria-registry.tssdlcrule 2 says folio-assistant-sci (sci vocabulary) but 12 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/render-latex.tsfolio-assistant-sci/content/pipeline/render-latex.tsuirule 2 says folio-assistant-sci (sci vocabulary) but 4 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
AMBIGUOUScat-harness/content/pipeline/render-value.tsfolio-assistant-sci/content/pipeline/render-value.tsuirule 2 says folio-assistant-sci (sci vocabulary) but 5 harness modules import it. Q: (a) move it up with those importers, (b) split the sci part out, (c) keep it in cat-harness-tools as shared pipelineunplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/_folio-chapter-profiles.qou.tsfolio-assistant-sci/content/pipeline/_folio-chapter-profiles.qou.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; 1 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/audit-tex-source.tsfolio-assistant-sci/content/pipeline/audit-tex-source.tslibraryrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/audit-wiring.tsfolio-assistant-sci/content/pipeline/audit-wiring.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/build.tsfolio-assistant-sci/content/pipeline/build.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; 1 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/codemod-val.tsfolio-assistant-sci/content/pipeline/codemod-val.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/conditional-class-banner-audit.tsfolio-assistant-sci/content/pipeline/conditional-class-banner-audit.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/conjectural-propagation-audit.tsfolio-assistant-sci/content/pipeline/conjectural-propagation-audit.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/conjectural-propagation-sweep.tsfolio-assistant-sci/content/pipeline/conjectural-propagation-sweep.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/content-graph-analysis.pyfolio-assistant-sci/content/pipeline/content-graph-analysis.pykgrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/export-json.tsfolio-assistant-sci/content/pipeline/export-json.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/fsh-cone.tsfhir-harness/content/pipeline/fsh-cone.tscontentrule 2+4: executable whose subject is fhir (vocabulary signal; 1 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/generate-index.tsfolio-assistant-sci/content/pipeline/generate-index.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/generate-lean-stubs.tsfolio-assistant-sci/content/pipeline/generate-lean-stubs.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/language-trap-audit.tsfolio-assistant-sci/content/pipeline/language-trap-audit.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/latex-preflight.tsfolio-assistant-sci/content/pipeline/latex-preflight.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; 1 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/lean-atlas-ingest.tsfolio-assistant-sci/content/pipeline/lean-atlas-ingest.tslibraryrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/lean-formal-ref.tsfolio-assistant-sci/content/pipeline/lean-formal-ref.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/lean-signature.tsfolio-assistant-sci/content/pipeline/lean-signature.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; 1 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/lean-triviality-probe.tsfolio-assistant-sci/content/pipeline/lean-triviality-probe.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/proof-axis-dashboard.tsfolio-assistant-sci/content/pipeline/proof-axis-dashboard.tsuirule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/proof-narrative-lean-equiv-sweep.tsfolio-assistant-sci/content/pipeline/proof-narrative-lean-equiv-sweep.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/qa-checkers-extended.tsfolio-assistant-sci/content/pipeline/qa-checkers-extended.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; 2 harness importer(s) must move with it or invert)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/qa-checkers-render.tsfolio-assistant-sci/content/pipeline/qa-checkers-render.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/qa-checkers-triviality.tsfolio-assistant-sci/content/pipeline/qa-checkers-triviality.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/qa-checkers-uses.tsfolio-assistant-sci/content/pipeline/qa-checkers-uses.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/qa-checkers-vacuity.tsfolio-assistant-sci/content/pipeline/qa-checkers-vacuity.tssdlcrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/refactor-strategies/folio-assistant-sci/content/pipeline/refactor-strategies/contentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/semantic-cone.tsfolio-assistant-sci/content/pipeline/semantic-cone.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/validate-references.tsfolio-assistant-sci/content/pipeline/validate-references.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/validate-tex.tsfolio-assistant-sci/content/pipeline/validate-tex.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/validate.tsfolio-assistant-sci/content/pipeline/validate.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
MOVEcat-harness/content/pipeline/wall-violations-sweep.tsfolio-assistant-sci/content/pipeline/wall-violations-sweep.tscontentrule 2+4: executable whose subject is sci (vocabulary signal; no non-test harness importer)unplanned (#223 code partition; S5)
SPLITcat-harness/content/pipeline/script-sidecars/cat-harness-tools/content/pipeline/script-sidecars/ (generic) + folio-assistant-scicontentrule 1: code reaches folio-assistant-sci — move the reaching files up (“tools below core”), the rest to cat-harness-toolsunplanned (#223 code partition; S5)
collapsed: OK 9, CODE 192
instanceconcernOKCODETO-JSON
cat-harnessconduct2
cat-harnesscontent778
cat-harnesskg7
cat-harnesslibrary26
cat-harnessprocess6
cat-harnesssdlc46
cat-harnesstools10
cat-harnessui17
folio-assistant-corecontent1
folio-assistant-scicontent1

folio-assistant — code under the Apache License 2.0, documentation under CC BY 3.0. Generated schema and API references are rebuilt from source on every push to main.

deployed b08c961 · 2026-10-23T23:11:09Z