# 日常訳第1版 publication and experimental retirement

The main reader offers 口語訳 and 日常訳第1版 on desktop and mobile. A translation
selection reloads the document, which isolates the reader and search-worker caches.
`?translation=nichijo-v1` selects the new release; `?translation=kougo` selects
口語訳. An explicit URL wins over the saved browser preference. Shared links name
the edition, and copied 日常訳第1版 citations include its name.

The new release contains 31,101 numbered verses and 33 separate Japanese Psalm
heading blocks. The reader offers Hebrew, Aramaic and Koine Greek parallels for
both editions. The notice describes a technology-based translation project,
rigorous development/testing, and the absence of human expert verification.
口語訳 furigana is available; audio is not currently available on the website.
The new edition does not play mismatched audio.

## Release provenance

`web/scripts/build-nichijo.mjs` reads only the reviewed translator release under
`cli/translate-bible/reports/releases/nichijo-v1`. It checks the manifest,
audit and book hashes and the verse/chapter counts before producing the CSV and
legacy-reference map. It never exports the raw source-numbered harness output.
`npm run build` runs this step automatically. The server preview bundles the same
CSV, with separate per-edition caches and edition-preserving redirects.

## Retirement

Cloudflare confirms the actual production hostname is **experiment.japanbible.net**
on the `experimental-japanbible` Pages project in the JTCM account. The retirement
build uses [Pages advanced mode](https://developers.cloudflare.com/pages/functions/advanced-mode/)
and replaces the historical reader with a redirect-only worker. No database is
bound or deleted. The historical source remains available in this repository.

Old chapter and passage URLs redirect through `/experimental` on the main site.
That route maps source verse numbers using the reviewed alignment before sending
the reader to the correct main-site passage. The browser retains an old fragment
through the HTTP redirect so the client can map it too. Search queries are
preserved; reviewer credentials and unrelated query parameters are not forwarded.
Retired API endpoints, writes and raw corpus URLs return 410.

## Build and validation

From `web/japanbible-net`:

```sh
npm run build
npm run build --prefix functions
npm run test:coverage
npm run test:coverage --prefix functions
npm run test:e2e --prefix web -- e2e/nichijo.spec.ts e2e/originals.spec.ts
firebase deploy --only hosting,functions:ogPreview --project japanbible-cd2ba
```

Deploy the main site and verify it before running the experimental project's
`npm run deploy` with the repository-documented JTCM Cloudflare credentials. Its
normal build now produces only retirement assets. `npm run build:archive` is for
local inspection, not publication. The retirement worker has its own 100% coverage
checks via `npm run test:retirement`; the tracked pre-commit hook includes them.

Validation at finalization: 1,153 web tests, 229 server tests, 47 focused
browser checks and four retirement-worker tests pass. The new selection and
migration modules and retirement worker have 100% statement/branch coverage.
Existing code has lower overall coverage; thresholds were not relaxed. Both
production builds pass. Vite retains its pre-existing main-bundle size warning.

## Production result — 2026-09-12

Both deployments completed. [日常訳第1版 is live](https://japanbible.net/?translation=nichijo-v1),
and [experiment.japanbible.net](https://experiment.japanbible.net/) redirects to it.
Firebase updated only Hosting and `ogPreview`; Cloudflare production deployment
is `c4b169ce`. No databases were deleted. The missing package-local Wrangler
executable was handled by invoking the available CLI through `npx wrangler`.

[Live verification](migration-verification.json) passes the production CSV hash,
server preview, mobile reader, edition switching, search, Hebrew parallel,
retirement HTTP statuses, old Joel 4 chapter/fragment mapping, and an old Psalm
passage mapping. The main site's 31,101-verse CSV hash is
`5514825d96a0747b70c5a2225db5cca9cb18032da0fa8089f14bf4ee87200b0c`.
Recheck with `node web/scripts/verify-live.mjs --retired` from this directory.
