Audit: QRS - Topical NMN for Skin Rejuvenation

Audit conducted on 29/06/2026 13:34 using AI4L / Opus 4.8

Iterations

Summary

Items Count
Total 91
Passed 83
Failed 0
N/A 8
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. 🟢 All QRS content traces to ER passages.
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 concerns extrapolated from systemic NMN”, “Uncertain stability”, “Not established for clinical use” mirror ER.
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 detected.
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 preserved; interactions stay interactions, risks stay 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. 🟢 QRS carries no citations, IDs, or names.
1.6 The QRS does not introduce new attributions. 🟢 No attributions 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. 🟢 Objective, cautious tone consistent with ER.
2.2 The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging 🟢 Tone meets the standard.
2.3 The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor 🟢 Presents evidence, not orders.
2.4 The QRS avoids language that implies medical or clinical advice 🟢 No clinical-advice phrasing.
2.5 The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” 🟢 Information-presenting voice throughout.
2.6 The QRS never addresses “the reader” directly — it presents evidence, not guidance 🟢 No direct address.
2.7 The QRS is written in plain language, avoiding unnecessary medical jargon 🟢 Plain language used; technical terms minimal.
2.8 Information is presented in a concise and very compact manner 🟢 Compact card layout.
2.9 It DOES NOT address the reader directly 🟢 No second-person address.
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. 🟢 Framing fits this audience.
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. 🟢 Consistent with audience.
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 general-population framing.
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. 🟢 Weighting reflects audience.
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” in QRS voice.
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 terminology used.

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 headings/labels intact.
3.2 All “” from the [qrs_template] are present in the the QRS. 🟢 All template var spans present.
3.3 Spans that are not addressed in a checklist item are left unchanged 🟢 Untouched spans preserved.

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 High/Medium benefit and High risk tiers set to display:none, not given empty-state text.
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/action labels match ER intent; tier labels verbatim.
4.3 Labels are not paraphrased, abbreviated, or invented. 🟢 Labels faithful.
4.4 The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through CSS and bold labels. 🟢 No emoji indicators in QRS.
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. 🟢 Content condensed to one 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. 🟢 Metadata comment is first element after doctype (lines 2-14).
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 delimited by — at lines 3 and 13.
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. 🟢 Inside HTML comment; not rendered.
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. 🟢 Values trimmed; duration quoted (contains colon).
5.5 The filename of the source ER is stated as “er_filename: [er_filename]” 🟢 er_filename: topical_nmn_skin_2026-0629-1112_Opus_ER.md.
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.5.18.
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-0629-1112.
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.
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” — single word.
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 4.8.
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 4.8” — nickname + version.
5.12 The filename of the document is stated as “qrs_filename: [filename of this document]” 🟢 qrs_filename: topical_nmn_skin_2026-0629-1112_Opus_QRS.html.
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. 🟢 All values clean.

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 &) 🟢 “Topical NMN for Skin Rejuvenation - Quick Reference Sheet”.
6.2 [header_topic] is set to the [canonical_topic] of the ER frontmatter, with HTML entities encoded as needed (e.g., &amp; for &) 🟢 “Topical NMN for Skin Rejuvenation”.
6.3 [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] 🟢 06/29/2026 matches creation date.
6.4 [header_subline_model] is set to [qrs_creator_ai_fullname] 🟢 “Opus 4.8”.
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 clean.

7. At-A-Glance Section

# Description Result Comments
7.1 [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section 🟢 Distills Conclusion: refill cellular fuel, cell/animal promise, no human proof, low-risk, uncertain value.
7.2 [at_a_glance] is no longer than 60 words 🟢 59 words.
7.3 Every fact in [at_a_glance] is supported by a distinct passage in the ER. 🟢 Each clause maps to a Conclusion passage.
7.4 It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead 🟢 “cellular fuel”, “skin barrier” — plain language; NMN is the named intervention.
7.5 It DOES NOT cite specific trials (names, years, sample sizes, p-values) 🟢 No trials cited.
7.6 It DOES NOT cite effect sizes, relative risks, or statistical results 🟢 No statistics.

8. Contraindications

# Description Result Comments
8.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 Section sourced from ER Key Interactions & Contraindications.
8.2 [stop_items] represent the Contraindications from the ER 🟢 ER states “no established contraindicated population for a cosmetic topical”; no true contraindications exist.
8.3 Individual [stop_items] are formatted as <li></li> N/A No stop_items present (span empty), so no <li> formatting required.
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. N/A No stop_items present.
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). N/A No stop_items present.
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 No stop_items with ranking notation.
8.7 If no [stop_items] are present the section is left empty 🟢 stop_items span is empty.

9. Key Interactions

# Description Result Comments
9.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 All caution items trace to ER Key Interactions & Contraindications.
9.2 [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications 🟢 Retinoids, exfoliating acids, oral NAD+ precursors, topical nicotinamide, antioxidants, barrier procedures, avoid-populations all from ER; none duplicated as contraindications.
9.3 Individual [caution_items] are formatted as <li></li> 🟢 Each caution item is an <li> (lines 547-553).
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. 🟢 Items concise, no trailing dashes or rationale.
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 drugs preserved: (tretinoin, adapalene), (glycolic acid, salicylic acid), (microneedling, chemical peels, laser).
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 in this section.
9.7 If no [caution_items] are present the section is left empty N/A caution_items are present.

10. Protocol

# Description Result Comments
10.1 The section is derived from the ER Protocol section 🟢 Application, timing, and active-separation derive from ER Therapeutic Protocol.
10.2 The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section 🟢 Application (leave-on serum/cream), timing, separation from strong actives.
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 Three actionable aspects present; all sets used.
10.4 All used [action_#label], [action#value], [action#_sub] items are filled with meaningful content derived from the ER Protocol section. 🟢 All three action sets populated with ER-derived content.

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 ER provides a single time-to-effect aspect (“several weeks to months” for visible change), which time_1 captures; the other two sets are correctly left empty per 11.3.
11.2 The sets are picked and ordered by the magnitude of the related benefit 🟢 Only one aspect exists; ordering not applicable beyond the single populated set.
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. 🟢 time_2 and time_3 left empty.
11.4 All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. 🟢 time_1 populated from ER Practical Considerations “Time to effect”.
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 🟢 Benefits drawn from ER Expected Benefits.
12.2 Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] 🟢 All four variables present.
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. 🟢 Low and Speculative items are concise headings without rationale.
12.4 Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parentheticals carried through.
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. 🟢 benefits_high and benefits_medium set to display:none (no items in ER).

13. Risks

# Description Result Comments
13.1 The section is derived from the ER Potential Risks & Side Effects section 🟢 Risks drawn from ER Potential Risks & Side Effects.
13.2 Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] 🟢 All four variables present.
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 condensed to key facts.
13.4 Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parentheticals carried through.
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. 🟢 risks_high set to display:none (no High-grade risk in ER).

14. Monitoring

# Description Result Comments
14.1 The section is derived from the ER Monitoring section 🟢 Markers and cadence sourced from ER Monitoring Protocol.
14.2 All measurable/quantifiable biomarkers from the Monitoring section are listed 🟢 Skin NAD+ content and systemic blood markers both listed, matching ER table.
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. 🟢 “baseline, 4 weeks, 8 weeks, and 12 weeks” matches ER.

15. Qualitative Assessment

# Description Result Comments
15.1 The section is derived from the ER Monitoring section 🟢 Qualitative markers from ER Monitoring “Qualitative markers of response”.
15.2 All subjective/qualitative biomarkers from the Monitoring section are listed 🟢 All five ER qualitative markers listed verbatim.

Issues 29/06/2026 13:34

Pass rate 100.00%. No issues found.

Issues 29/06/2026 13:30

  1. 10.2 — Protocol action items not distinct: action_2 (“Timing” / “No preferred time of day”) and action_3 (“Separate from retinoids” / “Morning under sunscreen; retinoids at night”) both derive from the ER “Best time of day” bullet (line 315) and are not distinct actionable aspects; the two values also conflict (no preferred time vs. morning).
  2. 11.1 — Time-to-effect sets not distinct: time_1 (“Visible change” / “Several weeks to months”) and time_2 (“Defined timeline” / “Unknown for topical NMN”) both restate the single ER time-to-effect fact (Practical Considerations, line 358) rather than covering distinct time-to-effect aspects.

Fixes 29/06/2026 13:30

  1. 10.2 — Protocol actions made distinct: Reworked action_3 from a timing duplicate (“Separate from retinoids” / “Morning under sunscreen; retinoids at night”) into a distinct actionable aspect (“Separate from strong actives” / “Apply at a different time than retinoids or exfoliating acids”), removing the conflict with action_2’s “No preferred time of day”.
  2. 11.1 — Time-to-effect duplicate removed: Emptied time_2 (“Defined timeline” / “Unknown for topical NMN”), which restated the single ER time-to-effect fact already in time_1, leaving only the one distinct aspect populated.

Issues 29/06/2026 13:25

  1. 1.1 / 10.1 — action_3 sourced outside Protocol section: The Protocol action “Separate from strong actives / Apply at a different time of day / From retinoids, exfoliating acids, or benzoyl peroxide to avoid compounding irritation” (QRS lines 466-473) is taken primarily from the ER Risk Mitigation Strategies bullet (ER line 296) rather than the ER Protocol section; only the night-retinoid note in Protocol (ER line 315) partially supports it.

Fixes 29/06/2026 13:25

  1. 1.1 / 10.1 — Protocol action sourced from Protocol section: Re-anchored action_3 to the ER Protocol “best time of day” bullet (ER line 315). Changed label “Separate from strong actives” → “Separate from retinoids”, value “Apply at a different time of day” → “Morning under sunscreen; retinoids at night”, and sub to reflect the Protocol section’s morning-active / night-retinoid wording instead of the Risk Mitigation Strategies bullet.

Issues 29/06/2026 13:22

  1. 12.4 — Parenthetical not stripped: benefits_low (line 528) retains the parenthetical “(wrinkles, roughness, elasticity)” after “reduced photoaging signs”; per 12.4 parenthetical content must be stripped, not preserved.

Fixes 29/06/2026 13:22

  1. 12.4 — Parenthetical not stripped: Removed the parenthetical “(wrinkles, roughness, elasticity)” from benefits_low so the item reads “reduced photoaging signs”.