@kiwa-test/security

Security test harness for kiwa — v0.1 8 base axis (CSP + Rate limit + Authorization + WAF + Threat model + Secrets scanning + SBOM + Security headers) unified across 4 providers (helmet + express-rate-limit + casbin + coraza), plus v0.2 advanced II 8 axis


Keywords
kiwa, security, csp, content-security-policy, nonce, trusted-types, rate-limit, token-bucket, leaky-bucket, sliding-window, authorization, rbac, abac, casbin, waf, coraza, owasp-crs, threat-model, stride, pasta, dread, secrets-scanning, trufflehog, gitleaks, sbom, cyclonedx, spdx, osv, nvd, security-headers, hsts, permissions-policy, helmet, mtls, certificate-pinning, ocsp-stapling, certificate-transparency, zero-trust, device-posture, jit-access, micro-segmentation, siem, audit-log, tamper-evident, incident-response, playbook, forensics, post-mortem, aead, kdf, envelope-encryption, key-rotation, hsm, post-quantum, ml-kem, kubernetes, pod-security, network-policy, admission-controller, opa, gatekeeper, kyverno, slsa, reproducible-build, signed-provenance, attestation, sigstore, in-toto, sri, cross-origin-isolation, coop, coep, istio, splunk, vault, mock, fidelity, testing
License
MIT
Install
npm install @kiwa-test/security@0.2.0

Documentation

kiwa logo

kiwa

際を制するものが 開発を制する。 The dev-flow platform where testing, formal verification, and spec-driven development meet.

kiwa (「際」 = boundary, edge, connection) is a spec-driven development platform that fuses 3 axes: runtime testing (40+ npm packages), formal verification (Lean 4 spec generator + lean --check), and spec-driven workflow (specFormal / specRuntime 2-file separation with 3-layer classification). Read the MANIFESTO for the full philosophy.

Every test layer · one spec · every verification path · TypeScript / Solidity / Python / Lean 4.

One Layer 1 spec → contract / API / component / e2e / a11y / visual / Next.js (Server Actions / middleware / RSC) tests in parallel, across 42+ npm packages + 1 PyPI package + Foundry / Hardhat bridges + Lean 4 spec verification. Coverage and Mutation gates enforced at release by scripts/check-{coverage,mutation}-gates.mjs.

npm version npm downloads packages python license tests flaky coverage mutation ERC-4337 typescript claude code

Quickstart4 layer chainFeaturesExamplesDocsCookbookFAQChangelogLicense

Status: pre-release. kiwa is public for visibility only. Source is under an "All rights reserved" license until general availability; see LICENSE for what you may and may not do. Issues and pull requests are conducted in English per CONTRIBUTING.md.

🇬🇧 English🇯🇵 日本語

kiwa 127s overview — generate full-spec tests across Web (Next.js) / Contract (Solidity) / dApp (Playwright) in 6 steps: design → gen → run → review → patch → coverage
▶ Watch the full-quality MP4 (2.9 MB, 1920×1080, h264)


🎨 Rebrand notice: This project was renamed from dapp-e2e to kiwa (際) in 2026-06. dapp-e2e was a Playwright-only E2E fixture; kiwa is the same fixture plus Layer 1 test design + Layer 2 contract test generators (Foundry / Hardhat). The Playwright fixture API itself is unchanged — see docs/MIGRATION.md § Rebrand notice for the package-name mapping.


Why kiwa?

Modern stacks scatter their tests across mismatched runners: Foundry / Hardhat for contracts, Vitest for unit + API, Playwright for e2e, Testing Library for components, axe-core for a11y, pixelmatch for visual, pytest for Python services. Every runner has its own conventions, fixtures, and gates — and no single source of truth spans them.

kiwa is a test toolchain that turns one Layer 1 spec into every test layer your stack actually needs. "kiwa" means edge / boundary / limit in Japanese — exactly what good tests prove. dApps and smart contracts are first-class citizens, alongside REST APIs (msw / supertest / Playwright request), SPA components (8 framework adapters), CLI tools, queue workers, generic browser e2e (Playwright), accessibility (axe-core), visual regression (pixelmatch), Next.js App Router (Server Actions / middleware / RSC), and Python pytest (port of the spec parser + requests/httpx adapter, published as kiwa-test-py on PyPI).

graph TD
    A[Your code: TS / Python / Solidity] --> B["/kiwa-design Layer 1"]
    B --> C[9-column spec — single source of truth]
    C --> D["/kiwa-forge → Foundry .t.sol"]
    C --> E["/kiwa-hardhat → Hardhat .test.cjs"]
    C --> F["/kiwa-vitest → Vitest .test.ts"]
    C --> G["/kiwa-api → msw + supertest"]
    C --> H["/kiwa-play → Playwright .spec.ts"]
    C --> I["a11y + visual + CLI + data adapters"]
    D --> J[forge test]
    E --> K[npx hardhat test]
    F --> L[vitest run]
    G --> L
    H --> M[playwright test + 4-round flake check]
    I --> L
    J --> N[Coverage gate ≥ 90/80/90/90]
    K --> N
    L --> N
    M --> N
    N --> O[Mutation gate — per-package MSI ≥ 80%]
    O --> P[release publish]
Loading
One-runner approach kiwa (6 surfaces, 1 spec)
Test design Per-runner checklist, varies by author 10-viewpoint catalog + 5-risk scoring, deterministic
Contract (dApp / smart contract) Hand-written .t.sol / .test.ts Foundry + Hardhat from one spec, same TC IDs
API integration Hand-written msw / supertest Auto-generated, both mock + live modes
Component (8 frameworks) Per-framework runner, drifted fixtures One @kiwa-lab/ui package across React / Vue / Svelte / Solid / Lit / Qwik / Angular / Chromium
dApp e2e Hand-written Playwright + wallet glue Auto-generated, anvil + viem + EIP-6963 + ERC-4337 wired
A11y / Visual Ad-hoc CI step or skipped First-class adapters (axe-core / pixelmatch) sharing the same spec
Polyglot TS-only by default TypeScript + Solidity (forge / hardhat) + Python (pytest, pip install kiwa-test-py) from the same skill chain
Coverage gate Optional, often skipped Enforced at release — 4 metrics × 11 packages
Mutation gate Rarely run Enforced at release — per-package MSI threshold
Flake detection Ad-hoc Built-in 4-round loop

Already have code? kiwa is designed retrofit-first: every Layer 2 generator can reverse-engineer a spec from existing tests. See tests/docs/retrofit-existing-dapp.md for a dApp walkthrough, @kiwa-lab/api / @kiwa-lab/ui / @kiwa-lab/cli-test for non-dApp stacks.


What's in the box

kiwa ships in two halves that work together but stand alone:

1. Claude Code skills (30 skills, the design + generation half)

Skill Layer Role
/kiwa-test orchestrator Run the full chain in one command (--target {contract|dapp|web|nextjs|rust|go|both|all}, where web runs the generic-e2e + a11y + visual trio against the same app/ source, rust/go cover polyglot Rust / Go layers via /kiwa-rust / /kiwa-go, and all covers every surface)
/kiwa-design Layer 1 Reverse-engineer a 9-section / 9-column test spec from existing contracts, APIs, screens, or written feature specs
/kiwa-forge Layer 2 (contract) Layer 1 spec → Foundry .t.sol with fuzz / invariant / vm.prank / custom-error reverts, run forge test, gate on forge coverage
/kiwa-hardhat Layer 2 (contract) Same Layer 1 spec → Hardhat .test.cjs with chai-matchers / fast-check / loadFixture, run npx hardhat test, gate on solidity-coverage
/kiwa-vitest Layer 2 (unit) Layer 1 spec → Vitest test/unit/*.test.{ts,tsx} for TS helpers / TSX hooks
/kiwa-rust Layer 2 (polyglot Rust) Layer 1 spec (rust-unit / rust-integration / rust-axum / rust-actix-web / rust-tower-http) → cargo test tests/*.rs driven by kiwa-test-rs (setup_env, assert_kiwa_eq!, mock_server + reqwest, axum::test_app, actix::test_app, tower_http::test_chain + 6 middleware helper), runs cargo test and gates on cargo llvm-cov (`--mode {axum
/kiwa-go Layer 2 (polyglot Go) Layer 1 spec (go-unit / go-integration / go-gin / go-echo / go-fiber) → testing.T *_test.go driven by kiwa-test-go (SetupUnitEnv, AssertEqual, NewMockServer + http.Client, kiwa_gin.NewTestServer, kiwa_echo.NewTestServer, kiwa_fiber.NewTestServer + fasthttp-compatible NormalizeRequest / NormalizeResponse), runs go test and gates on go test -cover (`--mode {gin
/kiwa-api Layer 2 (integration) Layer 1 spec → msw / supertest / Playwright request API integration tests
/kiwa-ui Layer 2 (ui) Layer 1 spec → Vitest + Testing Library component tests for 8 frameworks (React / Vue / Svelte / SolidJS / Lit / Qwik / Angular / Browser)
/kiwa-e2e Layer 2 (e2e) Layer 1 spec → Playwright generic browser e2e tests (static html / fetch / Node handler / SSR app) for non-web3 contexts
/kiwa-play Layer 2 (dApp e2e) Layer 1 spec → Playwright .spec.ts + prepare-env.ts with wallet inject / anvil / viem for web3 contexts
/kiwa-a11y Layer 2 (a11y) Layer 1 spec → axe-core accessibility tests (jsdom + Playwright), WCAG 2.1 AA violation detection
/kiwa-visual Layer 2 (visual) Layer 1 spec → pixelmatch visual regression tests with baseline / actual / diff snapshot management
/kiwa-data Layer 2 (data) Layer 1 spec → in-memory queue + fake clock tests for queue / cron / batch / DLQ semantics
/kiwa-cli-test Layer 2 (cli) Layer 1 spec → CLI / shell / file IO tests with isolated tempdir + stdout/stderr snapshot
/kiwa-auth Layer 2 (auth) Layer 1 spec → Vitest test/*.auth.test.ts driven by @kiwa-lab/auth (5 provider: NextAuth v5 / Lucia v3 / Better Auth / Clerk / Auth0), covers session mock + OAuth provider mock + email/password + magic link + 2FA + passkey + organizations + Clerk orgs + Auth0 tenant + rules + Management API mock, --provider flag で provider 別生成 (v1.8 + v1.9)
/kiwa-queue Layer 2 (job-queue) Layer 1 spec → Vitest test/*.queue.test.ts driven by @kiwa-lab/queue (4 provider: BullMQ sandbox / testcontainers + Inngest stub / dev-server + Cloudflare Queues miniflare / wrangler + SQS stub / localstack), covers job add / process / retry / fail / drain / delay + event send / step function / concurrency + queue send / consumer batch / DLQ + SQS FIFO / batch / long polling / visibility timeout, --provider flag で provider 別生成 (v1.8 + v1.9)
/kiwa-cache Layer 2 (cache) Layer 1 spec → Vitest test/*.cache.test.ts driven by @kiwa-lab/cache (3 provider: Redis in-memory / testcontainers + ioredis / node-redis + Memcached stub / testcontainers + memjs / memcached + KeyDB stub / testcontainers + ioredis 互換), covers get / set / delete / TTL / expiry / Pub/Sub / assertPublished + Memcached 8 command + consistent-hash + KeyDB multi-master + cross-region Pub/Sub, --provider flag で provider 別生成 (v1.8 + v1.9)
/kiwa-observe observability Aggregate vitest JSON results → flaky detection + spec-coverage gap analysis + markdown dashboard
/kiwa-review reviewer Judge spec / test code / execution results in 3 modes (spec-review / test-review / result-review)

2. npm packages (the runtime fixture half)

Package Use it for
@kiwa-lab/dapp Playwright fixture: inject window.ethereum, spawn anvil, sign, mine, time-travel, EIP-6963 multi-wallet, ERC-4337 smart accounts, custom-error helpers
@kiwa-lab/cli kiwa init scaffolds a Playwright project wired to @kiwa-lab/dapp
@kiwa-lab/core Spec markdown parser shared by every adapter (9-column test-spec-*.mdSpecDoc)
@kiwa-lab/api API integration adapter (Vitest + msw + supertest + Playwright request)
@kiwa-lab/ui Component adapters for React / Vue / Svelte / SolidJS / Lit / Qwik / Angular / real Chromium (render / interaction / snapshot modes)
@kiwa-lab/data Queue / cron / batch adapter — in-memory queue + fake clock + idempotency / DLQ semantics
@kiwa-lab/cli-test CLI / shell / file IO adapter — isolated tempdir + env override + stdout/stderr snapshot
@kiwa-lab/e2e Generic browser E2E adapter (Playwright + static html / fetch app)
@kiwa-lab/observability Run history collection / flaky detection / coverage report / spec-coverage gap analysis
@kiwa-lab/a11y Accessibility adapter — axe-core integration for jsdom + Playwright pages
@kiwa-lab/visual Visual regression adapter — pixel-level PNG diff backed by pixelmatch + pngjs
@kiwa-lab/auth (v0.2+) Auth test adapter — 5 provider: NextAuth v5 (Auth.js) session (jwt + database) + Google / GitHub / Email (Magic Link) provider mocks + Prisma / Drizzle-compatible in-memory database adapter + Lucia v3 + Better Auth + Clerk (SaaS user + session + orgs mock) + Auth0 (enterprise tenant + rules + Management API mock) (v1.8 + v1.9)
@kiwa-lab/queue (v0.2+) Queue test adapter — 4 provider: BullMQ (Redis-backed) sandbox (in-memory) + testcontainers Redis env + Inngest (event-driven) dev-server + stub env + Cloudflare Queues (miniflare + wrangler edge queue) + AWS SQS (stub + localstack standard + FIFO), with job / run / message assertion helpers (waitForJob / assertProcessed / assertFailed / assertRetried / assertQueueDrained / assertFunctionRan / assertStepRan / assertAcknowledged / assertDeadLettered / assertDeleted) (v1.8 + v1.9)
@kiwa-lab/cache (v0.2+) Cache test adapter — 3 provider: Redis (testcontainers) live env + in-memory sandbox env + Memcached (stub + testcontainers with 8 core commands + multi-server consistent hashing) + KeyDB (stub + testcontainers with Redis-compatible surface + multi-master replication + cross-region Pub/Sub), with TTL / Pub/Sub / expiry / consistent-hash / multi-master assertion helpers (assertTTL / subscribe / assertPublished / serverFor / listEntries) (v1.8 + v1.9)
kiwa-test-py (PyPI, v1.0.0+) Python pytest adapter — port of @kiwa-lab/core + requests / httpx adapter, pip install kiwa-test-py

You can use the skills alone (no npm dependency — they just generate test files) or the fixture alone (no Claude — just pnpm add @kiwa-lab/dapp), or both together for the full chain.


4-layer chain (retrofit example: token-gating dApp)

Run the chain against examples/nextjs-token-gating — already contains GatedContent.sol + GateNFT.sol + existing Playwright tests.

# Step 1: Generate a contract-side spec from the existing .sol files
/kiwa-design --layer contract --module token-gating \
  --input examples/nextjs-token-gating/contracts/GatedContent.sol
# → .context/spec/contract/test-spec-token-gating.md (9 sections, 11 test cases across 6 viewpoints)

# Step 2: Generate Foundry tests from that spec
/kiwa-forge --module token-gating
# → test/GatedContent.t.sol (20 tests including fuzz)
# → forge test → 20/20 PASS
# → forge coverage → Lines 100% / Branches 87.50%  ✅ passes the gate

# Step 2': Generate Hardhat tests from the SAME spec (parallel)
/kiwa-hardhat --module token-gating
# → test/GatedContent.test.cjs (24 tests with fast-check)
# → npx hardhat test → 24/24 PASS
# → npx hardhat coverage → Branches 80.56%  ✅ passes the gate

# Step 3: Extend the existing Playwright tests using the same spec
# (run from examples/nextjs-token-gating/ — Step 0 auto-detects the dApp project)
/kiwa-play --mode extend
# → tests/gating.spec.ts adds missing viewpoints (no regression on 8 existing tests)
# → pnpm test x4 rounds → 4/4 PASS, 0 flake

Same TC-001 … TC-020 test IDs appear in both Foundry and Hardhat output — your team can pick a runner per developer without fragmenting the spec.

6-surface chain coverage (Layer 1 → Layer 2 → Layer 3)

Every kiwa surface follows the same kiwa-design → Layer 2 generator → kiwa-review chain. The spec format (9 sections) and the 11 viewpoints catalog are shared across all surfaces, so once you learn the contract chain you already know the dApp E2E / generic E2E / a11y / visual / API / UI chains.

Surface Layer 1 (spec) Layer 2 (generator) Layer 3 (review) runtime fixture
contract (Foundry / Hardhat) /kiwa-design --layer contract /kiwa-forge + /kiwa-hardhat /kiwa-review --layer contract forge / hardhat
dApp e2e (Playwright + viem + anvil) /kiwa-design --layer e2e /kiwa-play /kiwa-review --layer e2e @kiwa-lab/dapp
generic browser e2e (non-web3) /kiwa-design --layer e2e-generic /kiwa-e2e /kiwa-review --layer e2e-generic @kiwa-lab/e2e
accessibility (WCAG 2.1 AA) /kiwa-design --layer a11y /kiwa-a11y /kiwa-review --layer a11y @kiwa-lab/a11y (axe-core)
visual regression (pixel diff) /kiwa-design --layer visual /kiwa-visual /kiwa-review --layer visual @kiwa-lab/visual (pixelmatch)
HTTP API (REST / GraphQL) /kiwa-design --layer api /kiwa-api /kiwa-review --layer api @kiwa-lab/api
React component /kiwa-design --layer ui /kiwa-ui /kiwa-review --layer ui @kiwa-lab/ui
queue / cron / batch /kiwa-design --layer data /kiwa-data /kiwa-review --layer data @kiwa-lab/data
CLI / shell / file IO /kiwa-design --layer cli /kiwa-cli-test /kiwa-review --layer cli @kiwa-lab/cli-test
ORM query (Drizzle + Prisma + Kysely 全 3 ORM × SQLite mock + Postgres/MySQL testcontainers + drizzle-orm/migrator folder migration + Prisma + Postgres testcontainers、 v0.6 / v1.2 完遂版) /kiwa-design --layer orm-query /kiwa-orm /kiwa-review --layer orm-query @kiwa-lab/orm (Prisma + MySQL testcontainers は future follow-up)

/kiwa-test --target {contract|dapp|web|both|all} orchestrates the chain end-to-end for any subset of surfaces — web runs the generic e2e / a11y / visual trio against the same app/ source, and all covers all 6 web-side surfaces (contract + dapp + web). The integrated report at tests/reports/integrated/{example}-{target}.{lang}.md aggregates every surface's pass/fail count, coverage, and reviewer score in one table.


Quickstart

Option A: Claude Code plugin (recommended for Claude users)

Install the kiwa skill chain as a Claude Code plugin — no clone required, available across any of your dApp projects after install.

# In Claude Code (run from any project):
/plugin marketplace add cardene777/kiwa
/plugin install kiwa@kiwa-marketplace
/reload-plugins                            # activate without restarting the session

After install, all 30 skills appear under the kiwa: namespace (Claude Code namespaces plugin skills by plugin name). Inside any dApp project, run the individual layers:

# Layer 1 — design tests (output: tests/spec/<layer>/test-spec-<module>.md)
/kiwa:kiwa-design --layer contract --input path/to/YourContract.sol --module your-module
/kiwa:kiwa-design --layer unit --module your-module
/kiwa:kiwa-design --layer integration --module your-module

# Layer 2 — implement tests from the spec
/kiwa:kiwa-forge --module your-module          # Foundry contract tests
/kiwa:kiwa-hardhat --module your-module        # Hardhat contract tests (parallel runner option)
/kiwa:kiwa-vitest --module your-module         # Vitest unit (F-3)
/kiwa:kiwa-api --module your-module            # API integration (F-3)
/kiwa:kiwa-play --init                          # Bootstrap Playwright fixture for a fresh dApp
/kiwa:kiwa-play --mode new                      # Add new dApp e2e tests
/kiwa:kiwa-play --mode extend                   # Extend existing dApp e2e tests

# Review — covers spec / test / result (provide --module + --layer to resolve paths)
/kiwa:kiwa-review --mode test-review --module your-module --layer contract

The --example flag and /kiwa:kiwa-test one-shot orchestrator are intended for the kiwa monorepo itself (which has examples/). Plugin users run the individual skills above directly from their project.

Update the plugin later:

/plugin marketplace update kiwa-marketplace  # refresh the catalog
/plugin update kiwa@kiwa-marketplace         # apply the new version

Option B: Clone & install (for kiwa contributors)

# 1. Clone & install
git clone https://github.com/cardene777/kiwa.git && cd kiwa
pnpm install

# 2. In Claude Code (run from the kiwa repo), the project-local skills load automatically
/kiwa-test --example nextjs-token-gating   # one-shot orchestrator (kiwa repo only, uses examples/)

Option C: Playwright fixture only (no Claude needed)

pnpm dlx @kiwa-lab/cli init
pnpm install
pnpm exec playwright test

Prerequisites: Node.js 20+ · pnpm/npm/yarn · Foundry (anvil + forge) · Playwright (pnpm exec playwright install)

init scaffolds:

e2e/
├── connect.spec.ts         ← Playwright spec wired to dappE2eTest
playwright.config.ts        ← Headless Chromium config
package.json                ← test:e2e script + peer deps

Now available on npm — pnpm dlx @kiwa-lab/cli init works out of the box (no clone required).

Option D — Local checkout (for kiwa contributors)

If you are hacking on kiwa itself and want to test changes against a local dApp project before publishing, link with a file: dependency:

# 1. Clone & build kiwa
git clone https://github.com/cardene777/kiwa.git ~/kiwa
cd ~/kiwa
pnpm install
pnpm -F @kiwa-lab/dapp -F @kiwa-lab/cli build

# 2. In your test project, add a file: dependency
cd /path/to/your-dapp
pnpm add -D file:$HOME/kiwa/packages/dapp file:$HOME/kiwa/packages/cli

# 3. Scaffold from the locally-installed CLI
pnpm exec kiwa init     # or: node $HOME/kiwa/packages/cli/dist/index.js init

For everyday use, prefer Option C (pnpm dlx @kiwa-lab/cli init) which pulls the published 0.1.0 version directly.

Using kiwa with a CJS / Next.js 14 project

@kiwa-lab/dapp ships both ESM and CJS builds (dist/index.js + dist/index.cjs), so both import and require resolve correctly. You can drop it into any of:

Project type What works out of the box
Pure ESM ("type": "module") import { dappE2eTest } from '@kiwa-lab/dapp'
Pure CJS ("type": "commonjs") const { dappE2eTest } = require('@kiwa-lab/dapp')
Next.js 14 (CJS host with ESM packages) Both forms resolve; Next bundles CJS, Playwright runs ESM

If you still hit Error: No "exports" main defined (older toolchains), isolate the kiwa test dir as ESM with a local package.json:

mkdir -p tests/kiwa
echo '{"type":"module"}' > tests/kiwa/package.json

Only tests/kiwa/**.ts is treated as ESM; the rest of your tests/ keeps its existing CJS resolution.

Differences from MetaMask (read before shipping)

@kiwa-lab/dapp aims to be production-realistic but explicit about deltas. Key default behavioural differences:

Behavior MetaMask kiwa (default) Override
eth_accounts before connect returns [] returns the wallet's account (always "connected") set dappE2e.setApprovalMode('reject') to refuse eth_requestAccounts and keep accounts hidden
Network add prompt shows a popup silent allow (no chain in store → switch fails) call dappE2e.addChain(config) from the test to seed networks
User reject on send popup with reject button rejected via setApprovalMode('reject') returning code: 4001 see docs/en/cookbook/user-reject.md
EIP-6963 announce announced on extension install announced on fixture init see docs/en/concepts/eip-6963.md

The full RPC fidelity matrix lives in docs/MOCK-DESIGN.md (A/B/C level scoring rubric).


Features

Layer 1: Test design automation (/kiwa-design)

  • 📋 9-section unified spec — Target / Spec summary / Quality risks / Recommended composition / Viewpoints / Cases / Automated / Manual / Insufficient spec
  • 🎯 10-viewpoint catalog — Happy / Failure / Boundary / State transition / Permission / Validation / Idempotency / Concurrency / Performance / Security
  • ⚖️ 5-criteria risk scoring — Revenue / Security / Data destruction / Frequency / Past incidents → drives test priority deterministically
  • 📄 9-column case table — Test ID / Level / Viewpoint / Precondition / Input / Steps / Expected / Priority / Automation
  • 🔁 Retrofit-first — reverse-engineers specs from existing .sol, app/, tests/, OpenAPI specs

Layer 2: Contract test generators (/kiwa-forge + /kiwa-hardhat)

  • 🔨 Foundry mapping — fuzz / invariant + Handler / vm.prank / vm.expectRevert(Error.selector) / vm.warp / --gas-report
  • ⚒️ Hardhat mappingchai-matchers revertedWithCustomError / fast-check asyncProperty / loadFixture / hardhat-gas-reporter
  • 🪞 Mirror generation — both runners produce the same TC-NNN IDs from one spec; teams can run Foundry, Hardhat, or both
  • 🛡️ Coverage gate enforced — Lines ≥ 90%, Statements ≥ 90%, Branches ≥ 80%, Funcs ≥ 90%. The skill won't write test-passed marker until all four metrics pass

Layer 2: dApp E2E fixture (/kiwa-play + @kiwa-lab/dapp)

  • 🦊 Inject window.ethereum without any browser extension
  • Spawn anvil per test for total chain isolation
  • 🔌 9 RPC methods handled directly (eth_requestAccounts / personal_sign / eth_signTypedData_v4 / eth_sendTransaction / wallet_switchEthereumChain …), the rest forwarded to anvil
  • 📡 EIP-1193 eventsaccountsChanged / chainChanged / connect / disconnect triggerable from tests
  • 👛 EIP-6963 multi-wallet — declare MetaMask, Rabby, Coinbase, … side-by-side
  • 🤖 Smart contract account (AA)isContractAccount: true reroutes personal_sign through EIP-1271, eth_sendTransaction through execute()
  • 📦 viem as peer dep — your project owns the version
  • 🔁 --mode extend — appends new viewpoints without breaking existing tests, 4-round flake check built in
  • error envelope preserves code and message across page boundaries

Industry-standard helpers (@kiwa-lab/dapp)

Helper Purpose
snapshotChain / revertChain Per-test isolation via evm_snapshot / evm_revert
expectCustomError One-liner Solidity custom-error assertion
increaseTime / mineBlock / setNextBlockTimestamp Time travel for vesting / TTL / timelock
impersonateAccount / stopImpersonateAccount / setBalance Act as arbitrary EOA / contract with injected balance
startAnvilCluster Multi-chain (L1 + L2 + …) anvil cluster
startAnvilFork anvil --fork-url thin wrapper (mainnet / sepolia / any RPC)
expectEvent decodeEventLog + assertion combined
expectBalanceChange / expectEthBalanceChange Balance delta assertion (hardhat-chai-matchers compatible)

How does kiwa compare to other tools?

kiwa sits at the intersection of two ecosystems. Short version:

Axis Closest competitor kiwa's differentiation
dApp E2E fixture (Playwright + viem + anvil) wallet-mock, Synpress, dappwright wallet-mock is closest (headless window.ethereum injection). Synpress / dappwright automate the real MetaMask UI. kiwa stays headless and adds a CLI scaffold (pnpm dlx @kiwa-lab/cli init) plus the skill chain below.
Spec → test generation hardhat-test-suite-generator, Foundry / Hardhat AI plugins (2026), Claude Code spec-driven dev None drive four layers (contract / unit / integration / e2e) from a single 9-section / 9-column spec. kiwa's /kiwa-design/kiwa-{forge,hardhat,play,vitest,api}/kiwa-review chain is the differentiator.

See docs/COMPARISON.md for the full comparison tables (Synpress / dappwright / wallet-mock / kiwa on the fixture axis, plus hardhat-test-suite-generator / Foundry AI / Claude Code spec-driven dev on the test-generation axis), selection guide, and the explanation of why kiwa intentionally does not own MetaMask extension automation.


Runtime support

@kiwa-lab/* packages target Node.js 22+ as the production baseline. Bun (bun.sh) is also supported for the entire 19-package matrix — all packages pass Vitest under Bun without modification.

Runtime Status Verification
Node.js 22+ ✅ primary local /verify skill runs Vitest + coverage + mutation gates pre-merge
Bun 1.3+ ✅ supported (v1.2+) local bunx --bun vitest run over all 19 packages (Running tests under Bun locally 参照)
Deno 2.x ✅ supported (v1.2+) local deno run --allow-all npm:vitest run over all 19 packages (Running tests under Deno locally 参照)
Cloudflare Workers / Vercel Edge ✅ via @kiwa-lab/edge KV mock + invokeEdgeHandler (Miniflare 不要)

Running tests under Bun locally

# install deps (still requires pnpm)
pnpm install

# run a single package's tests under Bun
cd packages/edge
bunx --bun vitest run

# loop over every package
for pkg in core api ui data cli-test observability e2e cli a11y visual nextjs nuxt sveltekit remix astro solidstart qwikcity edge; do
  (cd packages/$pkg && bunx --bun vitest run)
done

Vitest itself doesn't need a Bun-specific runner — Vitest's Node compat surface is exercised through Bun's Node API shim. bun test (Bun's native runner) is NOT used because Vitest's API surface (describe / it / vi.mock) is incompatible with Bun's native runner.

Running tests under Deno locally

# install deps (still requires pnpm)
pnpm install

# run a single package's tests under Deno
cd packages/edge
deno run --allow-all npm:vitest run

# loop over every package
for pkg in core api ui data cli-test observability e2e cli a11y visual nextjs nuxt sveltekit remix astro solidstart qwikcity edge; do
  (cd packages/$pkg && deno run --allow-all npm:vitest run)
done

Deno reads Vitest through its npm: specifier compatibility layer — no deno.json import map required. --allow-all is the simplest permission set; real-world Deno consumers can tighten this to --allow-read --allow-env --allow-net=localhost for sandboxed CI.


Coverage requirement

/kiwa-forge and /kiwa-hardhat block the test-passed marker until all four coverage metrics clear thresholds. Default values (tuned for OSS-grade smart contracts):

Metric Default threshold Rationale
Lines 90 % Cover the primary paths fully
Statements 90 % Statement-level coverage
Branches 80 % 100% on Solidity require / revert / short-circuit is impractical
Functions 90 % Cover every public / external function

If any metric falls short, the skill records the under-covered viewpoints / error paths / events back into the Layer 1 spec's "Insufficient spec" section so the next loop can address them — instead of silently signing off on weak tests.

Override with --coverage-lines 95 --coverage-branches 85 etc.


Quality gates

kiwa enforces two independent gates at release time so a publish can't ship without both. Both gates run via local /verify skill (pre-merge) and scripts/check-{coverage,mutation}-gates.mjs (pre-publish) and fail if any package regresses.

Gate 1 — Coverage (scripts/check-coverage-gates.mjs)

Lines / Statements / Functions ≥ 90 %, Branches ≥ 80 %, across all 11 packages. Optional-peer-dep error paths in the adapter wrappers (msw / pixelmatch / pngjs / @testing-library/* / @vue/test-utils / @solidjs/testing-library / lit / @noma.to/qwik-testing-library / @testing-library/angular) are why Branches stays at 80 — they cannot be exercised when their peer is installed for the package-local tests.

Gate 2 — Mutation Score Indicator (scripts/check-mutation-gates.mjs)

Stryker runs against the compiled .vitest-dist/src/ artefacts for every package and the gate computes MSI = killed / (killed + survived + timeout). Thresholds are intentionally per-package — pure-logic packages hold to 90 %+, thin wrappers around third-party libs are pinned at 80 %.

Package MSI Threshold
@kiwa-lab/api 96.06 % 90
@kiwa-lab/a11y 93.62 % 90
@kiwa-lab/ui 91.76 % 80
@kiwa-lab/cli-test 89.69 % 80
@kiwa-lab/data 86.93 % 80
@kiwa-lab/core 85.51 % 80
@kiwa-lab/dapp 85.09 % 80
@kiwa-lab/cli 84.44 % 80
@kiwa-lab/e2e 84.21 % 80
@kiwa-lab/observability 84.12 % 80
@kiwa-lab/visual 83.02 % 80

Run both gates locally:

pnpm test:mutation                  # builds + mutates all 11 packages
pnpm gate:mutation                  # asserts the per-package thresholds
pnpm gate:coverage                  # asserts Lines/Branches/Functions thresholds

Examples

For a reverse lookup by feature, jump to docs/en/examples/README.md. For a 30 min ~ 1 hour guided tour through five popular examples, follow docs/en/examples/walkthrough.md. Per-example READMEs live under examples/{name}/README.md (bilingual README.ja.md available for the popular five — basic-connect / mint-nft / defi-swap / nextjs-wagmi-rainbow / nft-marketplace).

Retrofit examples with verified Foundry / Hardhat / Playwright chains

These three examples have forge test + hardhat test (where applicable) + playwright test, all in 4-round zero-flake state, with coverage gates passed:

Example Contract tests (Foundry) Contract tests (Hardhat) E2E tests (Playwright) Coverage (Lines / Branches)
mint-nft 27 / 27 24 / 24 (covered by basic-connect) Foundry 97.70 / 83.33 · Hardhat 93.75 / 80.56
defi-swap 17 / 17 (covered by basic-connect) 100 / 87.50
nextjs-token-gating 20 / 20 8 existing PASS 100 / 87.50

dApp E2E reference (@kiwa-lab/dapp fixture)

20 reference dApps live under examples/, proving the fixture against a wide stack:

Example Stack / Domain E2E tests
basic-connect inline HTML + EIP-6963 + reject paths 15
nextjs-wagmi-rainbow Next.js 14 + wagmi v2 + RainbowKit 4
vite-react-wagmi Vite 5 + React 18 + wagmi v2 (SPA) 3
nextjs-aa-erc4337 Full ERC-4337 v0.7 (EntryPoint + SimpleAccountFactory + UserOp bundler stub) 7
nextjs-aa-smart-account Simplified ERC-4337 + ERC-1271 + guardian recovery 10
nextjs-multi-chain 3-chain parallel anvil + chain switch 6
nextjs-bridge L1 ↔ L2 lock / mint / burn / unlock 10
nextjs-permit-swap EIP-2612 permit + deadline 6
nextjs-dao-vote Compound-style Governor + timelock + quorum 10
nextjs-lending Aave-style lending + liquidation + max LTV 10
nextjs-staking Stake + reward + early-unstake penalty 12
nextjs-erc1155-game ERC-1155 batch mint / transfer / burn 8
nextjs-vesting Cliff + linear vesting + immutability 9
nextjs-token-gating NFT-gated content + timed access + transfer revoke 8
nextjs-ens-resolver ENS-like forward / reverse + collision 7
nextjs-event-history Past event query + multi-indexed filter 7
nextjs-zk-verifier Commit-reveal + range proof variant 7
nft-marketplace List / buy / offer / royalty split 12

Framework full server PoC (real dev server + kiwa helper unit test + Playwright e2e の 2 軸構成)

@kiwa-lab/{framework} の helper を 実 framework dev server で動かす reference 実装。 Pattern A (Dependency Injection) で thin wrapper / pure logic を分離、 unit test (kiwa helper、 Nitro 不要) と e2e test (Playwright + 実 dev server) を 同じ pure logic に対して別 angle で走らせる構成。 OSS contributor が自プロジェクトに kiwa を導入する際の参考に。

Example Stack / 対象 helper Unit tests (kiwa) E2E tests (Playwright)
nuxt-server-routes-full Nuxt 3 + @kiwa-lab/nuxt v1.0.4+ (3 helper 全 demo) 20 (Server Routes 8 + route middleware 6 + Nitro plugin 6) 4 (real nuxt dev :3030)
sveltekit-full SvelteKit 2 + @kiwa-lab/sveltekit v1.0.x (3 helper 全 demo) 19 (load 8 + actions 6 + handle 5) 4 (real vite dev :3040)
remix-full Remix v2 + @kiwa-lab/remix v1.1.x (loader + action + Resource Route + nested route chain + 共通 auth) 31 (loader 8 + action 7 + resource 6 + auth 5 + nested chain 5) 7 (real remix vite:dev :3050)
astro-server-endpoints-full Astro v5 SSR + @kiwa-lab/astro v1.0.x (APIRoute GET/POST + middleware locals) 24 (items GET 8 + items POST 7 + counter 5 + auth 4) 7 (real astro dev :3060)
nextjs-app-router-full Next.js v15 App Router + @kiwa-lab/nextjs v1.0.x (Server Actions + middleware + RSC + Route Handler の 4 layer) 21 (action 6 + middleware 5 + RSC 5 + route 5) 7 (real next dev :3070)

Multi-Wallet (EIP-6963)

import { dappE2eTest } from '@kiwa-lab/dapp';

const test = dappE2eTest.extend({
  wallets: [
    {
      name: 'MetaMask',
      rdns: 'io.metamask',
      icon: 'data:image/svg+xml;base64,...',
      privateKey: '0xac09...ff80',
    },
    {
      name: 'Rabby',
      rdns: 'io.rabby',
      icon: 'data:image/svg+xml;base64,...',
      privateKey: '0x59c6...690d',
    },
  ],
});

test('multi wallet picker', async ({ page, dappE2e }) => {
  await dappE2e.wallets!['io.rabby'].connect();
});

When wallets is unset, a single MetaMask-compatible wallet runs (backward compatible).


Testing & Quality

Phase E rebrand snapshot (main @ b7267a7):

Metric Value
4-layer chain examples 3 (mint-nft / defi-swap / nextjs-token-gating)
Foundry tests across 3 examples 64 (27 + 17 + 20)
Hardhat tests (mint-nft) 24
Playwright tests (basic-connect) 15
4-round execution total 292 PASS (164 Foundry + 68 Hardhat + 60 Playwright)
Flaky 0 / 292
Coverage Lines 93.75 – 100 % across all chains
Coverage Branches 80.56 – 87.50 % across all chains
Coverage Functions 95.24 – 100 %
Adversarial review findings (resolved) 21 (5 CRITICAL / 9 MAJOR / 7 MINOR, all closed in-PR)

The 4-round flake check is mandatory before any release tag — runner at .context/scratch/multi-round-all-examples.sh (developer-side).

Adversarial review patterns are catalogued in adversarial-pitfalls.md as a self-check checklist for false positives.


Documentation

Full 5-section docs (Quickstart / Concepts / API / Cookbook / FAQ) maintained in JP↔EN 1:1 translation under docs/.

Reference docs:

docs/SKILL-DESIGN.md SSOT for all 30 skills (5-step flow, 9-section output, 13 viewpoints, 5 risk criteria)
docs/MOCK-DESIGN.md Wallet / SDK mock fidelity spec (A/B/C levels, scoring rubric)
tests/docs/skill-chain-tutorial.md skill chain walkthrough (retrofit-first)
docs/RPC.md 9 directly-handled RPC + anvil fallback
docs/EVENTS.md 4 events + triggerEvent()
docs/ERRORS.md EIP-1193 error code + envelope design
docs/MIGRATION.md v0.x breaking-change policy + dapp-e2e → kiwa rebrand notice
docs/COMPARISON.md Synpress / dappwright / wallet-mock comparison + spec-driven test generation axis (hardhat-test-suite-generator / Foundry AI / Claude Code)
docs/RELEASING.md Publish flow + provenance

For Claude Code users — full skill reference:


Limitations

kiwa v1.0 ships complete coverage for the layers below. The table is exhaustive and intentionally honest — features outside this list are tracked in Roadmap below, not silently missing.

What kiwa v1.0 covers end-to-end

Layer Status Skill Runtime fixture
Solidity contracts (Foundry + Hardhat) ✅ production-ready /kiwa-forge + /kiwa-hardhat forge / hardhat
dApp e2e (Playwright + viem + anvil) ✅ production-ready, 22 examples /kiwa-play @kiwa-lab/dapp v1.0.1
HTTP API (msw + supertest + Playwright request) ✅ production-ready /kiwa-api @kiwa-lab/api v1.0.1
Client components (React / Vue / Svelte / SolidJS / Lit / Qwik / Angular / Chromium) ✅ production-ready, 8 frameworks /kiwa-ui @kiwa-lab/ui v1.0.1
Generic browser e2e (Playwright, non-web3) ✅ production-ready /kiwa-e2e @kiwa-lab/e2e v1.0.1
Accessibility (axe-core, WCAG 2.1 AA) ✅ production-ready /kiwa-a11y @kiwa-lab/a11y v1.0.1
Visual regression (pixelmatch + pngjs) ✅ production-ready /kiwa-visual @kiwa-lab/visual v1.0.1
Queue / cron / batch / DLQ ✅ production-ready /kiwa-data @kiwa-lab/data v1.0.1
CLI / shell / file IO ✅ production-ready /kiwa-cli-test @kiwa-lab/cli-test v1.0.1
Unit tests (Vitest generic) ✅ production-ready /kiwa-vitest Vitest
Flaky / spec-coverage observability ✅ production-ready /kiwa-observe @kiwa-lab/observability v1.0.1
Next.js Server Actions ('use server') ✅ production-ready (v1.0.1+) /kiwa-nextjs @kiwa-lab/nextjs v1.0.1
Next.js middleware (middleware.ts) ✅ production-ready (v1.0.2+) /kiwa-nextjs (--layer nextjs-middleware) @kiwa-lab/nextjs v1.0.2
Next.js React Server Components (async server component) ✅ production-ready (v1.0.3+) /kiwa-nextjs (--layer nextjs-rsc) @kiwa-lab/nextjs v1.0.3
Next.js Parallel Routes + Intercepting Routes (@modal / @sidebar / (.)) ✅ production-ready (v1.0.4+) /kiwa-nextjs (--layer nextjs-parallel-route) @kiwa-lab/nextjs v1.0.4
Next.js RSC streaming + Suspense boundary (chunk capture + fallback / resolved 遷移 + error boundary) ✅ production-ready (v1.1+) /kiwa-nextjs (--layer nextjs-rsc-streaming) @kiwa-lab/nextjs v1.1
Nuxt 3 Server Routes (defineEventHandler) ✅ production-ready (v1.0.0+) /kiwa-nuxt (--layer nuxt-server-route) @kiwa-lab/nuxt v1.0.0
Nuxt 3 route middleware (middleware/*.ts) ✅ production-ready (v1.0.2+) /kiwa-nuxt (--layer nuxt-route-middleware) @kiwa-lab/nuxt v1.0.2
Nuxt 3 Nitro plugin lifecycle (defineNitroPlugin) ✅ production-ready (v1.0.3+) /kiwa-nuxt (--layer nuxt-nitro-plugin) @kiwa-lab/nuxt v1.0.3
SvelteKit load + form actions + hooks.server (handle / handleFetch / handleError) ✅ production-ready (v1.0.1+) /kiwa-sveltekit (--layer sveltekit-load / --layer sveltekit-action / --layer sveltekit-handle / --layer sveltekit-handle-fetch / --layer sveltekit-handle-error) @kiwa-lab/sveltekit v1.0.1
Remix v2 / React Router v7 loader + action ✅ production-ready (v1.0.0+) /kiwa-remix (--layer remix-loader / --layer remix-action) @kiwa-lab/remix v1.0.0
Remix v2 Resource Routes (HTTP method dispatch + 405 capture) ✅ production-ready (v1.0.2+) /kiwa-remix (--layer remix-resource-route) @kiwa-lab/remix v1.0.2
Remix v2 nested route chain (parent → child loader + headers() merge + Set-Cookie persist + defer()) ✅ production-ready (v1.1+) /kiwa-remix (--layer remix-nested-route-chain) @kiwa-lab/remix v1.1.0
Astro Server Endpoints (pages/api/*.ts) ✅ production-ready (v1.0.0+) /kiwa-astro (--layer astro-endpoint) @kiwa-lab/astro v1.0.0
Astro .astro page SSR (redirect / notFound / rewrite signal capture) ✅ production-ready (v1.0.2+) /kiwa-astro (--layer astro-ssr) @kiwa-lab/astro v1.0.2
SolidStart Server Functions + API Routes ✅ production-ready (v1.0.0+) /kiwa-solidstart (--layer solidstart-server-function / --layer solidstart-api-route) @kiwa-lab/solidstart v1.0.0
Qwik City routeAction + routeLoader + Endpoints ✅ production-ready (v1.0.0+) /kiwa-qwikcity (--layer qwikcity-action / --layer qwikcity-loader / --layer qwikcity-endpoint) @kiwa-lab/qwikcity v1.0.0
Edge runtime (Cloudflare Workers / Vercel Edge / generic fetch handler) ✅ production-ready (v1.0.0+) /kiwa-edge (--layer edge-handler) @kiwa-lab/edge v1.0.0
Auth (NextAuth v5 / Auth.js — session + 3 provider + database adapter mocks) ✅ production-ready (v0.1+) /kiwa-design (--layer auth-nextauth) @kiwa-lab/auth v0.1.0
SolidJS Signal + Effect + createResource + Suspense (@kiwa-lab/solidjs) ✅ production-ready (v0.1+, Issue #813) (test-only helpers) @kiwa-lab/solidjs v0.1.0
Deno Fresh Islands + Route Handler + Head normalization (@kiwa-lab/fresh) ✅ production-ready (v0.1+, Issue #814) (test-only helpers) @kiwa-lab/fresh v0.1.0
HonoJS Cloudflare Workers + hc RPC type-safe client + middleware chain (@kiwa-lab/hono) ✅ production-ready (v0.1+, Issue #815) (test-only helpers) @kiwa-lab/hono v0.1.0

Next.js, Nuxt, SvelteKit, Remix, and Astro client-side pages are tested through /kiwa-ui (React / Vue / Svelte component layer) plus /kiwa-e2e (browser layer). Next.js API Routes under app/api/*/route.ts are tested through /kiwa-api (examples/nextjs-api-poc/ is a working reference).

What kiwa v1.0 does NOT cover (explicitly out of scope)

Layer Status Workaround for v1.0 Tracking
Next.js Server Actions ('use server') ✅ shipped in v1.0.1 — /kiwa-nextjs skill + @kiwa-lab/nextjs runtime (n/a, fully supported) #493 ✅ resolved
Next.js React Server Components (RSC) ✅ shipped in v1.0.3 — /kiwa-nextjs --layer nextjs-rsc + renderServerComponent + findAll + textContent (n/a, fully supported) #494 ✅ resolved
Next.js middleware.ts ✅ shipped in v1.0.2 — /kiwa-nextjs --layer nextjs-middleware + invokeMiddleware (n/a, fully supported) #495 ✅ resolved
Nuxt 3 Server Routes ✅ shipped in v1.0.0 — /kiwa-nuxt --layer nuxt-server-route + invokeEventHandler (n/a, Server Routes fully supported) #496 ✅ resolved (composables → kiwa-ui Vue mode)
Nuxt 3 route middleware ✅ shipped in v1.0.2 — /kiwa-nuxt --layer nuxt-route-middleware + invokeRouteMiddleware (navigateTo / abortNavigation signal capture) (n/a, route middleware fully supported) #523 ✅ resolved
Nuxt 3 Nitro plugin lifecycle ✅ shipped in v1.0.3 — /kiwa-nuxt --layer nuxt-nitro-plugin + invokeNitroPlugin (7 hook + hookOnce + callHookErrors) (n/a, Nitro plugin lifecycle fully supported) #523 ✅ resolved
Next.js Parallel Routes + Intercepting Routes ✅ shipped in v1.0.4 — /kiwa-nextjs --layer nextjs-parallel-route + invokeParallelRoutes (parallel slot await + intercepting variant) (n/a, parallel + intercepting routes fully supported) #523 ✅ resolved
Astro .astro page SSR ✅ shipped in v1.0.2 — /kiwa-astro --layer astro-ssr + renderAstroPage (redirect / notFound / rewrite + cookies + locals) (n/a, .astro page SSR fully supported; HTML-perfect snapshot は Astro Container API 直接利用も併用可) #523 ✅ resolved
Remix v2 Resource Routes ✅ shipped in v1.0.2 — /kiwa-remix --layer remix-resource-route + invokeResourceRoute (HTTP method dispatch + 405 + allow list) (n/a, Resource Routes fully supported including binary download) #523 ✅ resolved
Remix v2 nested route chain ✅ shipped in v1.1.0 — /kiwa-remix --layer remix-nested-route-chain + setupRemixNestedRouteEnv (parent → child loader chain + parent JSON Response auto-deserialize + Set-Cookie cookieStore persist + getDocumentHeaders 互換 headers() merge + defer() / resolveDeferred() streaming resolve) (n/a, nested route chain fully supported including defer()) #561 ✅ resolved
SvelteKit load / form actions ✅ shipped in v1.0.0 — /kiwa-sveltekit + invokeLoad / invokeAction (n/a, load + actions fully supported; hooks.server.ts still tracked) #497 ✅ resolved
Remix / React Router v7 loader / action ✅ shipped in v1.0.0 — /kiwa-remix + invokeLoader / invokeAction (n/a, loader + action fully supported including Response normalize) #498 ✅ resolved
Astro Server Endpoints ✅ shipped in v1.0.0 — /kiwa-astro + invokeEndpoint (n/a, Server Endpoints fully supported; Islands → kiwa-ui framework adapter; .astro rendering → Astro Container API direct) #499 ✅ resolved
SolidStart Server Functions + API Routes ✅ shipped in v1.0.0 — /kiwa-solidstart + invokeServerFunction / invokeApiRoute (n/a, fully supported) #518 ✅ resolved
Qwik City routeAction + routeLoader + Endpoints ✅ shipped in v1.0.0 — /kiwa-qwikcity + invokeRouteAction / invokeRouteLoader / invokeEndpoint (n/a, fully supported) #519 ✅ resolved
Python pytest adapter (PyPI publish) ✅ shipped in v1.0.0 — pip install kiwa-test-py (n/a, fully supported) #492 ✅ resolved
Bun runtime (bun.sh) ✅ shipped in v1.2 — all 19 packages pass Vitest under Bun via bunx --bun vitest run (verified locally pre-merge via /verify skill) (n/a, pnpm install + bunx vitest) #520 ✅ resolved
Deno runtime ✅ shipped in v1.2 — all 19 packages pass Vitest under Deno via deno run --allow-all npm:vitest run (verified locally pre-merge via /verify skill) (n/a, pnpm install + deno run) #521 ✅ resolved
Edge runtime (Cloudflare Workers / Vercel Edge) ✅ shipped in v1.0.0 — /kiwa-edge + invokeEdgeHandler + createKvNamespace (Miniflare 不要、 pure JS mock) (n/a, fetch handler + KV fully supported; R2 / D1 / DurableObject は test 側 vi.fn() で対応) #522 ✅ resolved
Desktop (Electron / Tauri) / mobile (React Native / Expo) ❌ out of scope Use platform-native test tooling not on roadmap
ORM (Drizzle / Prisma / Kysely) query test layer ❌ no dedicated adapter Use /kiwa-vitest + testcontainers (tracked in v1.2)
Other test runners (Jest / Jasmine / Mocha) ❌ Vitest-only by design None — use Vitest not on roadmap

If your stack falls outside the ✅ list above, kiwa is still useful for the layers it does cover (e.g., your Next.js client + API routes still work even if Server Actions need hand-writing for now), but don't expect the chain to cover everything end-to-end. The Roadmap below shows where coverage is heading.

Roadmap

Milestone Scope Status Tracking
v1.1 Next.js Server Actions / RSC / middleware skill + runtime, PyPI publish for kiwa-test-py, Nuxt 3 / SvelteKit / Remix v2 / Astro Server Route adapters 8/8 resolved (#492 #493 #494 #495 #496 #497 #498 #499) v1.1 label
v1.2 SolidStart / Qwik City Server adapters, Bun / Deno runtime support, Edge runtime (Cloudflare Workers via Miniflare), SvelteKit hooks.server.ts, framework sub-features (Next.js Parallel Routes / Nuxt route middleware + Nitro plugin / Astro .astro SSR / Remix Resource Routes), ORM (Drizzle / Prisma / Kysely) + testcontainers (9 組合せ matrix), mutation gate extension to 19 packages, full-stack examples/* for each framework 11/11 resolved (#518 #519 #520 #521 #522 #523 #524 #525 #526 #527 #538) — npm publish 完了 (@kiwa-lab/orm v0.6.0 含む 20 package) v1.2 label
v1.3 既存 framework adapter の深堀り — Next.js RSC / streaming / Suspense boundary, SvelteKit hooks 全 4 種 (handle / handleError / handleFetch / locals), Astro view transitions test, Remix Resource Routes 追加 helper (nested route chain), Nuxt route middleware 追加 case, ORM follow-up (Prisma + MySQL / Kysely Migrator) を maintenance sub-Issue で吸収 6/6 resolved (#558 #559 #560 #561 #562 #563、 fix follow-up #568) — npm publish 完了 (@kiwa-lab/{nextjs,sveltekit,astro,remix,nuxt} v1.1.x + @kiwa-lab/orm v0.7.0、 ORM matrix 11 組合せ) v1.3 label
v1.4 polyglot 拡張 — kiwa-test-rs v0.1 (Rust cargo test + reqwest/hyper integration) + kiwa-test-go v0.1 (Go testing.T + net/http/httptest integration) + Layer 1 spec polyglot 拡張 (rust-unit / rust-integration / go-unit / go-integration の 4 layer) + skill chain 拡張 (/kiwa-rust / /kiwa-go Layer 2 skill 新規 + kiwa-review polyglot 対応)。 polyglot positioning 完成 ... TS / Python / Solidity + Rust + Go = 5 言語 6/6 resolved (#576 #577 #578 #579 #580 #581) — 5 言語 polyglot 完成 (kiwa-test-rs v0.1 + kiwa-test-go v0.1 + 27 skill chain、 v1.8 で 30 skill に拡張) v1.4 label
v1.5 polyglot 縦深化 — kiwa-test-rs v0.2 (axum + actix-web feature) + kiwa-test-go v0.2 (Gin + Echo helper) + Layer 1 spec polyglot 拡張 (rust-axum / rust-actix-web / go-gin / go-echo の 4 layer) + skill chain 拡張 (/kiwa-rust / /kiwa-go mode flag + /kiwa-review polyglot 対応)。 v1.4 polyglot 5 言語完成を web layer に伸ばす 6/6 resolved (#592 #593 #594 #595 #596 #597) — polyglot 縦深化完成 (kiwa-test-rs v0.2 + kiwa-test-go v0.2 + 4 web framework: axum / actix-web / Gin / Echo) v1.5 label
v1.6 品質固め — v1.5 Codex adversarial review ~65 件 findings を 6 topic に集約消化、 全 adapter (v1.4 mock_server + Rust axum/actix + Go gin/echo) で v1.4 mock_server 基準の parity 達成。 multi-value header array 保持 (Set-Cookie) / body defensive copy 全 point / Stop() lifecycle 活性化 / Send panic → t.Fatalf / recordRequest 重複削減 (internal/recorder factor) / docs 整合化 6/6 resolved (#607 #608 #609 #610 #611 #612) — 全 adapter parity 達成 (kiwa-test-rs v0.3 + kiwa-test-go v0.3) v1.6 label
v1.7 polyglot 継続深化 — kiwa-test-rs v0.4 (tower-http feature、 middleware chain helper + Cors/Trace/Compression/Auth/RateLimit/Timeout 6 middleware) + kiwa-test-go v0.4 (fiber subpackage + fasthttp 互換 API) + Layer 1 spec 2 layer 追加 (rust-tower-http + go-fiber) + skill chain 拡張 (/kiwa-design / /kiwa-rust --mode tower-http / /kiwa-go --mode fiber / /kiwa-review 対応)。 v1.5 4 web framework の polyglot 射程を伸ばす 6/6 resolved (#622 #623 #624 #625 #626 #627) — polyglot 継続深化完成 (kiwa-test-rs v0.4 + kiwa-test-go v0.4 + 6 web framework: axum / actix-web / tower-http / Gin / Echo / Fiber) v1.7 label
v1.8 新 layer 追加 — auth (@kiwa-lab/auth v0.1 NextAuth v5 + Lucia v3 + Better Auth) + job queue (@kiwa-lab/queue v0.1 BullMQ + Inngest) + cache (@kiwa-lab/cache v0.1 Redis testcontainers) + Layer 1 spec 3 layer + Layer 2 skill 3 種 (/kiwa-auth + /kiwa-queue + /kiwa-cache) 新規。 v1.5-v1.7 web framework 縦深化から SaaS prod 実 test 需要へ 6/6 resolved (#637 #638 #639 #640 #641 #642) — 新 layer 3 種完成 (@kiwa-lab/auth + @kiwa-lab/queue + @kiwa-lab/cache v0.1、 30 skill / 23 packages) v1.8 label
v1.9 provider 増強 — auth (@kiwa-lab/auth v0.2 + Clerk + Auth0) + job queue (@kiwa-lab/queue v0.2 + Cloudflare Queues + SQS) + cache (@kiwa-lab/cache v0.2 + Memcached + KeyDB) + Layer 1 spec に provider dimension 追加 + skill chain 拡張 (/kiwa-auth /kiwa-queue /kiwa-cache--provider flag)。 v1.8 の 1 provider land 直後の空白 (Clerk/Auth0/SQS 多数の prod) を潰し prod cover 率 90% 6/6 resolved (#652 #653 #654 #655 #656 #657) — 6 provider 追加完成 (auth 5 provider = NextAuth / Lucia / Better Auth / Clerk / Auth0、 queue 4 provider = BullMQ / Inngest / Cloudflare Queues / SQS、 cache 3 provider = Redis / Memcached / KeyDB、 30 skill + provider dimension、 packages v0.2 系) v1.9 label
v1.10 SaaS + self-host + polyglot 拡張 — auth (@kiwa-lab/auth v0.3 + Supabase Auth core + advanced (RLS + MFA + SSO SAML + Web3 SIWE)) + job queue (@kiwa-lab/queue v0.3 + RabbitMQ basic + advanced (DLX + delayed message + cluster + federation + auto-reconnect)) + Rust contract layer (kiwa-test-rs v0.4.2 + kiwa::contract::foundry (forge / cast / anvil subprocess + Anvil Drop cleanup + coverage lcov emit + graceful skip) + kiwa::contract::alloy (SolAbi JSON parser + built-in keccak-256 selector + Signer 4 種 (LocalWallet / AwsKms / Ledger / Trezor) + Provider 3 種 (Http / Ws / Ipc) + ContractCall encoding))。 v1.9 の provider 対称拡張から異なる 3 軸への並行拡張へシフト、 SaaS teams (Supabase) / self-host teams (RabbitMQ) / dApp Rust teams (Foundry-rs + alloy.rs) の 3 層同時カバー 6/6 resolved (#667 #668 #669 #670 #671 #672) — auth v0.3 (core + advanced 6 provider に拡張)、 queue v0.3 (RabbitMQ 追加、 5 provider に)、 kiwa-test-rs v0.4.2 (contract-foundry + contract-alloy feature opt-in で dep 追加なし)、 30 skill 維持 + Layer 1 spec に contract-rust layer 追加 v1.10 label
v1.11 quality gate 補強 — @kiwa-lab/quality-metrics harness (5 軸統一 score: coverage / test count / fidelity / perf p95 / mutation kill、 release gate SSOT 化) + dogfood app 3 種 (Supabase SaaS + RabbitMQ worker + Foundry dApp、 real mode vs mock mode の fidelity 実測) + docs 補強 (typedoc TS + cargo doc Rust + forge doc Solidity + tutorial 5 本 + migration guide 2 本 + /docs-generate local skill) + GitHub Pages 公開 (VitePress site skeleton + /docs-publish local skill + Playwright docs E2E 7 test、 CI 全面禁止規約に沿って gh-pages branch push で公開)。 v1.10 まで provider 拡張の直交軸だったが「release 品質を数値で判断可能にする」 縦軸に思想シフト 6/6 resolved (#681 #682 #683 #684 #685 #686) — @kiwa-lab/quality-metrics v0.1 (5 軸統一 harness + release gate SSOT)、 dogfood 3 app (adapter template + fidelity harness の Rust/TS 両言語再利用性実証)、 docs 3 pillars (tutorial 5 本 + migration 2 本 + API reference 3 系統) + VitePress site skeleton + Playwright E2E v1.11 label
v1.12 AI-LLM 縦軸 — @kiwa-lab/quality-metrics v0.2 (4 軸拡張 = cost / latency / token / accuracy、 合計 11 軸 release gate SSOT、 AI-LLM 分岐で @kiwa-lab/ai-* provider のみ 4 軸強制) + @kiwa-lab/ai-llm harness v0.1 (Anthropic Messages API + OpenAI Chat Completions + Vercel AI SDK + LangChain の 4 SDK 統一 mock、 streaming / tool-use / system prompt / cost tracking、 real vs mock fidelity harness) + dogfood app 3 種 (Anthropic chatbot + OpenAI tool agent + Vercel AI RAG、 real / mock 実測 fidelity) + docs 補強 (tutorial 3 本 + migration guide v1.11→v1.12 + docs/concepts/ai-llm-testing.md non-determinism 思想 SSOT) + VitePress publish。 2026 主戦場の AI-LLM mock 難所 (streaming / tool-call / RAG / cost / non-determinism) を release 品質 SSOT 下で扱う縦軸思想 6/6 resolved (#695 #696 #697 #698 #699 #700) — @kiwa-lab/quality-metrics v0.2 (11 軸)、 @kiwa-lab/ai-llm v0.1 (4 SDK 統一 mock + fidelity harness)、 dogfood 3 app (real vs mock)、 docs 3 pillars (tutorial 06/07/08 + migration v1.11→v1.12 + concept doc ai-llm-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.12.0 v1.12 label
v1.13 Realtime 縦軸 + perf harness — @kiwa-lab/perf-harness v0.1 (5 target 汎用性能測定、 p50 / p95 / p99 + regression 検知 + baseline 比較 + /kiwa-perf skill、 既存 perf.p95Ms release gate 軸に feed) + @kiwa-lab/realtime harness v0.1 (Supabase Realtime + Ably + Pusher + Socket.io/SSE の 4 provider 統一 mock、 presence / broadcast / postgres_changes / room / reconnect の 5 semantics、 discrete + synchronous virtual timeline engine、 real vs mock fidelity harness 5 scenario) + dogfood app 3 種 (Supabase Realtime chat + Ably collab cursor + Socket.io notification、 real / mock 実測 fidelity) + docs 補強 (tutorial 3 本 + migration guide v1.12→v1.13 + docs/concepts/realtime-testing.md 時間軸 mock 思想 SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) の mock 難所 2 大主軸を連続 cover する縦軸思想 7/7 resolved (#707 #710 #711 #712 #713 #714 #715) — @kiwa-lab/perf-harness v0.1 (5 target)、 @kiwa-lab/realtime v0.1 (4 provider 統一 mock + fidelity harness)、 dogfood 3 app (real vs mock、 7 軸 release gate 判定)、 docs 3 pillars (tutorial 09/10/11 + migration v1.12→v1.13 + concept doc realtime-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.13.0 v1.13 label
v1.14 横軸拡張 — @kiwa-lab/payment v0.1 (Stripe + Paddle + Lemon Squeezy webhook mock、 HMAC-SHA256 signature verify + timing-safe compare + 4 fixture builder + handler dispatch) + @kiwa-lab/search v0.1 (Meilisearch + Algolia + Typesense in-memory search mock、 word-overlap ranking + filter + facet + sort + 1-edit-distance typo tolerance) + @kiwa-lab/observability v1.1 telemetry 拡張 (OpenTelemetry + Datadog + Sentry mock、 span / metric / log / exception / transaction 統一 TelemetryCollector) + kiwa-test-go v0.5 (Iris + Chi subpackage、 gin/echo/fiber と同一 TestServer contract で 5 web framework 統一) + perf 実測完遂 (v1.13-1 の 5 target を 9 target に拡張、 realtime + dogfood 3 realtime に perf test 追加)。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) の縦軸 3 連続完遂を受けて、 v1.14 は横軸拡張で SaaS 実運用の必須 provider を網羅 6/6 resolved (#722 #725 #726 #727 #728 #729) — perf-harness 全 9 target 実測 + release gate PASS、 @kiwa-lab/payment v0.1 (18 test)、 @kiwa-lab/search v0.1 (23 test)、 @kiwa-lab/observability v1.1 (78 test、 telemetry 3 provider 追加)、 kiwa-test-go v0.5 (iris + chi subpackage、 7 package 全 pass) v1.14 label
v1.15 AI-LLM 深化 — @kiwa-lab/ai-llm v0.2 (multimodal input mock: image + audio + Whisper transcription、 4 SDK 全対応、 imageTokenCost + audioTokenCost + detail 係数 0.5x/0.8x/1.0x、 prompt token 会計組込) + @kiwa-lab/mcp v0.1 (Model Context Protocol server + client mock + InMemoryTransport、 JSON-RPC 2.0 の 4 op (initialize / notifications/initialized / tools/list / tools/call) + 8 error code + 5 fixture tool (echo / calc / weather / search / db-query)) + @kiwa-lab/agent v0.1 (LangGraph 型 StateGraph + OpenAI Assistants v2 client の統一 API、 6 compile validation fail-fast + deterministic run id + requires_action → submitToolOutputs → completed status 遷移) + dogfood app 2 種 (multimodal-chat: Anthropic vision + streaming + multi-image compare / mcp-tool-agent: Node.js MCP server + Claude tool-use loop、 real vs mock fidelity) + docs 補強 (tutorial 3 本 16/17/18 + migration guide v1.14→v1.15 additive-only + concept doc ai-llm-multimodal-testing.md = image token 会計 / Whisper 設計 / MCP handshake 強制 / agent state machine / 11 軸 gate 統合 / multi-turn tool-loop の 6 design SSOT) + VitePress publish。 v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) の後、 v1.15 で AI-LLM 縦軸に戻り v1.12 が cover しなかった 3 shape (multimodal / MCP / agent orchestration) を land する縦軸思想 6/6 resolved (#746 #747 #748 #749 #750 #751) — @kiwa-lab/ai-llm v0.2 (multimodal + Whisper)、 @kiwa-lab/mcp v0.1 (JSON-RPC 2.0 + 5 fixture tool)、 @kiwa-lab/agent v0.1 (StateGraph + Assistants v2 統一 API)、 dogfood 2 app (multimodal-chat + mcp-tool-agent)、 docs 3 pillars (tutorial 16/17/18 + migration v1.14→v1.15 + concept doc ai-llm-multimodal-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.15.0 v1.15 label
v1.16 Component test 縦軸 — @kiwa-lab/component v0.1 (Storybook 8 + Playwright Component Testing + Chromatic を 1 API に統合、 createStoryRegistry (CSF3 args deep merge + play function runner + parameters.a11y/parameters.chromatic 透過 + heuristic a11y checker) + createPlaywrightCTMock (mount + getByText + getByRole + click + fill + textContent + count Locator subset、 browser 起動なし) + createChromaticVisualMock (SHA-256 markup hash baseline / diff / accept-reject workflow + multi viewport + diffThreshold)、 framework agnostic MockNode tree + 5 component fixture (Button / Input / Form / Modal / Card)、 80 test pass) + dogfood app 3 種 (storybook-design-system: 12 React primitive × 30+ story × 53 test / form-ct: 5 form (login / signup / checkout / profile / search) × 4 axis × 49 test / visual-regression: 10 scene × baseline seed → capture → diff → accept 4 axis × 57 test、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 19/20/21 + migration guide v1.15→v1.16 additive-only + concept doc component-testing.md = 3 surfaces × 6 semantic axes (story registration / args resolution / interaction trace / a11y / snapshot hash / review workflow) SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) の後、 v1.16 で SaaS frontend の必須 3 統合 (Storybook / Playwright CT / Chromatic) を 1 統一 mock harness に land する component test 縦軸思想 6/6 resolved (#763 #764 #765 #766 #767 #768) — @kiwa-lab/component v0.1 (Storybook 8 + Playwright CT + Chromatic 3 統合統一 mock、 80 test)、 dogfood 3 app (storybook-design-system 53 test + form-ct 49 test + visual-regression 57 test、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 19/20/21 + migration v1.15→v1.16 + concept doc component-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.16.0 v1.16 label
v1.17 Observability v2 — @kiwa-lab/observability v2.0 major bump (v1.14-4 で land した v1.1 telemetry mock 3 provider (OpenTelemetry / Datadog / Sentry) を基盤に、 実運用 SaaS observability stack の 4 追加軸を land)。 DashboardMock + buildDashboardMock (Grafana-style panel + PanelQuery aggregate 6 種 (sum / avg / max / min / count / last) + optional tag filter + time window + PanelThreshold[] で ok / warn / critical badge、 refresh()PanelResult[] 返却 + refreshCount tick)、 AlertRouter (Prometheus AlertManager 型 alert rule + pending → firing 遷移を forSamples gate で駆動 + 3 level routing tree (severity → team → channel) を deepest match で解決 + literal / regex label match の silence + escalation state machine tickEscalation())、 buildSpanTree + renderFlameGraph + drillDown + flattenFlame (pure transform over SpanRecord[] で totalMs / selfMs 算出 + 同名 sibling 集約 FlameNode samples 積算 + 部分木 depth normalize)、 LogCorrelationIndex + correlateLogsAndSpans (log ↔ span 双方向 index、 configurable CorrelationKeys で OpenTelemetry (trace_id / span_id) + Datadog (dd.trace_id) + Sentry (sentry-trace) の 3 convention を統一 API で扱う、 40+ new behavior test / 145 total pass) + dogfood app 3 種 (dashboard: Next.js App Router + Grafana 型 5 panel × 22 test / alert: Node.js + AlertManager 型 orchestrator + 10 rule + 3 level route + escalation × 27 test / trace-flame: React 型 explorer + 10 trace fixture (100 spans + 34 logs) × 29 test、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 22/23/24 + migration guide v1.16→v1.17 additive-only + concept doc observability-v2-testing.md = dashboard / alert / flame / correlation の 4 追加軸 × 6 semantic axis SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張、 telemetry v1.1 3 provider 基盤 land) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) の後、 v1.17 で telemetry 基盤上に SaaS observability stack の 4 追加軸を land する縦軸思想 6/6 resolved (#778 #779 #780 #781 #782 #783) — @kiwa-lab/observability v2.0 major bump (4 追加軸 + 40+ 新 behavior test)、 dogfood 3 app (dashboard 22 test + alert-orchestrator 27 test + trace-flame-graph 29 test、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 22/23/24 + migration v1.16→v1.17 + concept doc observability-v2-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.17.0 v1.17 label
v1.18 Blockchain 深化 — kiwa-test-rs v0.5 (v1.10 で land した Rust contract layer (kiwa::contract::foundry + kiwa::contract::alloy) を基盤に、 3 追加軸を land)。 kiwa::contract::reth new module (feature contract-reth opt-in、 reth node --dev subprocess spawn + Drop-based RethNode handle + RethBinary::detect PATH 存在確認 + reth_reorg(endpoint, blocks)debug_setHead JSON-RPC 経由の N-block reorg simulation + fidelity_matrix() で anvil ↔ reth の 7 JSON-RPC method 期待突合 (eth_blockNumber / eth_chainId / eth_getBalance / eth_gasPrice / eth_call / net_version / web3_clientVersion)、 pure Rust + reth binary 不在時は skipped shape で graceful degradation)、 kiwa::contract::foundry::invariant submodule (forge invariant runner の 10_000 run + fuzz seed 決定的化 + shrink parser + coverage feed、 invariant broken 時の counter-example shrink 出力を構造化 parse)、 kiwa::contract::alloy::helpers submodule (EIP-712 typed data builder (domain separator + typeHash + structHash + digest 4 layer) + Multicall3 batch encoder (aggregate3 calldata で N call を 1 tx に集約) + Permit2 PermitWitnessTransferFrom encoder (SignatureTransfer + witness verify))、 pure Rust + alloy crate family 依存なし + dep 増加なし + dogfood app 3 種 (dogfood-reth-node-test: Reth NodeBuilder dev chain + alloy Provider ERC-20 drive + 3-block reorg × fidelity harness / dogfood-foundry-invariant-fuzz: ERC-20 + Vault + Router 3 contract × invariant 10_000 run + fuzz seed 決定的化 + shrink parser 検証 + coverage feed / dogfood-dapp-e2e-reorg: Next.js 15 + viem + wagmi + kiwa-play + anvil fork mainnet + reorg 4 scenario (snapshotChain(client) + revertChain(client, snapshotId) fixture) × fidelity harness、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 25/26/27 + migration guide v1.17→v1.18 additive-only + concept doc blockchain-testing.md = chain state / EL client integration / fuzz shrinker / reorg semantics の 4 追加軸 × 6 semantic axis SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) の後、 v1.18 で v1.10 Rust contract layer 基盤上に Reth EL client integration + Foundry-rs invariant / fuzz 深化 + Alloy helpers + dApp e2e reorg 拡張の 4 追加軸を land する縦軸思想 6/6 resolved (#793 #794 #795 #796 #797 #798) — kiwa-test-rs v0.5.0 (Blockchain 深化 3 axis + crates.io publish 準備)、 dogfood 3 app (reth-node-test + foundry-invariant-fuzz + dapp-e2e-reorg、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 25/26/27 + migration v1.17→v1.18 + concept doc blockchain-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.18.0 v1.18 label
v1.19 Framework 深化 — 3 modern web framework (SolidJS Signal reactivity + Deno Fresh Islands + HonoJS Cloudflare Workers) を同時 land する横軸 reset milestone。 @kiwa-lab/solidjs v0.1 (Signal + createSignal + createEffect + createResource + Suspense boundary の fine-grained reactivity testing pattern、 auto-tracking dependency graph mock + flushSync deterministic scheduler + 42 behavior test)、 @kiwa-lab/fresh v0.1 (Deno Fresh Islands architecture + partial hydration + defineRoute + Handler + Head normalize、 island component boundary detection + server-first rendering assertion + 58 behavior test)、 @kiwa-lab/hono v0.1 (Cloudflare Workers 標準 + app.get / app.post + hc RPC type-safe client + middleware chain (auth / cors / logger / bearer / cache) + env (KV / D1 / R2) mock、 edge runtime fetch API + type inference preservation + 89 behavior test)。 v1.19-1 (#807 parent) は #813 (SolidJS) + #814 (Fresh) + #815 (Hono) の 3 分割 sub-Issue で 1 pkg = 1 PR 化。 dogfood app 3 種 (dogfood-solidjs-signal-app: SolidJS + createResource + Suspense + fine-grained update 実測 / dogfood-fresh-islands: Deno Fresh + Islands + partial hydration + edge runtime / dogfood-hono-workers-rpc: Cloudflare Workers + Hono RPC type-safe + middleware chain + KV/D1/R2 bindings、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 28/29/30 + migration guide v1.18→v1.19 additive-only + concept doc modern-web-framework-testing.md = Signal reactivity / Islands architecture / edge runtime + RPC type-safety の 3 追加軸 × 6 semantic axis SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) の 8 milestone 連続完遂後、 v1.19 で modern web framework 3 種の横軸 reset milestone を land、 kiwa web framework coverage を 8 → 11 に拡張する framework 深化思想 6/6 resolved (#807 #808 #809 #810 #811 #812) — @kiwa-lab/solidjs v0.1.0 (42 behavior test) + @kiwa-lab/fresh v0.1.0 (58 behavior test) + @kiwa-lab/hono v0.1.0 (89 behavior test) 3 pkg npm publish、 dogfood 3 app (solidjs-signal + fresh-islands + hono-workers-rpc、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 28/29/30 + migration v1.18→v1.19 + concept doc modern-web-framework-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.19.0 v1.19 label
v1.20 Streaming 深化 — event-driven backbone testing 基盤 land milestone。 @kiwa-lab/streaming v0.1 (Kafka + Redpanda + NATS の 3 provider を 1 unified mock 化、 5 semantics (producer / consumer / exactly-once / DLQ / schema-registry) を同一 API surface で扱う)。 createKafkaMock({ defaultPartitionCount }) (kafkajs-shaped producer + consumer + admin、 partitioner (deterministic djb2 hash) + sendBatch + `partitionAssigner: 'range' 'round-robin'+consumer.run+commitOffsets+seek+getCommittedOffset+rebalanceの完全 lifecycle mock)、createRedpandaMock({ schemaRegistry: true })(Kafka API 互換 broker + colocatedSchemaRegistry+registerAvro+registerProtobuf+registerJson+checkCompatibilityの 3 modeBACKWARD/FORWARD/FULL+ schema evolution + version tracking + fail-fast publish 統合)、createNatsMock()(core pub/sub with(single-token wildcard) +>(trailing multi-token wildcard) subject routing +nats.jetstream()persistent stream + JetStream consumer + ack +js.kv('bucket')KV store +js.objectStore('bucket')Object store、 全 subject match はcompileSubjectで trailing>制約 assert)、createTransactionalProducer+createIdempotentProducer+createReadCommittedFilter(Kafka exactly-once semantics 3 pillar、 idempotent producer は per-partition sequence dedup、 transactional は multi-record atomic commit + abort、 read-committed consumer filter は uncommitted / aborted transaction を skip)、createDeadLetterQueue(retry policy (max retries + backoff exponent) + poison message quarantine + inspect + reprocess flow、 104 behavior test)。 dogfood app 3 種 (dogfood-kafka-event-pipeline: Kafka producer + consumer group + exactly-once transactional producer + DLQ 実測 fidelity harness 5 op / dogfood-redpanda-schema-registry: Redpanda + 3 Avro schema (v1 → v2 additive field / v2 → v3 breaking field type change / v3 → v4 default value drop) + BACKWARD / FORWARD / FULL compatibility check + fail-fast publish 5 op / dogfood-nats-jetstream: NATS core pub/sub +/>wildcard routing + JetStream persistent stream + KV Store + Object Store、 subject filter + persistence + KV / Object round-trip、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 31/32/33 + migration guide v1.19→v1.20 additive-only + concept docstreaming-testing.md` = producer / consumer / exactly-once / DLQ / schema-registry の 5 semantics 軸 × 6 semantic axis SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) の 9 milestone 連続完遂後、 v1.20 で v1.13 realtime (時間軸 mock) の下層に位置する event-driven system (Kafka + Redpanda + NATS JetStream) の testing 基盤を land、 broker binary + Docker + Zookeeper 不要で producer / consumer / exactly-once / DLQ / schema-registry を統一 mock として扱う streaming 深化思想 6/6 resolved (#827 #828 #829 #830 #831 #832) — @kiwa-lab/streaming v0.1.0 (104 behavior test) npm publish、 dogfood 3 app (kafka-event-pipeline + redpanda-schema-registry + nats-jetstream、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 31/32/33 + migration v1.19→v1.20 + concept doc streaming-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.20.0
v1.21 Auth 深化 — web-auth 主戦場 4 protocol testing 基盤 land milestone。 @kiwa-lab/auth v0.4 (v1.8 の NextAuth v5 + Lucia v3 + Better Auth の 3 provider adapter → v1.9 の Clerk + Auth0 追加 → v1.10 の Supabase Auth core + advanced 追加で 6 provider adapter に到達後、 v1.21 で 4 protocol adapter を追加)。 createWebAuthnEnv() (Chrome Virtual Authenticator 型 credential store + navigator.credentials mock、 create() = attestation none / packed / fido-u2f × authenticator selection criteria 3 軸 (userVerification: required / preferred / discouraged + residentKey: required / preferred / discouraged + authenticatorAttachment: platform / cross-platform) + get() = assertion + sign counter monotonicity (前回 counter より小さい値 reject) + user-verified flag)、 createPasskeyEnv() (WebAuthn L3 上の platform authenticator vs roaming authenticator boundary + credProps.rk boolean 反映 + sync fabric mock (iCloud Keychain / Google Password Manager) の credential ID 共有 + sync state transition、 platform 越えの sync fabric mismatch 非同期化 semantics)、 createOAuth21Env({ requireDPoP }) (mock Authorization Server + Resource Server 対、 PKCE (RFC 7636 mandatory) S256 code_verifier / code_challenge + SHA-256 digest + base64url no-padding、 DPoP (RFC 9449) proof JWT header + payload verify (htu normalizer + htm case-insensitive + jti replay-detection window + iat 60s clock-skew 窓) + token_type: 'DPoP' bind、 refresh token rotation with reuse detection (leaked-token detection で refresh chain 全体 revoke cascade)、 revocation endpoint (RFC 7009) の access + 派生 refresh cascade revoke、 plain code_challenge_method + implicit + password grant は unsupported_response_type で reject)、 createOIDCEnv({ issuer, jwksAlgorithms }) (Discovery (.well-known/openid-configuration) metadata + JWKS endpoint + jwks.rotate()kid header 付き key rotation + rotation window semantics (旧 key で grace 中 verify 可能)、 Dynamic Client Registration (RFC 7591) 4 auth method (none / client_secret_basic / client_secret_post / private_key_jwt) + software_statement JWS 検証、 id_token verify (iss / aud / exp / iat / nonce / at_hash / c_hash + RS256 + ES256 signature + JOSE 互換)、 Federation trust chain (OIDC Federation 1.0 draft、 trust anchor + intermediate + statement chain verify + intermediate substitution attack detection))。 134 behavior test (WebAuthn 21 + Passkey 33 + OAuth 2.1 45 + OIDC 35)、 auth package 全 403 test PASS。 dogfood app 3 種 (dogfood-webauthn-passkey-app: Next.js 15 App Router + /register attestation + /signin assertion + /manage residentKey=required + Chrome Virtual Authenticator vs @kiwa-lab/auth mock 4 pattern fidelity / dogfood-oauth21-provider: Hono + Cloudflare Workers 自作 Authorization Server + 5 endpoint (/authorize + /token + /revoke + /userinfo + /.well-known/oauth-authorization-server) + oauth2-mock-server vs mock 4 pattern fidelity / dogfood-oidc-federation: Nuxt 3 RP + Deno 自作 OP + Discovery + DCR + JWKS rotation + id_token verify + Federation trust chain + mock Keycloak-shaped OP vs mock 4 pattern fidelity、 全 7 軸 release gate PASS) + docs 補強 (tutorial 3 本 34/35/36 + migration guide v1.20→v1.21 additive-only + concept doc auth-protocol-testing.md = virtual authenticator / PKCE + DPoP / id_token 検証 / discovery + federation の 4 testing 固有難所 × 6 semantic axis SSOT) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) の 10 milestone 連続完遂後、 v1.21 で v1.8-v1.10 に land した 6 provider adapter (横軸) の上に 4 protocol 深化 layer (縦軸) を追加、 6 provider × 4 protocol の 24 交差点を 1 統一 API surface でカバー可能にする Auth 深化思想 6/6 resolved (#842 #843 #844 #845 #846 #847) — @kiwa-lab/auth v0.4.0 (134 new behavior test、 4 protocol adapter minor bump) npm publish、 dogfood 3 app (webauthn-passkey-app + oauth21-provider + oidc-federation、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 34/35/36 + migration v1.20→v1.21 + concept doc auth-protocol-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.21.0 v1.21 label
v1.22 Auth 深化 II — real driver + a11y + Passkey caBLE + Federation e2e milestone。 v1.21 で land した 4 protocol pure mock (WebAuthn L3 + Passkey + OAuth 2.1 + OIDC) の上に、 real driver 層 + a11y axe-core gate + Passkey caBLE hybrid transport + Federation JWKS rotation real e2e の 4 経路で深化を追加する v1.22 milestone。 @kiwa-lab/auth v0.5 で 4 protocol adapter に realDriver option を追加、 KIWA_MODE=real 併用時に Keycloak testcontainers / oauth2-mock-server testcontainers / Chrome caBLE を driver とし、 未 set 時は v1.21 と同じ pure mock を driver とする 3 execution mode (mock only (default、 < 5 ms per test) / real-optional (Docker 有無で fallback) / real-required (nightly + release smoke)) を SSOT 化 (docs/concepts/real-driver-testing.md)、 setupPasskeyEnv に caBLE hybrid transport 5 method (generateCableQr + broadcastBleAdvertisement + matchBleHandshake + openCableTunnel + migrateCredentialOverTunnel + signOverTunnel) 追加で phone → laptop 越しの credential 移送 5 step (QR / BLE / WebSocket / migration / signature) を pure function 走査可能、 Federation JWKS rotation e2e (v1.21-4d mock → v1.22-5 real) で real Keycloak OP + Nuxt 3 RP + real JWKS endpoint (public URL + HTTP cache invalidation) の kid rotation → RP-side JWKS refresh → id_token verify continue 連鎖を real network で end-to-end 計測、 axes 4a-4d (inside window / past retention / multi-rotation retention / fresh active key after rotation) の real coverage 化。 dogfood app 3 種升級 (dogfood-oidc-federation: Nuxt 3 RP full flow + a11y axe-core gate (release gate 7 軸 a11y N/A → PASS) + Keycloak testcontainers real driver / dogfood-oauth21-provider: oauth2-mock-server testcontainers real driver + /authorize post-adapter error RFC 6749 §4.1.2.1 redirect Bug 1 fix / dogfood-webauthn-passkey-app: caBLE hybrid transport 5 軸 fidelity harness + Chrome --enable-features=WebAuthenticationRemoteDesktopSupport real device flow、 全 7 軸 release gate PASS) + docs 補強 (tutorial 2 本 37/38 + migration guide v1.21→v1.22 additive-only + concept doc real-driver-testing.md = 3 execution mode SSOT + fidelity axis catalog 3 dogfood app 分) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) の 11 milestone 連続完遂後、 v1.22 で v1.21 pure mock 上に real driver 深化 layer を追加、 mock (first-line contract) と real driver (second-line fidelity check) を並列走査で drift 検知可能にする Auth 深化 II 思想 6/6 resolved (#891 #892 #893 #894 #895 #896) — @kiwa-lab/auth v0.5.0 (~120 new behavior test、 real driver adapter + caBLE + Federation real e2e minor bump) npm publish、 dogfood 3 app 升級 (oidc-federation + oauth21-provider + webauthn-passkey-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 37/38 + migration v1.21→v1.22 + concept doc real-driver-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.22.0 v1.22 label
v1.23 Payment 深化 — merchant-of-record + advanced billing semantics 9 axis land milestone。 v1.14 で land した @kiwa-lab/payment v0.2 (Stripe + Paddle + Lemon Squeezy webhook mock + HMAC signature verify + 4 fixture builder) の上に、 9 axis advanced billing semantics + 3 dogfood merchant app + provider neutral state machine + strict transition guard の 4 経路で深化を追加する v1.23 milestone。 @kiwa-lab/payment v0.3 で packages/payment/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 (dunning.ts = Stripe Smart Retries 4 attempt + grace period + terminal recovered / exhausted / retry.ts = 汎用 exponential backoff + max attempt dead-letter / three-ds.ts = EMVCo 3DS 2.2 fingerprint → challenge-pending → completed + frictionless / sca.ts = PSD2 Strong Customer Authentication 6 exemption 種 (low-value / low-risk / trusted-beneficiary / secure-corporate / recurring / MIT) / psd2.ts = SEPA direct debit + BACS + ACH mandate pending → active → revoked + consent grant / subscription-lifecycle.ts = 5-state envelope active → upgraded / downgraded / paused / canceled + reactivate guard / invoice.ts = draft → open → paid void uncollectible + credit note / tax.ts = VAT + GST + sales-tax auto-calc ~180 jurisdiction + reverse-charge B2B cross-border EU + exempt / chargeback.ts = card-network dispute opened → evidence-submitted → won
v1.24 Edge / Serverless 深化 — 8 axis advanced edge semantics + 3 dogfood edge app land milestone。 v1.14 で land した @kiwa-lab/edge v0.1 (fetch handler + KV / R2 / D1 / DurableObject minimal mock + ExecutionContext) の上に、 8 axis advanced edge semantics + 3 dogfood edge app + platform-neutral state machine + strict transition guard の 4 経路で深化を追加する v1.24 milestone。 @kiwa-lab/edge v1.1 で packages/edge/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 (durable-object.ts = Cloudflare Hibernation API + storage transactional + alarm re-activation / websocket-edge.ts = pending → open → closed lifecycle + send guard / edge-kv.ts = consistent vs eventually-consistent + read-through cache + range query / geo-replicated.ts = primary write → replica lag → sync → conflict resolution / cron-trigger.ts = scheduled + queue + email 3-source trigger + retry policy / subrequest-limit.ts = fetch quota + iteration + warning threshold + hard limit / cpu-time-limit.ts = budget tracking + warning + throttle / streaming-response.ts = chunked + SSE + WebSocket streaming + backpressure resume)、 3 platform (Cloudflare Workers / Vercel Edge / Deno Deploy) neutral event 名 routing table + fidelity harness collectFidelityCoverage() 3 × 8 grid = 24 row で release-gate 用に露出、 120 semantics behavior test 追加。 dogfood app 3 種新規 (dogfood-cloudflare-workers-durable-object-app: Cloudflare Workers Durable Object + Hibernation API + storage transactional + WebSocket edge broadcast realtime chat room + alarm 経由 message purge 40 vitest / dogfood-vercel-edge-function-app: Next.js 15 middleware + edge runtime + Vercel KV Redis + streaming Response SSE + geo-based routing (accept-language + geo IP → region) + edge cache invalidation 45 vitest / dogfood-deno-deploy-geo-app: Fresh + Deno KV geo-replicated with strong consistency + Deno Deploy Cron + queue trigger + multi-region KV write + eventual consistency observation + read-your-writes 50 vitest、 全 7 軸 release gate PASS + KIWA_MODE=real で real sandbox 走査 opt-in) + docs 補強 (tutorial 3 本 42/43/44 + migration guide v1.23→v1.24 additive-only + concept doc edge-runtime-testing.md = 8 axis SSOT + platform-specific fidelity table 3 app 分) + snippet validation docs-tutorial-v1.24.test.ts (16 test) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) の 13 milestone 連続完遂後、 v1.24 で v1.14 edge 横軸 mock 上に 8 axis 縦軸深化 layer + 3 dogfood edge app を追加、 fetch handler mock (first-line contract) + advanced edge semantics state machine (second-line envelope) の 2 層で edge / serverless fidelity を統一 mock 化する Edge 深化思想 6/6 resolved (#914 #915 #916 #917 #918 #919) — @kiwa-lab/edge v1.1.0 (120 new semantics behavior test + 8 axis advanced edge + 3 platform neutral state machine minor bump) npm publish、 dogfood 3 app 新規 (cloudflare-workers-durable-object-app + vercel-edge-function-app + deno-deploy-geo-app、 全 7 軸 release gate PASS、 135 dogfood vitest)、 docs 3 pillars (tutorial 42/43/44 + migration v1.23→v1.24 + concept doc edge-runtime-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.24.0 v1.24 label
v1.25 Perf-harness sweep — 33 package p95 baseline + regression detection rollout milestone。 v1.13-1 で land した @kiwa-lab/perf-harness v0.1 (measure p50/p95/p99 + saveBaseline + detectRegression + evaluatePerfGate primitive) + v1.14-post で land した runPerf3Layer (serial + concurrent + memory 3-layer harness) を基盤に、 33 全 kiwa package (core layer 9 + framework adapter 11 + test type 3 + SaaS layer 10) 一斉 rollout + @kiwa-lab/perf-harness v0.2 minor bump + release-gate 統合 + docs 補強 + release script filter 追加 の 5 経路で milestone finisher を land。 v1.25-1 core layer perf sweep (core / dapp / api / ui / data / cli-test / observability / e2e / cli の 9 package に tests/perf/{package}.perf.ts + test:perf script + .perf-baseline/{package}.json を追加、 各 package で runPerf3Layer 経由 3 warmup + 100 iteration + 20 % p95 delta threshold で p95 baseline 確立 + regression detection 実装) / v1.25-2 framework adapter perf sweep (a11y / visual / nextjs / nuxt / sveltekit / remix / astro / solidstart / qwikcity / edge / fresh / hono / solidjs の 11 framework adapter package に同一 pattern を適用、 framework baseline path 分離 + 3-layer perf harness) / v1.25-3 test type perf sweep (component / ai-llm / mcp / agent / search / streaming / realtime 系の test type 3 package + 3-layer perf harness) / v1.25-4 SaaS layer perf sweep (auth / queue / cache / orm / payment / streaming / search / mcp / agent の 9-10 SaaS layer package + provider 別 baseline + KIWA_MODE=real opt-in) の 4 sub-milestone で 33 package coverage を完了。 v1.25-5 release-gate 統合 + docs 補強 (tutorial 45 perf-harness baseline p95 walkthrough + tutorial 46 perf baseline migration methodology + concept doc perf-testing-ssot.md 4 rule SSOT (3 warmup + 100 iteration / Welch's t-test t > 2 / 20 % p95 delta / baseline JSON schema) + migration guide v1.24→v1.25 additive-only + snippet validation docs-tutorial-v1.25.test.ts 15 test)、 v1.25-6 で @kiwa-lab/perf-harness v0.1.1 → v0.2.0 minor bump (33 package coverage extension + 3-layer harness 標準化)、 v1.14 payment 漏れ再発防止のため release script filter に @kiwa-lab/perf-harness を追加 (v1.23 v1-23-payment fix 教訓反映)、 docs-tutorial-v1.24.test.ts 削除 + v1-25-publish.test.ts 新規 (7 axis publish artefact invariant) + V1_25_PAGES docs-e2e 追加。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) の 14 milestone 連続完遂後、 v1.25 で perf-harness 横軸 sweep を全 kiwa package に rollout、 measure primitive (first-line contract) + 33 package p95 baseline + regression detection (second-line envelope) の 2 層で release-gate perf axis fidelity を統一 mock 化する Perf-harness sweep 思想
v1.26 Database 深化 — 8 axis advanced production db semantics + 3 dogfood app land milestone。 v1.14 で land した @kiwa-lab/orm v0.8 (Drizzle / Prisma / Kysely × SQLite / Postgres / MySQL の 3 provider × 3 backend matrix + testcontainers real driver) の上に、 8 axis advanced production db semantics + 3 dogfood app + provider-neutral state machine + strict transition guard の 4 経路で深化を追加する v1.26 milestone。 @kiwa-lab/orm v0.9 で packages/orm/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 (replication.ts = streaming replication + read replica lag + failover + promoted replica / cdc.ts = logical decoding + wal2json + Debezium-style outbox + LSN 順序 + at-least-once / logical-replication.ts = publication + subscription + conflict resolution + heartbeat / mvcc.ts = snapshot isolation + serializable + phantom read + deadlock / rls.ts = row-level security policy + tenant isolation + bypass_rls role + audit log / connection-pool.ts = max_connections + idle_timeout + statement_timeout + wait queue / partitioning.ts = declarative partitioning + partition pruning + partition-wise join + range/list/hash routing / vector-store.ts = pgvector + IVFFlat + HNSW + cosine/L2/inner-product + hybrid search)、 3 provider (Drizzle / Prisma / Kysely) × 3 backend (Postgres / MySQL / SQLite) neutral event 名 routing table (32 neutral event × 9 combination = 288 dialect entry) + fidelity harness collectFidelityCoverage({ providers, backends }) 3 × 3 × 8 grid = 72 row で release-gate 用に露出、 222 semantics behavior test 追加 (semantics/ statement 99.54 % / branch 95.61 % / function 100 % coverage)。 dogfood app 3 種新規 (dogfood-postgres-cdc-outbox-app: Postgres 16 logical replication + Debezium-style outbox pattern + Redis Streams consumer + at-least-once + idempotent + backpressure、 5-op adapter (driveOutbox / driveCdcPickup / driveReplication / driveAtLeastOnce / emitFidelity) mock + POSTGRES_BOOTSTRAP env-gated real、 28 vitest / dogfood-mysql-rls-tenant-app: Nuxt 3 + Prisma + MySQL 8 row-level security policy + tenant_id auto-injection + cross-tenant refuse + bypass_rls role window + tamper-evident chain-hash audit log (`sha256(prev entryJson))、 5-op adapter (driveTenantInjection/driveCrossTenantRefuse/driveBypassAudit/driveAuditIntegrity/emitFidelity) mock + MYSQL_KEYenv-gated real、 34 vitest / dogfood-vector-search-app: Postgres 16 pgvector IVFFlat/HNSW index + per-store dimension guard + k-NN semantic search + hybrid semantic + BM25 keyword search (vectorWeight[0, 1]、 tie-break document id 昇順) + FNV-folded cacheKey embedding cache + on-demand re-index、 5-op adapter (driveIndexBuild/driveSemanticSearch/driveHybridSearch/driveCacheHitRate/emitFidelity) mock + VECTOR_KEYenv-gated real、 41 vitest、 全 7 軸 release gate PASS +KIWA_MODE=realで real sandbox 走査 opt-in) + docs 補強 (tutorial 3 本 47/48/49 + migration guide v1.25→v1.26 additive-only + concept docdb-advanced-testing.md= 8 axis SSOT + provider × backend fidelity table + 3 dogfood app matrix) + snippet validationdocs-tutorial-v1.26.test.ts` (32 test) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) の 15 milestone 連続完遂後、 v1.26 で v1.14 orm 横軸 mock 上に 8 axis 縦軸深化 layer + 3 dogfood app を追加、 3 × 3 provider × backend matrix (first-line contract) + 8 axis advanced db semantics state machine (second-line envelope) の 2 層で production database fidelity を統一 mock 化する Database 深化思想
v1.27 Mutation testing sweep — Stryker rollout across 33 packages + 4-tier threshold SSOT + 12-axis release gate 拡張 milestone。 v1.11 で land した @kiwa-lab/quality-metrics v0.1 (mutationFromCounts + fixed 60 % kill-rate axis on 11-axis release gate) の上に、 4-tier mutation threshold SSOT (Core 80 % / Framework 70 % / SaaS 65 % / Test type 60 %) + Stryker 33 全 kiwa package rollout (22 → 33 package extension) + 12-axis release gate 拡張 (mutation.tier axis 追加、 tier-aware kill-rate 判定) + @kiwa-lab/quality-metrics v0.2 → v0.3 minor bump の 4 経路で quality gate SSOT の縦深化 + 横展開を並行実施する v1.27 milestone。 @kiwa-lab/quality-metrics v0.3 で packages/quality-metrics/src/gate.ts に 5 primitive を追加 (DEFAULT_MUTATION_TIER_THRESHOLDS = 4 tier floor table / resolveMutationTier(packageName, packageTierMap) = package 名から tier 解決 / assertMutationTier(report, packageName, tier?) = tier floor 未達で MutationTierBelowFloor error throw / MutationTier type = `'Core' 'Framework' 'SaaS'
v1.28 Realtime 深化 II — WebRTC + WebTransport + QUIC multiplexing + 3 dogfood app + real driver milestone。 v1.13 で land した @kiwa-lab/realtime v0.1 (4 provider Supabase / Ably / Pusher / Socket.io × 5 base semantics presence / broadcast / postgres_changes / room / reconnect 統一 mock) の上に、 advanced realtime production semantics 8 axis + 3 dogfood realtime app + protocol-neutral state machine + strict transition guard + real driver env-gate の 5 経路で深化を追加する v1.28 milestone。 @kiwa-lab/realtime v0.2 で packages/realtime/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 (webrtc-signaling.ts = offer/answer + SDP + ICE candidate + renegotiation / webrtc-data-channel.ts = ordered/unordered + reliable + maxRetransmits + binaryType / webrtc-media-track.ts = getUserMedia mock + MediaStream + simulcast + track add/remove / webrtc-ice-stun-turn.ts = candidate gathering + connectivity check + TURN relay + trickle ICE / webtransport-unidirectional.ts = uni stream + Datagram + reset / webtransport-bidirectional.ts = bi stream + flow control + backpressure / http3-push.ts = server push + prioritization + push_promise + cancellation / quic-multiplexing.ts = stream multiplex + stream priority + HPACK + 0-RTT resumption)、 3 protocol (WebRTC / WebTransport / HTTP/3) neutral event 名 routing table + fidelity harness collectFidelityCoverage() 3 × 8 = 24 row grid で release-gate 用に露出、 60 semantics behavior test 追加 + v1.13 4 provider の real driver env-gate 追加。 dogfood app 3 種新規 (dogfood-nextjs-webrtc-video-app: Next.js 15 + mediasoup SFU + coturn TURN + WebRTC video/audio + P2P + simulcast + ICE restart、 36 test / dogfood-nuxt-webtransport-stream-app: Nuxt 3 + WebTransport uni/bi + HTTP/3 + Datagram + connection migration + 0-RTT、 30 test / dogfood-sveltekit-http3-multiplex-app: SvelteKit + nginx-quic HTTP/3 + QUIC multiplex + stream priority + HPACK dynamic table + 0-RTT resumption、 32 test) + docs 補強 (tutorial 3 本 52/53/54 + migration guide v1.27→v1.28 additive-only + concept doc webrtc-webtransport-testing.md = 8 axis SSOT + P2P vs SFU 選択規範 + 3 protocol fidelity table) + snippet validation docs-tutorial-v1.28.test.ts (30 test) + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) の 17 milestone 連続完遂後、 v1.28 で v1.13 realtime 横軸 mock 上に 8 axis 縦軸深化 layer + 3 dogfood realtime app + real driver env-gate を追加、 4 provider mock (first-line contract) + 8 axis advanced realtime semantics state machine (second-line envelope) + WebRTC/WebTransport/HTTP/3/QUIC production protocol fidelity の 3 層で advanced realtime fidelity を統一 mock 化する Realtime 深化 II 思想 6/6 resolved (#977 #978 #979 #980 #983 #976) — @kiwa-lab/realtime v0.2.0 (60 new semantics behavior test + 8 axis advanced realtime + 3 protocol neutral state machine + real driver env-gate minor bump) npm publish、 dogfood 3 app 新規 (nextjs-webrtc-video-app + nuxt-webtransport-stream-app + sveltekit-http3-multiplex-app、 全 7 軸 release gate PASS、 98 dogfood vitest)、 docs 3 pillars (tutorial 52/53/54 + migration v1.27→v1.28 + concept doc webrtc-webtransport-testing.md)、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.28.0 + release script filter に @kiwa-lab/realtime 追加 (v1.23 v1-23-payment fix + v1.25 v1-25-perf-harness + v1.27 v1-27-quality-metrics filter 追加 pattern の 4 度目の適用) v1.28 label
v1.29 Release script filter systematic root cause SSOT 化 milestone — v1.11-v1.28 の 18 milestone 連続完遂 retrospective で発見された release script filter systematic root cause pattern の 4 milestone 連続 event (v1.14 payment / v1.25 perf-harness / v1.27 quality-metrics / v1.28 realtime) を、 hook + release-smoke test axis + SSOT docs + 新規 npm package の 4 layer で自動化する最軽量 sprint 完遂。 kiwa quality gate SSOT の final hole (新 package 追加時の release script filter manual update 依存) を埋めた。 @kiwa-lab/release-invariants v0.1 新規 package (3 pure invariant checker: checkReleaseScriptFilter release script filter 対称性 + checkProvenanceFlagAbsence provenance flag 撤去 + checkGateScriptPackageCoverage gate script package 網羅 + 1-shot buildReleaseInvariantsSummary aggregator + 8 behavior test) を land、 tutorial 55 release-script-filter-ssot.md systematic root cause pattern SSOT 化 walkthrough + concept doc release-invariants.md 3 invariant SSOT + migration guide v1.28→v1.29 additive-only + docs-tutorial-v1.29.test.ts (8 test) snippet validation で 7 milestone 連続 pattern 化 (v1.23-v1.29) 達成。 3 sub-milestone (v1.29-1 release-smoke test axis tests/release-smoke/tests/release-script-filter.test.ts 40 test dynamic package discovery + per-package it.each assert + NON_PUBLISHED_ALLOWLIST SSOT + symmetric check、 全 @kiwa-lab/* 36 package が build filter + publish filter 両方に含まれる per-package assert / v1.29-2 PostToolUse hook + /issue-plan checklist SSOT 統合 hooks/post-tool-use/release-script-filter-guard.sh proactive prevention、 packages/*/package.json 新規作成 / edit 時に root package.json release script filter 存在 check + warn 出力 + suggestion 経路 / v1.29-3 docs + publish 最終 SSOT 固定化 + release publish、 @kiwa-lab/release-invariants v0.1 新規 npm publish + tutorial 55 + concept doc + migration + docs-tutorial-v1.29.test.ts + plugin.json 1.29.0 + announcement 4 file + release-smoke v1-29-publish.test.ts + docs-e2e V1_29_PAGES + release script filter に @kiwa-lab/release-invariants 追加) で release script filter systematic root cause SSOT 化 milestone を完了。 kiwa runtime fixture 34 → 35 packages (@kiwa-lab/release-invariants v0.1.0 新規)、 v1.14 payment 漏れ再発防止 pattern を manual filter 更新から invariant checker + fail-fast test axis + PostToolUse hook + SSOT docs の 4 layer 自動化 に転換、 5 回目以降の filter 漏れ event を構造的に遮断 3/3 resolved (#986 #987 #988) — @kiwa-lab/release-invariants v0.1.0 (3 pure invariant checker + 1-shot aggregator + 8 test 新規 package) npm publish、 tutorial 55 + migration v1.28→v1.29 + concept doc release-invariants.md land、 7 milestone 連続 snippet validation pattern (v1.23-v1.29) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.29.0 + release script filter に @kiwa-lab/release-invariants 追加 (systematic root cause pattern SSOT 継続適用) v1.29 label
v1.31 Streaming 深化 II — Kafka raw + Redpanda schema + NATS JetStream + real driver + 縦深化 pair 第 3 pair 完成 milestone。 v1.20 (Streaming mock) → v1.31 (Streaming real driver + Kafka raw protocol + Redpanda schema admin + NATS JetStream durable consumer) で 縦深化 pair pattern 第 3 pair 完成 (v1.21→v1.22 Auth + v1.13→v1.28 Realtime に続く 3 pair 連続化)、 v1.30 quality gate maximum grid (13 axis) を streaming real driver に適用、 kiwa の縦深化戦略 SSOT を確立する v1.31 milestone。 @kiwa-lab/streaming v0.2.0 → v0.3.0 minor bump し、 packages/streaming/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 advanced streaming semantics 8 axis (kafka-raw-protocol.ts = KIP-98 idempotent + transaction coordinator + fetch session + ISR / kafka-consumer-group.ts = rebalance + static membership + cooperative + heartbeat / redpanda-schema-evolution.ts = Avro/Protobuf/JSON compatibility + subject strategy + reference / redpanda-transactions.ts = TxnCoordinator + producer id + epoch fencing / nats-jetstream-durable.ts = durable consumer + ack pending + max deliver + backoff / nats-kv-object.ts = bucket + revision + watch + object chunking + LZ4 / streaming-exactly-once.ts = transactional producer + read committed + isolation / consumer-lag-telemetry.ts = offset lag + time lag + partition + high watermark)、 3 provider (Kafka / Redpanda / NATS) × 8 axis 統一 mock + fidelity harness collectFidelityCoverage() 3 × 8 grid = 24 row で release-gate 用に露出、 real driver env-gate 追加。 dogfood app 3 種 v2 拡張 (dogfood-kafka-event-pipeline v2: Kafka raw + KIP-98 idempotent + transactional producer + confluent-kafka testcontainers + Playwright e2e + real Kafka 3.7 + Schema Registry mock 統合 / dogfood-redpanda-schema-registry v2: Redpanda v23+ testcontainers + Redpanda Console API + BACKWARD/FORWARD/FULL compatibility check / dogfood-nats-jetstream v2: NATS 2.10+ testcontainers + JetStream durable + KV revision + Object chunking、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 補強 (tutorial 3 本 58/59/60 Kafka raw / Redpanda schema / NATS JetStream durable + migration guide v1.30→v1.31 additive-only + concept doc streaming-real-driver-testing.md = 8 axis SSOT + provider fidelity table + real driver 環境変数 SSOT) + snippet validation docs-tutorial-v1.31.test.ts + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) → v1.28 (Realtime 深化 II) → v1.29 (Release invariants SSOT) → v1.30 (A11y sweep) の 20 milestone 連続完遂後、 v1.31 で v1.20 streaming 横軸 mock 上に 8 axis 縦軸深化 layer + 3 dogfood streaming app v2 + real driver env-gate を追加、 3 provider mock (first-line contract) + 8 axis advanced streaming semantics state machine (second-line envelope) + Kafka/Redpanda/NATS production real driver fidelity の 3 層で advanced streaming fidelity を統一 mock 化する Streaming 深化 II 思想、 縦深化 pair pattern (Auth v1.21→v1.22 + Realtime v1.13→v1.28 + Streaming v1.20→v1.31) 3 pair 完成で kiwa の深化戦略 SSOT を確立 6/6 resolved (#1009 #1010 #1011 #1012 #1013 #1014) — @kiwa-lab/streaming v0.3.0 (advanced streaming semantics 8 axis + 3 provider neutral state machine + real driver env-gate minor bump) npm publish、 dogfood 3 app v2 拡張 (kafka-event-pipeline v2 + redpanda-schema-registry v2 + nats-jetstream v2、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 58/59/60 + migration v1.30→v1.31 + concept doc streaming-real-driver-testing.md)、 9 milestone 連続 snippet validation pattern (v1.23-v1.31) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.31.0 + release script filter に @kiwa-lab/streaming 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用) v1.31 label
v1.30 A11y 横串 sweep — 全 33 package + WCAG 2.1 AA gate + release gate 13 axis 拡張 milestone。 v1.16 SSOT 化の component test a11y layer (axe-core + WCAG 2.1 AA) を kiwa 全 33 package + 3 dogfood app に横串適用、 現状 0 package cover の盲点を解消して kiwa quality gate SSOT の maximum grid 化 を達成する v1.30 milestone。 v1.25 (perf 横串) + v1.27 (mutation 横串) の pair pattern を a11y 領域に第 3 応用 し、 release gate 12 → 13 axis 拡張 (a11y.violation axis 追加、 tier-aware violation count 判定)、 横串 milestone triple pair (perf + mutation + a11y) 完成。 @kiwa-lab/a11y v1.0.1 → v1.1.0 minor bump し、 各 package に .axe-config.mjs + test:a11y script + .a11y-baseline/{package}.json gitignore + 4 tier WCAG 2.1 AA threshold rationale SSOT (Core AA critical 0 / Framework AA critical 0 + serious 0-3 / Test type AA moderate 0-10 / SaaS AA 全 tier 0 + audit log) + 3-layer harness (jsdom DOM 静的 + Playwright dynamic + SSR/hydration 差分) + 34 package a11y baseline 一斉確立 + docs/quality/a11y-thresholds.md SSOT + docs/concepts/a11y-testing-ssot.md = WCAG 2.1 AA SSOT + 4 tier threshold + 3-layer harness + tutorial 56-57 + migration guide v1.29→v1.30 additive-only + docs-tutorial-v1.30.test.ts snippet validation で 8 milestone 連続 snippet validation pattern (v1.23-v1.30) 達成、 6 sub-milestone (v1.30-1 axe-core infra 基盤 34 package + 4 tier threshold rationale SSOT / v1.30-2 core + framework layer a11y sweep 20 package + 3-layer harness / v1.30-3 test type + SaaS layer a11y sweep 14 package + provider 別 baseline / v1.30-4 release gate 13 axis 拡張 a11y violation axis + 4 tier threshold enforcement + dogfood 3 app 統合 / v1.30-5 docs 補強 tutorial 56-57 + migration + concept + snippet validation / v1.30-6 publish plugin.json 1.30.0 + a11y v1.1.0 minor bump + announcement 4 file + release-smoke v1-30-publish.test.ts + docs-e2e V1_30_PAGES) で a11y 横串 sweep milestone を完了、 kiwa runtime fixture 35 packages 維持 (a11y 既存 package の minor 拡張)、 v1.25 perf + v1.27 mutation + v1.30 a11y の横串 triple pair で quality gate maximum grid 化を達成する A11y sweep 思想 6/6 resolved (#992 #993 #994 #995 #996 #997) — @kiwa-lab/a11y v1.1.0 (axe-core integration + WCAG 2.1 AA gate + 3-layer harness + 4 tier threshold + 34 package a11y baseline sweep minor bump) npm publish、 34 package a11y sweep 完了 (core layer 9 + framework adapter 11 + test type 3 + SaaS layer 10 + release-invariants 1、 全 package a11y baseline 確立 + 4 tier WCAG 2.1 AA threshold enforcement)、 docs 3 pillars (tutorial 56/57 + migration v1.29→v1.30 + concept doc a11y-testing-ssot.md)、 8 milestone 連続 snippet validation pattern (v1.23-v1.30) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.30.0 + release script filter に @kiwa-lab/a11y 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用) v1.30 label
v1.33 Payment 深化 II — advanced billing II 8 axis + real driver + 縦深化 pair 第 5 pair 連続化 milestone。 v1.14 (payment 3 provider webhook mock) → v1.23 (payment v0.3 9 base billing semantics) → v1.33 (payment v0.4 8 axis advanced billing II + real driver + 縦深化 pair 第 5 pair) で 縦深化 pair pattern 第 5 pair 連続化 (v1.21→v1.22 Auth + v1.13→v1.28 Realtime + v1.20→v1.31 Streaming + v1.14→v1.32 Database に続く payment real driver 5 pair 目)、 v1.30 quality gate maximum grid (13 axis) を payment real driver に適用、 kiwa の縦深化戦略 SSOT を payment production layer に拡張する v1.33 milestone。 @kiwa-lab/payment v0.3.0 → v0.4.0 minor bump し、 packages/payment/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 advanced billing II semantics 8 axis (orchestration.ts = multi-provider routing + failover cascade + retry ladder + circuit breaker + primary/fallback selection / revenue-recovery.ts = smart retry + dunning cascade (email/SMS/push) + card updater + network tokenization / refund-advanced.ts = partial + split-fee refund + platform vs connected account leg + refund window enforcement / dispute.ts = chargeback lifecycle + evidence submission + representment + arbitration escalation + 3DS liability shift / webhook-idempotency-advanced.ts = idempotency key + at-least-once + dedup window + retry storm handling / tax-localization.ts = DAC7 EU digital platform reporting + jurisdiction split + seller revenue aggregation + reverse-charge B2B cross-border / subscription-state-machine.ts = grace period + trial + proration + coupon stacking + reactivate guard + vault migration / payment-method-vault.ts = cross-provider vault + token migration + network token + PSP-agnostic instrument reference)、 3 provider (Stripe / Paddle / Lemon Squeezy) × 8 advanced axis 統一 mock + fidelity harness collectFidelityCoverage({ providers }) 3 × 8 = 24 row grid (v1.23 9 base axis + v1.33 8 advanced axis の縦横 SSOT 拡張) で release-gate 用に露出、 300 semantics behavior test 追加、 real driver env-gate (KIWA_MODE=real + STRIPE_TEST_KEY / PADDLE_TEST_KEY / LEMONSQUEEZY_TEST_KEY) 導入。 dogfood app 3 種 v2 / 新規 (dogfood-stripe-marketplace-app v2: Stripe Connect + destination charge + application fee + DAC7 tax report + dispute lifecycle、 41 test / dogfood-paddle-subscription-app v2: Paddle Billing v2 + retention + proration + coupon stacking + trial + smart retry recovery、 68 test / dogfood-lemonsqueezy-license-app 新規: license key + activation + affiliate program + refund window enforcement、 70 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 補強 (tutorial 3 本 64 payment orchestration / 65 Stripe Connect marketplace / 66 Paddle Billing v2 + migration guide v1.32→v1.33 additive-only + concept doc payment-real-driver-testing.md = 8 axis SSOT + provider fidelity table + real driver 環境変数 SSOT) + snippet validation docs-tutorial-v1.33.test.ts + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) → v1.28 (Realtime 深化 II) → v1.29 (Release invariants SSOT) → v1.30 (A11y sweep) → v1.31 (Streaming 深化 II) → v1.32 (Database 深化 II) の 22 milestone 連続完遂後、 v1.33 で v1.14 payment 横軸 mock + v1.23 payment 9 base semantics 上に 8 axis 縦軸深化 II layer + 3 dogfood payment app v2 / 新規 + real driver env-gate を追加、 3 provider mock (first-line contract) + 8 axis advanced billing II semantics state machine (second-line envelope) + Stripe/Paddle/Lemon Squeezy production real driver fidelity の 3 層で advanced payment fidelity を統一 mock 化する Payment 深化 II 思想、 縦深化 pair pattern (Auth v1.21→v1.22 + Realtime v1.13→v1.28 + Streaming v1.20→v1.31 + Database v1.14→v1.32 + Payment v1.23→v1.33) 5 pair 連続化 で kiwa の深化戦略 SSOT を payment production layer に拡張 6/6 resolved (#1035 #1037 #1038 #1039 #1040 #1041) — @kiwa-lab/payment v0.4.0 (advanced billing II 8 axis + 3 provider × 8 axis neutral state machine + real driver env-gate minor bump + 300 semantics test) npm publish、 dogfood 3 app v2 / 新規 (stripe-marketplace-app v2 + paddle-subscription-app v2 + lemonsqueezy-license-app 新規、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 64/65/66 + migration v1.32→v1.33 + concept doc payment-real-driver-testing.md)、 11 milestone 連続 snippet validation pattern (v1.23-v1.33) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.33.0 + release script filter に @kiwa-lab/payment 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用) v1.33 label
v1.32 Database 深化 II — Postgres logical replication + MySQL cluster + SQLite WAL/FTS5 + real driver + 縦深化 pair 第 4 pair 連続化 milestone。 v1.14 (orm 3 provider × 3 backend + testcontainers mock) → v1.26 (orm v0.9 8 axis base semantics) → v1.32 (orm v0.10 8 axis advanced + real driver + 縦深化 pair 第 4 pair) で 縦深化 pair pattern 第 4 pair 連続化 (v1.21→v1.22 Auth + v1.13→v1.28 Realtime + v1.20→v1.31 Streaming に続く database real driver 4 pair 目)、 v1.30 quality gate maximum grid (13 axis) を database real driver に適用、 kiwa の縦深化戦略 SSOT を database production layer に拡張する v1.32 milestone。 @kiwa-lab/orm v0.9.0 → v0.10.0 minor bump し、 packages/orm/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 advanced production db semantics 8 axis (postgres-logical-replication.ts = pub/sub + wal_level + slot + origin filter + heartbeat / postgres-mvcc.ts = snapshot + xid + vacuum + wraparound + freeze / mysql-cluster.ts = group replication + InnoDB cluster + router + read replica routing + primary election / mysql-binlog.ts = row/statement/mixed + GTID + resync + purge / sqlite-wal.ts = journal_mode WAL + checkpoint truncate + shm mapping + read snapshot + wal_autocheckpoint / sqlite-fts5.ts = virtual table + tokenizer + snippet + BM25 rank + fts5vocab / txn-isolation.ts = READ UNCOMMITTED + READ COMMITTED + REPEATABLE READ + SERIALIZABLE + phantom / connection-pool-advanced.ts = health check + failover + pgbouncer + ProxySQL + statement cache)、 3 ORM (Drizzle / Prisma / Kysely) × 3 backend (Postgres / MySQL / SQLite) × 8 axis 統一 mock + fidelity harness collectFidelityCoverage({ providers, backends }) 3 × 3 × 16 = 144 row grid (v1.26 8 axis + v1.32 8 axis の縦横 SSOT 拡張) で release-gate 用に露出、 469 semantics behavior test 追加、 real driver env-gate (KIWA_MODE=real + POSTGRES_KEY / MYSQL_KEY / SQLITE_KEY) 導入。 dogfood app 3 種 v2 / 新規 (dogfood-postgres-cdc-outbox-app v2: Postgres 16 logical replication advanced + slot advance + pgvector real driver + testcontainers duck-typing、 12 v2 test + 3 Playwright e2e / dogfood-mysql-rls-tenant-app v2: MySQL 8 group replication + binlog advance + Router R/W split + testcontainers duck-typing、 16 v2 test + 3 Playwright e2e / dogfood-sqlite-wal-fts-app 新規: SQLite WAL 5-state + FTS5 5-state + Bun edge roundtrip + libsql testcontainers、 32 vitest + 3 Playwright e2e、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 補強 (tutorial 3 本 61 Postgres logical replication advanced / 62 MySQL group replication / 63 SQLite WAL + FTS5 + migration guide v1.31→v1.32 additive-only + concept doc database-real-driver-testing.md = 16 axis SSOT + provider × backend fidelity table + real driver 環境変数 SSOT) + snippet validation docs-tutorial-v1.32.test.ts + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) → v1.28 (Realtime 深化 II) → v1.29 (Release invariants SSOT) → v1.30 (A11y sweep) → v1.31 (Streaming 深化 II) の 21 milestone 連続完遂後、 v1.32 で v1.14 orm 横軸 mock + v1.26 orm 8 base semantics 上に 8 axis 縦軸深化 layer + 3 dogfood db app v2 / 新規 + real driver env-gate を追加、 3 ORM × 3 backend mock (first-line contract) + 8 axis advanced production db semantics state machine (second-line envelope) + Postgres/MySQL/SQLite production real driver fidelity の 3 層で advanced database fidelity を統一 mock 化する Database 深化 II 思想、 縦深化 pair pattern (Auth v1.21→v1.22 + Realtime v1.13→v1.28 + Streaming v1.20→v1.31 + Database v1.14→v1.32) 4 pair 連続化で kiwa の深化戦略 SSOT を database production layer に拡張 6/6 resolved (#1022 #1023 #1024 #1025 #1026 #1027) — @kiwa-lab/orm v0.10.0 (advanced production db semantics 8 axis + 3 ORM × 3 backend × 8 axis neutral state machine + real driver env-gate minor bump + 469 semantics test) npm publish、 dogfood 3 app v2 / 新規 (postgres-cdc-outbox-app v2 + mysql-rls-tenant-app v2 + sqlite-wal-fts-app 新規、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 61/62/63 + migration v1.31→v1.32 + concept doc database-real-driver-testing.md)、 10 milestone 連続 snippet validation pattern (v1.23-v1.32) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.32.0 + release script filter に @kiwa-lab/orm 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用) v1.32 label
v1.34 Frontend 深化 — component v0.3 + Next.js 15 App Router 深化 8 axis + 3 dogfood app + 縦深化 pair 第 6 pair 連続化 milestone。 v1.16 (component v0.1 + Storybook 8 + Playwright CT + Chromatic mock 6 base semantics) → v1.34 (component v0.3 + nextjs v1.2 8 axis advanced frontend semantics + 3 dogfood app + 縦深化 pair 第 6 pair) で 縦深化 pair pattern 第 6 pair 連続化 (v1.21→v1.22 Auth + v1.13→v1.28 Realtime + v1.20→v1.31 Streaming + v1.14→v1.32 Database + v1.23→v1.33 Payment に続く frontend real driver 6 pair 目)、 v1.30 quality gate maximum grid (13 axis) を frontend real driver に適用、 kiwa の縦深化戦略 SSOT を frontend production layer に拡張する v1.34 milestone。 @kiwa-lab/component v0.2.0 → v0.3.0 + @kiwa-lab/nextjs v1.1.0 → v1.2.0 の pair minor bump (v1.13+ 単一 publish surface pattern からの逸脱、 frontend 深化 が component test harness + Next.js 15 App Router adapter の 2 package 跨ぎのため) し、 packages/component/src/semantics/* + packages/nextjs/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 advanced frontend semantics 8 axis (rsc-harness.ts = RSC render + Suspense boundary tracking + streaming HTML chunk assertion + chunk order guard / streaming-ssr.ts = Suspense pending + selective hydration + progressive hydration state machine + error boundary correlation / view-transitions.ts = element transition + document transition + animation promise tracking + assertion timing / form-action-advanced.ts = useFormStatus pending + useOptimistic patch ledger + progressive enhancement + resolved-vs-optimistic diff / server-action-advanced.ts = form action submit + revalidatePath prefix guard + revalidateTag string match + redirect action / partial-prerendering.ts = static shell + dynamic hole + Suspense boundary flush + streaming assertion / interception-routes.ts = (.) / (..) / (...) matcher + current-segment intercept + modal pattern + parent-segment intercept / parallel-routes-advanced.ts = default.tsx slot + loading state + error boundary + slot navigation state machine)、 3 target (Storybook 8 + Playwright CT + Chromatic) × 4 component axis + 3 target (Next.js 15 App Router / Pages Router / Edge Runtime) × 4 nextjs axis の 24 cell fidelity grid 統一 mock + fidelity harness collectFidelityCoverage({ targets }) (v0.2 6 base axis + v0.3 4 advanced axis の縦横 SSOT 拡張) で release-gate 用に露出、 328 semantics behavior test 追加、 real driver env-gate (KIWA_MODE=real + STORYBOOK_BROWSER_READY / PWCT_BROWSER_READY / CHROMATIC_BROWSER_READY / NEXTJS_APP_ROUTER_BROWSER_READY / NEXTJS_PAGES_ROUTER_BROWSER_READY / NEXTJS_EDGE_RUNTIME_BROWSER_READY) 導入。 dogfood app 3 種新規 (dogfood-nextjs-rsc-streaming-app v2: Next.js 15.4 + React 19.1 + RSC + Suspense + streaming SSR + selective hydration + view transitions、 67 test / dogfood-nextjs-server-action-app 新規: Next.js 15 form action + useFormStatus + useOptimistic + revalidatePath + revalidateTag + redirect + progressive enhancement、 70 test / dogfood-storybook-8-mdx-app 新規: Storybook 8 + MDX component preview + interaction test (@storybook/test) + coverage report、 71 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 補強 (tutorial 3 本 67 RSC streaming SSR / 68 Server Action + optimistic / 69 Storybook 8 MDX + migration guide v1.33→v1.34 additive-only + concept doc frontend-real-driver-testing.md = 8 axis SSOT + 3 target × 8 axis = 24 cell grid + browser-shaped env-gate SSOT) + snippet validation docs-tutorial-v1.34.test.ts + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) → v1.28 (Realtime 深化 II) → v1.29 (Release invariants SSOT) → v1.30 (A11y sweep) → v1.31 (Streaming 深化 II) → v1.32 (Database 深化 II) → v1.33 (Payment 深化 II) の 23 milestone 連続完遂後、 v1.34 で v1.16 component 縦軸 mock 6 semantics 上に 8 axis 縦軸深化 layer + 3 dogfood frontend app + real driver env-gate を追加、 component test harness (first-line) + Next.js 15 App Router adapter (second-line) + Storybook 8 + Playwright CT + Chromatic + Next.js production real driver fidelity の 3 層で advanced frontend fidelity を統一 mock 化する Frontend 深化 思想、 縦深化 pair pattern (Auth v1.21→v1.22 + Realtime v1.13→v1.28 + Streaming v1.20→v1.31 + Database v1.14→v1.32 + Payment v1.23→v1.33 + Frontend v1.16→v1.34) 6 pair 連続化 で kiwa の深化戦略 SSOT を frontend production layer に拡張 6/6 resolved (#1048 #1049 #1050 #1051 #1052 #1053) — @kiwa-lab/component v0.3.0 + @kiwa-lab/nextjs v1.2.0 (advanced frontend semantics 8 axis + 3 target × 8 axis neutral state machine + real driver env-gate pair minor bump + 328 semantics test) npm publish、 dogfood 3 app 新規 (nextjs-rsc-streaming-app v2 + nextjs-server-action-app 新規 + storybook-8-mdx-app 新規、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 67/68/69 + migration v1.33→v1.34 + concept doc frontend-real-driver-testing.md)、 12 milestone 連続 snippet validation pattern (v1.23-v1.34) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.34.0 + release script filter に @kiwa-lab/component + @kiwa-lab/nextjs 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 9 度目の適用) v1.34 label
v1.35 Observability 深化 II — @kiwa-lab/observability v2.1 advanced 8 axis + real driver + 縦深化 pair 第 7 pair 連続化 milestone。 v1.14 (observability v1 3 provider mock: OpenTelemetry / Datadog / Sentry) → v1.17 (observability v2 Grafana-style DashboardMock + AlertManager routing + trace flame graph + LogCorrelationIndex) → v1.35 (observability v2.1 advanced 8 axis + 4 provider × 8 axis fidelity harness + real driver env-gate) の 3 段深化拡張 pattern (v1.14→v1.23→v1.33 Payment 3 段拡張 pattern を Observability に転写して 2 例目、 縦深化 pair pattern 第 7 pair 連続化)、 v1.30 quality gate maximum grid (13 axis) を observability real driver に適用、 kiwa の縦深化戦略 SSOT を observability production layer に拡張する v1.35 milestone。 @kiwa-lab/observability v2.0.0 → v2.1.0 minor bump し、 packages/observability/src/semantics/* に 1 axis = 1 file の pure state machine helper を実装 advanced observability semantics 8 axis (slo-burn-rate.ts = SLO/SLI definition + error budget calculation + multi-window multi-burn-rate (5m/1h/6h/3d) alert + budget consumption tracking / red-use-golden-signals.ts = RED (Rate/Errors/Duration) + USE (Utilization/Saturation/Errors) + four golden signals (latency/traffic/errors/saturation) + service dependency graph / exemplar-tracing.ts = trace-to-metric exemplar attachment + metric-to-trace navigation + histogram bucket exemplar + Prometheus native histogram exemplar / otel-advanced.ts = OpenTelemetry batch processor + resource detection + W3C context propagation (traceparent/tracestate) + baggage propagation + semantic conventions v1.27 / log-correlation-advanced.ts = structured log + trace_id/span_id auto-injection + LogQL + PromQL join + span event correlation / alert-routing-advanced.ts = silence + inhibit + escalation ladder + oncall rotation + PagerDuty/Slack/OpsGenie routing / continuous-profiling.ts = pyroscope/parca profile ingestion + eBPF profiler + on-CPU/off-CPU/memory profile + flame graph + depth-first flatten / cardinality-control.ts = high-cardinality detection + label reduction + histogram/summary/sketch (DDSketch/t-digest) + cardinality budget enforcement)、 4 provider (Grafana OSS / Prometheus / Loki / OpenTelemetry Collector) × 8 axis 統一 mock + fidelity harness collectFidelityCoverage({ providers }) 4 × 8 = 32 cell fidelity grid (v1.17 v2.0 base + v1.35 v2.1 advanced axis の縦横 SSOT 拡張) で release-gate 用に露出、 250+ semantics behavior test 追加、 real driver env-gate (KIWA_MODE=real + GRAFANA_URL / PROMETHEUS_URL / LOKI_URL / OTEL_COLLECTOR_URL) 導入。 dogfood app 3 種 v2 / 新規 (dogfood-observability-slo-app v2: SLO burn rate + error budget + multi-window multi-burn-rate alert / dogfood-otel-exemplar-app v2: OpenTelemetry Collector + exemplar tracing + baggage + W3C context propagation / dogfood-profiling-app 新規: continuous profiling + pyroscope + eBPF + on-CPU/off-CPU/memory profile、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 補強 (tutorial 3 本 70 SLO burn rate + error budget / 71 OpenTelemetry exemplar + baggage + W3C context / 72 Continuous profiling + pyroscope + eBPF + migration guide v1.34→v1.35 additive-only + concept doc observability-real-driver-testing.md = 8 axis SSOT + 4 provider × 8 axis = 32 cell grid + provider _URL env-gate pattern + KIWA_MODE=real env-gate) + snippet validation docs-tutorial-v1.35.test.ts + VitePress publish。 v1.11 (release gate) → v1.12 (非決定性) → v1.13 (時間軸) → v1.14 (横軸拡張) → v1.15 (AI-LLM 深化) → v1.16 (component 縦軸) → v1.17 (Observability v2) → v1.18 (Blockchain 深化) → v1.19 (Framework 深化) → v1.20 (Streaming 深化) → v1.21 (Auth 深化) → v1.22 (Auth 深化 II) → v1.23 (Payment 深化) → v1.24 (Edge / Serverless 深化) → v1.25 (Perf-harness sweep) → v1.26 (Database 深化) → v1.27 (Mutation testing sweep) → v1.28 (Realtime 深化 II) → v1.29 (Release invariants SSOT) → v1.30 (A11y sweep) → v1.31 (Streaming 深化 II) → v1.32 (Database 深化 II) → v1.33 (Payment 深化 II) → v1.34 (Frontend 深化) の 24 milestone 連続完遂後、 v1.35 で v1.14 observability 横軸 mock + v1.17 observability v2 6 axis dashboard/alert/flame graph/log correlation 上に 8 axis 縦軸深化 II layer + 3 dogfood observability app v2 / 新規 + real driver env-gate を追加、 4 provider mock (first-line contract) + 8 axis advanced observability semantics state machine (second-line envelope) + Grafana/Prometheus/Loki/OTel Collector production real driver fidelity の 3 層で advanced observability fidelity を統一 mock 化する Observability 深化 II 思想、 縦深化 pair pattern (Auth v1.21→v1.22 + Realtime v1.13→v1.28 + Streaming v1.20→v1.31 + Database v1.14→v1.32 + Payment v1.23→v1.33 + Frontend v1.16→v1.34 + Observability v1.14→v1.17→v1.35) 7 pair 連続化 (Payment v1.14→v1.23→v1.33 の 3 段拡張 pattern を Observability に転写して 2 例目) で kiwa の深化戦略 SSOT を observability production layer に拡張 6/6 resolved (#1061 #1063 #1064 #1065 #1066 #1067) — @kiwa-lab/observability v2.1.0 (advanced observability semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 250+ semantics test) npm publish、 dogfood 3 app v2 / 新規 (observability-slo-app v2 + otel-exemplar-app v2 + profiling-app 新規、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 70/71/72 + migration v1.34→v1.35 + concept doc observability-real-driver-testing.md)、 13 milestone 連続 snippet validation pattern (v1.23-v1.35) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.35.0 + release script filter に @kiwa-lab/observability 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 10 度目の適用) v1.35 label
v1.36 Search 深化 II — @kiwa-lab/search v0.3 advanced 8 axis + real driver + 縦深化 pair 第 8 pair 連続化 milestone。 v1.14 (search v0.1 3 provider Meilisearch / Algolia / Typesense mock) → v1.15 (search v0.2) → v1.36 (search v0.3 advanced 8 axis + Meilisearch / Typesense / Algolia / OpenSearch 4 provider real driver) の 3 段深化拡張 pattern (Payment v1.14→v1.23→v1.33 と同構造の 3 例目、 縦深化 pair pattern 第 8 pair 連続化)、 v1.30 quality gate maximum grid (13 axis) を search real driver に適用、 kiwa の縦深化戦略 SSOT を search production layer に拡張する v1.36 milestone。 @kiwa-lab/search v0.2.0 → v0.3.0 minor bump し、 advanced search semantics 8 axis (Vector search + Semantic search + Faceted advanced + Geo search + Relevance tuning + Synonym/stemming advanced + Index management advanced + Query DSL/aggregation advanced) を実装、 4 provider (Meilisearch / Typesense / Algolia / OpenSearch) × 8 axis = 32 combination fidelity harness + real driver env-gate (KIWA_MODE=real + MEILI_URL / TYPESENSE_URL / ALGOLIA_APP_ID + ALGOLIA_API_KEY / OPENSEARCH_URL) を追加。 dogfood 3 app v2 / 新規 (dogfood-search-vector-app v2 + dogfood-search-faceted-geo-app v2 + dogfood-search-opensearch-app 新規、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 73/74/75: 73-vector-search-hybrid / 74-faceted-geo-search / 75-opensearch-relevance-tuning + migration v1.35→v1.36 + concept doc search-real-driver-testing.md) + 14 milestone 連続 snippet validation pattern (v1.23-v1.36) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.36.0 + release-smoke v1-36-publish.test.ts + release script filter に @kiwa-lab/search 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 11 度目の適用) 6/6 resolved (#1075 #1081 #1082 #1083 #1084 #1080) — @kiwa-lab/search v0.3.0 (advanced search semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 32 cell fidelity harness) npm publish、 dogfood 3 app v2 / 新規 (search-vector-app v2 + search-faceted-geo-app v2 + search-opensearch-app 新規、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 73/74/75 + migration v1.35→v1.36 + concept doc search-real-driver-testing.md)、 14 milestone 連続 snippet validation pattern (v1.23-v1.36) 達成、 release script filter に @kiwa-lab/search 存在確認 (11 度目の適用) v1.36 label
v1.37 Security 深化 — @kiwa-lab/security v0.1 新規 8 axis + 4 provider real driver + kiwa 系 monorepo 35 → 36 package 到達 milestone。 v1.37 で @kiwa-lab/security v0.1.0 新規 package 追加 (CSP + Rate limit + Authorization + WAF + Threat model + Secrets scanning + SBOM + Security headers advanced の 8 axis を helmet + express-rate-limit + casbin + coraza の 4 provider 統一 mock として実装)、 v1.30 quality gate maximum grid (13 axis) を security real driver に適用、 kiwa の縦深化戦略 SSOT を security production layer に拡張する v1.37 milestone。 8 axis semantics (CSP strict-dynamic + nonce + hash + trusted-types + report-only / Rate limit token bucket + leaky bucket + sliding window + fixed window / Authorization RBAC + ABAC + role hierarchy + policy engine + combining algorithm / WAF Coraza + OWASP CRS + rule syntax + phase transition / Threat model STRIDE + PASTA + DREAD + attack tree / Secrets scanning TruffleHog + Gitleaks + entropy gate + secret detection / SBOM CycloneDX + SPDX + OSV advisory + license policy / Security headers HSTS + permissions-policy + helmet + x-frame-options + referrer-policy) を 4 provider × 8 axis = 32 combination fidelity harness + real driver env-gate (KIWA_MODE=real + HELMET_VERSION / RATE_LIMIT_VERSION / CASBIN_VERSION / CORAZA_VERSION) で統一。 dogfood 3 app 新規 (dogfood-security-csp-headers-app: Next.js + CSP nonce + strict-dynamic + trusted-types + security headers advanced、 70 test / dogfood-security-rbac-abac-app: Casbin + RBAC + ABAC + policy engine + role hierarchy、 86 test / dogfood-security-sbom-scanning-app: Trivy + CycloneDX + SPDX + Gitleaks + OSV/NVD + license policy、 62 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 76-78: 76-csp-strict-dynamic / 77-rbac-abac-policy / 78-sbom-license-scanning + migration v1.36→v1.37 + concept doc security-real-driver-testing.md) + 15 milestone 連続 snippet validation pattern (v1.23-v1.37) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.37.0 + release-smoke v1-37-publish.test.ts + release script filter に @kiwa-lab/security 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 12 度目の適用) 6/6 resolved (#1087 #1089 #1090 #1091 #1092 #1093) — @kiwa-lab/security v0.1.0 (security semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate 新規 package + 258 semantics test) npm publish、 dogfood 3 app 新規 (security-csp-headers-app + security-rbac-abac-app + security-sbom-scanning-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 76-78 + migration v1.36→v1.37 + concept doc security-real-driver-testing.md)、 15 milestone 連続 snippet validation pattern (v1.23-v1.37) 達成、 release script filter に @kiwa-lab/security 存在確認 (12 度目の適用) v1.37 label
v1.38 AI/LLM 深化 II — @kiwa-lab/ai-llm v0.4 advanced 8 axis + real driver + 縦深化 pair 第 10 pair 連続化 milestone。 v1.12 (ai-llm v0.1 3 provider Anthropic / OpenAI / Vercel AI SDK mock) → v1.15 (ai-llm v0.2 / v0.3 multimodal + Whisper) → v1.38 (ai-llm v0.4 advanced 8 axis + 4 provider real driver) の 3 段深化拡張 pattern (Payment v1.14→v1.23→v1.33 と同構造の 3 例目、 Observability v1.14→v1.17→v1.35 に続く 3 段拡張 3 例目、 縦深化 pair pattern 第 10 pair 連続化)、 v1.30 quality gate maximum grid (13 axis) を AI/LLM real driver に適用、 kiwa の縦深化戦略 SSOT を AI/LLM production layer に拡張する v1.38 milestone。 @kiwa-lab/ai-llm v0.3.0 → v0.4.0 minor bump し、 advanced AI/LLM semantics 8 axis (Prompt injection defense (direct + indirect + jailbreak + role hijacking + XML injection) / Hallucination detection (self-consistency + factuality + citation + confidence + hedging) / LLM eval (LLM-as-judge + rubric + preference + Elo + human-in-the-loop) / Guardrails (JSON schema + regex + toxicity + PII + Constitutional AI) / RAG advanced (chunking + hybrid retrieval + reranking + citation + context compression) / Agent orchestration (ReAct + ToT + reflection + self-correction + planning + tool selection) / Fine-tuning eval (SFT/DPO + catastrophic forgetting + benchmark drift) / Cost / latency SLA (budget + p50/p99 + model routing + fallback ladder)) を実装、 4 provider (Anthropic + OpenAI + Vercel AI SDK + LangChain) × 8 axis = 32 combination fidelity harness + real driver env-gate (KIWA_MODE=real + ANTHROPIC_API_KEY / OPENAI_API_KEY / VERCEL_AI_SDK_READY / LANGCHAIN_READY) を追加。 dogfood 3 app 新規 (dogfood-llm-prompt-injection-defense-app: Anthropic + prompt injection defense + jailbreak + guardrails + Constitutional AI、 109 test / dogfood-llm-hallucination-eval-app: OpenAI + LLM-as-judge + rubric-based eval + citation grounding、 90 test / dogfood-llm-agent-orchestration-app: Vercel AI SDK + ReAct + tree of thoughts + reflection + tool selection、 89 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 79-81: 79-prompt-injection-defense / 80-llm-eval-hallucination / 81-agent-orchestration + migration v1.37→v1.38 + concept doc ai-llm-real-driver-testing.md) + 16 milestone 連続 snippet validation pattern (v1.23-v1.38) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.38.0 + release-smoke v1-38-publish.test.ts + release script filter に @kiwa-lab/ai-llm 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 13 度目の適用) 6/6 resolved (#1102 #1103 #1104 #1105 #1106 #1107) — @kiwa-lab/ai-llm v0.4.0 (advanced AI/LLM semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 436 semantics test) npm publish、 dogfood 3 app 新規 (llm-prompt-injection-defense-app + llm-hallucination-eval-app + llm-agent-orchestration-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 79-81 + migration v1.37→v1.38 + concept doc ai-llm-real-driver-testing.md)、 16 milestone 連続 snippet validation pattern (v1.23-v1.38) 達成、 release script filter に @kiwa-lab/ai-llm 存在確認 (13 度目の適用) v1.38 label
v1.39 Security 深化 II — @kiwa-lab/security v0.2 advanced II 8 axis + real driver + 縦深化 pair 第 9 pair 2 段拡張 milestone。 v1.37 (security v0.1 8 base axis: CSP + Rate limit + Authorization + WAF + Threat model + Secrets scanning + SBOM + Security headers を helmet + express-rate-limit + casbin + coraza の 4 provider 統一 mock として実装) → v1.39 (security v0.2 8 advanced II axis + 4 provider real driver) の 2 段拡張 pattern (Auth v1.21→v1.22、 Realtime v1.13→v1.28、 Streaming v1.20→v1.31、 Database v1.14→v1.32、 Payment v1.23→v1.33、 Frontend v1.16→v1.34、 Observability v1.14→v1.17→v1.35、 Search v1.14→v1.15→v1.36、 AI/LLM v1.12→v1.15→v1.38 に続く 11 pair 目、 縦深化 pair pattern 11 pair 連続化)、 v1.30 quality gate maximum grid (13 axis) を security advanced II real driver に適用、 kiwa の縦深化戦略 SSOT を security advanced II production layer に拡張する v1.39 milestone。 @kiwa-lab/security v0.1.0 → v0.2.0 minor bump し、 advanced II security semantics 8 axis (mTLS + certificate pinning (OCSP stapling + CT log) / Zero-trust architecture (device posture + risk score + JIT + micro-segmentation) / SIEM + audit log (structured + tamper-evident seal + retention + correlation rule) / Incident response (playbook + severity + escalation + forensics + post-mortem) / Cryptography advanced (AEAD + KDF + envelope encryption + key rotation + HSM + post-quantum ML-KEM) / Container / Kubernetes security (pod security policy + network policy + admission controller + OPA/Gatekeeper/Kyverno) / Supply chain security (SLSA level + reproducible build + signed provenance + attestation + Sigstore + in-toto) / Web Vitals security (subresource integrity + trusted types + permissions policy + cross-origin isolation COOP/COEP)) を実装、 4 provider (istio + opa + siem-splunk + vault) × 8 axis = 32 combination advanced II fidelity harness (v1.37 v0.1 base 32 cell と合わせて 64 combination coverage) + real driver env-gate (KIWA_MODE=real + testcontainers) を追加。 dogfood 3 app 新規 (dogfood-security-mtls-zero-trust-app: mTLS handshake + SPKI pin + OCSP stapling + CT log + zero-trust posture + risk score + JIT + micro-segment、 74 test / dogfood-security-siem-incident-app: SIEM + audit log + tamper-evident seal + retention + correlation + IR playbook + severity + escalation + forensics + post-mortem + orchestrator、 85 test / dogfood-security-supply-chain-slsa-app: SLSA + reproducible build + signed provenance + attestation、 76 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 82-84: 82-mtls-zero-trust / 83-siem-incident-response / 84-supply-chain-slsa + migration v1.38→v1.39 + concept doc security-advanced-II-testing.md) + 17 milestone 連続 snippet validation pattern (v1.23-v1.39) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.39.0 + release-smoke v1-39-publish.test.ts + release script filter に @kiwa-lab/security 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 14 度目の適用) 6/6 resolved (#1116 #1118 #1119 #1120 #1121 #1122) — @kiwa-lab/security v0.2.0 (advanced II security semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 190 semantics test) npm publish、 dogfood 3 app 新規 (security-mtls-zero-trust-app + security-siem-incident-app + security-supply-chain-slsa-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 82-84 + migration v1.38→v1.39 + concept doc security-advanced-II-testing.md)、 17 milestone 連続 snippet validation pattern (v1.23-v1.39) 達成、 release script filter に @kiwa-lab/security 存在確認 (14 度目の適用) v1.39 label
v1.40 AI/LLM 深化 III — @kiwa-lab/ai-llm v0.5 advanced III 8 axis + real driver + 縦深化 pair 第 10 pair 4 段拡張 (kiwa 史上初の pair 深度 4 段記録更新) milestone。 v1.12 (ai-llm v0.1 3 provider Anthropic + OpenAI + Vercel AI SDK mock) → v1.15 (ai-llm v0.2 multimodal + Whisper) → v1.38 (ai-llm v0.4 advanced 8 axis + 4 provider real driver) → v1.40 (ai-llm v0.5 advanced III 8 axis + 4 provider real driver) の 4 段拡張 pattern (kiwa 史上初、 従来最深 pair は 3 段 = Payment v1.14→v1.23→v1.33 + Observability v1.14→v1.17→v1.35 + Search v1.14→v1.15→v1.36 + AI/LLM v1.12→v1.15→v1.38、 v1.40 で AI/LLM 縦深化 pair が新記録)、 v1.30 quality gate maximum grid (13 axis) を AI/LLM advanced III real driver に適用、 kiwa の縦深化戦略 SSOT を AI/LLM advanced III production layer に拡張する v1.40 milestone。 @kiwa-lab/ai-llm v0.4.0 → v0.5.0 minor bump し、 advanced III AI/LLM semantics 8 axis (Multi-agent orchestration (LangGraph state graph + CrewAI supervisor + AutoGen role-based crew assembly) / Agent swarm coordination (role assignment + task allocation + majority-vote consensus + Byzantine fault tolerance PBFT-lite) / Code interpreter (sandboxed Python REPL + tool use ledger + rollback state machine + memory snapshot) / Fine-tuning pipeline (SFT + DPO + RLHF + drift detection) / LLM ops (model registry + version rollout + A/B testing + canary promotion + shadow comparison + error rate gate) / Prompt engineering advanced (CoT + few-shot + caching + versioning) / RAG III (GraphRAG + agentic + self-query + parent doc + hierarchical retrieval) / Cost optimization (batch + cascade + semantic cache + budget SLA)) を実装、 4 provider (Anthropic + OpenAI + Vercel AI SDK + LangChain) × 8 advanced III axis = 32 combination advanced III fidelity harness (v1.38 v0.4 advanced 32 cell と合わせて 64 combination coverage) + real driver env-gate (KIWA_MODE=real + ANTHROPIC_API_KEY / OPENAI_API_KEY / VERCEL_AI_SDK_READY / LANGCHAIN_READY + KIWA_LLM_BUDGET_USD) を追加。 dogfood 3 app 新規 (dogfood-llm-multi-agent-swarm-app: LangGraph + CrewAI + AutoGen + swarm + Byzantine PBFT-lite、 94 test / dogfood-llm-code-interpreter-app: sandboxed code exec + Python REPL + tool use + rollback、 81 test / dogfood-llm-ops-registry-app: model registry + rollout + A/B + canary + shadow、 106 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 85-87: 85-multi-agent-swarm / 86-code-interpreter-fine-tuning / 87-llm-ops-rag-iii-cost + migration v1.39→v1.40 + concept doc ai-llm-advanced-III-testing.md) + 18 milestone 連続 snippet validation pattern (v1.23-v1.40) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.40.0 + release-smoke v1-40-publish.test.ts + release script filter に @kiwa-lab/ai-llm 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 15 度目の適用) 6/6 resolved (#1130 #1132 #1133 #1134 #1135 #1136) — @kiwa-lab/ai-llm v0.5.0 (advanced III AI/LLM semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 502 semantics test) npm publish、 dogfood 3 app 新規 (llm-multi-agent-swarm-app + llm-code-interpreter-app + llm-ops-registry-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 85-87 + migration v1.39→v1.40 + concept doc ai-llm-advanced-III-testing.md)、 18 milestone 連続 snippet validation pattern (v1.23-v1.40) 達成、 release script filter に @kiwa-lab/ai-llm 存在確認 (15 度目の適用)、 pair 深度 4 段 kiwa 史上初 record 更新 v1.40 label
v1.41 Payment 深化 III — @kiwa-lab/payment v0.5 advanced III 8 axis + real driver + 縦深化 pair 第 5 pair 4 段拡張 (kiwa 史上 2 例目 pair 深度 4 段記録 = record 再現性実証) milestone。 v1.14 (payment v0.1 3 provider Stripe / Paddle / Lemon Squeezy webhook mock) → v1.19 (payment v0.2 advanced billing base) → v1.33 (payment v0.4 advanced II 8 axis + 3 provider real driver) → v1.41 (payment v0.5 advanced III 8 axis + 3 provider real driver) の 4 段拡張 pattern (v1.40 AI/LLM 4 段拡張 record に続く 2 例目、 pair 深度 4 段 pattern の repeatability 実証、 v1.14→v1.23→v1.33 3 段拡張 pattern を Payment で 4 段目 v1.41 に到達させた kiwa milestone 史上 2 例目の depth-4 record)、 v1.30 quality gate maximum grid (13 axis) を Payment advanced III real driver に適用、 kiwa の縦深化戦略 SSOT を Payment advanced III production layer に拡張する v1.41 milestone。 @kiwa-lab/payment v0.4.0 → v0.5.0 minor bump し、 advanced III payment semantics 8 axis (Embedded finance (BaaS + card issuance + KYC/KYB + Stripe Treasury / Unit / Column + regulatory account gating) / BNPL (installment plan + risk scoring + credit decisioning + late fee + Klarna / Affirm / Afterpay) / Crypto payment (stablecoin invoicing + on-chain confirmation + gas abstraction + wallet linking + Coinbase Commerce / BitPay) / FX cross-border (multi-currency + rate lock + SWIFT/SEPA settlement + rate expiration + Wise / Airwallex) / Recurring revenue advanced (MRR/ARR + churn + expansion + contraction + NRR rollup + cohort analysis) / Payment orchestration II (smart routing + ML score gate + fallback ladder + cascade exhaustion + primary/fallback selection) / Fraud detection advanced (device fingerprint + behavioral biometrics + velocity check + graph fraud + ML fusion) / Regulatory reporting (PCI DSS + PSD2 SCA + PSD3 + DORA ICT + AML/KYC + SAR filing + audit lock)) を実装、 3 provider (Stripe + Paddle + Lemon Squeezy) × 8 advanced III axis = 24 combination advanced III fidelity harness (v1.33 v0.4 advanced II 24 cell + v0.3 base 27 cell と合わせて 75 combination coverage / 25 axis × 3 provider grid) + real driver env-gate (KIWA_MODE=real + KIWA_STRIPE_URL / KIWA_PADDLE_URL / KIWA_LEMONSQUEEZY_URL + optional KIWA_STRIPE_TREASURY_URL / KIWA_UNIT_URL / KIWA_COLUMN_URL / KIWA_KLARNA_URL / KIWA_AFFIRM_URL / KIWA_AFTERPAY_URL / KIWA_CRYPTO_URL / KIWA_FX_URL) を追加。 dogfood 3 app 新規 (dogfood-payment-embedded-finance-app: Stripe Treasury + Unit + Column BaaS + card issuance + KYC/KYB、 64 test / dogfood-payment-bnpl-installment-app: Klarna + Affirm + Afterpay BNPL + installment schedule + credit-check risk scoring + late fee collection、 72 test / dogfood-payment-crypto-fx-app: stablecoin invoicing + on-chain settlement + gas abstraction + FX rate lock + cross-border、 53 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 88-90: 88-embedded-finance-bnpl / 89-crypto-payment-fx / 90-recurring-orchestration-fraud-regulatory + migration v1.40→v1.41 + concept doc payment-advanced-III-testing.md) + 19 milestone 連続 snippet validation pattern (v1.23-v1.41) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.41.0 + release-smoke v1-41-publish.test.ts + release script filter に @kiwa-lab/payment 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 16 度目の適用) 6/6 resolved (#1143 #1145 #1146 #1147 #1148 #1149) — @kiwa-lab/payment v0.5.0 (advanced III payment semantics 8 axis + 3 provider × 8 axis neutral state machine + real driver env-gate minor bump + 558 semantics test) npm publish、 dogfood 3 app 新規 (payment-embedded-finance-app + payment-bnpl-installment-app + payment-crypto-fx-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 88-90 + migration v1.40→v1.41 + concept doc payment-advanced-III-testing.md)、 19 milestone 連続 snippet validation pattern (v1.23-v1.41) 達成、 release script filter に @kiwa-lab/payment 存在確認 (16 度目の適用)、 pair 深度 4 段 2 例目 record 再現性実証 v1.41 label
v1.42 Observability 深化 III — @kiwa-lab/observability v2.2 advanced III 8 axis + real driver + 縦深化 pair 第 7 pair 4 段拡張 (kiwa 史上 3 例目 pair 深度 4 段記録 = record 3 例安定化) milestone。 v1.14 (observability v0.1 3 provider OpenTelemetry / Datadog / Sentry mock) → v1.17 (observability v2.0 Grafana-style dashboard + AlertManager routing + trace flame graph + LogCorrelation) → v1.35 (observability v2.1 advanced 8 axis + 4 provider real driver) → v1.42 (observability v2.2 advanced III 8 axis + 4 provider real driver) の 4 段拡張 pattern (v1.40 AI/LLM 4 段拡張 record + v1.41 Payment 4 段拡張 record に続く 3 例目、 pair 深度 4 段 pattern の 3 例安定化を実証、 v1.14→v1.17→v1.35 3 段拡張 pattern を Observability で 4 段目 v1.42 に到達させた kiwa milestone 史上 3 例目の depth-4 record)、 v1.30 quality gate maximum grid (13 axis) を Observability advanced III real driver に適用、 kiwa の縦深化戦略 SSOT を Observability advanced III production layer に拡張する v1.42 milestone。 @kiwa-lab/observability v2.1.0 → v2.2.0 minor bump し、 advanced III observability semantics 8 axis (IaC observability (Terraform plan + drift detection + OPA policy + cost attribution) / Service mesh (Istio / Linkerd + mTLS handshake + sidecar inject + circuit breaker + traffic split) / eBPF profiling III (user-space + kernel LSM + syscall tracing + network flow) / LLM observability (token count + prompt log + hallucination + budget attribution + tool-call tracing) / FinOps observability (cost per request + team attribution + rightsizing + spot instance policy) / Chaos engineering (fault injection + blast radius + auto-rollback + game day) / Data pipeline (OpenLineage + Airflow / Dagster lineage + freshness SLA + schema drift + data quality score) / AIOps (anomaly detection + auto-remediation + RCA + alert correlation + change impact analysis)) を実装、 4 provider (Grafana OSS + Prometheus + Loki + OTel Collector) × 8 advanced III axis = 32 combination advanced III fidelity harness (v1.35 v2.1 advanced 32 cell と合わせて 64 combination coverage / 16 axis × 4 provider grid) + real driver env-gate (KIWA_MODE=real + GRAFANA_URL / PROMETHEUS_URL / LOKI_URL / OTEL_COLLECTOR_URL + optional TERRAFORM_STATE_URL / OPA_URL / ISTIO_URL / LINKERD_URL / EBPF_URL / LLM_OBS_URL / FINOPS_URL / CHAOS_URL / OPENLINEAGE_URL / AIOPS_URL) を追加。 dogfood 3 app 新規 (dogfood-observability-iac-drift-app: Terraform state + OPA + drift detection + cost attribution、 68 test / dogfood-observability-llm-ops-app: token usage + prompt log + hallucination + budget attribution、 70 test / dogfood-observability-chaos-aiops-app: fault injection + auto-rollback + AIOps RCA + auto-remediation、 103 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 91-93: 91-iac-servicemesh-ebpf / 92-llm-observability-finops / 93-chaos-datapipeline-aiops + migration v1.41→v1.42 + concept doc observability-advanced-III-testing.md) + 20 milestone 連続 snippet validation pattern (v1.23-v1.42) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.42.0 + release-smoke v1-42-publish.test.ts + release script filter に @kiwa-lab/observability 存在確認 (v1.29-1 fail-fast axis 自動 check、 systematic root cause pattern SSOT 継続適用、 17 度目の適用) 6/6 resolved (#1156 #1158 #1159 #1160 #1161 #1162) — @kiwa-lab/observability v2.2.0 (advanced III observability semantics 8 axis + 4 provider × 8 axis neutral state machine + real driver env-gate minor bump + 559 semantics test) npm publish、 dogfood 3 app 新規 (observability-iac-drift-app + observability-llm-ops-app + observability-chaos-aiops-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 91-93 + migration v1.41→v1.42 + concept doc observability-advanced-III-testing.md)、 20 milestone 連続 snippet validation pattern (v1.23-v1.42) 達成、 release script filter に @kiwa-lab/observability 存在確認 (17 度目の適用)、 pair 深度 4 段 3 例目 record 3 例安定化 v1.42 label
v1.43 Edge / Serverless 深化 — @kiwa-lab/edge v1.2 advanced 8 axis + real driver + 縦深化 pair 第 12 新規 base pair 導入 milestone。 v1.37 Security 以来 5 milestone ぶりの新規 pair base、 3 例目 depth-4 record 達成 (v1.40 AI/LLM + v1.41 Payment + v1.42 Observability) 後の 5-milestone new-base cadence の完成、 kiwa 縦深化戦略 SSOT を Edge / Serverless production layer に拡張する v1.43 milestone。 @kiwa-lab/edge v1.1.0 → v1.2.0 minor bump し、 advanced edge production semantics 8 axis (Cold-start (warm/cold path + provisioned concurrency + preWarm + TTL evict) / Middleware chain (auth → rewrite → cache → transform + short-circuit + rewrittenUrl) / KV eventual consistency (read-your-writes + monotonic-reads + stale-read + monotonic-violation) / R2 multipart upload (resumable + per-part checksum verify + integrity) / D1 read replica routing (primary write + lowest-lag replica + failover + region affinity) / DurableObject state migration (schema version bump + per-instance migrate + zero-downtime rollout + rollback) / WebSocket hibernation (idle hibernate + resume + state restore + reconnect) / Global routing (Anycast + geo match + latency select + healthy pop failover)) を実装、 3 platform (Cloudflare Workers + Vercel Edge + Deno Deploy) × 8 advanced axis = 24 combination fidelity harness (v1.24 v0.2 8 axis 24 cell と合わせて 48 combination coverage / 16 axis × 3 platform grid) + real driver env-gate (KIWA_MODE=real + KIWA_EDGE_FN_URL / KIWA_EDGE_DO_URL / KIWA_EDGE_ANYCAST_URL + optional EDGE_COLD_START_STACK_READY / EDGE_DO_MIGRATION_STACK_READY / EDGE_GLOBAL_ROUTING_STACK_READY) を追加。 dogfood 3 app 新規 (dogfood-edge-serverless-cold-start-app: 3 axis (cold / warm / provisioned) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 64 test / dogfood-edge-durable-object-migration-app: 3 axis (schema-bump / data-migrate / rollout) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 60 test / dogfood-edge-global-routing-app: 3 axis (anycast-routing / geo-matching / replica-affinity) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 60 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 94-96: 94-serverless-cold-start / 95-durable-object-migration / 96-global-routing + migration v1.42→v1.43 + concept doc edge-serverless-advanced-testing.md) + 21 milestone 連続 snippet validation pattern (v1.23-v1.43) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.43.0 + release-smoke v1-43-publish.test.ts + release script filter に @kiwa-lab/edge 存在確認 (systematic root cause pattern SSOT 継続適用、 18 度目の適用) 6/6 resolved (#1168 #1169 #1170 #1171 #1172 #1173) — @kiwa-lab/edge v1.2.0 (advanced edge semantics 8 axis + 3 platform × 8 axis neutral state machine + real driver env-gate minor bump + 227 test) npm publish、 dogfood 3 app 新規 (edge-serverless-cold-start-app + edge-durable-object-migration-app + edge-global-routing-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 94-96 + migration v1.42→v1.43 + concept doc edge-serverless-advanced-testing.md)、 21 milestone 連続 snippet validation pattern (v1.23-v1.43) 達成、 release script filter に @kiwa-lab/edge 存在確認 (18 度目の適用)、 pair 第 12 新規 base pair 導入 v1.43 label
v1.44 Auth Passwordless UX III 深化 — @kiwa-lab/auth v0.6 advanced Passwordless UX 8 axis + real driver + 縦深化 pair 第 1 pair 3 段拡張達成 milestone。 v1.21 (auth v0.4 4 protocol adapter: WebAuthn L3 + Passkey + OAuth 2.1 + OIDC) → v1.22 (auth v0.5 real driver + a11y gate) → v1.44 (auth v0.6 advanced Passwordless UX 8 axis) の 3 段構造、 pair 第 8 Search (v1.14→v1.15→v1.36) に続く 2 例目 pair 深度 3 段記録、 v1.43 Edge / Serverless base 導入直後の pair 深化継続 milestone (5-milestone new-base cadence + 中間 milestone での既存 pair 深化 の 2 段組み rhythm 定着)。 @kiwa-lab/auth v0.5.0 → v0.6.0 minor bump し、 advanced Passwordless UX III semantics 8 axis (device-bound-passkey (device bind + sync fabric verification + credential migration + credProps.rk) / conditional-ui (WebAuthn L3 mediation: "conditional" + autofill hint + fallback ladder + timeout) / step-up-mfa (NIST SP 800-63B AAL escalation ladder + factor 満足 + trust duration cache) / risk-based-auth (signal aggregation + adaptive challenge + policy chain) / auth-continuity (seamless re-auth + refresh token rotation + session extension + revocation window) / cross-device-flow (CTAP2 hybrid transport (caBLE) QR + BLE + tunnel + assertion signature) / session-hijack-detect (fingerprint drift + geo anomaly + concurrent session + logout cascade) / auth-telemetry (attempt log + success rate + latency histogram + abuse detection)) を実装、 3 platform (chromium + webkit + firefox) × 8 advanced III axis = 24 combination fidelity harness (v1.22 v0.5 + v1.44 v0.6 の縦横 SSOT 拡張) を追加。 dogfood 3 app 新規 (dogfood-auth-passwordless-ux-app: 3 axis (device-bound + conditional-ui + cross-device) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 60 test / dogfood-auth-step-up-mfa-app: 3 axis (step-up + continuity + hijack) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 60 test / dogfood-auth-risk-based-app: 3 axis (risk + telemetry + hijack concurrent + geo variant) × 3 platform × 4 op = 12-op mock/real adapter + fidelity harness、 60 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 97-99: 97-passwordless-ux / 98-step-up-mfa / 99-risk-based-auth + migration v1.43→v1.44 + concept doc auth-advanced-III-testing.md) + 22 milestone 連続 snippet validation pattern (v1.23-v1.44) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.44.0 + release-smoke v1-44-publish.test.ts + release script filter に @kiwa-lab/auth 存在確認 (systematic root cause pattern SSOT 継続適用、 19 度目の適用) 6/6 resolved (#1175 #1176 #1177 #1178 #1179 #1180) — @kiwa-lab/auth v0.6.0 (advanced Passwordless UX III 8 axis + 3 platform × 8 axis neutral state machine + real driver env-gate minor bump + 91 semantics test + 538 total test) npm publish、 dogfood 3 app 新規 (auth-passwordless-ux-app + auth-step-up-mfa-app + auth-risk-based-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 97-99 + migration v1.43→v1.44 + concept doc auth-advanced-III-testing.md)、 22 milestone 連続 snippet validation pattern (v1.23-v1.44) 達成、 release script filter に @kiwa-lab/auth 存在確認 (19 度目の適用)、 pair 第 1 pair 3 段拡張達成 (2 例目 pair 深度 3 段記録) v1.44 label
v1.45 Realtime III 深化 — @kiwa-lab/realtime v0.3 advanced III 8 axis + 縦深化 pair 第 2 pair 3 段拡張達成 (3 例目 record) milestone。 v1.13 (realtime v0.1 base) → v1.28 (realtime v0.2 WebRTC + WebTransport + HTTP/3 + QUIC 8 axis) → v1.45 (realtime v0.3 MoQ + WebCodecs + AI-media 8 axis) の 3 段構造、 pair 第 8 Search (v1.14→v1.15→v1.36) + pair 第 1 Auth (v1.21→v1.22→v1.44) に続く 3 例目 pair 深度 3 段記録、 3 段拡張 pattern の 3 例安定化を実証。 5-milestone new-base cadence + 中間 milestone での既存 pair 深化 の 2 段組み rhythm 定着継続。 @kiwa-lab/realtime v0.2.0 → v0.3.0 minor bump し、 advanced III realtime semantics 8 axis (moq-fetch (MoQT track announce + subscribe + object delivery) / moq-datagram-media (partial reliability + FEC recovery + priority) / webcodecs-encoder (VideoEncoder / AudioEncoder direct API + hardware acceleration) / webcodecs-decoder (reorder buffer + drop policy) / simulcast-svc (L1T1 → L3T3 + adaptive bitrate) / voice-streaming (OpenAI Realtime API + Anthropic voice) / whisper-streaming (partial transcript + VAD) / realtime-ai-inference (per-frame prediction + latency budget)) を実装、 3 新 protocol (MoQ / WebCodecs / AI-media) 追加。 dogfood 3 app 新規 (dogfood-realtime-moq-webcodecs-app: moq + encoder + simulcast 3 axis、 60 test / dogfood-realtime-voice-streaming-app: voice + whisper + inference 3 axis、 60 test / dogfood-realtime-svc-adaptive-app: svc + decoder + datagram 3 axis、 60 test、 全 7 軸 release gate PASS + KIWA_MODE=real で real driver 走査 opt-in) + docs 3 pillars (tutorial 100-102 + migration v1.44→v1.45 + concept doc realtime-advanced-III-testing.md) + 23 milestone 連続 snippet validation pattern (v1.23-v1.45) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.45.0 + release-smoke v1-45-publish.test.ts + release script filter に @kiwa-lab/realtime 存在確認 (systematic root cause pattern SSOT 継続適用、 20 度目の適用) 6/6 resolved (#1182 #1183 #1184 #1185 #1186 #1187) — @kiwa-lab/realtime v0.3.0 (advanced III realtime semantics 8 axis + 6 protocol × 8 axis + real driver env-gate minor bump + 63 semantics test + 209 total test) npm publish、 dogfood 3 app 新規 (realtime-moq-webcodecs-app + realtime-voice-streaming-app + realtime-svc-adaptive-app、 全 7 軸 release gate PASS)、 docs 3 pillars (tutorial 100-102 + migration v1.44→v1.45 + concept doc realtime-advanced-III-testing.md)、 23 milestone 連続 snippet validation pattern (v1.23-v1.45) 達成、 release script filter に @kiwa-lab/realtime 存在確認 (20 度目の適用)、 pair 第 2 pair 3 段拡張達成 (3 例目 pair 深度 3 段記録、 3 段拡張 pattern 3 例安定化) v1.45 label
v1.46 quality gate integrity 回復 + DevSecOps library 化 の 2 軸 milestone。 v1.25 で docs 記載した「33 package sweep」 と実態 15 package の gap + v1.42-v1.45 advanced III baseline gap を解消、 dev-flow の /security-audit skill 4 種を library 経由に置換する Phase 1。 @kiwa-lab/perf-harness v0.2 → v0.3 strict mode (detectRegressionStrict t >3 + delta 10% + runPerf3LayerStrict iter 400 + concurrency 20 + memory 400 + backward compat 維持)、 @kiwa-lab/quality-metrics v0.3 → v0.4 (13 → 15 axis、 PerfMetric.strict + .baselineExists field + perfStrictP95Ms default 50 + perfStrictRequireBaseline default true + strict = true 時のみ発火 backward compat)、 @kiwa-lab/security-devsecops v0.1 新規 (40 package 到達、 6 axis DevSecOps state machine: SAST Semgrep-style + SCA Trivy-style + Secret Gitleaks-style + IaC tfsec-style + DAST OWASP ZAP-style + Container Grype-style、 provider-neutral event pattern、 44 test)、 38 package perf baseline 完全 sweep (security package + 4 stale refresh)、 dogfood dogfood-security-devsecops-app 新規 (6 axis chain workflow 8 test) + docs 3 pillars (tutorial 103-104: 103-security-devsecops / 104-perf-strict + migration v1.45→v1.46 + concept doc security-devsecops-library-integration.md) + 24 milestone 連続 snippet validation streak (v1.23-v1.46、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.46.0 + release-smoke v1-46-publish.test.ts + release script filter に @kiwa-lab/perf-harness + @kiwa-lab/quality-metrics + @kiwa-lab/security-devsecops 存在確認 (systematic root cause pattern SSOT 継続適用、 21 度目の適用)
v1.47 security-devsecops v0.2 adapter 統合 Phase 2 完成 の単軸 milestone。 @kiwa-lab/security-devsecops v0.1 → v0.2 minor bump、 6 axis (SAST + SCA + Secret + IaC + DAST + Container) の adapter interface (SastAdapter / ScaAdapter / SecretAdapter / IacAdapter / DastAdapter / ContainerAdapter) + 12 adapter 実装 (6 mock + 6 real) を追加、 backward compat 維持で v0.1 semantics 直接使用継続、 real adapter は KIWA_SECURITY_MODE=real + 6 CLI URL env (KIWA_SEMGREP_URL / KIWA_TRIVY_URL / KIWA_GITLEAKS_URL / KIWA_TFSEC_URL / KIWA_ZAP_URL / KIWA_GRYPE_URL) 全設定時のみ opt-in、 未設定時 explicit throw で fail-closed。 dogfood dogfood-security-devsecops-adapter-app 新規 (6 axis × 2 mode × fidelity harness workflow 14 test) + docs 3 pillars (tutorial 105-security-adapter + migration v1.46→v1.47 + concept doc security-devsecops-library-integration.md Phase 2 完成節追加) + 25 milestone 連続 snippet validation streak (v1.23-v1.47、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.47.0 + release-smoke v1-47-publish.test.ts + release script filter に @kiwa-lab/security-devsecops 存在確認 (systematic root cause pattern SSOT 継続適用、 22 度目の適用) 7/7 resolved — @kiwa-lab/security-devsecops v0.2.0 (6 adapter interface + 12 adapter 実装 + env-gate + backward compat 維持) npm publish、 dogfood 1 app 新規、 docs 3 pillars、 25 milestone 連続 snippet validation streak (v1.23-v1.47) 達成、 release script filter 存在確認 (22 度目の適用)、 Phase 1 (v1.46 library semantics 化) → Phase 2 (v1.47 adapter 統合) 完成、 Phase 3 (v1.48+ single entry 統合) 計画 v1.47 label
v1.48 security-devsecops v0.3 Phase 3 runSecurityAudit single entry 統合 の単軸 milestone、 DevSecOps library 化 3 段完成@kiwa-lab/security-devsecops v0.2 → v0.3 minor bump、 runSecurityAudit({ preset, target, mode }) single entry + 4 preset SSOT map (audit-all 6 axis / supply-chain SCA+Container / specialty SAST+Secret+DAST / threat-model 6 axis + STRIDE tag) + summarizeAuditReport 集約 API + threat-model preset のみ STRIDE tag 添付 (Spoofing / Tampering / Repudiation / Information disclosure / Denial of service / Elevation of privilege)、 backward compat 絶対維持で v0.1 semantics + v0.2 adapter API 変更 0、 Phase 1 (v1.46 semantics) + Phase 2 (v1.47 adapter) + Phase 3 (v1.48 orchestrator) 3 段完成 で skill 4 種 (security-audit / supply-chain / specialty / threat-model) を library single entry で置換可能に。 dogfood dogfood-security-devsecops-orchestrator-app 新規 (runSkill + runAllSkills wrapper、 4 preset workflow 11 test) + docs 3 pillars (tutorial 106-security-orchestrator + migration v1.47→v1.48 + concept doc security-devsecops-library-integration.md Phase 3 完成節追加) + 26 milestone 連続 snippet validation streak (v1.23-v1.48、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.48.0 + release-smoke v1-48-publish.test.ts + release script filter に @kiwa-lab/security-devsecops 存在確認 (systematic root cause pattern SSOT 継続適用、 23 度目の適用) 5/5 resolved — @kiwa-lab/security-devsecops v0.3.0 (Phase 3 orchestrator single entry + 4 preset + summary API + STRIDE tag + backward compat 絶対維持) npm publish、 dogfood 1 app 新規、 docs 3 pillars、 26 milestone 連続 snippet validation streak (v1.23-v1.48) 達成、 release script filter 存在確認 (23 度目の適用)、 Phase 1 (v1.46 semantics 化) → Phase 2 (v1.47 adapter 統合) → Phase 3 (v1.48 orchestrator 統合) DevSecOps library 化 3 段完成 v1.48 label
v1.49 Frontend 深化 III — @kiwa-lab/component v0.4 + @kiwa-lab/nextjs v1.3 pair minor bump、 縦深化 pair 第 6 pair 3 段拡張達成 (4 例目 pair 深度 3 段記録、 3 段拡張 pattern 4 例安定化) milestone。 v1.16 (component v0.1 base + Storybook 8 + Playwright CT + Chromatic mock 6 base semantics) → v1.34 (component v0.3 + nextjs v1.2 advanced 8 axis: rsc-harness + streaming-ssr + view-transitions + form-action-advanced + server-action-advanced + partial-prerendering + interception-routes + parallel-routes-advanced) → v1.49 (component v0.4 + nextjs v1.3 advanced III 4 new axis + 6 axis grid) の 3 段構造完成、 v1.36 Search + v1.44 Auth + v1.45 Realtime に続く 4 例目 pair 深度 3 段記録。 component 側 2 new axis (react-19-actions = React 19 useActionState + useOptimistic + useFormStatus 統合 4 state / islands-architecture = Astro / Deno Fresh / Solid Start Islands architecture 5 state) + nextjs 側 2 new axis (turbopack-hmr = Next.js 15 Turbopack HMR + fast refresh 5 state / concurrent-transitions = React 18/19 concurrent + interrupt-and-restart 5 state)、 既存 8 axis API 変更 0 で backward compat 絶対維持、 fidelity 3 target × 6 axis = 18 row grid (v1.34 12 row から縦横 SSOT 拡張)。 dogfood 3 app 新規 (dogfood-frontend-rsc-advanced-app: RSC + React 19 Actions + Server Actions v2、 8 test / dogfood-frontend-view-transitions-app: View Transitions + Concurrent + PPR、 6 test / dogfood-frontend-islands-turbopack-app: Islands + Turbopack HMR + PE、 6 test) + docs 3 pillars (tutorial 107-rsc-server-actions-v2 + 108-view-transitions-concurrent + 109-islands-turbopack-hmr + migration v1.48→v1.49 additive-only + concept doc frontend-advanced-III-testing.md 6 axis SSOT + Phase 4 計画) + 27 milestone 連続 snippet validation streak (v1.23-v1.49、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.49.0 + release-smoke v1-49-publish.test.ts + release script filter に @kiwa-lab/component + @kiwa-lab/nextjs 存在確認 (systematic root cause pattern SSOT 継続適用、 24 度目の適用) 7/7 resolved@kiwa-lab/component v0.4.0 + @kiwa-lab/nextjs v1.3.0 pair minor bump (advanced III 4 new axis + 3 target × 6 axis fidelity 18 row grid + backward compat 維持) npm publish、 dogfood 3 app 新規 (20 test)、 docs 3 pillars、 27 milestone 連続 snippet validation streak (v1.23-v1.49) 達成、 release script filter 存在確認 (24 度目の適用)、 pair 第 6 pair 3 段拡張達成 (4 例目 pair 深度 3 段記録、 3 段拡張 pattern 4 例安定化) v1.49 label
v1.50 Mobile — @kiwa-lab/mobile v0.1 新規 (React Native + Expo + Metro 3 axis test harness、 縦深化 pair 第 13 新規 base pair 導入、 41 package 到達) milestone。 v1.43 Edge base 以来 6 milestone 経過、 5-milestone new-base cadence 完全到達で pair 12 → 13 拡張。 @kiwa-lab/mobile v0.1.0 新規、 3 axis semantics (react-native.ts = React Native component + native module + gesture、 5 state = idle / mounted / native-invoked / gesture-recognized / unmounted / expo.ts = Expo build config + deep link + push notification、 5 state = idle / config-loaded / link-resolved / push-received / build-completed / metro.ts = Metro bundler + HMR + resolver、 5 state = idle / bundling / resolved / hmr-applied / completed)、 3 target (ios + android + web Expo Web) × 3 axis = 9 row fidelity harness collectFidelityCoverage() + 36 dialect mapping (3 target × 12 neutral event) + MOBILE_AXIS_TO_EVENTS SSOT + gesture 5 種 (tap + pan + pinch + rotation + swipe)、 backward compat 絶対維持で既存 40 package API 変更 0。 dogfood 1 app 新規 (dogfood-mobile-rn-app = 3 axis × 3 target = 9 grid workflow、 11 test) + docs 3 pillars (tutorial 110-mobile-testing + migration v1.49→v1.50 additive-only + concept doc mobile-testing-baseline.md 3 axis SSOT + Phase 2 計画) + 28 milestone 連続 snippet validation streak (v1.23-v1.50、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.50.0 + release-smoke v1-50-publish.test.ts + release script filter に @kiwa-lab/mobile 追加 (systematic root cause pattern SSOT 継続適用、 25 度目の適用) 5/5 resolved@kiwa-lab/mobile v0.1.0 (3 axis semantics + 3 target × 3 axis fidelity + 36 dialect mapping + backward compat 維持) npm publish、 dogfood 1 app 新規 (11 test)、 docs 3 pillars、 28 milestone 連続 snippet validation streak (v1.23-v1.50) 達成、 release script filter 追加 (25 度目の適用、 41 package 分)、 縦深化 pair 第 13 新規 base pair 導入 (12 pair → 13 pair 拡張、 5-milestone new-base cadence 完全到達) v1.50 label
v1.51 Mobile 深化 II — @kiwa-lab/mobile v0.2 advanced II 4 new axis (navigation + reanimated + async-storage + secure-storage) + real driver env-gate (KIWA_MOBILE_MODE=real + 6 axis URL env)、 縦深化 pair 第 13 の 2 段目 (Phase 2) 完成 milestone。 v1.50 (mobile v0.1 base 3 axis) → v1.51 (mobile v0.2 advanced II 4 new axis + real driver env-gate) の 2 段構造、 v1.52+ で Phase 3 (advanced III Fabric + TurboModules) で 3 段拡張達成 (5 例目 pair 深度 3 段記録 candidate) を狙う。 4 new axis semantics (navigation.ts = React Navigation / Expo Router (stack + tab + modal + deep link、 5 state) / reanimated.ts = Reanimated 3 (shared value + worklet + animation lifecycle、 5 state) / async-storage.ts = AsyncStorage / MMKV / localStorage (set + read + remove + batch、 5 state) / secure-storage.ts = Keychain / Keystore / CredMgmt + biometric (store + retrieve + biometric + remove、 5 state))、 3 target × 7 axis = 21 row fidelity grid (v1.50 9 row から拡張)、 3 target × 16 event = 48 new dialect mapping (v1.50 36 + v1.51 48 = 84 total dialect mapping)、 real driver env-gate helper (readMobileRealDriverEnv + assertMobileRealDriverAvailable) で env 未設定時 explicit throw で fail-closed、 backward compat 絶対維持 = v0.1 3 axis API 変更 0。 dogfood 1 app 新規 (dogfood-mobile-advanced-app = 4 axis × 3 target workflow + real driver env-gate 3 pattern、 11 test) + docs 3 pillars (tutorial 111-mobile-advanced + migration v1.50→v1.51 additive-only + concept doc mobile-testing-advanced.md 7 axis SSOT + 21 row fidelity + 84 dialect mapping + Phase 3 計画) + 29 milestone 連続 snippet validation streak (v1.23-v1.51、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.51.0 + release-smoke v1-51-publish.test.ts + release script filter に @kiwa-lab/mobile 存在確認 (systematic root cause pattern SSOT 継続適用、 26 度目の適用) 5/5 resolved@kiwa-lab/mobile v0.2.0 (advanced II 4 new axis + real driver env-gate + backward compat 絶対維持) npm publish、 dogfood 1 app 新規 (11 test)、 docs 3 pillars、 29 milestone 連続 snippet validation streak (v1.23-v1.51) 達成、 release script filter 存在確認 (26 度目の適用)、 縦深化 pair 第 13 の 2 段目 (Phase 2) 完成 v1.51 label
v1.52 Mobile 深化 III — @kiwa-lab/mobile v0.3 advanced III 4 new axis (React Native 0.76+ New Architecture: fabric + turbo-modules + codegen + new-architecture)、 縦深化 pair 第 13 の 3 段目 (Phase 3、 pair 深度 3 段拡張達成 5 例目 pair 深度 3 段記録、 3 段拡張 pattern 5 例安定化を実証) milestone。 v1.50 (mobile v0.1 base 3 axis) → v1.51 (mobile v0.2 advanced II 4 new axis + real driver env-gate) → v1.52 (mobile v0.3 advanced III 4 new axis + New Architecture) の 3 段構造完成、 v1.36 Search + v1.44 Auth + v1.45 Realtime + v1.49 Frontend の 4 例安定化に続く 5 例目 pair 深度 3 段記録。 4 new axis semantics (fabric.ts = React Native 0.76+ Fabric concurrent renderer (schedule + shadow tree commit + priority update + mount、 5 state) / turbo-modules.ts = typed native module + JSI runtime (spec registered + jsi bound + method invoked + unregistered、 5 state) / codegen.ts = schema-first typed bridge (schema loaded + spec generated + type emitted + build completed、 5 state) / new-architecture.ts = async init + concurrent React + legacy interop (initializing + concurrent enabled + interop bridged + ready、 5 state))、 3 target × 11 axis = 33 row fidelity grid (v1.51 21 row から拡張)、 3 target × 44 event = 48 new dialect mapping (v1.50 36 + v1.51 48 + v1.52 48 = 132 total dialect mapping)、 backward compat 絶対維持 = v0.1 + v0.2 API 変更 0。 dogfood 1 app 新規 (dogfood-mobile-new-arch-app = 4 axis × 3 target workflow、 8 test) + docs 3 pillars (tutorial 112-mobile-new-architecture + migration v1.51→v1.52 additive-only + concept doc mobile-testing-advanced-III.md 11 axis SSOT + 33 row fidelity + 132 dialect mapping + pair 深度 3 段記録 5 例目 SSOT + Phase 4 計画) + 30 milestone 連続 snippet validation streak 突入 (v1.23-v1.52、 kiwa 史上最長記録更新継続、 30 milestone 突入) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.52.0 + release-smoke v1-52-publish.test.ts + release script filter に @kiwa-lab/mobile 存在確認 (systematic root cause pattern SSOT 継続適用、 27 度目の適用) 5/5 resolved@kiwa-lab/mobile v0.3.0 (advanced III 4 new axis + backward compat 絶対維持) npm publish、 dogfood 1 app 新規 (8 test)、 docs 3 pillars、 30 milestone 連続 snippet validation streak 突入 (v1.23-v1.52) 達成、 release script filter 存在確認 (27 度目の適用)、 縦深化 pair 第 13 の 3 段目 (Phase 3) 完成、 pair 深度 3 段拡張達成 5 例目 pair 深度 3 段記録、 3 段拡張 pattern 5 例安定化を実証 v1.52 label
v1.53 Mobile 深化 IV — @kiwa-lab/mobile v0.4 real driver adapter layer (11 axis × mock/real = 22 adapter + fidelity harness、 3 target × 11 axis × 2 mode = 66 combination adapter pair、 kiwa Mobile 領域 complete production coverage matrix)、 縦深化 pair 第 13 の 4 段目 (Phase 4、 pair 深度 4 段拡張達成 4 例目 depth-4 record、 depth-4 pattern 4 例安定化を実証) milestone。 v1.50 (mobile v0.1 base 3 axis) → v1.51 (mobile v0.2 advanced II 4 new axis + env-gate helper) → v1.52 (mobile v0.3 advanced III 4 new axis + New Architecture) → v1.53 (mobile v0.4 adapter layer + fidelity harness) の 4 段構造完成、 v1.40 AI/LLM + v1.41 Payment + v1.42 Observability の 3 例安定化に続く 4 例目 depth-4 record。 adapter interface (AdapterInvocation + AdapterResult + MobileAdapter + MOCK_ADAPTERS + REAL_ADAPTERS constant records + makeMockAdapter / makeRealAdapter factory) + fidelity harness (runFidelityCheck + summarizeFidelity、 mock/real trace diff 検証で 33 diff = 11 axis × 3 target 全 matched)、 v0.2 (v1.51) 導入 env-gate helper を real adapter 経路に統合、 backward compat 絶対維持 = v0.1 + v0.2 + v0.3 API 変更 0 (v1.54+ で real adapter を child_process.spawn 実装に置換予定)。 dogfood 1 app 新規 (dogfood-mobile-real-driver-app = 66 combination workflow + fidelity harness 33/33 matched、 8 test) + docs 3 pillars (tutorial 113-mobile-real-driver + migration v1.52→v1.53 additive-only + concept doc mobile-testing-real-driver.md = adapter interface SSOT + 22 adapter + 33 fidelity + 66 combination + Phase 5 計画) + 31 milestone 連続 snippet validation streak (v1.23-v1.53、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.53.0 + release-smoke v1-53-publish.test.ts + release script filter に @kiwa-lab/mobile 存在確認 (systematic root cause pattern SSOT 継続適用、 28 度目の適用) 5/5 resolved@kiwa-lab/mobile v0.4.0 (real driver adapter interface + 11 mock + 11 real + fidelity harness + backward compat 絶対維持) npm publish、 dogfood 1 app 新規 (8 test)、 docs 3 pillars、 31 milestone 連続 snippet validation streak (v1.23-v1.53) 達成、 release script filter 存在確認 (28 度目の適用)、 縦深化 pair 第 13 の 4 段目 (Phase 4) 完成、 pair 深度 4 段拡張達成 4 例目 depth-4 record、 depth-4 pattern 4 例安定化を実証 v1.53 label
v1.54 2 軸 milestone (rules 昇格 + Mobile 深化 V) — 軸 1: ~/.claude/rules/git-workflow.md § GitHub API rate limit 対策 節新規昇格 (v1.51-v1.53 3 milestone 実証済 REST 経路 default 化 pattern SSOT、 7 経路 REST example) + 軸 2: @kiwa-lab/mobile v0.5 child_process.spawn stub 契約層 (invokeMobileCli + cliForAxis + buildSpawnInvocation + 6 CLI stub expo build / metro bundle / codegen run / react-native start / pod install / gradle build + env-gate KIWA_MOBILE_MODE=real + args 上限 32 + fail-closed)、 縦深化 pair 第 13 の 5 段目 (Phase 5、 pair 深度 5 段拡張 1 例目 candidate、 depth-5 pattern 新設、 kiwa milestone 史上初 depth-5 record) milestone。 v1.50 (mobile v0.1 base 3 axis) → v1.51 (mobile v0.2 advanced II 4 new axis + env-gate helper) → v1.52 (mobile v0.3 advanced III 4 new axis + New Architecture) → v1.53 (mobile v0.4 adapter layer + fidelity harness) → v1.54 (mobile v0.5 spawn-driver stub) の 5 段構造完成、 v1.40 AI/LLM + v1.41 Payment + v1.42 Observability + v1.53 Mobile の depth-4 4 例安定化に続く depth-5 は Mobile v1.54 が kiwa milestone 史上初 depth-5 record、 3 例安定化まで v1.60-v1.70 前後で candidate。 backward compat 絶対維持 = v0.1 + v0.2 + v0.3 + v0.4 API 変更 0 (v1.55+ で spawn stub → 実 child_process.spawn 実行に置換予定)。 11 axis → 6 CLI mapping (CLI-backed 7 axis = react-native + expo + metro + fabric + turbo-modules + codegen + new-architecture / non-CLI 4 axis = navigation + reanimated + async-storage + secure-storage)。 dogfood 1 app 新規 (dogfood-mobile-real-cli-app = 6 CLI stub workflow + env-gate 3 pattern + fail-closed 検証、 10 test) + docs 3 pillars (tutorial 114-mobile-real-cli + migration v1.53→v1.54 additive-only + concept doc mobile-testing-real-cli.md = spawn-driver SSOT + 6 CLI 対応表 + 11 axis mapping + depth-5 pattern 新設 SSOT + Phase 6 計画) + 32 milestone 連続 snippet validation streak (v1.23-v1.54、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.54.0 + release-smoke v1-54-publish.test.ts + release script filter に @kiwa-lab/mobile 存在確認 (systematic root cause pattern SSOT 継続適用、 29 度目の適用) 5/5 resolved@kiwa-lab/mobile v0.5.0 (spawn-driver stub + 6 CLI 呼出契約 + env-gate + fail-closed + backward compat 絶対維持) npm publish、 dogfood 1 app 新規 (10 test)、 docs 3 pillars、 32 milestone 連続 snippet validation streak (v1.23-v1.54) 達成、 release script filter 存在確認 (29 度目の適用)、 縦深化 pair 第 13 の 5 段目 (Phase 5) 完成、 pair 深度 5 段拡張 1 例目 candidate、 depth-5 pattern 新設 (kiwa milestone 史上初 depth-5 record) + rules/git-workflow.md § GitHub API rate limit 対策節昇格 (7 経路 REST example SSOT) v1.54 label
v1.55 Mobile 深化 VI — @kiwa-lab/mobile v0.6 実 child_process.spawn 実行 (v0.5 spawn stub → v0.6 実 spawn 実行、 v0.5 shape 契約 preserving で SpawnResult 構造無変更、 stdout/stderr/exitCode/durationMs は 実 spawn からの実測値)、 縦深化 pair 第 13 の 6 段目 (Phase 6、 depth-5 pattern 実装完成、 kiwa milestone 史上初 6 段拡張) milestone。 spawn-executor.ts 新規 (env sanitize per-command allowlist + timeout enforcement 60s + stdout/stderr buffer 上限 10MB + shell:false 固定 + detached:false 固定) + invokeMobileCliWith(inv, spawnFn) DI 経路 (SpawnFn 注入で決定的挙動、 CI 環境で 実 CLI 依存なし) + KIWA_MOBILE_SPAWN=dry-run env で v0.5 stub 相当 shape 復元 (実 CLI 未 install 環境向け backward compat 経路) + sanitizeEnv(command, env) per-command allowlist (secret 漏洩防止、 AWS_SECRET_ACCESS_KEY / NPM_TOKEN / OPENAI_API_KEY / STRIPE_SECRET_KEY 等の未 include env は必ず sanitize) を追加、 v1.50 (mobile v0.1 base) → v1.51 (v0.2 advanced II) → v1.52 (v0.3 advanced III) → v1.53 (v0.4 adapter + fidelity) → v1.54 (v0.5 spawn stub、 depth-5 pattern 新設 kiwa milestone 史上初) → v1.55 (v0.6 実 spawn、 depth-5 pattern 実装完成) の 6 段構造完成、 backward compat 絶対維持 = v0.1 + v0.2 + v0.3 + v0.4 + v0.5 API 変更 0。 6 CLI per-command env allowlist (expo build: EXPO_TOKEN + EAS_TOKEN / metro bundle: METRO_CACHE_DIR / codegen run: NODE_ENV / react-native start: RCT_METRO_PORT / pod install: LANG + COCOAPODS_DISABLE_STATS / gradle build: JAVA_HOME + ANDROID_HOME + ANDROID_SDK_ROOT + GRADLE_USER_HOME)。 dogfood 1 app 新規 (dogfood-mobile-v06-spawn-app = dry-run + DI + sanitize の 3 pattern workflow、 10 test) + docs 3 pillars (tutorial 115-mobile-v06-spawn + migration v1.54→v1.55 additive-only + concept doc mobile-testing-v06-spawn.md = spawn-executor SSOT + per-command allowlist 表 + safety guards + depth-5 pattern 実装完成 SSOT + Phase 7 計画) + 33 milestone 連続 snippet validation streak (v1.23-v1.55、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.55.0 + release-smoke v1-55-publish.test.ts + release script filter に @kiwa-lab/mobile 存在確認 (systematic root cause pattern SSOT 継続適用、 30 度目適用 (30 度突入、 「絶対的 rule」 として認知可能に到達)) 5/5 resolved@kiwa-lab/mobile v0.6.0 (実 child_process.spawn 実行 + spawn-executor + per-command allowlist + timeout + buffer 上限 + dry-run + DI 経路 + backward compat 絶対維持) npm publish、 dogfood 1 app 新規 (10 test)、 docs 3 pillars、 33 milestone 連続 snippet validation streak (v1.23-v1.55) 達成、 release script filter 存在確認 (30 度目、 30 度突入)、 縦深化 pair 第 13 の 6 段目 (Phase 6) 完成、 depth-5 pattern 実装完成、 kiwa milestone 史上初 6 段拡張、 v1.54 stub → v1.55 実 spawn の連続 minor bump で shape 契約 preserving v1.55 label
v1.56 Desktop — @kiwa-lab/desktop v0.1 新規 (Electron + Tauri + Webview 3 axis test harness、 縦深化 pair 第 14 新規 base pair 導入、 42 package 到達、 v1.50 Mobile と対で v2.0 milestone 「desktop + mobile adapters」 goal 達成) milestone。 @kiwa-lab/desktop v0.1.0 新規、 3 axis semantics (electron.ts = main + BrowserWindow + IPC + quit、 5 state / tauri.ts = invoke command + event listen + window mgmt、 5 state / webview.ts = preload + contextBridge + postMessage + isolation、 5 state)、 3 target (macos + windows + linux) × 3 axis = 9 row fidelity grid + 36 dialect mapping (macos Electron / windows webview2 / linux webkit)、 backward compat 絶対維持で既存 41 package API 変更 0。 dogfood 1 app 新規 (dogfood-desktop-electron-app = 3 axis × 3 target = 9 grid workflow、 11 test) + docs 3 pillars (tutorial 116-desktop-testing + migration v1.55→v1.56 additive-only + concept doc desktop-testing-baseline.md 3 axis SSOT + Phase 2 計画) + 34 milestone 連続 snippet validation streak (v1.23-v1.56、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.56.0 + release-smoke v1-56-publish.test.ts + release script filter に @kiwa-lab/desktop 追加 (systematic root cause pattern SSOT 継続適用、 31 度目の適用) 5/5 resolved@kiwa-lab/desktop v0.1.0 (3 axis semantics + 3 target × 3 axis fidelity + 36 dialect mapping + backward compat 維持) npm publish、 dogfood 1 app 新規 (11 test)、 docs 3 pillars、 34 milestone 連続 snippet validation streak (v1.23-v1.56) 達成、 release script filter 追加 (31 度目の適用、 42 package 分)、 縦深化 pair 第 14 新規 base pair 導入 (13 pair → 14 pair 拡張、 v2.0 milestone desktop + mobile adapters goal 達成) v1.56 label
v1.57 Desktop 深化 I — @kiwa-lab/desktop v0.2 minor bump (v0.1 3 axis + advanced 5 axis 追加、 縦深化 pair 第 14 の 第 2 段、 v1.55/v1.56 4 PR rhythm 継承、 systematic pattern 32 度目適用35 milestone snippet streak 達成) milestone。 @kiwa-lab/desktop v0.2.0、 5 advanced axis semantics (auto-updater.ts = check → download → apply → relaunch、 5 state、 Squirrel.Mac / Squirrel.Windows / AppImage / fs-permissions.ts = request → grant → revoke → audit、 5 state、 TCC / UAC / xdg-portal / notification.ts = schedule → display → action → dismiss、 5 state、 UserNotifications / Toast / libnotify / menu-bar.ts = build → item → click → destroy、 5 state、 NSMenu / WM_MENU / GtkMenuBar / tray-icon.ts = create → tooltip → click → remove、 5 state、 NSStatusItem / NotifyIcon / StatusNotifierItem) を uniform state machine + emit helper + 4 step 遷移 pattern で追加、 3 target (macos + windows + linux) × 8 axis (v0.1 3 + v0.2 5) = 24 spec fidelity grid + 3 target × 32 event = 96 dialect mapping (v0.1 36 + v0.2 60、 各 5 axis 4 event を macOS TCC / Windows UAC / Linux xdg-portal 等の実 OS API と 1:1 対応)、 backward compat 絶対維持で既存 42 package + v0.1 3 axis (electron/tauri/webview) API 変更 0。 dogfood 拡張 (dogfood-desktop-electron-app に v0.2 5 axis workflow runner 追加、 runFullDesktopWorkflowV02 で 8 axis × 3 target = 24 workflow 全走査、 既存 runFullDesktopWorkflow は v0.1 3 axis × 3 target = 9 workflow で保持、 v0.1 11 test + v0.2 10 test = 21 test 全 PASS) + docs 3 pillars (tutorial 117-desktop-advanced-axis + migration v1.56→v1.57 additive-only + concept doc desktop-advanced-axis.md v0.2 5 axis SSOT + fidelity 24 grid + systematic pattern 32 度目適用 SSOT + Phase 3 計画) + 35 milestone 連続 snippet validation streak (v1.23-v1.57、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.57.0 + release-smoke v1-57-publish.test.ts (v1-56-publish.test.ts 削除で milestone 遷移) + release script filter に @kiwa-lab/desktop 継続存在確認 (systematic root cause pattern SSOT 継続適用、 32 度目適用、 v1.56 31 度目 desktop v0.1 3 axis uniform を継承) 5/5 resolved@kiwa-lab/desktop v0.2.0 (advanced 5 axis semantics + 8 axis × 3 target fidelity + 96 dialect mapping + backward compat 絶対維持) npm publish、 dogfood 拡張 (10 test 追加、 21 test 全 PASS)、 docs 3 pillars、 35 milestone 連続 snippet validation streak (v1.23-v1.57) 達成、 release script filter 存在確認 (32 度目適用、 42 package 分)、 縦深化 pair 第 14 の第 2 段 (v0.1 → v0.2) 完成、 Desktop 深化 I の起点、 depth-5 pattern (Mobile v1.50-v1.55) を Desktop pair に適用開始、 systematic pattern 32 度目適用 (v1.56 31 度目 desktop v0.1 3 axis uniform を継承した pattern 深化) v1.57 label
v1.65 quality-metrics 深化 II — @kiwa-lab/quality-metrics v0.5 minor bump (v0.4 tier-aware release gate + context に v0.5 で historical trend tracking + drift detection 追加、 縦深化 pair (quality-metrics) の 第 5 段、 v1.55-v1.64 4 PR rhythm 継承 (12 milestone 連続 = 48 PR 連続同 rhythm)、 systematic pattern 40 度突入43 milestone snippet streak 達成、 shape 契約 preserving 絶対維持、 depth-5 pattern 3 例目確定 = Mobile v1.55 + Desktop v1.61 + quality-metrics v1.65 で 3 例安定化到達 = 「絶対的 rule」 昇格 signal) milestone。 history.ts 新設 (MetricSnapshot + AxisDelta + BaselineComparison + DriftCategory + DriftDetection + TrendReport 6 type SSOT + captureSnapshot + compareToBaseline + detectDrift + generateTrendReport の 4 export)、 axis 別 上昇=改善/悪化 判定 SSOT (coverage/testCount/fidelity/mutation/accuracy 上昇=改善、 perf/cost/latency/token/a11y violation 上昇=悪化)、 shape 契約 preserving 絶対維持 (QualityReport 構造無変更)、 backward compat 絶対維持 (v0.1-v0.4 API 変更 0)。 dogfood 新規 (dogfood-quality-metrics-history-app = captureReleaseSnapshot + verifyNoRegression + generateReleaseTrend + findRegressions の 4 pattern、 10 test 全 PASS、 kiwa package 49 到達) + docs 3 pillars (tutorial 125-quality-metrics-history + migration v1.64→v1.65 + concept quality-metrics-history.md + Phase 11 計画) + 43 milestone 連続 snippet validation streak (v1.23-v1.65) 達成、 announcement 4 file + plugin.json 1.65.0 + release-smoke v1-65-publish.test.ts + systematic pattern 40 度突入 5/5 resolved — @kiwa-lab/quality-metrics v0.5.0 npm publish、 dogfood 新規 (10 test 全 PASS、 49 package)、 docs 3 pillars、 43 milestone streak 達成、 縦深化 pair (quality-metrics) の第 5 段 (v0.4 → v0.5) 完成、 depth-5 pattern 3 例目確定 = 「絶対的 rule」 昇格 signal、 systematic pattern 40 度突入、 4 PR rhythm 12 milestone 連続 = 48 PR 連続同 rhythm、 shape 契約 preserving 絶対維持 v1.65 label
v1.64 Desktop 深化 VIII — @kiwa-lab/desktop v0.9 minor bump (v0.1-v0.8 の 12 axis + adapter + fidelity + spawn stub + 実 spawn + real behavior + probe に v0.9 で 実 native binding 呼出 (probeAndInvoke) 追加、 probe availability 判定で 実 CLI 存在時のみ 実 spawn 呼出、 未 install 時は skip 経路で shape 契約 preserving、 4 InvokeStatus (invoked / cli-unavailable / axis-skipped / no-cli-mapping)、 縦深化 pair 第 14 の 第 9 段、 v1.55-v1.63 4 PR rhythm 継承 (11 milestone 連続 = 44 PR 連続同 rhythm)、 systematic pattern 39 度目適用42 milestone snippet streak 達成、 shape 契約 preserving 絶対維持、 depth-9 pattern 新設 candidate 到達v1.62 real behavior + v1.63 probe + v1.64 実 invoke の 3 layer separation 完全 pay off phase) milestone。 native-invoke.ts 新設 (probeAndInvoke + probeAndInvokeAll + InvokeStatus SSOT + NativeInvokeInput + NativeInvokeResult + NativeInvokeMatrixSummary + 4 step 経路: shouldSkipAxis → cliForAxis → probeCliAvailable → invokeDesktopCliWith)、 shape 契約 preserving 絶対維持 (invoked = SpawnResult 保持、 他 3 status = spawnResult=null)、 backward compat 絶対維持 (v0.1-v0.8 API 変更 0)。 dogfood 新規 (dogfood-desktop-native-invoke-app = invokeSingleAxis + invokeAllAxes + generateStatusReport + extractInvokedSpawnResults の 4 pattern、 10 test 全 PASS、 kiwa package 48 到達) + docs 3 pillars (tutorial 124-desktop-native-invoke + migration v1.63→v1.64 + concept desktop-native-invoke.md + Phase 10 計画) + 42 milestone 連続 snippet validation streak (v1.23-v1.64) 達成、 announcement 4 file + plugin.json 1.64.0 + release-smoke v1-64-publish.test.ts + systematic pattern 39 度目適用 5/5 resolved — @kiwa-lab/desktop v0.9.0 npm publish、 dogfood 新規 (10 test 全 PASS、 48 package)、 docs 3 pillars、 42 milestone streak 達成、 縦深化 pair 第 14 の第 9 段 (v0.8 → v0.9) 完成、 depth-9 pattern 新設 candidate 到達、 systematic pattern 39 度目、 4 PR rhythm 11 milestone 連続 = 44 PR 連続同 rhythm、 shape 契約 preserving 絶対維持、 3 layer separation 完全 pay off v1.64 label
v1.63 Desktop 深化 VII — @kiwa-lab/desktop v0.8 minor bump (v0.1-v0.7 の 12 axis + adapter + fidelity + spawn stub + 実 spawn + real behavior runner + fidelity behavior diff に v0.8 で native binding availability probe + skip 経路 追加、 which/where CLI check + platform gate + 12 axis 別 skip strategy + fidelity harness probe 統合、 縦深化 pair 第 14 の 第 8 段、 v1.55-v1.62 4 PR rhythm 継承 (10 milestone 連続 = 40 PR 連続同 rhythm)、 systematic pattern 38 度目適用41 milestone snippet streak 達成、 shape 契約 preserving 絶対維持、 depth-8 pattern 新設 candidate 到達) milestone。 probe.ts 新設 (ProbeInput + ProbeResult + PlatformGate + NodePlatform SSOT + probeCliAvailable + shouldSkipAxis + platformGate + computeSkipMatrix)、 fidelity-harness 拡張 (runFidelityCheckWithProbe + SkippedPair 統合、 skip した pair は diffs から除外)、 shape 契約 preserving 絶対維持 (matched 判定継続)、 backward compat 絶対維持 (v0.1-v0.7 API 変更 0)。 dogfood 新規 (dogfood-desktop-probe-app = probeAllCliCommands + getSkipDecisionsForCurrentPlatform + runProbeAwareFidelityCheck + checkSkipForAxis の 4 pattern、 10 test 全 PASS、 kiwa package 47 到達) + docs 3 pillars (tutorial 123-desktop-probe + migration v1.62→v1.63 + concept desktop-probe.md + Phase 9 計画) + 41 milestone 連続 snippet validation streak (v1.23-v1.63) 達成、 announcement 4 file + plugin.json 1.63.0 + release-smoke v1-63-publish.test.ts + systematic pattern 38 度目適用 5/5 resolved — @kiwa-lab/desktop v0.8.0 npm publish、 dogfood 新規 (10 test 全 PASS、 47 package)、 docs 3 pillars、 41 milestone streak 達成、 縦深化 pair 第 14 の第 8 段 (v0.7 → v0.8) 完成、 depth-8 pattern 新設 candidate 到達、 systematic pattern 38 度目、 4 PR rhythm 10 milestone 連続 = 40 PR 連続同 rhythm、 shape 契約 preserving 絶対維持で backward compat 完全維持 v1.63 label
v1.62 Desktop 深化 VI — @kiwa-lab/desktop v0.7 minor bump (v0.1-v0.6 の 12 axis + adapter + fidelity + spawn stub + 実 spawn に v0.7 で real behavior runner + fidelity harness behavior diff early warning 追加、 v0.4 fidelity harness 設計思想の実運用開始、 縦深化 pair 第 14 の 第 7 段、 v1.55-v1.61 4 PR rhythm 継承 (9 milestone 連続 = 36 PR 連続同 rhythm)、 systematic pattern 37 度目適用40 milestone snippet streak 達成depth-7 pattern 新設 candidate 到達、 shape 契約 preserving 絶対維持) milestone。 real-runner.ts 新設 (12 axis 別 real 経路 behavior 差別化: electron real app + auto-updater 128MB + screen-recording 4K + clipboard URL + dark-mode no-preference 等)、 fidelity-harness 拡張 (FidelityDiff に metadataDiffs + durationDiffMs + summarizeFidelityBehaviorDiff + FidelityBehaviorSummary + MetadataDiff 追加)、 shape 契約 preserving 絶対維持 (neutralEvents + eventCount 一致で 36 pair matched 継続)、 backward compat 絶対維持 (v0.1-v0.6 API 変更 0)。 dogfood 新規 (dogfood-desktop-real-behavior-app = verifyShapeContract + runEarlyWarningReport + drillDownAxisDiff の 3 pattern、 10 test 全 PASS、 kiwa package 46 到達) + docs 3 pillars (tutorial 122-desktop-real-behavior + migration v1.61→v1.62 + concept desktop-real-behavior.md + Phase 8 計画) + 40 milestone 連続 snippet validation streak (v1.23-v1.62) 達成、 announcement 4 file + plugin.json 1.62.0 + release-smoke v1-62-publish.test.ts (v1-61 削除) + systematic pattern 37 度目適用 (v1.61 36 度目継承) 5/5 resolved — @kiwa-lab/desktop v0.7.0 npm publish、 dogfood 新規 (10 test 全 PASS、 46 package)、 docs 3 pillars、 40 milestone streak 達成、 縦深化 pair 第 14 の第 7 段 (v0.6 → v0.7) 完成、 depth-7 pattern 新設 candidate 到達、 v0.4 fidelity harness 設計思想の実運用開始 (behavior diff early warning)、 systematic pattern 37 度目適用、 4 PR rhythm 9 milestone 連続 = 36 PR 連続同 rhythm 達成、 shape 契約 preserving 絶対維持で backward compat 完全維持 v1.62 label
v1.61 Desktop 深化 V — @kiwa-lab/desktop v0.6 minor bump (v0.1 3 axis + v0.2 5 axis + v0.3 4 axis の 12 axis semantics + v0.4 adapter layer + fidelity harness + v0.5 spawn stub 契約層に v0.6 で 実 child_process.spawn 実行を追加、 縦深化 pair 第 14 の 第 6 段、 v1.55-v1.60 4 PR rhythm 継承 (8 milestone 連続 = 32 PR 連続同 rhythm)、 systematic pattern 36 度目適用39 milestone snippet streak 達成Mobile v1.50-v1.55 6 milestone rhythm 完全再現depth-5 pattern 2 例目確定 (Mobile v1.54-v1.55 + Desktop v1.60-v1.61 で 2 例安定化到達) + depth-6 pattern 新設 = kiwa milestone 史上初 depth-6 record 到達) milestone。 @kiwa-lab/desktop v0.6.0、 spawn-executor.ts 新設 (SpawnExecutorInput + SpawnExecutorResult + SpawnFn 3 type SSOT + COMMAND_ENV_ALLOWLIST 8 CLI × per-command env SSOT + sanitizeEnv + executeSpawn (timeout 60_000ms + maxBufferBytes 10 * 1024 * 1024 + shell:false + detached:false + SIGKILL on timeout/buffer exceeded)) + spawn-driver.ts 更新 (invokeDesktopCli 実 spawn 実行 (executeSpawn 経由) + invokeDesktopCliWith DI 経路 + KIWA_DESKTOP_SPAWN=dry-run で v0.5 stub 相当 shape 復元)、 shape 契約 preserving = SpawnResult 構造無変更 stdout/stderr/exitCode/durationMs は 実 spawn からの実測値、 safety layer 4 段 (per-command env allowlist で secret 削ぎ落とし + timeout SIGKILL + buffer 上限 SIGKILL + shell:false command injection 防止 + detached:false zombie 防止)、 backward compat 絶対維持で既存 44 package + v0.1-v0.5 の 12 axis / 48 method + adapter + fidelity + spawn stub 契約層完全保持 (invokeDesktopCli signature + SpawnResult 構造無変更)。 dogfood 新規 (dogfood-desktop-v06-spawn-app = dry-run 経路 (実 CLI 未 install 環境向け backward compat) + DI 経路 (SpawnFn 注入で決定的 CI test) + env sanitize 経路 (per-command allowlist で secret 削ぎ落とし) の 3 pattern workflow、 10 test 全 PASS、 kiwa package 45 個到達) + docs 3 pillars (tutorial 121-desktop-v06-spawn + migration v1.60→v1.61 additive-only + concept doc desktop-v06-spawn.md spawn-executor 3 type SSOT + per-command env allowlist 8 CLI × env 表 + safety layer 4 段 SSOT + invokeDesktopCli 3 経路分岐 + Mobile v1.55 rhythm 再現 + depth-6 新設 + depth-5 2 例目確定 pattern SSOT + Phase 7 計画) + 39 milestone 連続 snippet validation streak (v1.23-v1.61、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.61.0 + release-smoke v1-61-publish.test.ts (v1-60-publish.test.ts 削除で milestone 遷移) + release script filter に @kiwa-lab/desktop 継続存在確認 (systematic root cause pattern SSOT 継続適用、 36 度目適用、 v1.60 35 度目 desktop v0.5 spawn stub uniform を継承) 5/5 resolved@kiwa-lab/desktop v0.6.0 (spawn-executor + per-command env allowlist + timeout + buffer 上限 + DI + dry-run + backward compat 絶対維持) npm publish、 dogfood 新規 (10 test 全 PASS、 45 package 到達)、 docs 3 pillars、 39 milestone 連続 snippet validation streak (v1.23-v1.61) 達成、 release script filter 存在確認 (36 度目適用、 45 package 分)、 縦深化 pair 第 14 の第 6 段 (v0.5 → v0.6) 完成、 Desktop 深化 V、 Mobile v1.50-v1.55 6 milestone rhythm を Desktop pair (v1.56-v1.61) で完全再現、 depth-6 到達、 systematic pattern 36 度目適用 (v1.60 35 度目 desktop v0.5 spawn stub uniform を継承した pattern 深化継続、 4 PR rhythm 8 milestone 連続 = 32 PR 連続同 rhythm 達成、 depth-5 pattern 2 例目確定 = Mobile v1.54-v1.55 (1 例目) + Desktop v1.60-v1.61 (2 例目) で 2 例安定化到達、 depth-6 pattern 新設 = kiwa milestone 史上初 depth-6 record 到達 (pair 深度 6 段拡張 v0.1→v0.2→v0.3→v0.4→v0.5→v0.6)、 kiwa milestone SOP 完全定着) v1.61 label
v1.60 Desktop 深化 IV — @kiwa-lab/desktop v0.5 minor bump (v0.1 3 axis + v0.2 5 axis + v0.3 4 axis の 12 axis semantics + v0.4 adapter layer + fidelity harness に v0.5 で spawn stub 契約層追加、 縦深化 pair 第 14 の 第 5 段、 v1.55-v1.59 4 PR rhythm 継承 (7 milestone 連続 = 28 PR 連続同 rhythm)、 systematic pattern 35 度目適用38 milestone snippet streak 達成Mobile v1.50-v1.54 5 milestone rhythm 完全再現depth-5 pattern 2 例目 candidate 到達 (Mobile depth-5 1 例目 + Desktop v1.60 2 例目 candidate、 v1.61+ v0.6 実 spawn で確定予定)) milestone。 @kiwa-lab/desktop v0.5.0、 spawn stub 契約層 (DesktopCliCommand 8 種 + SpawnInvocation + SpawnResult 3 type SSOT (Mobile v0.5 と 1:1 shape 契約) + AXIS_TO_CLI mapping (12 axis) + invokeDesktopCli + cliForAxis + buildSpawnInvocation factory + KIWA_DESKTOP_MODE=real env-gate + args 上限 32 + fail-closed) を追加、 12 axis から 8 CLI-backed axis 抽出 (auto-updater → electron-updater / fs-permissions → osascript / notification → notify-send / menu-bar → electron-builder / tray-icon → electron-builder / screen-recording → ffmpeg / global-shortcut → defaults / clipboard → xclip) + 4 non-CLI axis (electron / tauri / webview / dark-mode、 native process 経路)、 backward compat 絶対維持で既存 43 package + v0.1 + v0.2 + v0.3 + v0.4 の 12 axis / 48 method + adapter interface + fidelity harness 完全保持。 dogfood 新規 (dogfood-desktop-spawn-app = 8 CLI stub workflow runAllCliStubs + axis-backed CLI chain runAxisBackedCliChain + non-CLI 列挙 listNonCliAxes + env-gate 3 pattern verify + fail-closed、 11 test 全 PASS、 kiwa package 44 個到達) + docs 3 pillars (tutorial 120-desktop-spawn-stub + migration v1.59→v1.60 additive-only + concept doc desktop-spawn-stub.md v0.5 spawn stub 3 type SSOT + 12 axis → 8 CLI mapping + env-gate 設計思想 + Mobile v1.54 rhythm 再現 + depth-5 pattern 2 例目 candidate SSOT + Phase 6 計画) + 38 milestone 連続 snippet validation streak (v1.23-v1.60、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.60.0 + release-smoke v1-60-publish.test.ts (v1-59-publish.test.ts 削除で milestone 遷移) + release script filter に @kiwa-lab/desktop 継続存在確認 (systematic root cause pattern SSOT 継続適用、 35 度目適用、 v1.59 34 度目 desktop v0.4 adapter interface uniform を継承) 5/5 resolved@kiwa-lab/desktop v0.5.0 (spawn stub 契約層 + 8 CLI + KIWA_DESKTOP_MODE + args 上限 32 + fail-closed + backward compat 絶対維持) npm publish、 dogfood 新規 (11 test 全 PASS、 44 package 到達)、 docs 3 pillars、 38 milestone 連続 snippet validation streak (v1.23-v1.60) 達成、 release script filter 存在確認 (35 度目適用、 44 package 分)、 縦深化 pair 第 14 の第 5 段 (v0.4 → v0.5) 完成、 Desktop 深化 IV、 Mobile v1.50-v1.54 5 milestone rhythm を Desktop pair (v1.56-v1.60) で完全再現、 depth-5 到達、 systematic pattern 35 度目適用 (v1.59 34 度目 desktop v0.4 adapter interface uniform を継承した pattern 深化継続、 4 PR rhythm 7 milestone 連続 = 28 PR 連続同 rhythm 達成、 depth-5 pattern 2 例目 candidate 到達 = Mobile depth-5 1 例目 + Desktop v1.60 2 例目 candidate、 v1.61+ v0.6 実 spawn で 2 例目確定予定、 kiwa milestone SOP 完全定着) v1.60 label
v1.59 Desktop 深化 III — @kiwa-lab/desktop v0.4 minor bump (v0.1 3 axis + v0.2 5 axis + v0.3 4 axis の 12 axis semantics に adapter interface + fidelity harness 追加、 縦深化 pair 第 14 の 第 4 段、 v1.55-v1.58 4 PR rhythm 継承 (6 milestone 連続)、 systematic pattern 34 度目適用37 milestone snippet streak 達成Mobile v1.50-v1.53 4 milestone rhythm 完全再現depth-4 record 5 例目到達 (Mobile depth-4 4 例目 + Desktop v1.59 5 例目)) milestone。 @kiwa-lab/desktop v0.4.0、 adapter interface (AdapterInvocation + AdapterMode + AdapterResult + DesktopAdapter 4 type SSOT) + MOCK_ADAPTERS + REAL_ADAPTERS constant records (12 axis each) + makeMockAdapter / makeRealAdapter factory + runFidelityCheck + summarizeFidelity harness を追加、 12 axis × mock/real = 24 adapter pair + 3 target × 12 axis × 2 mode = 72 combination + 3 target × 12 axis = 36 fidelity pair (shape 契約 preserving で全 matched)、 backward compat 絶対維持で既存 42 package + v0.1 + v0.2 + v0.3 の 12 axis / 48 method / 48 event / 144 mapping 完全保持。 dogfood 新規 (dogfood-desktop-adapter-app = 72 combination workflow + 36 fidelity pair + runFullFidelityCheck、 10 test 全 PASS、 kiwa package 43 個到達) + docs 3 pillars (tutorial 119-desktop-adapter-layer + migration v1.58→v1.59 additive-only + concept doc desktop-adapter-layer.md v0.4 adapter interface + fidelity harness SSOT + Mobile v1.53 rhythm 再現 + depth-4 record 5 例目 pattern SSOT + Phase 5 計画) + 37 milestone 連続 snippet validation streak (v1.23-v1.59、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.59.0 + release-smoke v1-59-publish.test.ts (v1-58-publish.test.ts 削除で milestone 遷移) + release script filter に @kiwa-lab/desktop 継続存在確認 (systematic root cause pattern SSOT 継続適用、 34 度目適用、 v1.58 33 度目 desktop v0.3 4 axis uniform を継承) 5/5 resolved@kiwa-lab/desktop v0.4.0 (adapter interface + fidelity harness + 24 adapter pair + 72 combination + 36 fidelity pair + backward compat 絶対維持) npm publish、 dogfood 新規 (10 test 全 PASS、 43 package 到達)、 docs 3 pillars、 37 milestone 連続 snippet validation streak (v1.23-v1.59) 達成、 release script filter 存在確認 (34 度目適用、 43 package 分)、 縦深化 pair 第 14 の第 4 段 (v0.3 → v0.4) 完成、 Desktop 深化 III、 Mobile v1.50-v1.53 4 milestone rhythm を Desktop pair (v1.56-v1.59) で完全再現、 depth-4 到達、 systematic pattern 34 度目適用 (v1.58 33 度目 desktop v0.3 4 axis uniform を継承した pattern 深化継続、 4 PR rhythm 6 milestone 連続 = 24 PR 連続同 rhythm 達成、 depth-4 record 5 例目到達 = Mobile depth-4 4 例目 + Desktop v1.59 5 例目、 depth-4 pattern 5 例安定化を実証、 kiwa milestone SOP 完全定着) v1.59 label
v1.58 Desktop 深化 II — @kiwa-lab/desktop v0.3 minor bump (v0.1 3 axis + v0.2 5 axis + advanced III 4 axis 追加、 縦深化 pair 第 14 の 第 3 段、 v1.55-v1.57 4 PR rhythm 継承 (5 milestone 連続)、 systematic pattern 33 度目適用36 milestone snippet streak 達成Mobile v1.50-v1.52 rhythm 完全再現) milestone。 @kiwa-lab/desktop v0.3.0、 4 advanced III axis semantics (screen-recording.ts = permission → start → chunk → stop、 5 state、 ScreenCaptureKit / Windows.Graphics.Capture / xdg-portal ScreenCast / global-shortcut.ts = register → trigger → unregister → all-clear、 5 state、 Carbon RegisterEventHotKey / User32.RegisterHotKey / xdg-portal GlobalShortcuts / clipboard.ts = write → read → change → clear、 5 state、 4 format 対応、 NSPasteboard / OpenClipboard / gtk_clipboard / dark-mode.ts = subscribe → theme-change → user-preferred → unsubscribe、 5 state、 3 theme mode、 AppleInterfaceTheme / ImmersiveColorSet / xdg-portal Settings) を uniform state machine + emit helper + 4 step 遷移 pattern で追加、 3 target (macos + windows + linux) × 12 axis (v0.1 3 + v0.2 5 + v0.3 4) = 36 spec fidelity grid + 3 target × 48 event = 144 dialect mapping (v0.1 36 + v0.2 60 + v0.3 48、 各 4 axis 4 event を macOS ScreenCaptureKit / Windows.Graphics.Capture / Linux xdg-portal ScreenCast 等の実 OS API と 1:1 対応)、 backward compat 絶対維持で既存 42 package + v0.1 3 axis + v0.2 5 axis API 変更 0。 dogfood 拡張 (dogfood-desktop-electron-app に v0.3 4 axis workflow runner 追加、 runFullDesktopWorkflowV03 で 12 axis × 3 target = 36 workflow 全走査、 既存 runFullDesktopWorkflow (9) + runFullDesktopWorkflowV02 (24) は backward compat で保持、 v0.1 11 test + v0.2 10 test + v0.3 9 test = 30 test 全 PASS) + docs 3 pillars (tutorial 118-desktop-advanced-iii + migration v1.57→v1.58 additive-only + concept doc desktop-advanced-iii.md v0.3 4 axis SSOT + fidelity 36 grid + systematic pattern 33 度目適用 SSOT + Mobile v1.50-v1.52 rhythm 再現 SSOT + Phase 4 計画) + 36 milestone 連続 snippet validation streak (v1.23-v1.58、 kiwa 史上最長記録更新継続) 達成、 VitePress sidebar 追記 + /docs-publish-kiwa 経由 gh-pages 更新 + announcement 4 file + plugin.json 1.58.0 + release-smoke v1-58-publish.test.ts (v1-57-publish.test.ts 削除で milestone 遷移) + release script filter に @kiwa-lab/desktop 継続存在確認 (systematic root cause pattern SSOT 継続適用、 33 度目適用、 v1.57 32 度目 desktop v0.2 5 axis uniform を継承) 5/5 resolved@kiwa-lab/desktop v0.3.0 (advanced III 4 axis semantics + 12 axis × 3 target fidelity + 144 dialect mapping + backward compat 絶対維持) npm publish、 dogfood 拡張 (9 test 追加、 30 test 全 PASS)、 docs 3 pillars、 36 milestone 連続 snippet validation streak (v1.23-v1.58) 達成、 release script filter 存在確認 (33 度目適用、 42 package 分)、 縦深化 pair 第 14 の第 3 段 (v0.2 → v0.3) 完成、 Desktop 深化 II、 Mobile v1.50-v1.52 3 milestone rhythm を Desktop pair (v1.56-v1.58) で完全再現、 depth-3 到達、 systematic pattern 33 度目適用 (v1.57 32 度目 desktop v0.2 5 axis uniform を継承した pattern 深化継続、 4 PR rhythm 5 milestone 連続 = 20 PR 連続同 rhythm 達成、 kiwa milestone SOP 完全定着) v1.58 label
v2.0 multi-version Vitest matrix CI (CI 全面禁止 rule により削除)、 desktop (Electron / Tauri) + mobile (React Native / Expo) adapters (v1.50 Mobile + v1.56 Desktop で達成済)、 coverage 100% milestone、 all-framework CI matrix (CI 全面禁止 rule により削除) tbd v2.0 label

Contributions welcome — pick an issue from the milestone label list above and follow CONTRIBUTING.md.


Contributing


Community

For bug reports, please open an Issue so the discussion stays searchable. For private security disclosures, use the Security advisory channel (see SECURITY.md).


License

MIT © cardene — find me on GitHub and X.

Made with ⚡ by the kiwa contributors. Test to the edge.

⬆ Back to top