Audit: QRS - Pirfenidone to Treat Cancer

Audit conducted on 07/09/2026 09:11 using AI4L / Opus 5

Iterations

Summary

Items Count
Total 93
Passed 86
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. 🟢 Spot-checked every populated span against the ER: protocol doses (ER 353-357), gate items (ER 303-329), tiers (ER 155-199, 223-281), markers (ER 440-449) all literally supported.
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. 🟢 ER hedges carried through: ‘No established target’ (marker 5), ‘or stable against own baseline’ (markers 8-9), ‘Nothing within days’ (time 3).
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; ‘Speculative’ tier claims stay speculative, contraindications stay absolute.
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. 🟢 Gate items come only from ER ‘Key Interactions & Contraindications’; no Benefit- or Risk-Modifying Factor was promoted into a gate.
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 PMIDs, NCT numbers, author names, or brand 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. 🟢 Matches the ER’s measured, cost-forward framing.
2.2 The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging 🟢 Expert and objective; tier labels carry the evidence weighting.
2.3 The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor 🟢 Descriptive throughout; no prescriptive instructions.
2.4 The QRS avoids language that implies medical or clinical advice 🟢 Presents protocol regimens and monitoring cadence as observed practice, not as advice.
2.5 The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” 🟢 No ‘recommend’, ‘advise’, or ‘should’ constructions.
2.6 The QRS never addresses “the reader” directly — it presents evidence, not guidance 🟢 No second-person address anywhere in the sheet.
2.7 The QRS is written in plain language, avoiding unnecessary medical jargon 🟢 Technical terms are limited to biomarker, enzyme and drug names required for identification.
2.8 Information is presented in a concise and very compact manner 🟢 Compact; gate items and tier lists are single-clause.
2.9 It DOES NOT address the reader directly 🟢 No ‘you’/’your’ in any span.
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 suits a proactive, risk-aware reader weighing an off-label repurposed drug.
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. 🟢 Protocol, titration and monitoring burden are presented without simplification.
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 pitched at a general-population reader.
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. 🟢 Benefit/risk weighting mirrors the ER: protective signal foregrounded, anti-tumour claim marked speculative.
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’ language present.
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 in the document’s own voice (e.g. ‘Gastrointestinal intolerance’, ‘photosensitivity’, ‘adverse effect’).

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, gate headings, tier labels and Marker/Target/Why column headers are byte-identical to the template.
3.2 All “” from the [qrs_template] are present in the the QRS. 🟢 Diff against [qrs_template] confirms all 34 named spans present; marker_#* and qualitative_item# correctly expanded to marker_1..10_* and qualitative_item_1..6.
3.3 Spans that are not addressed in a checklist item are left unchanged 🟢 Full-file diff against the template shows only variable spans changed; CSS, structure, footer and comments 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 ER section that maps into the QRS is empty; condition does not apply.
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: ‘Standard antifibrotic dosing’, ‘Reduced-dose radiation-injury regimen’, ‘Perioperative schedule’, ‘Moderate CYP1A2 inhibitors (ciprofloxacin, enoxacin)’, etc.
4.3 Labels are not paraphrased, abbreviated, or invented. 🟢 No paraphrased or invented labels.
4.4 The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through CSS and bold labels. 🟢 No emoji present; the ER’s tier emoji and the ‘⚠️ Conflicted’ markers were correctly stripped.
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 volume (5 stop items, 9 caution items, 4 tier lines, 10 marker rows, 6 qualitative items) fits the one-page budget.

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 opens on line 2, immediately after <!doctype html>.
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 opened at line 3 and closed at line 13 inside the comment.
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 an HTML comment; not surfaced by any rendered element.
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: “00:03”’ is quoted, correctly, because it contains a colon.
5.5 The filename of the source ER is stated as “er_filename: [er_filename]” 🟢 er_filename: pirfenidone_cancer_2026-0907-0603_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.7.02, matching the QRS.md version badge.
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-0907-0854, correct 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
5.9 The nickname of the AI is just a single word model name without version, etc. (e.g., Opus, Sonnet, Grok, Gemini, ChatGPT) 🟢 Single word, no version.
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
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) 🟢 Nickname plus version number, with the ‘(1M context)’ qualifier correctly omitted.
5.12 The filename of the document is stated as “qrs_filename: [filename of this document]” 🟢 qrs_filename 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. 🟢 Same as 5.4; no stray whitespace or 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 &) 🟢 Pirfenidone to Treat Cancer - Quick Reference Sheet; no entity encoding needed.
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 = ‘Pirfenidone to Treat Cancer’, matching the ER canonical_topic.
6.3 [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] 🟢 09/07/2026, correct MM/DD/YYYY rendering of qrs_creation_date 2026-0907.
6.4 [header_subline_model] is set to [qrs_creator_ai_fullname] 🟢 header_subline_model = ‘Opus 5’.
6.5 No additional header content appears: no badge, version stamp, AKA / alternate names line, source-AI attribution, audit date, or QRS variant marker. 🟢 Subline is the unmodified template line; no badge, AKA line, or variant marker added.

7. At-A-Glance Section

# Description Result Comments
7.1 [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section 🟢 Distils the ER Conclusion (ER 486-492) into a decision-oriented paragraph.
7.2 [at_a_glance] is no longer than 60 words 🟢 58 words, counted by script.
7.3 Every fact in [at_a_glance] is supported by a distinct passage in the ER. 🟢 Each clause traces to a distinct Conclusion passage: scar-suppressing medicine, protective-not-antitumour signal, oxygen passage, flare-ups and deaths, laboratory-only tumour claim, no life lengthened, dependable costs.
7.4 It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead 🟢 No acronyms; plain-language substitutes used throughout (‘scar-suppressing’, ‘oxygen passage’, ‘liver enzyme rises’).
7.5 It DOES NOT cite specific trials (names, years, sample sizes, p-values) 🟢 No trial names, years, or sample sizes.
7.6 It DOES NOT cite effect sizes, relative risks, or statistical results 🟢 No effect sizes, risk ratios, or p-values.

8. Contraindications

# Description Result Comments
8.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 Drawn from the ER ‘Populations who should avoid Pirfenidone’ list (ER 323-329).
8.2 [stop_items] represent the Contraindications from the ER 🟢 All five ER contraindications represented, one-to-one.
8.3 Individual [stop_items] are formatted as <li></li> 🟢 Five <li> elements 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 stripped, e.g. ER ‘Pregnancy and breastfeeding, on the basis of animal reproductive toxicity and absent human data’ → ‘Pregnancy and breastfeeding’.
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). 🟢 ‘(Child-Pugh Class C)’ and ‘(creatinine clearance below 30 mL/min)’ preserved; only the explanatory gloss was trimmed.
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. 🟢 No ranking notation in the ER contraindication list; items already read as plain lists.
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 is populated, and the ER does identify populations to avoid the drug.
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 is not empty (5 contraindications listed); condition does not apply.

9. Key Interactions

# Description Result Comments
9.1 The section is derived from the ER Key Interactions & Contraindications section 🟢 Drawn from the ER ‘Key Interactions & Contraindications’ bullets (ER 303-321).
9.2 [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications 🟢 Nine of the ten ER interaction bullets carried over; ‘Strong CYP1A2 inhibitors (fluvoxamine)’ correctly excluded because it is an absolute contraindication already in [stop_items].
9.3 Individual [caution_items] are formatted as <li></li> 🟢 Nine <li> elements 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. 🟢 Mechanistic rationale and mitigation clauses stripped; only label plus example drugs retained.
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 preserved, including those pulled from bullet bodies (indole-3-carbinol/diindolylmethane/St. John’s wort; N-acetylcysteine/curcumin/silymarin; thoracic radiotherapy/checkpoint immunotherapy).
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. 🟢 No ranking notation present in the ER interaction parentheticals.
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 is populated, and the ER does identify interactions.
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 is not empty (9 interactions listed); condition does not apply.

10. Protocol

# Description Result Comments
10.1 The section is derived from the ER Protocol section 🟢 Derived from the ER ‘Therapeutic Protocol’ section (ER 353-357).
10.2 The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section 🟢 The three dosing regimens — licensed antifibrotic, reduced-dose radiation-injury, perioperative — are the actionable core of the ER protocol.
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 distinct actionable aspects exist in the ER Therapeutic Protocol; all three 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 nine action spans carry ER-derived content; doses (801 mg TID / 2403 mg per day, 200→300→400 mg TID, 600→1200 mg daily) match the ER exactly.

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 🟢 Covers the three time-to-effect facts the ER states (ER 408): 24-week endpoint, at least two weeks before surgery, and no effect within days.
11.2 The sets are picked and ordered by the magnitude of the related benefit 🟢 Ordered to match the ER’s Medium-benefit order — gas-transfer recovery first, perioperative flare prevention second, general onset 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 distinct time-to-effect aspects exist in the ER; all three sets used.
11.4 All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. 🟢 All nine time spans carry ER-derived content.
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 provides time-to-effect information (Practical Considerations); section retained.

12. Benefits

# Description Result Comments
12.1 The section is derived from the ER Expected Benefits section 🟢 Derived from the ER ‘Expected Benefits’ section (ER 155-199).
12.2 Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] 🟢 All four tier spans present and correctly named.
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. 🟢 Only the ER benefit headings are carried; magnitudes, confidence intervals and study details dropped.
12.4 Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parenthetical content carried over.
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 carries style=”display: none” with empty content, matching the ER’s ‘No benefit reaches High’; no empty-state phrasing used.

13. Risks

# Description Result Comments
13.1 The section is derived from the ER Potential Risks & Side Effects section 🟢 Derived from the ER ‘Potential Risks & Side Effects’ section (ER 223-281).
13.2 Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] 🟢 All four tier spans present and correctly named.
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. 🟢 Only the ER risk headings are carried; incidence figures and grades dropped.
13.4 Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. 🟢 No parenthetical content carried over.
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 have items in the ER; condition does not apply.

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 (ER 436-449).
14.2 All measurable/quantifiable biomarkers from the Monitoring section are listed 🟢 All ten ER biomarkers listed, with targets and rationales matching the ER table rows.
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. 🟢 Cadence span carries the ER’s monitoring schedule (ER 436), including the reset-on-dose-change clause.

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 (ER 453-458).
15.2 All subjective/qualitative biomarkers from the Monitoring section are listed 🟢 All six ER qualitative markers listed, in ER order.

Issues 07/09/2026 09:11

Pass rate 100.00%. No issues found.

Issues 07/09/2026 09:04

  1. 1.1 / 7.3 — At-a-glance overstates absence of tumour shrinkage: The at-a-glance says “Tumour shrinkage remains laboratory work” (line 434), but the ER Conclusion (line 490) limits that to “the anti-tumour claim itself” and records human nerve-sheath tumour shrinkage — which the QRS itself lists under Benefits (Low).

Fixes 07/09/2026 09:04

  1. 1.1 / 7.3 — At-a-glance tumour-shrinkage claim: Changed “Tumour shrinkage remains laboratory work” to “The tumour-killing claim itself remains laboratory work”, matching the ER Conclusion and removing the contradiction with the QRS’s own Benefits (Low) entry on nerve-sheath tumour volume reduction.

Issues 07/09/2026 08:59

  1. 12.3 / 12.4 — Conflicted qualifier not stripped: [benefits_low] (lines 549–550) preserves the parenthetical qualifier “(conflicted)” on both items — “Lower lung cancer incidence in progressive lung scarring (conflicted); volume reduction in fibrous nerve-sheath tumours (conflicted)” — where section 12 requires parenthetical content and evidence-strength qualifiers to be stripped because the Low tier already encodes them.

Fixes 07/09/2026 08:59

  1. 12.3 / 12.4 — Conflicted qualifier stripped: Removed the “(conflicted)” parenthetical from both [benefits_low] items, leaving “Lower lung cancer incidence in progressive lung scarring; volume reduction in fibrous nerve-sheath tumours”.