diff --git a/website/AGENTS.md b/website/AGENTS.md
index d96ab2b623..a737f196f9 100644
--- a/website/AGENTS.md
+++ b/website/AGENTS.md
@@ -14,6 +14,9 @@ for asset notes and the source of case-study claims.
case study focused on one question, with further examples in native details.
- Show what REA returns and how the agent uses it. Preserve source attribution,
target identity and verification scope.
+- Blog articles teach methods, decisions and workflows through concrete cases.
+ Keep the thesis and overview figure clear, and use engine details only when
+ they explain a decision. Label working outlines and mark them `noindex`.
- Keep personal paths, account data, credentials and raw captures outside the
public assets. Use generic inputs and label shortened display paths.
- Follow the same clear writing standard in search titles and descriptions.
diff --git a/website/README.md b/website/README.md
index 4262ccb246..3c8caa5c77 100644
--- a/website/README.md
+++ b/website/README.md
@@ -42,6 +42,8 @@ HTML files. No URL list needs to be maintained.
- `public/examples/dino-lab/index.html`: adjustable-speed mini-game, recovered rule, original-game check and browser analysis steps.
- `public/first-investigation/index.html`: a guided Notes export investigation, from setup to a checked CSV prediction.
- `public/showcase/index.html`: the case-study index.
+- `public/blog/index.html`: articles about reconstruction methods, ports, mods and reverse engineering.
+- `public/blog/touhou-reconstruction/index.html`: the working English outline for a Touhou reconstruction article, with TH08, TH095 and TH04 timelines.
- `public/showcase/aegis/index.html`: Aegis's Android login-code calculation, with an adjustable clock and reference checks.
- `public/showcase/dx-ball/index.html`: sound-pan investigation and project status.
- `public/showcase/notion/index.html`: Notion's Electron clipboard bridge and rich clipboard format.
@@ -121,6 +123,15 @@ and Cloudflare's [managed robots behavior](https://developers.cloudflare.com/bot
## Content
+Blog articles explain methods and decisions across a project. Use a clear thesis,
+an overview figure, a practical workflow and a few cases that test the method.
+Case studies remain focused on one inspected behavior. Keep engine details in
+supporting references unless they explain a decision the reader needs to make.
+
+The Touhou article is currently a working outline, marked `noindex`. Replace it
+with the finished article before removing that directive. Its timeline provenance
+and counting rules are in [evidence/touhou-reconstruction-method.md](evidence/touhou-reconstruction-method.md).
+
Keep the copy direct and specific. Explain the task and the result before listing
tool names. Setup commands and runtime requirements should match the released
package. Keep the core learning path inside the site. Source, issue and evidence
diff --git a/website/evidence/touhou-reconstruction-method.md b/website/evidence/touhou-reconstruction-method.md
new file mode 100644
index 0000000000..111e33fa9b
--- /dev/null
+++ b/website/evidence/touhou-reconstruction-method.md
@@ -0,0 +1,126 @@
+# Touhou reconstruction method: evidence notes
+
+Checked on 10 October 2026. This document supports the working article outline
+at `public/blog/touhou-reconstruction/index.html`.
+
+## Method sources
+
+The Factory checkpoint is
+[`038b6bed`](https://github.com/N0zoM1z0/touhou-reconstruction-factory/tree/038b6bed51d273c8b3680553b6f43e1b97d19bd1).
+Read its [agent autonomy](https://github.com/N0zoM1z0/touhou-reconstruction-factory/blob/038b6bed51d273c8b3680553b6f43e1b97d19bd1/docs/agent-autonomy.md),
+[semantic workflow](https://github.com/N0zoM1z0/touhou-reconstruction-factory/blob/038b6bed51d273c8b3680553b6f43e1b97d19bd1/docs/semantic-reconstruction.md),
+and [cross-game knowledge](https://github.com/N0zoM1z0/touhou-reconstruction-factory/blob/038b6bed51d273c8b3680553b6f43e1b97d19bd1/docs/knowledge-base.md)
+documents for the underlying method: autonomous investigation, bounded changes,
+empirical feedback, durable checkpoints and reusable lessons.
+
+The proposed industrial-age analogy explains that method. The Factory's
+software architecture also uses the Abstract Factory pattern; the article's
+analogy should focus on the working process rather than that implementation.
+
+REA supplies analysis evidence to an agent. The historical projects also used
+project-specific analysis bridges and tooling. The article should attribute
+historical work to those projects and explain where REA fits in the general
+workflow, without relabeling every historical tool result as REA output.
+
+## Collection and counting
+
+Public history was retrieved with `gh api`, including all pages of each
+repository's default-branch commits, repository metadata and release records.
+Pinned progress documents were read from the corresponding Git objects in the
+local project checkouts. Every milestone SHA below appears in the public
+GitHub history. No local-only revision or uncommitted change supplies a claim.
+
+Elapsed days are the difference between public commit **committer timestamps**,
+in UTC, divided by 86,400 and rounded to two decimal places. The article uses
+rounded calendar intervals. They measure recorded milestone spacing, not
+compute time, person-hours or a controlled speedup benchmark.
+
+TH08's start is the independent continuation at `001bf3e`, not its inherited
+2025 initial commit or its hosting creation date. Its imported GensokyoClub
+history ends at `7ad3792`; preserve that attribution and license. TH095 starts
+with zero confirmed authored functions, while using methods and infrastructure
+from earlier projects. TH04 uses ReC98 as a credited source of existing work.
+
+The denominators change as candidates are classified and boundaries reviewed.
+Read each pinned progress document's definitions. Avoid a cross-game function
+rate or an executable-wide completion percentage.
+
+## Public history snapshot
+
+| Project | Default-branch commits | Commits whose subject begins `gpt-web:` | Public head |
+| ------- | ---------------------: | --------------------------------------: | ------------------------------------------ |
+| TH08 | 1,117 | 400 | `d2a00f4acb4a13916e07a00bd13f714961714628` |
+| TH095 | 713 | 450 | `6084b36cfa90ac1720f0cba36caec3ee56fc5e1f` |
+| TH04 | 957 | 623 | `33b80522f03565022dbfe4d5c8a88bdc57f566ae` |
+
+TH08 has 696 reachable continuation commits after the imported boundary;
+its total includes the upstream history. Subject prefixes identify a recorded
+workflow convention, not the number of sessions, experiments or verified
+functions. Commit counts remain supporting research rather than article
+headlines.
+
+## Milestone records
+
+### TH08
+
+Start: [001bf3e9](https://github.com/N0zoM1z0/th08/commit/001bf3e9c91cc35b79c7a0e36b3565b86f494362) at 2026-08-13T02:23:48Z.
+
+| Checkpoint | UTC timestamp | Elapsed days | Recorded milestone |
+| -------------------------------------------------------------------------------------------- | -------------------- | -----------: | ---------------------------------------------------------------- |
+| [15caba73](https://github.com/N0zoM1z0/th08/commit/15caba73df6735fc44eac4783bc61b8d098ea830) | 2026-08-19T12:19:33Z | 6.41 | Restore clean authored build baseline |
+| [da07b21c](https://github.com/N0zoM1z0/th08/commit/da07b21c8cb63230142b0a66228d6aac66555f3f) | 2026-08-24T10:43:33Z | 11.35 | Add playable Linux reconstruction port |
+| [529eb1a3](https://github.com/N0zoM1z0/th08/commit/529eb1a3afa05ae36467731eaccb12e3e50e132f) | 2026-08-26T05:12:23Z | 13.12 | Link the playable TH08 Web edition |
+| [5d314e21](https://github.com/N0zoM1z0/th08/commit/5d314e21ec725a0de7a38b7c735f683ad358e79f) | 2026-08-30T10:30:16Z | 17.34 | docs: publish native Linux 64-bit release |
+| [bd1bae44](https://github.com/N0zoM1z0/th08/commit/bd1bae444803adfa1fc865bfe64415e9951945e6) | 2026-08-26T15:59:04Z | 13.57 | semantic: recover GameManager state and exact title registration |
+
+### TH095
+
+Start: [8c31e6f8](https://github.com/N0zoM1z0/th095/commit/8c31e6f892d945423b7f7b439747a2bd915f82d8) at 2026-08-29T07:49:20Z.
+
+| Checkpoint | UTC timestamp | Elapsed days | Recorded milestone |
+| --------------------------------------------------------------------------------------------- | -------------------- | -----------: | ---------------------------------------- |
+| [0fa857fb](https://github.com/N0zoM1z0/th095/commit/0fa857fb2b2ec6237732e4d6be8d0a28069c9330) | 2026-09-07T05:23:52Z | 8.90 | gpt-web: match enemy movement exactly |
+| [74baddfc](https://github.com/N0zoM1z0/th095/commit/74baddfccb712d1311a4d6e7487a63cd1100452e) | 2026-09-08T09:19:45Z | 10.06 | Match final ANM x87 draw functions |
+| [33d46a0e](https://github.com/N0zoM1z0/th095/commit/33d46a0ee48f37060d973125a1a7632a40f8d998) | 2026-09-09T11:15:00Z | 11.14 | build: complete whole-program linkage |
+| [3442dcf2](https://github.com/N0zoM1z0/th095/commit/3442dcf29d9e0b5bef384a49bd0c9ad32a711826) | 2026-09-10T07:07:28Z | 11.97 | Mark the Windows reconstruction playable |
+
+### TH04
+
+Start: [f402cb30](https://github.com/N0zoM1z0/th04/commit/f402cb30b7e795ea4328b6de794e9eefc52c97b3) at 2026-09-06T09:54:05Z.
+
+| Checkpoint | UTC timestamp | Elapsed days | Recorded milestone |
+| -------------------------------------------------------------------------------------------- | -------------------- | -----------: | --------------------------------------------------------------- |
+| [1cd1a257](https://github.com/N0zoM1z0/th04/commit/1cd1a2577a3dbf4c17ac7a939faed5eeb81a6ebf) | 2026-09-26T21:16:40Z | 20.47 | gpt-web: accept MAIN SND_LOAD |
+| [4b6a57f8](https://github.com/N0zoM1z0/th04/commit/4b6a57f8c0625da07c38258b78f5f205aae92805) | 2026-10-02T07:44:53Z | 25.91 | gpt-6.1-sol: build four native products and restore DOS handoff |
+
+## What the milestones establish
+
+- **TH08:** the 19 August progress ledger records 1,107 / 1,107 authored
+ functions with source. The 24 August change introduces a playable Linux
+ reconstruction port; the 30 August GitHub release publishes the 64-bit Linux
+ product. The 26 August exact ledger records 1,106 / 1,107 accepted functions.
+- **TH095:** the initial ledger records zero confirmed/source-present authored
+ functions. The 7 September ledger records 697 source-present mappings;
+ 8 September records 696 exact functions out of 697 confirmed authored
+ functions. The 10 September checkpoint marks the Windows i386 reconstruction
+ playable and documents the exercised startup, gameplay and transition paths.
+ The remaining `Controller::GetInput` comparison is separate from playability.
+- **TH04:** the 26 September ledger records 661 exact functions out of 663
+ reviewed authored candidates across OP, MAIN, MAINE and ZUN. MAIN's byte
+ denominator covers its reviewed authored extents; other artifacts use decoded
+ comparisons. The 2 October checkpoint builds four standalone DOS products.
+ Runtime work and a modern x64 product have their own milestones; a four-product
+ build is not a whole-game runtime result.
+
+TH08's playable ports preceded later historical-platform runtime audits. The
+Factory's current recommended order reflects lessons learned across those
+projects; do not present that later recommendation as a process applied
+perfectly from the beginning.
+
+## Editorial scope
+
+The working article teaches goals, task design, feedback loops, project memory,
+handoffs and cross-game reuse. Engine APIs, compiler flags, addresses and ledger
+schemas belong in linked supporting documentation. Planned port/mod examples
+must be backed by their own source and checks before becoming finished claims.
+The outline is labeled and `noindex`; the shared sitemap therefore excludes it.
diff --git a/website/figures.md b/website/figures.md
index 72a32ac61f..231b41afec 100644
--- a/website/figures.md
+++ b/website/figures.md
@@ -94,6 +94,15 @@ APK's selected Java and an explanatory summary.
APK, methods, source attribution and reconstruction checks. Keep the block
formula, default settings, slider outputs and reference cases consistent.
+## Touhou reconstruction article outline
+
+The proposed opening figure is a semantic HTML flow using the shared components:
+inspect/reconstruct → compile/compare/run → code/evidence/next task. Its caption
+names the human, agent, analysis and verification roles. A failed check returns
+the batch to investigation; recorded lessons feed later work. The project
+timelines use HTML dates and pinned public milestones, documented in
+[evidence/touhou-reconstruction-method.md](evidence/touhou-reconstruction-method.md).
+
## Original image generation prompts
## Prompt 1
diff --git a/website/public/assets/styles.css b/website/public/assets/styles.css
index 2020fd5f86..a30f1e87d8 100644
--- a/website/public/assets/styles.css
+++ b/website/public/assets/styles.css
@@ -163,10 +163,12 @@ section[id] {
white-space: nowrap;
}
.navigation a:hover,
-.navigation a[aria-current="page"] {
+.navigation a[aria-current="page"],
+.navigation a[aria-current="true"] {
color: var(--ink);
}
-.navigation a[aria-current="page"] {
+.navigation a[aria-current="page"],
+.navigation a[aria-current="true"] {
text-decoration: underline;
}
.navigation .nav-start {
@@ -678,6 +680,29 @@ pre code {
.article .stats dd {
color: var(--muted);
}
+.blog-thesis {
+ max-width: 730px;
+ padding-left: 1rem;
+ border-left: 2px solid var(--accent);
+ color: var(--accent);
+}
+.blog-timeline {
+ padding: 0;
+ margin-block: 1.5rem;
+ list-style: none;
+}
+.blog-timeline li {
+ display: grid;
+ grid-template-columns: 4.5rem minmax(0, 1fr);
+ gap: 1rem;
+ padding-block: 0.65rem;
+ border-bottom: 1px solid var(--line);
+}
+.blog-timeline time {
+ color: var(--accent);
+ font-weight: 600;
+ font-variant-numeric: tabular-nums;
+}
.caption {
font-size: 0.875rem;
color: var(--muted);
diff --git a/website/public/blog/index.html b/website/public/blog/index.html
index eec6da2a62..47196ea767 100644
--- a/website/public/blog/index.html
+++ b/website/public/blog/index.html
@@ -130,7 +130,10 @@
on existing work, carry lessons into a new game, and adapt the
method to an older platform.
+ From individual expertise to a repeatable workflow. Lessons from
+ continuing TH08, starting TH095, and rebuilding TH04 for PC-98.
+
+
By N0zoM1z0 · Working outline · 10 October 2026
+
+ The unit of progress is a checked change that the next agent can
+ build on.
+
+
+
+
+ The factory idea, in one reconstruction batch
+
+
+
+ 01 · One questionInspect → reconstructThe agent uses analysis tools such as REA to collect evidence,
+ then writes source for one behavior or subsystem.
+
+
+ 02 · A tested changeCompile → compare → runProject checks test the change against the original code and the
+ reconstructed program.
+
+
+ 03 · A saved checkpointCode + evidence + next taskThe repository keeps the result and the lesson. A fresh agent can
+ continue from this state.
+
+
+
+ A failed check sends the batch back to investigation. A useful lesson
+ improves the next batch—and the next game.
+
+
+ The human sets the goal, priorities and release decisions. The
+ investigation remains flexible; the checks and handoff are repeatable.
+ This is the proposed opening figure for the article.
+
+
+
+
+
+
+
1. Decide what you want to build
+
+ Open with a practical question: do you want to understand a game,
+ rebuild it, move it to another platform, or change how it plays?
+
+
+
+ Reconstruction: recover source and check it
+ against the original program.
+
+
+ Port: make that source work with a new
+ platform’s rendering, input, audio and files.
+
+
+ Mod: understand a behavior, change it
+ deliberately, then test the result.
+
+
+
+ Planned figure: one recovered codebase branches into a faithful
+ build, a port and a mod. Each branch names its own success check.
+
+
+
+
2. Turn expertise into a repeatable process
+
+ The industrial-age analogy: agents do the work, tools let them
+ inspect the program, checks test the result, and the repository
+ preserves what they learned.
+
+
+
+ Make the task small enough to check. One
+ behavior or connected subsystem has a clear input, output and
+ test.
+
+
+ Make feedback fast. A compile error, mismatch
+ or runtime failure tells the agent what to investigate next.
+
+
+ Make experience reusable. A lesson becomes a
+ script, test, evidence note or handoff that survives the
+ conversation.
+
+
+
+ Standardize the checks and the handoff; leave the investigation
+ flexible.
+ REA fits at the inspection step: it gives the agent code,
+ references and observations. Source reconstruction and project
+ validation complete the loop.
+
+
+
+
3. TH08: continue the work people already did
+
+ Start with the public GensokyoClub reconstruction: its code,
+ names, build knowledge and contribution history. Show how a
+ continuation turns that foundation into an explicit baseline and a
+ sequence of checked tasks.
+
+
+
+ Preserve credit and inspect what the inherited source actually
+ establishes.
+
+
+ Record the target, existing checks, missing source and next
+ useful work.
+
+
+ Use the path to Linux and Web to introduce the value of
+ readable, maintained source.
+
+
+
+
+ Independent continuation begins.
+
+
+ Source recorded for all 1,107 identified game
+ functions.
+
+
+ Playable Linux port committed, about 11 days after the
+ continuation began.
+
+
+ Native Linux 64-bit release published.
+
+
+
+ Lesson: a good workflow makes existing expertise
+ easier to extend. The starting foundation remains part of the
+ result.
+
4. TH095: start a new game with an established method
+
+ The new repository starts with zero confirmed authored functions.
+ It already has experience from earlier reconstructions: target
+ checks, task boundaries, comparison tooling and a way to retain
+ evidence.
+
+
+
+ Bring up the build and comparison loop early, then work through
+ bounded tasks.
+
+
+ Use the timeline to show what “fast” means for source recovery,
+ exact comparisons and a playable build.
+
+
+ Explain one integration failure in plain language: individually
+ correct functions can still use the wrong shared state when
+ assembled into a program.
+
+ PC-98 changes the practical problem. The game spans four DOS
+ programs and depends on older hardware behavior. Existing ReC98
+ work supplies valuable knowledge; the new reconstruction still
+ needs its own checks.
+
+
+
+ Map the whole product: startup, menus, gameplay, endings and the
+ resident component.
+
+
+ Show why one excellent function percentage can leave important
+ parts of the game untested.
+
+
+ Adapt the comparison and runtime checks to the platform. Feed
+ discoveries back into reusable tests.
+
+
+
+
+ Reconstruction repository bootstrapped.
+
+
+ 661 / 663 reviewed game functions accepted across four
+ programs.
+
+
+ Four standalone DOS products built, about 26 days after
+ bootstrap.
+
+
+
+ Lesson: reuse the process, then verify the
+ assumptions that the new platform changes.
+
6. Run small experiments and keep useful checkpoints
+
+ Bring the three stories together into a working loop a reader can
+ use.
+
+
+
+ Establish a baseline. Identify the exact target
+ and rerun the checks that matter to this task.
+
+
+ Pick one question. Choose a behavior or
+ subsystem with a result you can inspect.
+
+
+ Gather evidence. Follow the code that reads or
+ changes a value, and the functions that call it; name what is
+ known and what still needs testing.
+
+
+ Reconstruct and check. Compare the affected
+ code, build the program, and exercise relevant behavior.
+
+
+ Commit and hand off. Keep source, evidence,
+ failed hypotheses and the next task in the repository.
+
+
+
+ Explain how this loop continues across fresh agent sessions. Turn
+ a recurring failure into a test so the next game benefits from it.
+
+
+ Planned figure: a failing experiment returns to investigation; an
+ accepted batch feeds both the next task and the shared knowledge
+ base.
+
+
+
+
7. Use the recovered source for ports and mods
+
+ Explain the payoff: source with meaningful names, clear ownership
+ and reproducible checks is something you can change with
+ confidence.
+
+
+
+ Use TH08’s Linux and Web products to illustrate replacing
+ platform services while preserving game logic.
+
+
+ Show how a small mod begins with one recovered rule and a
+ controlled change.
+
+
+ Connect the desired outcome to its checks: faithful behavior, a
+ working new platform, or an intentional gameplay difference.
+
+
+
+ Planned figure: checked reconstruction → readable source →
+ portable backend or a deliberate gameplay change.
+
+
+
+
8. Start with one behavior you can verify
+
+ Close with a small first task, an example agent prompt, and what
+ the reader should keep: recovered source, a reproducible check and
+ a clear next question.
+
+
+ The article’s final prompt will walk through one bounded
+ reconstruction batch. The
+ native analysis guide and
+ setup guide cover the tools
+ needed to begin.
+
+
+ Sources and timeline counting
+
+ Dates above come from public GitHub commits and releases,
+ checked on 10 October 2026. Elapsed days are calendar time
+ between recorded checkpoints. Each row names its milestone:
+ source presence, function comparison, build or runtime.
+
+
+
+
+ ↑ Top
+
+
diff --git a/website/style-guide.md b/website/style-guide.md
index 836e0f488f..94202e9036 100644
--- a/website/style-guide.md
+++ b/website/style-guide.md
@@ -144,6 +144,27 @@ Keep the explanation on the website. Repository links provide source,
reproduction instructions and further evidence. Use specific links for those
purposes, and immutable commit links for checkpoint-dependent facts.
+### Method articles in the Blog
+
+Use longer articles to explain how to approach a problem, choose a workflow and
+learn from project outcomes. Open with the reader's goal and one clear thesis.
+Use an overview figure to show the method before expanding its steps.
+
+Choose cases that teach different decisions. For example, TH08 illustrates
+continuing existing work, TH095 illustrates reusing an established method in a
+new project, and TH04 illustrates adapting checks to an older platform. Close
+each case with the lesson the reader can apply. Put dates and progress figures
+beside the milestone they measure, with pinned evidence links in supporting
+details. Calendar time, source presence, exact comparison, build success and
+runtime checks each describe a different result.
+
+Make an analogy concrete and use it briefly. The industrial analogy can connect
+agent execution, tools, quality checks and durable knowledge; the actual workflow
+should remain clear without the metaphor. Explain necessary terms in plain
+language and leave engine inventories in references. Finish with a bounded first
+task the reader can try. Working outlines should be visibly labeled and marked
+`noindex` until they become finished articles.
+
## Make figures explain a relationship
Each figure should answer a question that a reader can name. Choose the visual