Audit: QRS - Avoiding Peanuts for Health & Longevity
Audit conducted on 20/09/2026 22:02 using AI4L / Opus 5
Summary
| Items | Count |
|---|---|
| Total | 93 |
| Passed | 83 |
| Failed | 0 |
| N/A | 10 |
| 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 protocol, time, benefit, risk, gate, marker and qualitative content traces to ER lines 143–367. |
| 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. | 🟢 | “No established optimal target; track the fall from the pre-avoidance value” mirrors ER line 358. |
| 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”). | 🟢 | “the only reliable way to stop an immediate reaction” matches ER line 381 strength. |
| 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 draw only from ER Key Interactions & Contraindications; modifying-factor bullets are not surfaced. |
| 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, NCT IDs, expert names or brand names appear in the QRS at all. |
| 1.6 | The QRS does not introduce new attributions. | 🟢 | “a food-industry body” (line 468) reproduces the ER’s own descriptor at line 297. |
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. | 🟢 | Neutral, evidentiary register matching the ER throughout. |
| 2.2 | The tone of the QRS is simultaneously expert, accessible, objective, and data-driven, but also empowering and encouraging | 🟢 | Two-intervention framing plus explicit monitoring targets. |
| 2.3 | The QRS reads as a trusted, knowledgeable guide rather than a prescriptive doctor | 🟢 | Descriptive, non-imperative phrasing in all cells. |
| 2.4 | The QRS avoids language that implies medical or clinical advice | 🟢 | Cadence and protocol cells are stated impersonally, not as directives. |
| 2.5 | The QRS “presents information” instead of “providing guidance”, “recommending”, or “advising” | 🟢 | No “should”, “recommend” or “advise” in the QRS’s own voice. |
| 2.6 | The QRS never addresses “the reader” directly — it presents evidence, not guidance | 🟢 | No second-person pronouns present. |
| 2.7 | The QRS is written in plain language, avoiding unnecessary medical jargon | 🟢 | Technical terms are confined to biomarker names, where they are unavoidable. |
| 2.8 | Information is presented in a concise and very compact manner | 🟢 | All list items are single condensed clauses. |
| 2.9 | It DOES NOT address the reader directly | 🟢 | Confirmed — no direct address anywhere. |
| 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. | 🟢 | Apolipoprotein B, RBC magnesium and adduct tracking assume a proactive reader. |
| 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. | 🟢 | Per-meal label checking and research-assay adduct testing are presented without hedging on 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. | 🟢 | Content assumes biomarker access and diagnostic confirmation. |
| 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. | 🟢 | Forgone lipid/mortality benefit is elevated to a High risk, the key longevity-audience signal. |
| 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. | 🟢 | “anti-aging” does not occur; the title uses “Health & Longevity”. |
| 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. | 🟢 | “mould toxins” and “blood-borne peanut protein” reproduce the ER’s own Conclusion register (ER lines 383). |
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 strings match the template byte-for-byte (lines 444, 485, 529, 551, 568, 588, 610, 614–616, 732). |
| 3.2 | All “…” from the [qrs_template] are present in the the QRS. | 🟢 | All 34 unique template variables present; repeatable marker_#* and qualitative_item# expanded to 8 and 5 instances. |
| 3.3 | Spans that are not addressed in a checklist item are left unchanged | 🟢 | The three website= spans (lines 423, 426, 438) 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 drawn on by the QRS is empty. |
| 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. | 🟢 | action_1/2/3_label reproduce the ER Protocol bold labels at lines 296–298 verbatim. |
| 4.3 | Labels are not paraphrased, abbreviated, or invented. | 🟢 | Marker names match the ER biomarker table column 1; time labels derive from the ER’s own time-to-effect sentence (line 328). |
| 4.4 | The QRS DOES NOT use emoji indicators (no 🟩, 🟥, 🟨, etc.). Color and emphasis are conveyed through CSS and bold labels. | 🟢 | Unicode scan returns no emoji; the ER’s ⚠️ Conflicted markers are correctly dropped. |
| 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 to its budget: benefits/risks collapsed to one line per tier, gate items trimmed to the key fact, cadence compressed to one sentence. |
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. | 🟢 | Lines 2–14, immediately after the doctype. |
| 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. | 🟢 | Opening --- at line 3, closing --- at line 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. | 🟢 | Enclosed in an HTML comment; no metadata value is repeated in the body. |
| 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:02" is quoted, correctly, because it contains a colon. |
| 5.5 | The filename of the source ER is stated as “er_filename: [er_filename]” | 🟢 | Line 4: er_filename: avoiding_peanuts_2026-0920-1922_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]” | 🟢 | Line 5: 26.9.11, matching the QRS.md badge. |
| 5.7 | Creation date and time of the document is stated as “qrs_creation_date: [YYYY-MMDD-HHMM]” (e.g., 2026-0501-1430) | 🟢 | Line 6: 2026-0920-2157. |
| 5.8 | The nickname of the AI used to create the document is stated as “qrs_creator_ai_nickname: [qrs_creator_ai_nickname]” | 🟢 | Line 7: 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]” | 🟢 | Line 8: 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) | 🟢 | “Opus 5” — nickname plus version, no qualifier. |
| 5.12 | The filename of the document is stated as “qrs_filename: [filename of this document]” | 🟢 | Line 9 matches the file’s own name 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. | 🟢 | Re-verified across all nine keys; no stray whitespace or 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., & for &) |
🟢 | Line 22: “Avoiding Peanuts for Health & Longevity - 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., & for &) |
🟢 | Line 417 matches ER frontmatter line 8 with & encoding. |
| 6.3 | [header_subline_date] is set to [qrs_creation_date reformatted as MM/DD/YYYY] | 🟢 | Line 421: 09/20/2026 from 2026-0920-2157. |
| 6.4 | [header_subline_model] is set to [qrs_creator_ai_fullname] | 🟢 | Line 425: 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. | 🟢 | Header holds only title and the template subline; the ER’s “Also known as” line is not carried over. |
7. At-A-Glance Section
| # | Description | Result | Comments |
|---|---|---|---|
| 7.1 | [at_a_glance] is dense, execution-oriented summary of the ER Conclusion section |
🟢 | Condenses ER lines 381–385: the two-intervention split, the elective case, and the infant harm. |
| 7.2 | [at_a_glance] is no longer than 60 words | 🟢 | Exactly 60 words. |
| 7.3 | Every fact in [at_a_glance] is supported by a distinct passage in the ER. | 🟢 | Each clause maps to a distinct Conclusion sentence (ER lines 381, 383, 385). |
| 7.4 | It DOES NOT use acronyms or technical classifications that require specialist knowledge, uses plain-language terms instead | 🟢 | Uses “mould toxins” and “cholesterol particle counts” rather than aflatoxin or apolipoprotein B. |
| 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 | 🟢 | Directional wording only (“lower … counts and death rates”). |
8. Contraindications
| # | Description | Result | Comments |
|---|---|---|---|
| 8.1 | The section is derived from the ER Key Interactions & Contraindications section |
🟢 | Sourced from the “Populations who should avoid” list, ER lines 276–282. |
| 8.2 | [stop_items] represent the Contraindications from the ER | 🟢 | All five ER populations are represented, in ER order. |
| 8.3 | Individual [stop_items] are formatted as <li></li> | 🟢 | Five discrete <li> elements at lines 554–563. |
| 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. | 🟢 | ER trailing rationale (“in whom early introduction … is the tested strategy”, “for whom interrupting intake reverses desensitisation”) is 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). | 🟢 | “4–11 months”, “(severe eczema, egg allergy, or both)”, “0–4 mm”, “(300 mg peanut protein daily)” and “below 18.5 kg/m²” all 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 | The ER uses no ranking notation inside parentheses in this section. |
| 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 ER names five such populations, and the section is correctly populated rather than empty. |
| 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. |
9. Key Interactions
| # | Description | Result | Comments |
|---|---|---|---|
| 9.1 | The section is derived from the ER Key Interactions & Contraindications section |
🟢 | Sourced from the eight interaction bullets at ER lines 267–274. |
| 9.2 | [caution_items] represent the Key Interactions from the ER, excluding any that are already listed as Contraindications | 🟢 | Seven of eight carried; peanut oral immunotherapy is correctly omitted because it appears in [stop_items]. |
| 9.3 | Individual [caution_items] are formatted as <li></li> | 🟢 | Seven discrete <li> elements at lines 571–578. |
| 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. | 🟢 | Severity, consequence and mitigation clauses from each ER bullet are stripped. |
| 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). | 🟢 | “(micronised progesterone capsules, some depot injections)”, the A/D/E/K preparation list and “(additive restrictive effect)” are retained. |
| 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 uses no ranking notation inside parentheses in this section. |
| 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 ER names eight interactions, and the section is correctly populated rather than empty. |
| 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. |
10. Protocol
| # | Description | Result | Comments |
|---|---|---|---|
| 10.1 | The section is derived from the ER Protocol section |
🟢 | Drawn from ER Therapeutic Protocol, lines 296–301. |
| 10.2 | The three sets of [action] items cover the three most important actionable implementation aspects from the ER Protocol section |
🟢 | The three named regimens — strict, threshold-informed liberalised, and elective non-allergic avoidance — are the ER’s leading implementation choices. |
| 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 supplies three or more distinct actionable aspects; all three sets are 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 cells populated; action_1_sub also draws the per-meal checking action from ER line 301. |
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 | 🟢 | Reaction prevention, lipid change and aflatoxin adduct fall — the three aspects named at ER line 328. |
| 11.2 | The sets are picked and ordered by the magnitude of the related benefit | 🟢 | Ordered from the High-tier benefit (reaction prevention), through the High-tier forgone lipid benefit, to the Low-tier aflatoxin benefit. |
| 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 aspects; all three sets are used. |
| 11.4 | All used [time_#label], [time#value], [time#_sub] items are filled with meaningful content derived from the ER. | 🟢 | All nine cells populated; the 20-day adduct half-life comes from ER line 300. |
| 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 at lines 300 and 328. |
12. Benefits
| # | Description | Result | Comments |
|---|---|---|---|
| 12.1 | The section is derived from the ER Expected Benefits section |
🟢 | All items match ER benefit headings at lines 149–191. |
| 12.2 | Key variables are [benefits_high], [benefits_medium], [benefits_low], [benefits_speculative] | 🟢 | All four present and populated (lines 531–544). |
| 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. | 🟢 | Each tier is a semicolon-joined list of bare ER benefit headings with no magnitudes attached. |
| 12.4 | Parenthetical content — including effect sizes, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. | 🟢 | No parentheses remain in any benefits item. |
| 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. | N/A | All four benefit tiers carry items in the ER. |
13. Risks
| # | Description | Result | Comments |
|---|---|---|---|
| 13.1 | The section is derived from the ER Potential Risks & Side Effects section |
🟢 | All items match ER risk headings at lines 209–253. |
| 13.2 | Key variables are [risks_high], [risks_medium], [risks_low], [risks_speculative] | 🟢 | All four present and populated (lines 590–604). |
| 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. | 🟢 | Each tier is a semicolon-joined list of bare ER risk headings; no frequencies or effect sizes carried. |
| 13.4 | Parenthetical content — including frequencies, severity grades, sample notes, mechanistic hints, and example studies — is stripped, NOT preserved. | 🟢 | No parentheses remain in any risks item. |
| 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 items in the ER. |
14. Monitoring
| # | Description | Result | Comments |
|---|---|---|---|
| 14.1 | The section is derived from the ER Monitoring section |
🟢 | Drawn from ER Monitoring Protocol & Defining Success, biomarker table at lines 350–359. |
| 14.2 | All measurable/quantifiable biomarkers from the Monitoring section are listed |
🟢 | All eight ER biomarkers present, with targets matching the ER’s optimal functional ranges. |
| 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. |
🟢 | Lines 723–726 condense the ER cadence paragraph at lines 346–348. |
15. Qualitative Assessment
| # | Description | Result | Comments |
|---|---|---|---|
| 15.1 | The section is derived from the ER Monitoring section |
🟢 | Drawn from the qualitative-marker list at ER lines 363–367. |
| 15.2 | All subjective/qualitative biomarkers from the Monitoring section are listed |
🟢 | All five ER qualitative markers carried, in ER order. |
Issues 20/09/2026 22:02
Pass rate 100.00%. No issues found.