Structured for machine parsing: claims are atomic, each carries the command that verifies it. Every command runs against a fresh clone of this repo. Reproduction at the bottom.
Summary
LifeOS/install/skills/Telos/ReportTemplate is the template Telos/Workflows/WriteReport.md builds TELOS assessment reports from. It does not compile.
Components/cover-page.tsx:37 contains the literal text <ORG_NAME> Consulting inside JSX. SWC parses <ORG_NAME> as the opening tag of an element that is never closed, and the build fails with a syntax error before webpack finishes.
Claims and verification
git clone --depth 1 https://github.com/danielmiessler/LifeOS && cd LifeOS
cd LifeOS/install/skills/Telos/ReportTemplate && bun install && bunx next build
C1 — the build fails with a syntax error at Components/cover-page.tsx:37.
Failed to compile.
./components/cover-page.tsx
Error: x Expected '</', got 'jsx text ( )'
,-[.../ReportTemplate/components/cover-page.tsx:38:1]
35 | <p className="cover-date">{reportDate}</p>
36 | <p className="text-muted-dark text-sm mt-2">
37 | <ORG_NAME> Consulting
38 | ,-> </p>
`----
Caused by: Syntax Error
> Build failed because of webpack errors
C2 — the same placeholder appears twice in that file; only one breaks the parse.
git grep -n '<ORG_NAME>' -- LifeOS/install/skills/Telos/ReportTemplate
# Components/cover-page.tsx:22: alt="<ORG_NAME>"
# Components/cover-page.tsx:37: <ORG_NAME> Consulting
Line 22 is inside a string attribute, so it parses; it renders the literal text <ORG_NAME> as the logo's alt text. Line 37 is bare JSX and is the parse error.
C3 — this is the only occurrence of the pattern in live code across the payload. A sweep for <ALL_CAPS> tokens in .ts/.tsx/.js/.jsx/.mjs returns 26 hits; 24 are in comments or CLI usage strings (algorithm -p <ISA>, MEMORY/SECURITY/<YYYY>/<MM>/...). The two in cover-page.tsx are the only ones in executable positions.
git grep -nE "<[A-Z][A-Z0-9_]{2,}>" -- '*.ts' '*.tsx' '*.js' '*.jsx' '*.mjs'
C4 — no setup step substitutes the placeholder before build. <ORG_NAME> occurs three times in the whole payload: the two in cover-page.tsx and one in Workflows/WriteReport.md:244, which documents the footer as the literal Date + "<ORG_NAME> Consulting". The workflow instructs the agent to edit report-data.ts and pass a client_name (a different field — the report's subject), but never rewrites cover-page.tsx and defines no substitution for <ORG_NAME>. So the template compiles — or rather doesn't — exactly as shipped.
git grep -n 'ORG_NAME' -- LifeOS/install
# ReportTemplate/Components/cover-page.tsx:22, :37
# Workflows/WriteReport.md:244 <- documents it as literal output, no substitution step
<ORG_NAME> names the report author's own org, which is a fixed placeholder — not the per-report client_name field the workflow fills. So no normal use of the workflow substitutes it before the build runs.
Two further observations in the same template
Not the headline; noting them because anyone fixing C1 will hit them next.
O1 — src="/ul-icon.png" (Components/cover-page.tsx:21) has no corresponding file. Public/ contains 11 .woff2 files and nothing else.
git ls-tree -r --name-only HEAD -- LifeOS/install/skills/Telos/ReportTemplate/Public
O2 — directory casing does not match import casing. The shipped directories are App/, Components/, Lib/, Public/; all 14 internal imports use lowercase (@/components/…, @/lib/…), and WriteReport.md:612 instructs copying fonts into ReportTemplate/public/fonts/ (lowercase) while the shipped path is Public/Fonts/.
git grep -h -oE 'from "@/[A-Za-z]+/' -- LifeOS/install/skills/Telos/ReportTemplate | sort | uniq -c
# 7 from "@/components/
# 7 from "@/lib/
On a case-insensitive filesystem this resolves. I did not test on a case-sensitive filesystem, so I am not claiming it breaks there — only that the two casings disagree.
Suggested fix
Components/cover-page.tsx: replace the two <ORG_NAME> placeholders with a prop or a plain string. Line 37 is the one that must change for the build to pass; line 22 is a rendering bug rather than a build break.
Scope of the claim
- Executed on macOS with
bun install && bunx next build, Next 15.5.14. Not tested on Linux, and not tested via next dev.
- I make no claim about why the placeholder is there or what it was meant to be substituted with.
Reproduction
git clone --depth 1 https://github.com/danielmiessler/LifeOS && cd LifeOS
cd LifeOS/install/skills/Telos/ReportTemplate
bun install && bunx next build
Related: #1555 (same skill, the sibling DashboardTemplate and whether either template is wired).
Summary
LifeOS/install/skills/Telos/ReportTemplateis the templateTelos/Workflows/WriteReport.mdbuilds TELOS assessment reports from. It does not compile.Components/cover-page.tsx:37contains the literal text<ORG_NAME> Consultinginside JSX. SWC parses<ORG_NAME>as the opening tag of an element that is never closed, and the build fails with a syntax error before webpack finishes.Claims and verification
C1 — the build fails with a syntax error at
Components/cover-page.tsx:37.C2 — the same placeholder appears twice in that file; only one breaks the parse.
Line 22 is inside a string attribute, so it parses; it renders the literal text
<ORG_NAME>as the logo's alt text. Line 37 is bare JSX and is the parse error.C3 — this is the only occurrence of the pattern in live code across the payload. A sweep for
<ALL_CAPS>tokens in.ts/.tsx/.js/.jsx/.mjsreturns 26 hits; 24 are in comments or CLI usage strings (algorithm -p <ISA>,MEMORY/SECURITY/<YYYY>/<MM>/...). The two incover-page.tsxare the only ones in executable positions.C4 — no setup step substitutes the placeholder before build.
<ORG_NAME>occurs three times in the whole payload: the two incover-page.tsxand one inWorkflows/WriteReport.md:244, which documents the footer as the literalDate + "<ORG_NAME> Consulting". The workflow instructs the agent to editreport-data.tsand pass aclient_name(a different field — the report's subject), but never rewritescover-page.tsxand defines no substitution for<ORG_NAME>. So the template compiles — or rather doesn't — exactly as shipped.<ORG_NAME>names the report author's own org, which is a fixed placeholder — not the per-reportclient_namefield the workflow fills. So no normal use of the workflow substitutes it before the build runs.Two further observations in the same template
Not the headline; noting them because anyone fixing C1 will hit them next.
O1 —
src="/ul-icon.png"(Components/cover-page.tsx:21) has no corresponding file.Public/contains 11.woff2files and nothing else.O2 — directory casing does not match import casing. The shipped directories are
App/,Components/,Lib/,Public/; all 14 internal imports use lowercase (@/components/…,@/lib/…), andWriteReport.md:612instructs copying fonts intoReportTemplate/public/fonts/(lowercase) while the shipped path isPublic/Fonts/.On a case-insensitive filesystem this resolves. I did not test on a case-sensitive filesystem, so I am not claiming it breaks there — only that the two casings disagree.
Suggested fix
Components/cover-page.tsx: replace the two<ORG_NAME>placeholders with a prop or a plain string. Line 37 is the one that must change for the build to pass; line 22 is a rendering bug rather than a build break.Scope of the claim
bun install && bunx next build, Next 15.5.14. Not tested on Linux, and not tested vianext dev.Reproduction
Related: #1555 (same skill, the sibling
DashboardTemplateand whether either template is wired).