際を制するものが 開発を制する。 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.
Quickstart • 4 layer chain • Features • Examples • Docs • Cookbook • FAQ • Changelog • License
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.
▶ Watch the full-quality MP4 (2.9 MB, 1920×1080, h264)
🎨 Rebrand notice: This project was renamed from
dapp-e2eto kiwa (際) in 2026-06.dapp-e2ewas 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.
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]
| 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?
kiwais 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-testfor non-dApp stacks.
kiwa ships in two halves that work together but stand alone:
| 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) |
| 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-*.md → SpecDoc) |
@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.
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 flakeSame 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.
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.
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 sessionAfter 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 contractThe
--exampleflag and/kiwa:kiwa-testone-shot orchestrator are intended for the kiwa monorepo itself (which hasexamples/). 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# 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/)pnpm dlx @kiwa-lab/cli init
pnpm install
pnpm exec playwright testPrerequisites: 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 initworks out of the box (no clone required).
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 initFor everyday use, prefer Option C (pnpm dlx @kiwa-lab/cli init) which pulls the published 0.1.0 version directly.
@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.jsonOnly tests/kiwa/**.ts is treated as ESM; the rest of your tests/ keeps its existing CJS resolution.
@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).
- 📋 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
- 🔨 Foundry mapping — fuzz / invariant + Handler /
vm.prank/vm.expectRevert(Error.selector)/vm.warp/--gas-report - ⚒️ Hardhat mapping —
chai-matchersrevertedWithCustomError/fast-checkasyncProperty/loadFixture/hardhat-gas-reporter - 🪞 Mirror generation — both runners produce the same
TC-NNNIDs 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-passedmarker until all four metrics pass
- 🦊 Inject
window.ethereumwithout 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 events —
accountsChanged/chainChanged/connect/disconnecttriggerable from tests - 👛 EIP-6963 multi-wallet — declare MetaMask, Rabby, Coinbase, … side-by-side
- 🤖 Smart contract account (AA) —
isContractAccount: truereroutespersonal_signthrough EIP-1271,eth_sendTransactionthroughexecute() - 📦 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
codeandmessageacross page boundaries
| 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) |
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.
@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 不要) |
# 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)
doneVitest 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.
# 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)
doneDeno 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.
/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.
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.
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.
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 thresholdsFor 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).
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 |
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 |
@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) |
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).
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.
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:
-
/kiwa-design— Layer 1 spec generator -
/kiwa-forge— Foundry generator -
/kiwa-hardhat— Hardhat generator -
/kiwa-play— Playwright generator + 22-example index + 9 false-positive patterns
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.
| 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).
| 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.
| 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 ( |
tbd | v2.0 label |
Contributions welcome — pick an issue from the milestone label list above and follow CONTRIBUTING.md.
- 📖 Read CONTRIBUTING.md — dev setup + skill chain workflow + PR checklist
- 🤝 Code of Conduct — Contributor Covenant 2.1
- 🔒 Security policy — Report vulnerabilities privately
- 🐛 Open an issue
- 🔀 Send a pull request
- 🗺️ Open Issues (current roadmap): enhancement label
- 💡 Check
docs/MIGRATION.mdbefore reporting breaking-change concerns
- 💬 GitHub Discussions — Long-form questions, proposals, Show & Tell. Start with the v0.5 announcement for what landed in the latest cut.
- 🐦 X / Twitter @cardene777 — Quick replies and DMs. Release threads land here too.
- 📰 Zenn @cardene777 — Long-form articles and write-ups (v0.5 deep-dive linked from the README badge).
For bug reports, please open an Issue so the discussion stays searchable. For private security disclosures, use the Security advisory channel (see SECURITY.md).
MIT © cardene — find me on GitHub and X.
Made with ⚡ by the kiwa contributors. Test to the edge.