Audit: QRS - Low-Dose Naltrexone for Health & Longevity

Audit conducted on 30/08/2026 05:36 using AI4L / Opus 5

Iterations

Summary

Items Count
Total 93
Passed 84
Failed 0
N/A 9
Pass Rate 100.00%
  • Total = Passed + Failed + N/A
  • Pass Rate = Passed / (Passed + Failed) x 100
  • N/A items are excluded from the pass rate calculation

1. General Rules

# Description Result Comments
1.1 Every claim, magnitude, label, recommendation, and statement in the QRS is literally supported by content in the source ER. 🟢 Every QRS string traces to the ER: protocol subs to ER Therapeutic Protocol (lines 354, 360, 364), time cells to Practical Considerations (line 407), all 9 monitoring rows verbatim from the ER biomarker table (lines 437-445), all 6 qualitative items verbatim (lines 449-454).
1.2 Where the ER uses cautious phrasing (“not formally studied”, “None documented in human trials to date”, “theoretical concern”, “data are limited”), the QRS uses the same phrasing. 🟢 Hedging preserved where it is load-bearing: “appears to quiet inflammatory signalling”, “No trial has compared the two directly”, “the proposed mechanism”, “proposed from animal work”, “No established target”.
1.3 The QRS never strengthens an ER claim (e.g., “not formally studied” → “not required”) or softens one (e.g., “do not use during pregnancy” → “use with caution during pregnancy”). 🟢 No strengthening or softening. Contraindications stay absolute (“Pregnancy and breastfeeding”), and the interaction gate keeps the ER’s “no restriction” verdict on additive anti-inflammatory supplements rather than upgrading it to a caution.
1.4 The QRS does not relabel an ER fact under a different decision category. A “Benefit-Modifying Factor” from ER section is not surfaced as a “Caution”; a “Risk-Modifying Factor” is not surfaced as a “Side Effect”; etc. 🟢 Categories are preserved: ER Benefit- and Risk-Modifying Factors (lines 220-228, 292-300) are not surfaced in the gates or in Risks; contraindications come only from the ER avoid-list (lines 327-332).
1.5 PubMed IDs, study citations, expert names, clinical trial identifiers (NCT*), and brand names appear in the QRS only if they appear in the source ER for the same fact. 🟢 No PMIDs, study names, author names, NCT identifiers or brand names appear anywhere in the QRS.
1.6 The QRS does not introduce new attributions. 🟢 No attributions of any kind are introduced.

2. Focus, Tone & Audience

# Description Result Comments
2.1 The QRS follows the tone of the ER, which is determined by the ER’s own language, phrasing, and framing. 🟢 Matches the ER’s sober, evidence-weighted register, including its British spellings (“signalling”, “centralised”, “tumour”, “Destabilisation”).
2.2 The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging 🟢 Expert and data-driven (tiered benefits/risks, functional biomarker ranges) while remaining accessible and actionable.
2.3 The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor 🟢 Presents what the evidence and prevailing practice show rather than issuing instructions.
2.4 The QRS avoids language that implies medical or clinical advice 🟢 No advice framing; the protocol and monitoring cells describe what trials and clinical practice do, not what the reader should do.
2.5 The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” 🟢 Declarative throughout, e.g. “Standard, since the transient blockade is central to the proposed mechanism”; no “recommended”, “advised” or “should”.
2.6 The QRS never addresses “the reader” directly — it presents evidence, not guidance 🟢 No second-person address; “you”/”your” appear nowhere in the file.
2.7 The QRS is written in plain language, avoiding unnecessary medical jargon 🟢 Plain language used for concepts (“vivid dreams”, “loss of opioid analgesia”); acronyms are confined to standard biomarker names in the Monitoring table.
2.8 Information is presented in a concise and very compact manner 🟢 Content is compressed to short cells and single-line list items; the whole sheet distils a 486-line ER.
2.9 It DOES NOT address the reader directly 🟢 Confirmed — no direct reader address anywhere in the document.
2.10 The target audience is health- and longevity-oriented adults who are risk-aware, proactive, and actively seeking to optimize health or apply the intervention under review. 🟢 Pitched at proactive, risk-aware adults: explicit dose, titration, cadence, functional (not conventional) reference ranges.
2.11 The target audience is willing to employ lifestyle and behavioral changes as well as follow protocols that may be inconvenient, costly, or require effort. 🟢 Assumes willingness to pursue a compounded prescription, titrate over weeks and run a baseline plus 12-week laboratory panel.
2.12 The document is NOT written for the general population, who are unwilling to employ lifestyle and behavioral changes or follow protocols that may be inconvenient, costly, or require effort. 🟢 Not written for the general population; it presumes prescriber access, compounding-pharmacy sourcing and self-tracked symptom scores.
2.13 Framing, takeaways, and risk/benefit weighting throughout the document reflect this audience, including where an intervention’s signal for the average person differs from its signal for this audience. 🟢 Risk weighting reflects the audience — “Non-response and early discontinuation” is carried at Medium, mirroring the ER’s framing of the practical cost of a months-long trial.
2.14 The document’s own voice frames usage in longevity terms, not “anti-aging” (e.g., “anti-aging clinics”, “anti-aging community”, “anti-aging medicine”). Proper names that contain “anti-aging” (e.g., “American Academy of Anti-Aging Medicine”) are quoted verbatim. 🟢 The term “anti-aging” does not appear; longevity framing is used in the title and at-a-glance.
2.15 The document’s own voice uses formal clinical and scientific terminology, not colloquial or consumer-grade language (e.g., “oral medication” not “pill(s)”; “injection” not “shot”; “adverse event” not “bad reaction”). Direct quotes from sources are exempt. 🟢 Formal register maintained: “immediate-release, compounded”, “gastrointestinal upset”, “liver enzyme elevation”, “adverse” phrasing; no consumer-grade substitutes.

3. Template Integrity

# Description Result Comments
3.1 The following labels and headings on the QRS are fixed and not modified: * Card and section headings: “Protocol”, “Time to effect”, “Benefits”, “Risk & Side Effects”, “Monitoring”, “Qualitative Assessment” * Gate headings: “Contraindications”, “Key Interactions” * Tier labels: “High”, “Medium”, “Low”, “Speculative” * Table column headers in Monitoring: “Marker”, “Target”, “Why” 🟢 All fixed labels intact: “Protocol”, “Time to effect”, “Benefits”, “Risk & Side Effects”, “Monitoring”, “Qualitative Assessment”, “Contraindications”, “Key Interactions”, tier labels High/Medium/Low/Speculative, and Marker/Target/Why.
3.2 All “…” from the [qrs_template] are present in the the QRS. 🟢 Every template span is present, including the indexed expansions marker_1..marker_9 and qualitative_item_1..qualitative_item_6.
3.3 Spans that are not addressed in a checklist item are left unchanged 🟢 Diff of lines 16-410 against the template head/style block is identical apart from the page_title substitution; the non-variable spans website=”evidence_review”, website=”audit” and website=”full_review” are untouched.

4. Formatting

# Description Result Comments
4.1 When the source ER section is empty, the QRS uses the ER’s own empty-state phrasing verbatim. Typical phrasings are “None documented in human trials to date” and “Not formally studied” N/A No source ER section is empty; the ER’s High-benefit tier carries prose rather than empty-state phrasing, and is handled under item 12.5.
4.2 Where the ER presents a bulleted item as “Label: content”, the QRS uses the ER’s bold label verbatim as the cell or row label. 🟢 ER bold labels reused verbatim as cell/row labels: “Standard protocol”, “Best time of day”, “Single versus split dosing”, and every Key Interactions label.
4.3 Labels are not paraphrased, abbreviated, or invented. 🟢 No label is paraphrased, abbreviated or invented; benefit and risk items reuse the ER’s own sub-section headings.
4.4 The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through CSS and bold labels. 🟢 No emoji indicators anywhere; the ER’s 🟩/🟥/🟨 and ⚠️ markers are dropped and tiering is carried by CSS and bold labels.
4.5 The QRS is designed to render on one A4 page. Any section that has more content in the ER than fits the per-section budget is condensed by the LLM, not extended onto a second page. 🟢 Every section is condensed against its ER source rather than transcribed; no content is carried at ER length and no material is appended beyond the template’s section budgets.

5. Metadata

# Description Result Comments
5.1 The metadata is placed inside a single HTML comment that is the first element after “<!doctype html>” and before any other comment, head, or body content. 🟢 The metadata comment opens at line 2, immediately after <!doctype html> and before any other comment, head or body content.
5.2 Inside that HTML comment the YAML block is delimited by a line “—” opening and a line “—” closing. Text before the opening “—” is permitted but is not parsed as YAML. 🟢 YAML is delimited by “—” at line 3 and “—” at line 13; the preceding title text on line 2 sits outside the block.
5.3 The metadata is not visible in any rendered view of the QRS and is not surfaced by any other element on the sheet. 🟢 Wrapped in an HTML comment, so it does not render and is not echoed by any element on the sheet.
5.4 All frontmatter values are trimmed: no leading or trailing whitespace, no surrounding quotes unless the value contains a colon, bracket, or leading special character that requires YAML quoting. 🟢 All values trimmed; only duration is quoted, correctly, because “00:04” contains a colon.
5.5 The filename of the source ER is stated as “er_filename: [er_filename]” 🟢 “er_filename: low_dose_naltrexone_2026-0830-0113_Opus_ER.md” matches the ER’s own filename frontmatter field.
5.6 Version of the QRS.md file used to create the document is stated as “qrs_prompt_version: [Version of QRS.md]” 🟢 “qrs_prompt_version: 26.7.02” matches the version badge at the top of QRS.md.
5.7 Creation date and time of the document is stated as “qrs_creation_date: [YYYY-MMDD-HHMM]” (e.g., 2026-0501-1430) 🟢 “qrs_creation_date: 2026-0830-0522” is in the required YYYY-MMDD-HHMM form.
5.8 The nickname of the AI used to create the document is stated as “qrs_creator_ai_nickname: [qrs_creator_ai_nickname]” 🟢 “qrs_creator_ai_nickname: Opus” is present.
5.9 The nickname of the AI is just a single word model name without version, etc. (e.g., Opus, Sonnet, Grok, Gemini, ChatGPT) 🟢 “Opus” is a single word with no version or qualifier.
5.10 The full name of the AI used to create the document is stated as “qrs_creator_ai_fullname: [qrs_creator_ai_fullname]” 🟢 “qrs_creator_ai_fullname: Opus 5” is present.
5.11 The full name of the AI consists of the [qrs_creator_ai_nickname] and the model version number and no additional qualifier (e.g., Opus 4.6, Sonnet 3.2, Grok 4.5, Gemini 3.1, ChatGPT 5.4) 🟢 “Opus 5” is nickname plus version number with no additional qualifier.
5.12 The filename of the document is stated as “qrs_filename: [filename of this document]” 🟢 “qrs_filename: low_dose_naltrexone_2026-0830-0113_Opus_QRS.html” matches the file on disk.
5.13 All frontmatter values are trimmed: no leading or trailing whitespace, no surrounding quotes unless the value contains a colon, bracket, or leading special character that requires YAML quoting. 🟢 Confirmed across all nine keys — no stray whitespace and no unnecessary quoting.

6. Page Title & Header

# Description Result Comments
6.1 [page_title] is set to the [canonical_topic] of the ER frontmatter followed by “ - Quick Reference Sheet” (e.g., “Intervention - Quick Reference Sheet”). The [canonical_topic] is HTML-entity-encoded as needed (e.g., &amp; for &) 🟢 reads "Low-Dose Naltrexone for Health & Longevity - Quick Reference Sheet", matching canonical_topic with the ampersand entity-encoded.
6.2 [header_topic] is set to the [canonical_topic] of the ER frontmatter, with HTML entities encoded as needed (e.g., &amp; for &) 🟢 header_topic is “Low-Dose Naltrexone for Health & Longevity”, identical to the ER canonical_topic.
6.3 [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] 🟢 header_subline_date is “08/30/2026”, the MM/DD/YYYY rendering of qrs_creation_date 2026-0830-0522.
6.4 [header_subline_model] is set to [qrs_creator_ai_fullname] 🟢 header_subline_model is “Opus 5”, matching qrs_creator_ai_fullname.
6.5 No additional header content appears: no badge, version stamp, AKA / alternate names line, source-AI attribution, audit date, or QRS variant marker. 🟢 Header carries only the template’s title and subline — no badge, version stamp, alternate-names line, audit date or variant marker.

7. At-A-Glance Section

# Description Result Comments
7.1 [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section 🟢 Condenses all four Conclusion paragraphs (ER lines 476-482): what the drug is, the Crohn’s signal, the split fibromyalgia picture, the animal-only lifespan basis, and the safety/opioid-blockade trade-off.
7.2 [at_a_glance] is no longer than 60 words 🟢 59 words, within the 60-word ceiling.
7.3 Every fact in [at_a_glance] is supported by a distinct passage in the ER. 🟢 Each clause maps to a distinct Conclusion passage; “Safety is reassuring” to line 480, “blocked opioid pain relief” to line 480, “worm and mouse work” to line 478.
7.4 It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead 🟢 No acronyms or specialist classifications; “widespread muscle pain” replaces fibromyalgia and “the body’s own opioid signals” replaces endogenous opioid terminology.
7.5 It DOES NOT cite specific trials (names, years, sample sizes, p-values) 🟢 No trial names, years, sample sizes or p-values.
7.6 It DOES NOT cite effect sizes, relative risks, or statistical results 🟢 No effect sizes, risk ratios or statistical results.

8. Contraindications

# Description Result Comments
8.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 All six items derive from the ER’s “Populations who should avoid Low-Dose Naltrexone” list within Key Interactions & Contraindications (lines 327-332).
8.2 [stop_items] represent the Contraindications from the ER 🟢 All six ER avoid-list entries are represented, with none added or dropped.
8.3 Individual [stop_items] are formatted as <li></li> 🟢 Each item is a discrete <li></li> inside the stop_items span.
8.4 Items are as concise as possible. No trailing explanations, no elaborations, no mechanistic rationale, no attributions, no citations, no study details. No content after an em-dash, en-dash, or hyphen-dash (e.g., “— dose reduction required”, “— reduced efficacy”) — these trailing clauses are stripped. Just the key fact. 🟢 Trailing rationale is stripped — e.g. the ER’s “Pregnancy and breastfeeding, where no controlled human data exist” is reduced to “Pregnancy and breastfeeding”; no dash-clauses remain.
8.5 Parenthetical qualifiers from the ER bullet — time windows, severity classes, threshold values, clinical staging — ARE preserved as part of the item, kept as concise as possible (shortened or trimmed where needed to fit the one-page budget, but never dropped entirely). 🟢 Qualifiers preserved: the 7-10 day window, Child-Pugh Class C, the 72-hour surgical window, and the eGFR below 30 mL/min/1.73 m2 threshold.
8.6 When the ER uses ranking notation inside parens (e.g., “>” for severity ordering) that depends on an explanatory phrase to interpret, normalize the items to a plain comma-separated list rather than carrying through the bare symbol. N/A The ER’s avoid-list uses no parenthetical ranking notation.
8.7 The section is left empty ONLY IF the ER’s Key Interactions & Contraindications section identifies no population, condition, or scenario for which the intervention should be avoided, deferred, or used only under specialist supervision. 🟢 The section is populated, and the ER does name populations that should avoid the intervention, so the empty-section condition is not engaged.
8.8 If the section is left empty, an HTML comment inside the [stop_items] span records the ER basis for the absence, naming or quoting the ER text relied on. E.g. N/A The section is not empty, so no explanatory HTML comment is required.

9. Key Interactions

# Description Result Comments
9.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 All seven items derive from the ER Key Interactions & Contraindications bullets (lines 307-323).
9.2 [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications 🟢 The three ER entries that are also contraindications — opioid analgesics, kratom, disulfiram — are correctly excluded here and carried only in the Contraindications gate.
9.3 Individual [caution_items] are formatted as <li></li> 🟢 Each item is a discrete <li></li> inside the caution_items span.
9.4 Items are as concise as possible. No trailing explanations, no elaborations, no mechanistic rationale, no attributions, no citations, no study details. No content after an em-dash, en-dash, or hyphen-dash (e.g., “— dose reduction required”, “— reduced efficacy”) — these trailing clauses are stripped. Just the key fact. 🟢 Consequence and mitigation clauses are stripped throughout; no dash-trailed explanations remain.
9.5 Parenthetical qualifiers from the ER bullet — example drug lists, time windows, severity classes, threshold values, clinical staging — ARE preserved as part of the item, kept as concise as possible (shortened or trimmed where needed to fit the one-page budget, but never dropped entirely). 🟢 Named example drugs preserved: loperamide and codeine-containing products, levothyroxine and desiccated thyroid, melatonin and magnesium, palmitoylethanolamide, curcumin and long-chain omega-3 fatty acids.
9.6 When the ER uses ranking notation inside parens (e.g., “>” for severity ordering) that depends on an explanatory phrase to interpret, normalize the items to a plain comma-separated list rather than carrying through the bare symbol. N/A The ER’s interaction bullets use no parenthetical ranking notation.
9.7 The section is left empty ONLY IF the ER’s Key Interactions & Contraindications section identifies no interaction, additive effect, or exposure that changes how the intervention is used. 🟢 The section is populated, and the ER does identify interactions and additive effects, so the empty-section condition is not engaged.
9.8 If the section is left empty, an HTML comment inside the [caution_items] span records the ER basis for the absence, naming or quoting the ER text relied on. E.g. N/A The section is not empty, so no explanatory HTML comment is required.

10. Protocol

# Description Result Comments
10.1 The section is derived from the ER Protocol section 🟢 All three cells derive from the ER Therapeutic Protocol section (lines 354, 360, 364).
10.2 The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section 🟢 The three chosen aspects — dose and titration, timing of the daily dose, and single versus split administration — are the ER’s actionable protocol decisions; the remaining bullets are historical, pharmacokinetic or modifier content.
10.3 If less that three distinct actionable implementation aspects are mentioned in the ER the unused sets are left empty and made invisible, not filled with placeholder text or empty-state phrasing. N/A The ER Therapeutic Protocol section supplies eleven bullets, well above three distinct actionable aspects, so no set is unused.
10.4 All used [action_#label], [action#value], [action#_sub] items are filled with meaningful content derived from the ER Protocol section. 🟢 All nine action fields carry substantive ER-derived content; no placeholders remain.

11. Time to Effect

# Description Result Comments
11.1 The three sets of [time] items cover the three most important time-to-effect aspects from the ER 🟢 The three cells cover the ER’s complete time-to-effect statement (line 407): up to six months in autoimmune conditions, the 8-12 week trial window, and change within days.
11.2 The sets are picked and ordered by the magnitude of the related benefit 🟢 Ordered by benefit magnitude — the autoimmune cell fronts the ER’s only Medium-tier benefit (Crohn’s disease), followed by the general trial window and then the earliest pharmacological sign.
11.3 If less that three distinct time-to-effect aspects are mentioned in the ER the unused sets are left empty and made invisible, not filled with placeholder text or empty-state phrasing. N/A The ER supplies three distinct time-to-effect aspects, so no set is unused.
11.4 All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. 🟢 All nine time fields carry substantive ER-derived content; no placeholders remain.
11.5 If the ER does not provide any information on time to effect, the section is removed completely from the Protocol Panel N/A The ER does provide time-to-effect information, so the section is correctly retained.

12. Benefits

# Description Result Comments
12.1 The section is derived from the ER Expected Benefits section 🟢 All ten items derive from the ER Expected Benefits sub-section headings (lines 159-215).
12.2 Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] 🟢 All four benefit spans are present and correctly tiered against the ER.
12.3 Items are as concise as possible. No explanations, no elaborations, no effect sizes, no qualifiers, no attributions, no citations, no study details, no mechanistic explanations, etc. Just the key fact. 🟢 Items are reduced to bare outcome statements; no magnitudes, confidence intervals, trial counts or mechanisms are carried across.
12.4 Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 The ER’s parenthetical glosses (e.g. “a limb pain disorder that follows injury”, “a rare blistering skin disorder”) are stripped.
12.5 If no items of a specific sub-section (high, medium, low, speculative) are present the respective is set to “display=none”, not filled with “None documented in human trials to date” or similar empty-state phrasing. 🟢 The ER states “No benefit reaches High” (line 155), and benefits_high is correctly emptied and set to style=”display: none” rather than filled with empty-state text.

13. Risks

# Description Result Comments
13.1 The section is derived from the ER Potential Risks & Side Effects section 🟢 All eight items derive from the ER Potential Risks & Side Effects sub-section headings (lines 237-287).
13.2 Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] 🟢 All four risk spans are present and correctly tiered against the ER.
13.3 Items are as concise as possible. No explanations, no elaborations, no effect sizes, no qualifiers, no attributions, no citations, no study details, no mechanistic explanations, etc. Just the key fact. 🟢 Items are reduced to bare risk statements; incidence ratios, confidence intervals and mechanisms are dropped.
13.4 Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parenthetical frequencies, severity grades or study notes are carried across.
13.5 If no items of a specific sub-section (high, medium, low, speculative) are present the respective is set to “display=none”, not filled with “None documented in human trials to date” or similar empty-state phrasing. N/A All four risk tiers carry at least one ER item, so the empty sub-section condition does not arise.

14. Monitoring

# Description Result Comments
14.1 The section is derived from the ER Monitoring section 🟢 Derived from the ER Monitoring Protocol & Defining Success section (lines 431-445).
14.2 All measurable/quantifiable biomarkers from the Monitoring section are listed 🟢 All nine biomarkers from the ER table are listed in ER order — ALT, AST, hs-CRP, ESR, TSH, Free T4, urine opioid screen, fasting insulin and symptom score — with targets and rationales carried faithfully.
14.3 [monitoring_cadence] is populated with the monitoring cadence/frequency derived from the ER Monitoring section. It is not left with placeholder text or empty. 🟢 monitoring_cadence reproduces the ER’s schedule: baseline work-up, liver enzymes and inflammatory marker at 12 weeks then annually, thyroid function every 6-12 weeks on replacement, symptom scores at 4 and 12 weeks.

15. Qualitative Assessment

# Description Result Comments
15.1 The section is derived from the ER Monitoring section 🟢 Derived from the ER’s qualitative-marker list inside Monitoring Protocol & Defining Success (lines 449-454).
15.2 All subjective/qualitative biomarkers from the Monitoring section are listed 🟢 All six qualitative markers are listed verbatim — dream intensity, sleep-onset latency and night wakings, morning stiffness, mental clarity, afternoon energy and recovery, and the monthly overall impression.

Issues 30/08/2026 05:36

Pass rate 100.00%. No issues found.

Issues 30/08/2026 05:27

  1. 4.3 — Time cell label repeats subhead: time_2_label at line 511 is “Time to effect”, duplicating the section subhead at line 492 instead of naming the distinct aspect the cell covers, so the three time cells (“Autoimmune conditions”, “Time to effect”, “Earliest change”) are not parallel aspect labels.

Fixes 30/08/2026 05:27

  1. 4.3 — Time cell label repeats subhead: Renamed time_2_label from “Time to effect” to “Standard trial period”, so the three time cells now carry parallel aspect labels (“Autoimmune conditions”, “Standard trial period”, “Earliest change”) instead of one repeating the section subhead.