Audit: QRS - Low-Level Light Therapy for Post-Training Recovery

Audit conducted on 03/10/2026 17:51 using AI4L / Opus 5.5

Iterations

Summary

Items Count
Total 94
Passed 87
Failed 0
N/A 7
Pass Rate 100.00%
  • Total = Passed + Failed + N/A
  • Pass Rate = Passed / (Passed + Failed) × 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. 🟢 Lede maps to Conclusion; protocol cells to Therapeutic Protocol (wavelength, Vanin 2018 doses, timing, “within about 30 minutes”, “one session per muscle group per workout”); time cells to Practical Considerations and the Zhao 2012 sleep benefit; tiers, gates and monitoring rows match ER sections.
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. 🟢 “(theoretical)” and “(theoretical; no human data)” carried over on every gate item where the ER uses them.
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”). 🟢 Severity words (Caution / Monitor) match ER exactly; lede keeps “modest and inconsistent” and “less certain than its popularity suggests”.
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. 🟢 Gates drawn only from Key Interactions & Contraindications; tiers from Expected Benefits / Potential Risks.
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. 🟢 None present.
1.6 The QRS does not introduce new attributions. 🟢 No attributions.

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. 🟢  
2.2 The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging 🟢  
2.3 The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor 🟢  
2.4 The QRS avoids language that implies medical or clinical advice 🟢  
2.5 The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” 🟢  
2.6 The QRS never addresses “the reader” directly — it presents evidence, not guidance 🟢  
2.7 The QRS is written in plain language, avoiding unnecessary medical jargon 🟢 Technical terms limited to named drugs and laser class thresholds needed for gate decisions.
2.8 Information is presented in a concise and very compact manner 🟢  
2.9 It DOES NOT address the reader directly 🟢  
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. 🟢  
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. 🟢  
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. 🟢  
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. 🟢 Training-status caveat surfaced in time_3_sub (“only in untrained or moderately trained young men”).
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. 🟢 No “anti-aging” used.
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)”; “oral” / “administered orally” not “taken by mouth” / “given by mouth”; “injection” not “shot”; “adverse event” not “bad reaction”). This holds on EVERY surface, including the QRS lede — the stricter plain-language bar (see 2.7) does not license lay phrasing for route of administration. Direct quotes from sources are exempt. 🟢  

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” 🟢  
3.2 All “…” from the [qrs_template] are present in the the QRS. 🟢 All template spans present; marker_# and qualitative_item_# expanded to numbered rows.
3.3 Spans that are not addressed in a checklist item are left unchanged 🟢 website spans and head/CSS identical to template (diff checked).

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” 🟢 Empty ER tiers (Benefits High/Low, Risks High/Medium) hidden via display:none as 12.5/13.5 require; no other empty ER section.
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. 🟢 Protocol labels “Wavelength”, “Local dose per muscle group”, “Timing” and all interaction labels verbatim.
4.3 Labels are not paraphrased, abbreviated, or invented. 🟢  
4.4 The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through 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. 🟢  

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. 🟢  
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. 🟢  
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. 🟢  
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. 🟢 Only duration: "00:00" is quoted (contains colon).
5.5 The filename of the source ER is stated as “er_filename: [er_filename]” 🟢  
5.6 Version of the QRS.md file used to create the document is stated as “qrs_prompt_version: [Version of QRS.md]” 🟢 26.10.1
5.7 Creation date and time of the document is stated as “qrs_creation_date: [YYYY-MMDD-HHMM]” (e.g., 2026-0501-1430) 🟢 2026-1003-1743
5.8 The nickname of the AI used to create the document is stated as “qrs_creator_ai_nickname: [qrs_creator_ai_nickname]” 🟢  
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
5.10 The full name of the AI used to create the document is stated as “qrs_creator_ai_fullname: [qrs_creator_ai_fullname]” 🟢  
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.5
5.12 The filename of the document is stated as “qrs_filename: [filename of this document]” 🟢  
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. 🟢  

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 &) 🟢  
6.2 [header_topic] is set to the [canonical_topic] of the ER frontmatter, with HTML entities encoded as needed (e.g., &amp; for &) 🟢  
6.3 [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] 🟢 10/03/2026
6.4 [header_subline_model] is set to [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. 🟢  

7. At-A-Glance Section

# Description Result Comments
7.1 [at_a_glance] opens by saying what the intervention is — its kind (e.g., dietary supplement, prescription medication, peptide, plant, procedure, practice) — and what it is used for, in plain language, before any verdict on the evidence 🟢 “a procedure that shines red or invisible infrared light … an add-on tool for recovering from hard training”.
7.2 [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section 🟢  
7.3 [at_a_glance] is no longer than 70 words 🟢 69 words.
7.4 Every fact in [at_a_glance] is supported by a distinct passage in the ER. 🟢  
7.5 It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead 🟢  
7.6 It DOES NOT cite specific trials (names, years, sample sizes, p-values) 🟢  
7.7 It DOES NOT cite effect sizes, relative risks, or statistical results 🟢  

8. Contraindications

# Description Result Comments
8.1 The section is derived from the ER Key Interactions & Contraindications section 🟢  
8.2 [stop_items] represent the Contraindications from the ER 🟢 All six “Populations who should avoid” items present.
8.3 Individual [stop_items] are formatted as <li></li> 🟢  
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. 🟢 Citations (Glass 2023, NCT06403644, FDA, Visudyne label) stripped.
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). 🟢 “5 days after verteporfin”, “Class IIIb or higher”, “(theoretical)” preserved.
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 ER uses no 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. 🟢 Section populated; ER names avoiding populations.
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 Section not empty.

9. Key Interactions

# Description Result Comments
9.1 The section is derived from the ER Key Interactions & Contraindications section 🟢  
9.2 [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications 🟢 Seven of eight ER interactions; photodynamic drugs correctly excluded (already a contraindication).
9.3 Individual [caution_items] are formatted as <li></li> 🟢  
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. 🟢  
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). 🟢 Example drug lists and “vitamin C 1 g or more” threshold preserved.
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 ER uses no 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. 🟢 Section populated.
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 Section not empty.

10. Protocol

# Description Result Comments
10.1 The section is derived from the ER Protocol section 🟢  
10.2 The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section 🟢 Wavelength, local dose, timing.
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 ER provides more than three aspects.
10.4 All used [action_#label], [action#value], [action#_sub] items are filled with meaningful content derived from the ER Protocol section. 🟢  

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 🟢 Recovery 24–96 hours, sleep over 14 nights, training adaptation 8–12 weeks.
11.2 The sets are picked and ordered by the magnitude of the related benefit 🟢 Core recovery benefits first; not-central training adaptation last.
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 Three aspects available.
11.4 All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. 🟢  
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 ER provides time-to-effect information.

12. Benefits

# Description Result Comments
12.1 The section is derived from the ER Expected Benefits section 🟢  
12.2 Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] 🟢  
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. 🟢  
12.4 Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢  
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. 🟢 High and Low hidden.

13. Risks

# Description Result Comments
13.1 The section is derived from the ER Potential Risks & Side Effects section 🟢  
13.2 Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] 🟢  
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. 🟢  
13.4 Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢  
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. 🟢 High and Medium hidden.

14. Monitoring

# Description Result Comments
14.1 The section is derived from the ER Monitoring section 🟢  
14.2 All measurable/quantifiable biomarkers from the Monitoring section are listed 🟢 CK, countermovement jump, strength test.
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. 🟢  

15. Qualitative Assessment

# Description Result Comments
15.1 The section is derived from the ER Monitoring section 🟢  
15.2 All subjective/qualitative biomarkers from the Monitoring section are listed 🟢 All four qualitative markers listed.

Issues 03/10/2026 17:51

Pass rate 100.00%. No issues found.

Issues 03/10/2026 17:49

  1. 2.7 — Unexplained units and jargon: Protocol values use unexpanded unit abbreviations “nm” (line 447) and “J” (line 458), and Monitoring marker names use “Countermovement jump height” (line 613) and “isometric pull or repetition-maximum lift” (line 624) without the plain explanations given in the ER (ER line 366).

Fixes 03/10/2026 17:49

  1. 2.7 — Expanded units and jargon: Changed protocol values from “655–950 nm” to “655–950 nanometers” and from “J” to “joules”; added the ER’s plain explanations to the countermovement jump and strength test marker names (standing vertical jump with a quick dip; static pull against fixed resistance, or heaviest load lifted for set repetitions).

Issues 03/10/2026 17:45

  1. 2.13 — Training-status signal not reflected: time_3_sub (line 511) states “Strength gains with light applied around sessions” generically, although the ER says gains appear only in untrained or moderately trained young men and pooled data show no benefit in moderately active people.
  2. 9.4 — Rationale parenthetical on Statins: The Statins item (line 556) carries “(confounded creatine kinase tracking)”, an explanatory rationale rather than a qualifier.
  3. 9.5 — Drug-class qualifiers dropped: The Photosensitizing prescription drugs item (line 555) drops the ER classes “tetracycline antibiotics” and “fluoroquinolone antibiotics”, narrowing the gate to doxycycline and ciprofloxacin alone.

Fixes 03/10/2026 17:45

  1. 2.13 — Training-status signal added: Changed time_3_sub from “Strength gains with light applied around sessions” to “Strength gains only in untrained or moderately trained young men”, per the ER Expected Benefits net statement.
  2. 9.4 — Statins rationale removed: Removed the explanatory parenthetical “(confounded creatine kinase tracking)” from the Statins item, leaving “Monitor”.
  3. 9.5 — Drug-class qualifiers restored: Restored “tetracycline antibiotics such as” doxycycline and “fluoroquinolone antibiotics such as” ciprofloxacin in the Photosensitizing prescription drugs list.