diff --git a/README.md b/README.md
index d03dcc3..fed1722 100644
--- a/README.md
+++ b/README.md
@@ -91,7 +91,8 @@ Place that file at `.interdependency/project.yml`. Until it exists, the public p
- **canon** — exact or mechanically derived from the canonical source
- **distributed textbook** — exact source material whose status remains local to its owning repository
- **interpretation** — explanatory material subject to review
-- **research** — externally sourced support, dissent, or context
+- **research** — primary studies or systematic evidence-synthesis studies admitted through explicit screening
+- **non-study context** — legislation, treaties, standards, guidelines, frameworks, doctrine, and analysis kept outside Research
- **implemented** — a working public surface exists
- **frontier** — experimental, incomplete, or not externally established
- **hmmm** — an unresolved constraint with enough context for continuation
diff --git a/The-Interdependency.github.io_msdmd.ts b/The-Interdependency.github.io_msdmd.ts
index 9077003..584c30d 100644
--- a/The-Interdependency.github.io_msdmd.ts
+++ b/The-Interdependency.github.io_msdmd.ts
@@ -159,6 +159,44 @@ export default defineMsdmdCollection({
"file": "scripts/fetch-textbook.mjs",
"id": "distributed_textbook_fetch"
},
+ {
+ "block": "BOUNDARIES",
+ "fields": {
+ "admin_only": "false",
+ "auth_boundary": "optional GitHub read token",
+ "network_boundary": "external read-only",
+ "owner": "Erin Spencer",
+ "pii": "none beyond what submitters publish themselves",
+ "secrets": "GITHUB_TOKEN is passed only as an HTTPS authorization header and never written",
+ "side_effects": "generated dataset and snapshot writes",
+ "storage_boundary": "write beneath src/_data/generated and src/_data/snapshots",
+ "summary": "Reads only issues labeled related-work and approved from this repository via the allowlisted GitHub API.",
+ "user_data_boundary": "public issue content only; submitter login retained as provenance"
+ },
+ "file": "scripts/fetch-works.mjs",
+ "id": "related_works_network_boundary"
+ },
+ {
+ "block": "MODULE_BUILD",
+ "fields": {
+ "admin_only": "false",
+ "auth_boundary": "optional read-only GITHUB_TOKEN",
+ "internal_surface": "issue-form body parsing, per-submission validation with visible exclusions, snapshot fallback",
+ "module_kind": "instrument",
+ "module_name": "fetch-works",
+ "network_boundary": "allowlisted read-only HTTPS to api.github.com",
+ "owner": "Erin Spencer",
+ "public_surface": "npm run refresh:works, generated.works",
+ "rollback": "remove refresh:works and the /works/ route; submissions remain as ordinary GitHub issues",
+ "rollout": "included in refresh:data before validation and Eleventy generation",
+ "storage_boundary": "writes generated works data and a last-known-good snapshot",
+ "summary": "Resolves maintainer-approved related-work submissions from GitHub issues into one provenance-bearing works registry dataset.",
+ "tests": "tests/works-registry.test.mjs",
+ "user_data_boundary": "publishes only fields submitters place in a public GitHub issue"
+ },
+ "file": "scripts/fetch-works.mjs",
+ "id": "related_works_registry_fetch"
+ },
{
"block": "BOUNDARIES",
"fields": {
@@ -315,7 +353,7 @@ export default defineMsdmdCollection({
"fields": {
"admin_only": "false",
"auth_boundary": "none",
- "internal_surface": "canon snapshot digest, heading hierarchy, distributed-textbook provenance, and repository-route assertions",
+ "internal_surface": "canon snapshot digest, heading hierarchy, distributed-textbook provenance, study-only research admission, and repository-route assertions",
"module_kind": "instrument",
"module_name": "validate-content",
"network_boundary": "none",
@@ -324,8 +362,8 @@ export default defineMsdmdCollection({
"rollback": "remove the gate only with an explicit replacement preserving provenance, hierarchy, textbook, and route checks",
"rollout": "required by npm run build and npm run check",
"storage_boundary": "read",
- "summary": "Refuses deployment when canon identity, heading hierarchy, textbook coverage, snapshot integrity, generated route coverage, or recovery artifacts drift.",
- "tests": "tests/canon-parser.test.mjs, tests/canon-integrity.test.mjs, tests/textbook-integrity.test.mjs, tests/repo-coverage.test.mjs, tests/site-contract.test.mjs",
+ "summary": "Refuses deployment when canon identity, heading hierarchy, textbook coverage, study-only research admission, snapshot integrity, generated route coverage, or recovery artifacts drift.",
+ "tests": "tests/canon-parser.test.mjs, tests/canon-integrity.test.mjs, tests/textbook-integrity.test.mjs, tests/repo-coverage.test.mjs, tests/research-ledger.test.mjs, tests/site-contract.test.mjs",
"user_data_boundary": "none"
},
"file": "scripts/validate-content.mjs",
@@ -456,7 +494,7 @@ export default defineMsdmdCollection({
"secrets": "none",
"side_effects": "none",
"storage_boundary": "read beneath src/_data/research only",
- "summary": "Reads allowlisted repository-local YAML ledgers during static-site generation and returns parsed arrays.",
+ "summary": "Reads allowlisted repository-local YAML ledgers, rejects incomplete classifications, and returns study-only public arrays.",
"user_data_boundary": "none"
},
"file": "src/_data/research_data.js",
@@ -467,16 +505,16 @@ export default defineMsdmdCollection({
"fields": {
"admin_only": "false",
"auth_boundary": "none",
- "internal_surface": "validateLedgerPaths, readYamlList, readYamlLedgers",
+ "internal_surface": "validateLedgerPaths, readYamlList, readYamlLedgers, indexUnique",
"module_kind": "adapter",
"module_name": "research_data",
"network_boundary": "none",
"owner": "Erin Spencer",
- "public_surface": "research_data.sources, research_data.claims",
- "rollback": "restore direct two-file reads and remove the manifest-declared tranche files",
+ "public_surface": "research_data.sources, research_data.claims, research_data.gaps, research_data.stats",
+ "rollback": "revert this adapter and the admission-ledger manifest entries together",
"rollout": "loaded automatically by Eleventy from src/_data/research_data.js",
- "storage_boundary": "read the repository-owned research manifest and its declared YAML ledgers",
- "summary": "Loads manifest-declared reviewed research source and claim ledgers into one explicit Eleventy global-data object.",
+ "storage_boundary": "read the repository-owned candidate, admission, claim-review, and gap ledgers",
+ "summary": "Admits only research studies from manifest-declared candidate ledgers and exposes their bounded claims, reviews, and evidence gaps.",
"tests": "tests/research-ledger.test.mjs, tests/generated-site.test.mjs",
"user_data_boundary": "none"
},
@@ -558,6 +596,13 @@ export default defineMsdmdCollection({
"source_id": "public_site_verification_boundary",
"to": "Erin Spencer"
},
+ {
+ "from": "related_works_network_boundary",
+ "kind": "owns",
+ "source_block": "BOUNDARIES",
+ "source_id": "related_works_network_boundary",
+ "to": "Erin Spencer"
+ },
{
"from": "static_textbook_math_rendering_boundary",
"kind": "owns",
@@ -635,6 +680,13 @@ export default defineMsdmdCollection({
"source_id": "public_build_identity",
"to": "Erin Spencer"
},
+ {
+ "from": "related_works_registry_fetch",
+ "kind": "owns",
+ "source_block": "MODULE_BUILD",
+ "source_id": "related_works_registry_fetch",
+ "to": "Erin Spencer"
+ },
{
"from": "static_textbook_math_renderer",
"kind": "owns",
diff --git a/docs/content-model.md b/docs/content-model.md
index 8b22bc2..ab2a7bd 100644
--- a/docs/content-model.md
+++ b/docs/content-model.md
@@ -23,7 +23,7 @@ Rights and Definitions of The Way
## Other records
- Project records: public GitHub facts plus visible `hmmm` when editorial metadata is missing.
-- Lab records: generated per canon unit, with reviewed research gaps explicitly shown.
+- Lab records: generated per canon unit, with study-only research contact and screened `hmmm` gaps explicitly shown. Non-study context never counts toward Research coverage.
## Usage guidance
diff --git a/docs/research-method.md b/docs/research-method.md
index 80d3aa4..508ee2e 100644
--- a/docs/research-method.md
+++ b/docs/research-method.md
@@ -1,18 +1,60 @@
# Research method
-Sources and claims are stored in `src/_data/research`. Stance classification is editorial review, not automated metadata inference. Missing support or dissent must render as a documented `hmmm` gap.
+|∆|Only primary research studies and systematic evidence-synthesis studies count as Research.|∆| Legislation is not science. Treaties, standards, guidelines, frameworks, doctrine, legal analysis, policy reports, editorials, narrative reviews, protocols without results, and AI summaries may be preserved as non-study context, but they never count toward Research coverage or stance.
-## Article Lab contact structure
+The historical source and claim YAML files in `src/_data/research` are candidate-intake ledgers. `source-admissions-*.yml` classifies every candidate. The Eleventy adapter fails closed: only `admit-study` records with `record_class: research_study` and claims whose every source is admitted reach `research_data.sources` or `research_data.claims`.
-The eight Rights Article Labs use `src/_data/article_lab.json`. Every record must include:
+## Admission
-- a reductio ad absurdum test in both directions plus a bounded reading;
-- at least four worst practices and four best practices;
-- applications for medical, construction, engineering, agriculture, jurisprudence, transportation and distribution, child craft, information systems, emergency response, hospitality and sanitation, and community governance;
-- at least one reviewed claim linked to a source with an explicit evidence boundary.
+A primary study must state a research question or objective, reproducible methods, analysis, results, and limitations. Eligible designs include experiments and trials, observational studies, qualitative and mixed-methods research, quasi-experiments, natural experiments, replications, and formal or simulation studies that are labeled non-empirical.
+
+A systematic synthesis must declare its search, selection, and synthesis or mapping method. Systematic reviews, scoping reviews, evidence maps, and meta-analyses can qualify. A narrative review does not qualify merely because it cites studies or is peer reviewed.
+
+Institutional authority, prestige, peer review, and citation counts are not record classes. Unclear records remain excluded with `hmmm` until full text establishes a qualifying method and result.
+
+## Claim contract
+
+Every published study-linked claim records:
+
+- the exact canonical unit;
+- stance: `support`, `dissent`, `mixed`, or `limit`;
+- a bounded study result;
+- the separate Article relation;
+- the inference gap;
+- source IDs that all resolve to admitted studies;
+- an exact full-text locator or an explicit provisional `hmmm`;
+- verification status and review date.
+
+`verified-full-text` is allowed only when the locator names a page, table, figure, appendix, or Results section. Abstract-only, indirect, or locator-free claims stay `provisional-full-text-locator-needed`. One study is provisional contact; a broad conclusion needs a systematic synthesis or convergent independent studies.
+
+## Search and appraisal
+
+Search in both supporting and challenging directions. Record databases, queries, dates, eligibility rules, screening decisions, and Article-level gaps. Do not manufacture support/dissent symmetry: “no qualifying study found” is a valid result.
+
+Use design-appropriate risk-of-bias reasoning rather than one universal score. Record population or corpus, place, time, method, outcomes, effect or result, uncertainty, limitations, funding, conflicts, preregistration, data and code availability, and correction or retraction status when available. Check corrections and retractions on admission and during scheduled review.
## Usage guidance
-Add or revise operational applications in `article_lab.json`. Add research evidence separately in `sources.yml` and `claims.yml`; do not place an uncited empirical claim inside an application paragraph. Run `npm test`, `npm run build`, `npm run test:generated`, and `npm run test:browser` before publication.
+1. Add a candidate source to a manifest-declared `sources*.yml` file.
+2. Add exactly one decision to `source-admissions-*.yml`.
+3. Add or revise the smallest bounded claim in `claims*.yml`.
+4. For an admissible claim, add its result, Article relation, inference gap, locator, status, and review date to `claim-reviews-*.yml`.
+5. Update the relevant record in `evidence-gaps-*.yml`.
+6. Run:
+
+ ```sh
+ npm run check
+ npm run test:browser
+ ```
+
+The public method page shows the live admission totals, provisional locator count, and all Article-level `hmmm` gaps.
+
+## Provenance and authority
+
+Research never changes canon. The controlling text remains `wayseer00/main:canon/INTERDEPENDENT_WAY.txt`; generated research and interpretation are subordinate contact layers.
+
+This migration followed `The-Interdependency/skill-lib` at commit `289d4959f7920efc214f180cca3443d8090f4095`, using the `the-interdependency`, `canon`, and `skill-usage` procedures. Repo-local skill copies are not treated as canonical.
+
+## hmmm
-An application is a bounded hypothesis about how an Article might constrain practice in a domain. It does not supersede domain standards, professional duties, law, safety rules, or the canonical text. Reductio sections deliberately test destructive overextension and destructive absolute rejection; neither is presented as the endorsed reading.
+The 2026-07-31 migration is a strict screen of the existing candidate ledger, not a comprehensive systematic review. Exact full-text locators, duplicate independent screening, design-specific risk-of-bias appraisals, funding and conflict extraction, and scheduled correction/retraction checks remain incomplete and must not be inferred.
diff --git a/scripts/validate-content.mjs b/scripts/validate-content.mjs
index bcd85fe..19786bb 100644
--- a/scripts/validate-content.mjs
+++ b/scripts/validate-content.mjs
@@ -1,25 +1,26 @@
import { createHash } from 'node:crypto';
import { access, readFile } from 'node:fs/promises';
+import loadResearchData from '../src/_data/research_data.js';
// === MODULE_BUILD ===
// id: generated_content_gate
// module_name: validate-content
// module_kind: instrument
-// summary: Refuses deployment when canon identity, heading hierarchy, textbook coverage, snapshot integrity, generated route coverage, or recovery artifacts drift.
+// summary: Refuses deployment when canon identity, heading hierarchy, textbook coverage, study-only research admission, snapshot integrity, generated route coverage, or recovery artifacts drift.
// owner: Erin Spencer
// public_surface: npm run validate
-// internal_surface: canon snapshot digest, heading hierarchy, distributed-textbook provenance, and repository-route assertions
+// internal_surface: canon snapshot digest, heading hierarchy, distributed-textbook provenance, study-only research admission, and repository-route assertions
// auth_boundary: none
// storage_boundary: read
// network_boundary: none
// user_data_boundary: none
// admin_only: false
-// tests: tests/canon-parser.test.mjs, tests/canon-integrity.test.mjs, tests/textbook-integrity.test.mjs, tests/repo-coverage.test.mjs, tests/site-contract.test.mjs
+// tests: tests/canon-parser.test.mjs, tests/canon-integrity.test.mjs, tests/textbook-integrity.test.mjs, tests/repo-coverage.test.mjs, tests/research-ledger.test.mjs, tests/site-contract.test.mjs
// rollout: required by npm run build and npm run check
// rollback: remove the gate only with an explicit replacement preserving provenance, hierarchy, textbook, and route checks
// === END MODULE_BUILD ===
-// Usage: run `npm run validate`; it refreshes data first and exits nonzero on any integrity mismatch.
-// Limits: validates repository artifacts, not GitHub Pages settings or public DNS.
+// Usage: run `npm run validate`; it refreshes data first and exits nonzero on any integrity mismatch, including an unclassified or non-study Research source.
+// Limits: validates repository artifacts and study admission structure, not each study's substantive result, GitHub Pages settings, or public DNS.
// === BOUNDARIES ===
// id: generated_content_validation_boundary
@@ -39,6 +40,7 @@ const canon = JSON.parse(await readFile('src/_data/generated/canon.json', 'utf8'
const repos = JSON.parse(await readFile('src/_data/generated/repos.json', 'utf8'));
const textbook = JSON.parse(await readFile('src/_data/generated/textbook.json', 'utf8'));
const textbookSources = JSON.parse(await readFile('src/_data/textbook_sources.json', 'utf8'));
+const research = await loadResearchData();
const snapshotRaw = await readFile('src/_data/snapshots/canon.last-known-good.md', 'utf8');
const snapshotText = snapshotRaw.replace(/^---\n[\s\S]*?\n---\n/, '');
const snapshotHash = createHash('sha256').update(snapshotText).digest('hex');
@@ -90,6 +92,11 @@ if (process.env.OFFLINE !== '1') {
if (repos.publicRepoCount !== repos.generatedRouteCount) throw new Error('repo route mismatch');
if (new Set(repos.repositories.map(repo => repo.slug)).size !== repos.repositories.length) throw new Error('duplicate project slug');
+if (!research.sources.length || research.sources.some(source => source.record_class !== 'research_study')) throw new Error('public Research contains a non-study source or no admitted studies');
+if (!research.claims.length || research.claims.some(claim => claim.source_ids.some(sourceId => !research.sources.some(source => source.id === sourceId)))) {
+ throw new Error('public Research claim cites a non-study or unknown source');
+}
+if (research.gaps.length !== 8 || research.gaps.some(gap => !gap.hmmm)) throw new Error('each Rights Article needs one explicit study-coverage hmmm');
await access('fallback/index.html');
await access('artifacts/four-cuts-1.html');
-console.log(`validated ${canon.units.length} canon units, ${canon.notes.length} notes, ${textbook.chapterCount} textbook chapters, canonical hierarchy, and ${repos.publicRepoCount} repositories`);
+console.log(`validated ${canon.units.length} canon units, ${canon.notes.length} notes, ${textbook.chapterCount} textbook chapters, ${research.stats.admittedStudyCount} admitted studies, ${research.stats.publishedStudyClaimCount} study-only claims, canonical hierarchy, and ${repos.publicRepoCount} repositories`);
diff --git a/src/_data/research/claim-reviews-2026-07-31.yml b/src/_data/research/claim-reviews-2026-07-31.yml
new file mode 100644
index 0000000..ce3fc0d
--- /dev/null
+++ b/src/_data/research/claim-reviews-2026-07-31.yml
@@ -0,0 +1,143 @@
+- id: article-one-work-requirements-access
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A quasi-experimental cohort study associated reinstated SNAP work requirements with reduced program participation among vulnerable beneficiaries without evidence of transition off the broader safety net."
+ article_relation: "Challenges readings of contribution requirements that treat loss of food assistance as evidence of unwillingness or as a harmless enforcement device."
+ inference_gap: "One state policy and enrollment outcome cannot determine moral contribution, long-term employment, or allocation during acute scarcity."
+ reviewed_on: "2026-07-31"
+
+- id: article-one-sanctioned-contribution-norms
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "Public-goods experiments found that participants paid to sanction free riders and that sanction availability increased cooperation."
+ article_relation: "Supports the narrower proposition that contribution-enforcement behavior can sustain cooperation."
+ inference_gap: "Laboratory monetary sanctions do not test withholding food, shelter, care, or safety and cannot license a specific real-world sanction."
+ reviewed_on: "2026-07-31"
+
+- id: article-one-exclusion-clause-harms
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A scoping review found benefit sanctions associated with hardship, adverse health and child outcomes, and movement into lower-quality, less stable work."
+ article_relation: "Challenges any presumption that withdrawing material support is a neutral or reliably beneficial response to noncontribution."
+ inference_gap: "State welfare regimes differ from the Article's community-scale clause, so the contact is analogical and bounded."
+ reviewed_on: "2026-07-31"
+
+- id: article-one-assistance-modality
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A systematic review found no universally superior emergency-assistance modality; cash, vouchers, and in-kind food varied with setting and outcome."
+ article_relation: "Limits any one-size-fits-all interpretation of how a survival floor must be delivered."
+ inference_gap: "Sparse, generally low-quality evidence through 2014 does not determine contribution rules or justified exclusion."
+ reviewed_on: "2026-07-31"
+
+- id: article-two-will-under-scarcity
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "Laboratory and field experiments reported reduced cognitive performance when poverty-related financial concerns were salient."
+ article_relation: "Challenges readings that infer unconstrained will or character directly from refusal, compliance, or impaired performance under scarcity."
+ inference_gap: "The study did not measure consent directly; applying the result to voluntariness is an inference."
+ reviewed_on: "2026-07-31"
+
+- id: article-two-trauma-evidence-limit
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "An AHRQ systematic review found insufficient comparative evidence for clear conclusions about trauma-informed-care outcomes."
+ article_relation: "Limits confident claims that trauma-informed labels establish intervention effectiveness."
+ inference_gap: "Insufficient evidence is not evidence of no effect, and results cannot resolve every duty in the Article."
+ reviewed_on: "2026-07-31"
+
+- id: article-two-autonomy-meta-analysis
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A meta-analysis linked autonomy support, need satisfaction, and autonomous motivation with sustained health behavior and beneficial health outcomes."
+ article_relation: "Supports an autonomy-preserving interpretation of necessary health and survival work."
+ inference_gap: "Heterogeneous health settings do not validate every duty in Article Two or make coercion autonomy-supportive."
+ reviewed_on: "2026-07-31"
+
+- id: article-two-care-duty-burden
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A systematic review and meta-analysis of observational studies found greater anxiety and depression among unpaid caregivers than noncaregivers in included settings."
+ article_relation: "Challenges allocation of necessary care as though caregivers have unlimited time, health, or support."
+ inference_gap: "Observational, geographically sparse evidence cannot show care is intrinsically harmful or prescribe one allocation system."
+ reviewed_on: "2026-07-31"
+
+- id: article-three-forgiving-reciprocity
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text model/result locator has not yet been recorded."
+ study_result: "A mathematical and simulation study found that crosstalk across concurrent repeated games can spread defection and require stronger forgiveness for cooperation."
+ article_relation: "Limits strict act-for-act reciprocity by identifying an error-propagation mechanism and a formal corrective."
+ inference_gap: "A stylized non-empirical model does not establish real-world consent to retaliation or require anyone to remain exposed to abuse."
+ reviewed_on: "2026-07-31"
+
+- id: article-four-teach-back-comprehension
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A systematic review found teach-back can improve health knowledge, recall, self-management, and some outcomes across heterogeneous studies."
+ article_relation: "Supports teaching consequential instructions in usable language and checking comprehension."
+ inference_gap: "Health-education evidence does not prove generalization to all law or make enforcement legitimate by itself."
+ reviewed_on: "2026-07-31"
+
+- id: article-four-teaching-law-works
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A systematic evidence map found legal-literacy and community-paralegal studies most commonly reported improved knowledge and agency."
+ article_relation: "Supports testing the Article's duty-to-teach component through legal-empowerment interventions."
+ inference_gap: "The map did not establish a pooled causal effect or validate one teaching method, and the underlying evidence was uneven."
+ reviewed_on: "2026-07-31"
+
+- id: article-four-plain-language-boundary
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A controlled experiment found plain-language legal contracts improved nonexpert comprehension while substantial misunderstanding remained."
+ article_relation: "Supports simplification and instruction while limiting the claim that publication or plain wording guarantees knowledge."
+ inference_gap: "Contract comprehension in one experimental setting cannot establish comprehension of all laws or populations."
+ reviewed_on: "2026-07-31"
+
+- id: article-five-maturity-gap
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A multinational cross-sectional study found cognitive capacity reached adult levels earlier than psychosocial maturity."
+ article_relation: "Challenges a competence-only replacement for age thresholds by distinguishing demonstrated cognitive performance from impulse control and peer resistance."
+ inference_gap: "Cross-sectional measures do not evaluate the Article's portfolio process or determine a universal adulthood rule."
+ reviewed_on: "2026-07-31"
+
+- id: article-six-nonviolent-power
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A comparative campaign study reported greater success for nonviolent than violent campaigns in its dataset and analyzed participation and loyalty-shift mechanisms."
+ article_relation: "Challenges reduction of collective political power to violence alone."
+ inference_gap: "Historical observational comparison is not a complete theory of authority and does not show violence is never decisive."
+ reviewed_on: "2026-07-31"
+
+- id: article-six-collective-intelligence-dispute
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locators for both studies have not yet been recorded."
+ study_result: "Small-group experiments found a collective-performance factor, while later replication and model tests disputed which member and interaction variables explained it."
+ article_relation: "Shows that group performance can be studied while leaving the Article's proposed circle size and authority mechanism unvalidated."
+ inference_gap: "Small selected groups and tasks cannot validate twelve-person circles, singular emergency leadership, or authority derived from violence."
+ reviewed_on: "2026-07-31"
+
+- id: article-seven-graded-categories
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "Experiments found graded typicality effects within several ordinary semantic categories."
+ article_relation: "Challenges the assumption that every conversational category naturally has one sharp boundary fixed before use."
+ inference_gap: "Ordinary semantic-category experiments do not govern legal drafting or technical interfaces."
+ reviewed_on: "2026-07-31"
+
+- id: article-seven-standard-terminology-outcomes
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A systematic review and meta-analysis found possible documentation, coordination, knowledge, and outcome benefits from standardized nursing terminologies, with very low-to-low certainty."
+ article_relation: "Supports studying shared terminology while limiting claims that imposed definitions are neutral or sufficient."
+ inference_gap: "Terminology was often embedded in larger interventions, most evidence was observational, and ordinary conversation was not studied."
+ reviewed_on: "2026-07-31"
+
+- id: article-eight-decision-aids
+ verification_status: provisional-full-text-locator-needed
+ locator: "hmmm — exact full-text result locator has not yet been recorded."
+ study_result: "A Cochrane review of randomized trials found decision aids improved knowledge, risk perception, active participation, and informed values-congruent choices without increasing regret."
+ article_relation: "Supports consent practices that communicate options, benefits, harms, probabilities, and personal values."
+ inference_gap: "Health-treatment and screening decisions do not establish a universal consent standard or settle every conflict among autonomy, harm, and public duty."
+ reviewed_on: "2026-07-31"
diff --git a/src/_data/research/claims-2026-07-23.yml b/src/_data/research/claims-2026-07-23.yml
index 1043bda..9a0f3d5 100644
--- a/src/_data/research/claims-2026-07-23.yml
+++ b/src/_data/research/claims-2026-07-23.yml
@@ -28,12 +28,11 @@
- id: article-three-forgiving-reciprocity
article: rights-and-definitions-of-the-way.article-three
stance: mixed
- status: theory-evidence-synthesis
- claim: "Repeated interaction can sustain cooperative reciprocity, but strict act-for-act retaliation is error-sensitive; concurrent social crosstalk can spread defection and require bounded forgiveness or other error-correcting strategies."
+ status: formal-simulation-study
+ claim: "In a concurrent repeated-game model, social crosstalk can spread defection, make strict act-for-act retaliation brittle, and require stronger bounded forgiveness to preserve cooperation."
source_ids:
- - rossetti-hilbe-2024-direct-reciprocity
- reiter-et-al-2018-reciprocity-crosstalk
- limitation: "The evidence comes mainly from stylized games, mathematical models, and simulations; it neither establishes consent to retaliation nor instructs anyone to forgive or remain exposed to abuse."
+ limitation: "This is a mathematical and simulation study of stylized repeated games, not an empirical field study; it neither establishes consent to retaliation nor instructs anyone to forgive or remain exposed to abuse."
- id: article-four-plain-language-boundary
article: rights-and-definitions-of-the-way.article-four
diff --git a/src/_data/research/evidence-gaps-2026-07-31.yml b/src/_data/research/evidence-gaps-2026-07-31.yml
new file mode 100644
index 0000000..4ebc2b4
--- /dev/null
+++ b/src/_data/research/evidence-gaps-2026-07-31.yml
@@ -0,0 +1,71 @@
+- id: article-one-study-gap
+ article: rights-and-definitions-of-the-way.article-one
+ search_status: candidate-ledger-screened-both-directions
+ support_status: qualifying-study-found
+ dissent_status: qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "The current candidate ledger contains study contact in both directions; a comprehensive database search, independent duplicate screening, full-text locators, and design-specific risk-of-bias appraisals remain incomplete."
+ reviewed_on: "2026-07-31"
+
+- id: article-two-study-gap
+ article: rights-and-definitions-of-the-way.article-two
+ search_status: candidate-ledger-screened-both-directions
+ support_status: qualifying-study-found
+ dissent_status: qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "The current candidate ledger contains study contact in both directions; a comprehensive database search, independent duplicate screening, full-text locators, and design-specific risk-of-bias appraisals remain incomplete."
+ reviewed_on: "2026-07-31"
+
+- id: article-three-study-gap
+ article: rights-and-definitions-of-the-way.article-three
+ search_status: candidate-ledger-screened-both-directions
+ support_status: no-qualifying-study-found
+ dissent_status: no-qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "Only a non-empirical formal/simulation study currently qualifies. No qualifying support or dissent study is in the screened candidate ledger; a broader systematic search and empirical field evidence are needed."
+ reviewed_on: "2026-07-31"
+
+- id: article-four-study-gap
+ article: rights-and-definitions-of-the-way.article-four
+ search_status: candidate-ledger-screened-both-directions
+ support_status: qualifying-study-found
+ dissent_status: no-qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "No qualifying dissent study is in the screened candidate ledger. A broader search should test failure modes of legal education, teach-back, plain-language drafting, and comprehension-dependent enforcement."
+ reviewed_on: "2026-07-31"
+
+- id: article-five-study-gap
+ article: rights-and-definitions-of-the-way.article-five
+ search_status: candidate-ledger-screened-both-directions
+ support_status: no-qualifying-study-found
+ dissent_status: qualifying-study-found
+ mixed_or_limit_status: no-qualifying-study-found
+ hmmm: "No qualifying support study is in the screened candidate ledger. Studies directly evaluating competence portfolios, supported decision-making, task specificity, and age-based alternatives are needed."
+ reviewed_on: "2026-07-31"
+
+- id: article-six-study-gap
+ article: rights-and-definitions-of-the-way.article-six
+ search_status: candidate-ledger-screened-both-directions
+ support_status: no-qualifying-study-found
+ dissent_status: qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "No qualifying support study is in the screened candidate ledger. Direct evidence on bounded emergency authority, leader selection, group size, accountability, transfer, and demobilization is needed."
+ reviewed_on: "2026-07-31"
+
+- id: article-seven-study-gap
+ article: rights-and-definitions-of-the-way.article-seven
+ search_status: candidate-ledger-screened-both-directions
+ support_status: no-qualifying-study-found
+ dissent_status: qualifying-study-found
+ mixed_or_limit_status: qualifying-study-found
+ hmmm: "No qualifying support study is in the screened candidate ledger. Research should compare negotiated, imposed, and standardized definitions across ordinary, technical, legal, and cross-cultural settings."
+ reviewed_on: "2026-07-31"
+
+- id: article-eight-study-gap
+ article: rights-and-definitions-of-the-way.article-eight
+ search_status: candidate-ledger-screened-both-directions
+ support_status: qualifying-study-found
+ dissent_status: no-qualifying-study-found
+ mixed_or_limit_status: no-qualifying-study-found
+ hmmm: "No qualifying dissent or limit study is in the screened candidate ledger. Research is needed on consent failure, collective harms, vulnerability, coercion, and competing definitions of harm."
+ reviewed_on: "2026-07-31"
diff --git a/src/_data/research/ledger-manifest.json b/src/_data/research/ledger-manifest.json
index a2bfd1f..b9245eb 100644
--- a/src/_data/research/ledger-manifest.json
+++ b/src/_data/research/ledger-manifest.json
@@ -6,5 +6,14 @@
"claims": [
"src/_data/research/claims.yml",
"src/_data/research/claims-2026-07-23.yml"
+ ],
+ "source_admissions": [
+ "src/_data/research/source-admissions-2026-07-31.yml"
+ ],
+ "claim_reviews": [
+ "src/_data/research/claim-reviews-2026-07-31.yml"
+ ],
+ "gaps": [
+ "src/_data/research/evidence-gaps-2026-07-31.yml"
]
}
diff --git a/src/_data/research/source-admissions-2026-07-31.yml b/src/_data/research/source-admissions-2026-07-31.yml
new file mode 100644
index 0000000..8620485
--- /dev/null
+++ b/src/_data/research/source-admissions-2026-07-31.yml
@@ -0,0 +1,366 @@
+- id: patrick-williams-2012-sdt-health
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Narrative review without a declared systematic search, selection, and synthesis method."
+ screened_on: "2026-07-31"
+
+- id: who-2018-sanitation-health
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Practice guideline; evidence-informed guidance is not itself a research study."
+ screened_on: "2026-07-31"
+
+- id: mani-et-al-2013-poverty-cognition
+ decision: admit-study
+ record_class: research_study
+ study_design: "Laboratory and field experiments"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports methods, analyses, and results from empirical experiments."
+ screened_on: "2026-07-31"
+
+- id: ahrq-2025-trauma-informed-care
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares a systematic evidence-synthesis method and reports results and limitations."
+ screened_on: "2026-07-31"
+
+- id: gundersen-ziliak-2015-food-insecurity
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Narrative review without a declared systematic search, selection, and synthesis method."
+ screened_on: "2026-07-31"
+
+- id: andersson-pearson-1999-incivility
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Theoretical article; it proposes a model but does not report a study."
+ screened_on: "2026-07-31"
+
+- id: ahrq-2023-teamstepps
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Implementation curriculum and framework; it is not itself a research study."
+ screened_on: "2026-07-31"
+
+- id: nagin-telep-2017-procedural-justice
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Narrative review without a declared systematic search, selection, and synthesis method."
+ screened_on: "2026-07-31"
+
+- id: who-2001-icf
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "International classification and framework; a standard is not a research study."
+ screened_on: "2026-07-31"
+
+- id: who-2022-uhc-competency
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Competency framework; a framework is not a research study."
+ screened_on: "2026-07-31"
+
+- id: fema-2017-nims
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Operational doctrine and framework; it is not a research study."
+ screened_on: "2026-07-31"
+
+- id: ietf-1997-rfc2119
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Technical standard; a standard is not a research study."
+ screened_on: "2026-07-31"
+
+- id: ietf-2017-rfc8174
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Technical standard clarification; a standard is not a research study."
+ screened_on: "2026-07-31"
+
+- id: hhs-1979-belmont-report
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Ethics declaration and guidance; normative doctrine is not a research study."
+ screened_on: "2026-07-31"
+
+- id: ndumele-et-al-2025-snap-work-requirements
+ decision: admit-study
+ record_class: research_study
+ study_design: "Quasi-experimental cohort study"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports an empirical design, analysis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: talevski-et-al-2020-teach-back
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares systematic search and selection methods and synthesizes study results."
+ screened_on: "2026-07-31"
+
+- id: webb-2020-legislative-complexity
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Legal analysis; peer review does not convert legal reasoning into a research study."
+ screened_on: "2026-07-31"
+
+- id: un-crpd-2014-legal-capacity
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Treaty-body interpretation; legislation and legal doctrine are not science."
+ screened_on: "2026-07-31"
+
+- id: stephan-chenoweth-2008-civil-resistance
+ decision: admit-study
+ record_class: research_study
+ study_design: "Comparative observational study"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports a defined campaign dataset, comparative analysis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: rosch-1975-semantic-categories
+ decision: admit-study
+ record_class: research_study
+ study_design: "Experimental study"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports empirical experiments, analyses, and results."
+ screened_on: "2026-07-31"
+
+- id: solove-2013-consent-dilemma
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Legal analysis drawing on research; an analysis of studies is not itself a study."
+ screened_on: "2026-07-31"
+
+- id: fehr-gachter-2000-cooperation-punishment
+ decision: admit-study
+ record_class: research_study
+ study_design: "Public-goods laboratory experiments"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports experimental methods, analyses, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: pattaro-et-al-2022-benefit-sanctions
+ decision: admit-study
+ record_class: research_study
+ study_design: "Scoping review of quantitative studies"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares search and selection methods and maps quantitative study results."
+ screened_on: "2026-07-31"
+
+- id: goodwin-maru-2017-legal-empowerment
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic evidence map"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports a declared evidence-mapping search, selection, and synthesis process."
+ screened_on: "2026-07-31"
+
+- id: who-2002-world-report-violence
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Global public-health report; the report is not one reproducible research study or systematic synthesis."
+ screened_on: "2026-07-31"
+
+- id: icenogle-et-al-2019-maturity-gap
+ decision: admit-study
+ record_class: research_study
+ study_design: "Multinational cross-sectional study"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports a defined sample, empirical measures, analysis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: sunstein-2002-group-polarization
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Theoretical synthesis; it is not itself a research study or systematic review."
+ screened_on: "2026-07-31"
+
+- id: harcourt-1999-collapse-harm-principle
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Law-review argument; legal theory is not a research study."
+ screened_on: "2026-07-31"
+
+- id: doocy-tappis-2017-humanitarian-cash
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares systematic search, selection, appraisal, synthesis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: ng-et-al-2012-sdt-meta-analysis
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review and meta-analysis"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports systematic synthesis and meta-analytic methods and results."
+ screened_on: "2026-07-31"
+
+- id: magana-et-al-2020-unpaid-caregivers-lmic
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review and meta-analysis of observational studies"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares systematic search, selection, synthesis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: rossetti-hilbe-2024-direct-reciprocity
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Narrative theory-and-evidence review without a declared systematic synthesis method."
+ screened_on: "2026-07-31"
+
+- id: reiter-et-al-2018-reciprocity-crosstalk
+ decision: admit-study
+ record_class: research_study
+ study_design: "Mathematical model and simulation study"
+ evidence_mode: formal_simulation
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports a formal research question, model, simulation analysis, results, and limitations; explicitly non-empirical."
+ screened_on: "2026-07-31"
+
+- id: masson-waldron-1994-legal-contract-comprehension
+ decision: admit-study
+ record_class: research_study
+ study_design: "Controlled comprehension experiment"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports experimental methods, analysis, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: zietlow-et-al-2022-guardianship-capacity
+ decision: exclude-non-study
+ record_class: nonstudy_context
+ exclusion_reason: "Medicolegal narrative review; clinical and legal guidance is not itself a research study."
+ screened_on: "2026-07-31"
+
+- id: woolley-et-al-2010-collective-intelligence
+ decision: admit-study
+ record_class: research_study
+ study_design: "Small-group experiments"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports empirical group experiments, analyses, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: bates-gupta-2017-group-intelligence
+ decision: admit-study
+ record_class: research_study
+ study_design: "Replication and latent-variable model tests"
+ evidence_mode: empirical
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Reports empirical replication studies, analyses, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: bertocchi-et-al-2023-standardized-terminologies
+ decision: admit-study
+ record_class: research_study
+ study_design: "Systematic review and meta-analysis"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares systematic search, selection, synthesis, certainty assessment, results, and limitations."
+ screened_on: "2026-07-31"
+
+- id: stacey-et-al-2024-decision-aids
+ decision: admit-study
+ record_class: research_study
+ study_design: "Cochrane systematic review of randomized controlled trials"
+ evidence_mode: systematic_synthesis
+ screening_status: provisional-study-admission
+ appraisal_status: hmmm-full-text-locator-pending
+ risk_of_bias_status: hmmm-design-specific-appraisal-pending
+ funding_conflicts_status: hmmm-extraction-pending
+ correction_retraction_status: hmmm-integrity-check-pending
+ admission_basis: "Declares systematic methods, risk-of-bias assessment, synthesis, results, and limitations."
+ screened_on: "2026-07-31"
diff --git a/src/_data/research_data.js b/src/_data/research_data.js
index ce2c5d0..383912f 100644
--- a/src/_data/research_data.js
+++ b/src/_data/research_data.js
@@ -5,25 +5,25 @@ import yaml from 'js-yaml';
// id: article_lab_research_data_adapter
// module_name: research_data
// module_kind: adapter
-// summary: Loads manifest-declared reviewed research source and claim ledgers into one explicit Eleventy global-data object.
+// summary: Admits only research studies from manifest-declared candidate ledgers and exposes their bounded claims, reviews, and evidence gaps.
// owner: Erin Spencer
-// public_surface: research_data.sources, research_data.claims
-// internal_surface: validateLedgerPaths, readYamlList, readYamlLedgers
+// public_surface: research_data.sources, research_data.claims, research_data.gaps, research_data.stats
+// internal_surface: validateLedgerPaths, readYamlList, readYamlLedgers, indexUnique
// auth_boundary: none
-// storage_boundary: read the repository-owned research manifest and its declared YAML ledgers
+// storage_boundary: read the repository-owned candidate, admission, claim-review, and gap ledgers
// network_boundary: none
// user_data_boundary: none
// admin_only: false
// tests: tests/research-ledger.test.mjs, tests/generated-site.test.mjs
// rollout: loaded automatically by Eleventy from src/_data/research_data.js
-// rollback: restore direct two-file reads and remove the manifest-declared tranche files
+// rollback: revert this adapter and the admission-ledger manifest entries together
// === END MODULE_BUILD ===
-// Usage: add a repository-local YAML ledger path to ledger-manifest.json, then reference `research_data.sources` and `research_data.claims` in Nunjucks templates.
-// Limits: this adapter exposes reviewed ledger content only; it does not infer stance, truth, source relevance, or evidentiary weight.
+// Usage: add candidate sources and claims to their ledgers, classify every source in source-admissions, review every publishable claim in claim-reviews, and record Article-level search gaps before running `npm test`.
+// Limits: admission establishes record class, not truth. A provisional claim remains provisional until its full-text result locator and appraisal are recorded.
// === BOUNDARIES ===
// id: article_lab_research_data_storage_boundary
-// summary: Reads allowlisted repository-local YAML ledgers during static-site generation and returns parsed arrays.
+// summary: Reads allowlisted repository-local YAML ledgers, rejects incomplete classifications, and returns study-only public arrays.
// auth_boundary: none
// storage_boundary: read beneath src/_data/research only
// network_boundary: none
@@ -61,14 +61,104 @@ async function readYamlLedgers(paths, kind) {
return ledgers.flat();
}
+function indexUnique(records, kind) {
+ const index = new Map();
+ for (const record of records) {
+ if (!record?.id || typeof record.id !== 'string') throw new TypeError(`${kind} record is missing a string id`);
+ if (index.has(record.id)) throw new TypeError(`duplicate ${kind} id: ${record.id}`);
+ index.set(record.id, record);
+ }
+ return index;
+}
+
export default async function researchData() {
const manifest = JSON.parse(await readFile(manifestPath, 'utf8'));
if (!manifest || typeof manifest !== 'object' || Array.isArray(manifest)) throw new TypeError(`${manifestPath} must contain a JSON object`);
- const [sources, claims] = await Promise.all([
+ const [candidateSources, candidateClaims, sourceAdmissions, claimReviews, gaps] = await Promise.all([
readYamlLedgers(manifest.sources, 'source'),
- readYamlLedgers(manifest.claims, 'claim')
+ readYamlLedgers(manifest.claims, 'claim'),
+ readYamlLedgers(manifest.source_admissions, 'source admission'),
+ readYamlLedgers(manifest.claim_reviews, 'claim review'),
+ readYamlLedgers(manifest.gaps, 'evidence gap')
]);
- return { sources, claims };
+ const sourceIndex = indexUnique(candidateSources, 'candidate source');
+ const claimIndex = indexUnique(candidateClaims, 'candidate claim');
+ const admissionIndex = indexUnique(sourceAdmissions, 'source admission');
+ const reviewIndex = indexUnique(claimReviews, 'claim review');
+
+ for (const sourceId of sourceIndex.keys()) {
+ if (!admissionIndex.has(sourceId)) throw new TypeError(`candidate source is missing an admission decision: ${sourceId}`);
+ }
+ for (const sourceId of admissionIndex.keys()) {
+ if (!sourceIndex.has(sourceId)) throw new TypeError(`source admission has no candidate source: ${sourceId}`);
+ }
+
+ const admittedSourceIds = new Set();
+ const sources = [];
+ for (const source of candidateSources) {
+ const admission = admissionIndex.get(source.id);
+ if (admission.decision === 'admit-study') {
+ if (admission.record_class !== 'research_study') throw new TypeError(`admitted source must be a research_study: ${source.id}`);
+ if (
+ !admission.study_design
+ || !admission.evidence_mode
+ || !admission.screening_status
+ || !admission.appraisal_status
+ || !admission.risk_of_bias_status
+ || !admission.funding_conflicts_status
+ || !admission.correction_retraction_status
+ ) {
+ throw new TypeError(`admitted source is missing study admission metadata: ${source.id}`);
+ }
+ admittedSourceIds.add(source.id);
+ sources.push({ ...source, ...admission });
+ } else if (admission.decision === 'exclude-non-study') {
+ if (admission.record_class !== 'nonstudy_context' || !admission.exclusion_reason) {
+ throw new TypeError(`excluded source is missing its non-study reason: ${source.id}`);
+ }
+ } else {
+ throw new TypeError(`unknown source admission decision for ${source.id}: ${String(admission.decision)}`);
+ }
+ }
+
+ for (const claim of candidateClaims) {
+ if (!Array.isArray(claim.source_ids) || claim.source_ids.length === 0) throw new TypeError(`claim is missing source_ids: ${claim.id}`);
+ for (const sourceId of claim.source_ids) {
+ if (!sourceIndex.has(sourceId)) throw new TypeError(`claim ${claim.id} references unknown source ${sourceId}`);
+ }
+ }
+
+ const admissibleClaims = candidateClaims.filter(claim => claim.source_ids.every(sourceId => admittedSourceIds.has(sourceId)));
+ const admissibleClaimIds = new Set(admissibleClaims.map(claim => claim.id));
+ for (const claim of admissibleClaims) {
+ if (!reviewIndex.has(claim.id)) throw new TypeError(`study-only claim is missing a claim review: ${claim.id}`);
+ }
+ for (const claimId of reviewIndex.keys()) {
+ if (!claimIndex.has(claimId)) throw new TypeError(`claim review has no candidate claim: ${claimId}`);
+ if (!admissibleClaimIds.has(claimId)) throw new TypeError(`claim review cites a claim with a non-study source: ${claimId}`);
+ }
+
+ const claims = admissibleClaims.map(claim => ({ ...claim, ...reviewIndex.get(claim.id) }));
+ const gapIds = new Set();
+ for (const gap of gaps) {
+ if (!gap?.article || gapIds.has(gap.article)) throw new TypeError(`evidence gap records must have unique article ids: ${String(gap?.article)}`);
+ gapIds.add(gap.article);
+ }
+
+ return {
+ sources,
+ claims,
+ gaps,
+ stats: {
+ screenedSourceCount: candidateSources.length,
+ admittedStudyCount: sources.length,
+ excludedNonstudyCount: candidateSources.length - sources.length,
+ candidateClaimCount: candidateClaims.length,
+ publishedStudyClaimCount: claims.length,
+ excludedContextClaimCount: candidateClaims.length - claims.length,
+ verifiedClaimCount: claims.filter(claim => claim.verification_status === 'verified-full-text').length
+ }
+ };
}
diff --git a/src/_includes/partials/research-attachment.njk b/src/_includes/partials/research-attachment.njk
index 72497fe..584b75c 100644
--- a/src/_includes/partials/research-attachment.njk
+++ b/src/_includes/partials/research-attachment.njk
@@ -1,8 +1,10 @@
{% set claims = research_data.claims | where("article", researchArticleId) %}
+{% set gapMatches = research_data.gaps | where("article", researchArticleId) %}
+{% set gap = gapMatches[0] %}
-
Reviewed research attachment
-
Support, dissent, and limits
-
These records attach sources to bounded claims. They support, challenge, or limit the public reading without converting interpretation into canon.
+
Study-only research attachment
+
Study results, Article contact, and limits
+
|∆| Only admitted research studies appear here. Legislation, treaties, standards, guidelines, frameworks, doctrine, legal analysis, and narrative reviews do not count as Research. |∆|
{% if claims.length %}
{% for claim in claims %}
@@ -10,13 +12,16 @@
{% if claim.stance == "dissent" %}{% set stanceClass = "status-risk" %}{% endif %}
{% if claim.stance == "limit" or claim.stance == "mixed" %}{% set stanceClass = "status-frontier" %}{% endif %}
- {{ claim.stance }} · {{ claim.status }}
+ {{ claim.stance }} · {{ claim.verification_status }}
{{ claim.claim }}
-
Evidence boundary: {{ claim.limitation }}
+
Study result: {{ claim.study_result }}
+
Article contact: {{ claim.article_relation }}
+
Inference boundary: {{ claim.inference_gap }}
+
Citation locator: {{ claim.locator }}
Sources:
{% for sourceId in claim.source_ids %}
{% for source in research_data.sources %}
- {% if source.id == sourceId %}
No reviewed claim is attached to this article yet.
+
No qualifying research-study claim is attached to this article yet.
+ {% endif %}
+ {% if gap %}
+
{% endif %}
diff --git a/src/articles/article-eight.njk b/src/articles/article-eight.njk
index ba7cbb0..ae999d7 100644
--- a/src/articles/article-eight.njk
+++ b/src/articles/article-eight.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Eight: Rights with living limits"
-description: A public-facing Article Eight vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Eight vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-eight/
---
Vertical slice · canon-safe draft
Article Eight: Rights with living limits
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Eight gathers the rights logic: non-harm, preservation of life, resistance to coercion, informed consent, and protection of tools needed to live or practice art.
diff --git a/src/articles/article-five.njk b/src/articles/article-five.njk
index 580ce1b..668e938 100644
--- a/src/articles/article-five.njk
+++ b/src/articles/article-five.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Five: Adulthood as demonstrated competence"
-description: A public-facing Article Five vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Five vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-five/
---
Vertical slice · canon-safe draft
Article Five: Adulthood as demonstrated competence
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Five separates biological age from public competence. Adulthood becomes something demonstrated, not merely asserted.
diff --git a/src/articles/article-four.njk b/src/articles/article-four.njk
index a68c59c..6778740 100644
--- a/src/articles/article-four.njk
+++ b/src/articles/article-four.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Four: Law as teachable duty"
-description: A public-facing Article Four vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Four vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-four/
---
Vertical slice · canon-safe draft
Article Four: Law as teachable duty
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Four treats law as something that must be made knowable. If people are bound by a rule, someone has a duty to teach it.
diff --git a/src/articles/article-one.njk b/src/articles/article-one.njk
index 4311ee6..da6eefa 100644
--- a/src/articles/article-one.njk
+++ b/src/articles/article-one.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article One: Contribution without contempt"
-description: A public-facing Article One vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article One vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-one/
---
Vertical slice · canon-safe draft
Article One: Contribution without contempt
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article One tests how public obligation can feed everyone without turning need into contempt or turning contribution into a weapon.
diff --git a/src/articles/article-seven.njk b/src/articles/article-seven.njk
index 78ce450..9c0a2fd 100644
--- a/src/articles/article-seven.njk
+++ b/src/articles/article-seven.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Seven: Definitions before governance"
-description: A public-facing Article Seven vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Seven vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-seven/
---
Vertical slice · canon-safe draft
Article Seven: Definitions before governance
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Seven makes shared definition the threshold for consent. If people do not know what terms mean, they cannot honestly agree, disagree, or decide.
diff --git a/src/articles/article-six.njk b/src/articles/article-six.njk
index dd0a732..389981c 100644
--- a/src/articles/article-six.njk
+++ b/src/articles/article-six.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Six: Authority as burden"
-description: A public-facing Article Six vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Six vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-six/
---
Vertical slice · canon-safe draft
Article Six: Authority as burden
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Six faces the hard edge of authority: public power is tied to consequence, and consequence must be burdened, witnessed, limited, and accountable.
diff --git a/src/articles/article-three.njk b/src/articles/article-three.njk
index 13adc26..5838d08 100644
--- a/src/articles/article-three.njk
+++ b/src/articles/article-three.njk
@@ -1,14 +1,14 @@
---
layout: layouts/base.njk
title: "Article Three: Speech as demonstrated consent"
-description: A public-facing Article Three vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Three vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-three/
---
Vertical slice · canon-safe draft
Article Three: Speech as demonstrated consent
-
canon excerptcompanion readingreviewed research
+
canon excerptcompanion readingstudy-only research
Article Three treats communication style as evidence: how a person speaks and acts shapes what kind of response they have demonstrated willingness to receive.
diff --git a/src/articles/article-two.njk b/src/articles/article-two.njk
index 64dcf3e..87c88e2 100644
--- a/src/articles/article-two.njk
+++ b/src/articles/article-two.njk
@@ -1,7 +1,7 @@
---
layout: layouts/base.njk
title: "Article Two: Freedom without abandonment"
-description: A public-facing Article Two vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and reviewed research.
+description: A public-facing Article Two vertical slice with exact canon excerpt, companion reading, note conversation, application, handbook seed, short script, and study-only research.
permalink: /articles/article-two/
---
@@ -11,7 +11,7 @@ permalink: /articles/article-two/
canon excerptcompanion reading
- reviewed research
+ study-only research
This page tests the public method: one canon unit becomes an orientation, a note conversation, a concrete application, a handbook seed, a short script, and an evidence field without pretending the interpretation is the source.
All eight Rights and Definitions articles now have public vertical-slice drafts. The next pass is research attachment, tone review, and linking each static article to its generated canon unit once the deployed parser route slugs are confirmed.
+
All eight Rights and Definitions articles now have public vertical-slice drafts with study-only research attachments and explicit hmmm gaps. The next pass is full-text result locators, design-specific appraisal, tone review, and linking each static article to its generated canon unit once the deployed parser route slugs are confirmed.
All eight Rights articles now have a canon-bounded path through exact excerpt, note conversation, reductio ad absurdum, worst and best practices, applications across eleven domains, and an initial reviewed research field.
+
All eight Rights articles now have a canon-bounded path through exact excerpt, note conversation, reductio ad absurdum, worst and best practices, applications across eleven domains, and a study-only research field with explicit coverage gaps.
{{ generated.repos.publicRepoCount }} public repositories · {{ generated.canon.units.length }} canonical units · {{ generated.textbook.chapterCount }} textbook chapters
Project data was generated {{ generated.repos.snapshotAt | dateOnly }}{% if generated.repos.fallback %} from the last verified snapshot{% endif %}. Canon digest {{ generated.canon.source.contentSha256 }}. Textbook complete: {{ generated.textbook.complete }}.
-
hmmm
The textbook now has a complete public reading spine, while each chapter remains independently revisable in its source repository. The Article Lab research remains deliberately open to stronger dissent, replication, field studies, disability-led critique, and non-Western evidence.
+
hmmm
The textbook now has a complete public reading spine, while each chapter remains independently revisable in its source repository. The Article Lab now excludes legislation, standards, guidelines, frameworks, and other non-study records from Research. Its retained study claims still need full-text locators, design-specific appraisal, stronger dissent, replication, field studies, disability-led critique, and non-Western evidence.
diff --git a/src/lab/index.njk b/src/lab/index.njk
index 9ac3f5e..3919dfa 100644
--- a/src/lab/index.njk
+++ b/src/lab/index.njk
@@ -6,7 +6,7 @@ description: A structured conversation between canonical body text, notes, resea
Interpretation with visible seams
Article Lab
-
Each Rights article is tested from several directions: the body text and notes remain distinct speakers; reductio ad absurdum exposes destructive overextensions; worst and best practices translate the tension into operations; domain applications test whether the reading survives contact with different kinds of work; reviewed research remains visibly bounded.
+
Each Rights article is tested from several directions: the body text and notes remain distinct speakers; reductio ad absurdum exposes destructive overextensions; worst and best practices translate the tension into operations; domain applications test whether the reading survives contact with different kinds of work; study-only research remains visibly bounded.
Rights Article laboratories
@@ -18,7 +18,7 @@ description: A structured conversation between canonical body text, notes, resea
Lab
{% endif %}
{% endfor %}
@@ -27,6 +27,6 @@ description: A structured conversation between canonical body text, notes, resea
Method boundary
-
Applications are operational hypotheses, not claims that one rule transfers unchanged across domains. Research sources support, dissent from, or limit a particular component; they do not prove an Article as a whole. Other canonical units retain generated Lab routes, but this index begins with the eight Rights articles as the first complete comparative set.
+
Applications are operational hypotheses, not claims that one rule transfers unchanged across domains. Only admitted research studies can support, dissent from, or limit a particular component in the Research field; they do not prove an Article as a whole. Legislation, treaties, standards, guidelines, frameworks, and other non-study context do not count. Other canonical units retain generated Lab routes, but this index begins with the eight Rights articles as the first comparative set.
-
Research coverage
The initial pack establishes reviewed contact for all eight Rights articles. It is not exhaustive: each claim remains open to stronger replication, domain-specific evidence, direct dissent, and evidence from outside United States and institutional settings.
+
Research coverage
The existing candidate ledger has been screened into {{ research_data.stats.admittedStudyCount }} admitted studies and {{ research_data.stats.excludedNonstudyCount }} excluded non-study records. Study contact exists for all eight Rights articles, but support and dissent are not forced into false symmetry; see each Article's explicit hmmm gap.
diff --git a/src/lab/unit.njk b/src/lab/unit.njk
index c84137c..880225f 100644
--- a/src/lab/unit.njk
+++ b/src/lab/unit.njk
@@ -10,6 +10,8 @@ title: "Lab: {{ unit.title }}"
{% set labMatches = article_lab | where("unit_id", unit.id) %}
{% set lab = labMatches[0] %}
{% set claims = research_data.claims | where("article", unit.id) %}
+{% set gapMatches = research_data.gaps | where("article", unit.id) %}
+{% set gap = gapMatches[0] %}
|∆| Research means an admitted primary study or systematic evidence-synthesis study. Legislation and other non-study context never count toward this field. |∆|
{% if claims.length %}
{% for claim in claims %}
@@ -63,13 +66,16 @@ title: "Lab: {{ unit.title }}"
{% if claim.stance == "dissent" %}{% set stanceClass = "status-risk" %}{% endif %}
{% if claim.stance == "limit" or claim.stance == "mixed" %}{% set stanceClass = "status-frontier" %}{% endif %}
- {{ claim.stance }} · {{ claim.status }}
+ {{ claim.stance }} · {{ claim.verification_status }}
{{ claim.claim }}
-
Evidence boundary: {{ claim.limitation }}
+
Study result: {{ claim.study_result }}
+
Article contact: {{ claim.article_relation }}
+
Inference boundary: {{ claim.inference_gap }}
+
Citation locator: {{ claim.locator }}
Sources:
{% for sourceId in claim.source_ids %}
{% for source in research_data.sources %}
- {% if source.id == sourceId %}
No qualifying research-study claim is attached to this unit yet.
+ {% endif %}
+ {% if gap %}
+
{% endif %}
{% else %}
diff --git a/src/research/method.njk b/src/research/method.njk
index a6dafc0..988c684 100644
--- a/src/research/method.njk
+++ b/src/research/method.njk
@@ -1,45 +1,73 @@
---
layout: layouts/base.njk
title: Research method
-description: How The Interdependent Way site distinguishes support, dissent, mixed evidence, implementation, and unresolved research gaps.
+description: The study-only admission, claim-review, citation, and visible-gap rules for The Interdependent Way website.
---
Research method
-
Evidence is not a decorative citation layer.
-
Sources are attached to specific claims and units. A metadata service may help locate or normalize a source, but it does not decide whether the source supports, dissents from, limits, or merely contextualizes a claim.
+
Legislation is not science.
+
|∆| This site counts only primary research studies and systematic evidence-synthesis studies as Research. |∆| Non-study material may matter as legal, normative, implementation, or historical context, but it cannot supply research coverage, stance, or evidentiary weight.
-
Classification rules
+
Admission boundary
- Support
Substantive agreement
The source supplies evidence or reasoning that materially strengthens the identified claim.
- Dissent
Substantive challenge
The source disputes a premise, mechanism, prediction, interpretation, or consequence.
- Mixed
Conditional or partial result
The source supports one part while limiting another, or shows the claim depends on context.
- Gap
No qualifying source found
The site says so directly. It does not manufacture false balance or cite a weak source to fill visual symmetry.
+ Admitted
Research studies
Empirical experiments and trials, observational studies, qualitative or mixed-methods studies, quasi-experiments, replications, and explicitly labeled formal or simulation studies may qualify when they report a research question, reproducible method, analysis, results, and limitations.
+ Admitted synthesis
Systematic evidence studies
Systematic reviews, scoping reviews, evidence maps, and meta-analyses may qualify when they declare search, selection, appraisal or mapping, and synthesis methods.
+ Excluded
Non-study context
Legislation, regulation, cases, treaties, policy, doctrine, ethics declarations, technical standards, practice guidelines, frameworks, advocacy reports, journalism, legal analysis, editorials, opinion, theory essays, narrative reviews, protocols without results, and AI summaries do not count as Research.
+ hmmm
Unclear record class
An unclear source stays out of Research until its full text establishes a qualifying method and result. Prestige, institutional authority, citation count, and peer review alone do not establish that it is a study.
-
Usage guidance
+
Current migration audit
+
{{ research_data.stats.screenedSourceCount }} candidate sources were screened: {{ research_data.stats.admittedStudyCount }} admitted studies and {{ research_data.stats.excludedNonstudyCount }} non-study records excluded from Research.
+
{{ research_data.stats.publishedStudyClaimCount }} study-only claim contacts remain from {{ research_data.stats.candidateClaimCount }} candidates. {{ research_data.stats.excludedContextClaimCount }} claims were removed from the Research surface because one or more cited records were not studies.
+
Verified full-text claim citations: {{ research_data.stats.verifiedClaimCount }}. The retained legacy claims are visibly provisional until an exact page, table, figure, or Results-section locator and design-specific appraisal are recorded.
+
+
+
Claim and citation contract
+
+ Study result
What the study found
Record the design, sample or corpus, setting, method, result or effect, uncertainty, and limitations without turning association into causation.
+ Article contact
Why it bears on the text
State the bounded support, dissent, mixed result, or limit separately from the study's own result. The canonical unit remains independent and controlling.
+ Inference gap
What does not transfer
Identify population, setting, measurement, design, time, cultural, scale, and analogy boundaries. One study is provisional contact, not a broad conclusion.
+ Locator
Where the result appears
A verified claim needs a full-text page, table, figure, appendix, or Results-section locator. Abstract-only or indirect citation remains provisional and is shown as hmmm.
+
+
+
+
Review requirements
-
Open the exact canonical unit before reading the research cards; the cards test bounded claims and do not replace the source text.
-
Read support and dissent as claim-specific contact. A source may assent to one component while challenging another.
-
Compare source quality, relevance, method, and stated boundary. Never treat citation counts as a vote.
-
Use the two-sided coverage floor to expose each Rights Article to serious challenge, not to manufacture symmetry where evidence quality differs.
+
Identify the exact canonical unit and write the smallest study-linked claim.
+
Search in both supporting and challenging directions; document the query, databases, dates, screening rules, and result.
+
Record authors, year, venue, DOI or stable identifier, study design, evidence mode, population, setting, methods, outcomes, uncertainty, limitations, funding, conflicts, preregistration, data or code availability, and correction or retraction status when available.
+
Use a design-appropriate risk-of-bias appraisal with reasons. Do not replace it with one universal score.
+
Separate the study result, the Article relation, and the inference gap. Preserve contradictory qualifying studies.
+
Recheck corrections and retractions at admission and during scheduled review.
+
Do not require visual support/dissent symmetry. “No qualifying study found” is a valid result and must render as hmmm.
-
Coverage floor: Every Rights Article carries at least one reviewed support claim and one reviewed dissent claim. This proves contact with both directions of inquiry; it does not prove truth, falsity, balance, or comprehensive coverage.
+
+
+
Article-level study gaps
+
+ {% for gap in research_data.gaps %}
+
+ {{ gap.search_status }}
+
Identify the exact canonical unit or project claim.
-
Record source title, authorship, date, stable identifier, and retrieval date.
-
Separate direct findings from editorial inference.
-
Label stance through review, not keyword sentiment.
-
Preserve contradictory high-quality evidence.
-
Mark retractions, corrections, and stale data.
-
Keep implementation evidence separate from theoretical validity.
+
Open the exact canonical unit first; research cards test bounded contact and never replace the source text.
+
Read the study result before the Article relation, then inspect the inference gap and locator.
+
Treat provisional-full-text-locator-needed as unfinished citation verification, not as a verified finding.
+
To add a source, append the candidate record, make one explicit source-admission decision, add or revise the bounded claim, record its claim review, update the Article gap, then run npm run check and npm run test:browser.
hmmm
-
The version-controlled research ledger now provides two-sided contact for every Rights Article, but the reviewed corpus remains an opening tranche rather than a comprehensive literature review.
+
The study-only boundary is enforced in code and tests. The current corpus is a screened legacy candidate set, not a comprehensive systematic review; exact full-text result locators, duplicate independent screening, design-specific risk-of-bias appraisals, funding and conflict extraction, and scheduled correction/retraction checks remain to be completed.
diff --git a/src/start.njk b/src/start.njk
index c1a5388..dc22aa0 100644
--- a/src/start.njk
+++ b/src/start.njk
@@ -5,6 +5,6 @@ permalink: /start/
description: Orientation to The Interdependent Way, its layered source model, project constellation, and research boundaries.
---
Orientation before density
Start here
The Interdependent Way is simultaneously a canonical text, an interpretive problem, a research program, a public project constellation, and a set of frontier claims. Those layers are related, but they are not interchangeable.
-
How to read this site
Canon
What the source says
Exact text and mechanically derived structure. Canon wins whenever a companion reading disagrees.
Interpretation
What a reading proposes
Orientation, plain-language companions, and tension analysis. Useful scaffolding, always subordinate to source.
Research
What evidence bears on it
Support, dissent, mixed results, context, and evidence gaps are classified by editorial review rather than automated sentiment.
Implementation
What has been built
Repositories and artifacts that attempt to embody, test, measure, publish, or challenge part of the work.
Frontier
What remains unsettled
Experimental or incomplete claims remain named without borrowing certainty from neighboring formal work.
hmmm
What is honestly unresolved
A boundary object that records the missing constraint and preserves a place for continuation.
+
How to read this site
Canon
What the source says
Exact text and mechanically derived structure. Canon wins whenever a companion reading disagrees.
Interpretation
What a reading proposes
Orientation, plain-language companions, and tension analysis. Useful scaffolding, always subordinate to source.
Research
What studies found
Only primary studies and systematic evidence-synthesis studies count. Support, dissent, mixed results, limits, and missing directions are classified by review rather than automated sentiment.
Non-study context
What rules or institutions say
Legislation, treaties, standards, guidelines, frameworks, and doctrine may matter as context, but they are not science and never count as Research.
Implementation
What has been built
Repositories and artifacts that attempt to embody, test, measure, publish, or challenge part of the work.
Frontier
What remains unsettled
Experimental or incomplete claims remain named without borrowing certainty from neighboring formal work.
hmmm
What is honestly unresolved
A boundary object that records the missing constraint and preserves a place for continuation.