Library note. Browser-only diagnostics and templates for publishing-operation checks.
DiagKit — small honest diagnostics + the templates that go with them
DiagKit is the diagnostics-and-templates half of Leefan Reports. Six pages today: three browser-only
checkers (thinness, GA4 click-event firing, affiliate compliance — the compliance one is held to v1.1 until
legal review passes); three templates (a small Notion PM workspace, a card schema + 5 starter cards, a
decision-log template with worked examples).
Each diagnostic runs locally in your browser. You paste an input; the page tells you what it sees. No sign-up.
No email gate. No data leaves your tab.
1. The contract for everything in DiagKit
Client-only. The page runs in your browser. Your pasted input never leaves the tab. We do not
run a backend. We do not log your input. There is no analytics event on the snippet you pasted — only on
the fact that the page was visited.
Heuristic, not verdict. Every tool returns a signal, not an answer. A diagnostic that
returns “this page is thin” is telling you that one specific marker set is satisfied; it is not a
content-quality oracle. Each tool’s page declares the markers it checks and does not check.
No email gate to run. The tool is on the page. You do not sign up; you do not subscribe; you
do not “request access”.
If you find a DiagKit tool that violates any of these three lines, that is a defect — email
contact@leefan.co.jp with the correction label.
2. The six pages, grouped
Diagnostics (browser-only checkers)
#
Page
What you paste
What it returns
Trust tier
1
D01 — Content thinness self-check
A page URL or raw HTML body.
Marker-by-marker breakdown + aggregate “thin / mixed / not thin” + “what this does NOT check” panel.
8-check pass/fail list with the specific failure called out and the fix described.
Static-pattern analysis — does not confirm the tag fires live. Use GTM Preview + GA4 DebugView for that.
3
D04 — Affiliate page compliance checkHELD to v1.1
A page URL or raw HTML body.
12-marker scan for JP-domestic compliance signals (景品表示法, ステマ規制, インボイス制度 obligations, 印紙税 applicability) plus an explicit “this is heuristic, not legal advice” panel.
Held to v1.1. Ships after legal review. The page itself renders a “coming after legal review” landing here; the full scanner body is not exposed.
Templates (downloadable shapes you can adapt)
#
Page
What you get
What you cannot expect
4
P01 — Notion pSEO PM workspace
A 4-database Notion schema (Cards / Pages / Decisions / Regressions) with a duplicatable markdown export.
A 14-database “ultimate” workspace. Four is the smallest shape that survives a real operation.
A finished pipeline. The starter pack assumes you have read OpsLab A1.
6
P07 — Decision log template + 3 worked examples
A copy-pastable decision-log shape + three real worked examples (one is a reversed decision — the most useful kind).
A Slack-style conversation log.
3. Which tool to start with, by symptom
“My GA4 events are not showing up in reports.” → Start at D02.
“I have 200 programmatic pages and Google is not indexing many of them.”
→ Start at D01.
“I just added an affiliate link to a page and I’m not sure my disclosure is enough.”
→ Start at D04 when it ships in v1.1. Until then, this hub does not point you at a substitute we cannot
stand behind.
“I want to start running cards but I do not know what a card schema looks like.”
→ Start at P03.
“My team’s decisions never get written down.” → Start at P07.
“I want to set up a PM workspace from scratch.” → Start at P01.
4. Why DiagKit is six pages and not sixty
Every page has a load-bearing artifact: a working browser-only tool, a schema, or a template with worked examples.
We do not ship a diagnostic until we have stared at the bug class.
The cost of a wrong diagnostic is higher than the cost of a missing diagnostic. A reader who pastes a snippet
and gets a false-pass walks away thinking the problem is elsewhere. We hold pages back (D04) and keep the
heuristic-not-verdict disclaimer above the fold (every page) for this reason.
5. Where these pages plug into the rest of the site
From DiagKit → OpsLab: P03 is the downloadable companion to the OpsLab A1–A5
cluster. P01 is the database shape of OpsLab A5’s audit-log idea.
From DiagKit → ToolLab: D04’s affiliate-compliance check assumes you have already chosen a payment
platform; if you have not, M01 (Gumroad vs BOOTH vs Stripe) is the upstream choice.
From DiagKit → /about: every diagnostic’s privacy disclosure is a single line; the practice-wide
posture is on /about.
6. The “what’s not here yet” list
As of 2026-05:
D04 — held to v1.1 until counsel passes on the heuristic markers, specifically Japanese
premium-representation and stealth-marketing disclosure markers.
D03 — cross-page uniqueness across N URLs. Planned.
D08 — title / lead / heading structure check. Planned.
P05 — per-page uniqueness contract. Planned.
P09 — ASP affiliate readiness checklist. Planned.
P14 — sub-agent stop-contract pattern. Planned (cluster B on OpsLab).
A consent-mode-aware variant of D02 — only if demand justifies it.
7. How to read DiagKit if you are…
A solo pSEO operator with one specific bug right now. Use §3.
A team lead evaluating whether to adopt the methodology. Read §1 (the contract) and
§4 (why the section is small). Then click into D02 and run it on a real snippet.
A JP-domestic operator with an affiliate-page compliance question. D04 is held to v1.1.
The honest recommendation is to consult counsel directly until D04 is unblocked.
Here because someone shared a single tool link. Use the tool; ignore the hub.
8. The privacy / data-handling disclosure
The page’s JavaScript runs in your browser. The snippet you paste stays in your browser tab; it is not
POSTed to any server we control.
We use GA4 page-view events on the Leefan Reports site (standard analytics); we do
not instrument any DiagKit tool’s input field with analytics.
There is no cookie set by any DiagKit diagnostic.
We do not embed third-party trackers on DiagKit pages.
If a future DiagKit diagnostic requires a server-side step, the page will say so in plain language above the
input field, name the data sent, name the destination, and name the retention.