Skip to content

Commit b91f472

Browse files
committed
릴리즈: MCP 종료 경계를 닫고 0.0.19 출하
fatal MCP 응답을 먼저 flush한 뒤 제품 정리에 5초 상한을 둔다. 0.0.18 publish 게이트에서 드러난 Linux Chromium 종료 지연을 닫는다. 공개 설치 핀과 Python 배포 버전을 0.0.19로 맞춘다. 검증: npm test 3936 passed; test:contracts 16 suites; test:types 검증: test:package 63 files; test:mcp 12/12; test:mcp-product 12/12 검증: test:python-sdk 5/5
1 parent 204767a commit b91f472

12 files changed

Lines changed: 40 additions & 20 deletions

File tree

CHANGELOG.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,22 @@ happen only on an explicit maintainer decision; the Unreleased section accumulat
1212
소비자가 핀한 버전에 아직 없는 subpath 목록이다(위 주석이 기계 판독 정본). 출하 문서가 이 이름을
1313
예시로 쓰면 미출하 표식이 함께 있어야 하고, tests/contracts/publicSurface.mjs가 그것을 문다.
1414

15+
## 0.0.19 - 2026-08-12
16+
17+
### Fixed
18+
19+
- MCP fatal protocol errors now start a five-second shutdown deadline before draining product resources.
20+
The fatal terminal is flushed first, duplicate request IDs still execute no second effect, and a delayed
21+
Chromium or server cleanup can no longer leave the stdio process alive without an exit code.
22+
23+
### Compatibility
24+
25+
- This patch changes no operation, schema, result, export, or type signature. It supersedes 0.0.18, whose
26+
publish gate exposed the shutdown race before npm publication.
27+
28+
한국어 요약: 중복 MCP request ID의 fatal terminal 뒤 제품 정리가 지연돼도 프로세스가 5초 안에
29+
종료되도록 bounded shutdown을 추가했다. effect 및 wire 의미론과 공개 표면은 바뀌지 않는다.
30+
1531
## 0.0.18 - 2026-08-12
1632

1733
### Added

README.ko.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ fail-closed network policy를 적용하면 선택한 데이터도 code 실행
157157
## 빠른 시작
158158

159159
```sh
160-
npm install pyproc@0.0.18 --save-exact
160+
npm install pyproc@0.0.19 --save-exact
161161
npx pyproc-engine --out public/vendor/pyodide
162162
```
163163

@@ -317,7 +317,7 @@ SDK를 사용한다:
317317

318318
```sh
319319
python -m pip install \
320-
"https://github.com/eddmpython/pyproc/releases/download/v0.0.18/pyproc_control-0.0.18-py3-none-any.whl"
320+
"https://github.com/eddmpython/pyproc/releases/download/v0.0.19/pyproc_control-0.0.19-py3-none-any.whl"
321321
```
322322

323323
```python
@@ -606,11 +606,11 @@ export default { server: { headers: {
606606

607607
## 설치와 핀
608608

609-
npm([npmjs.com/package/pyproc](https://www.npmjs.com/package/pyproc)): `npm install pyproc@0.0.18 --save-exact`. 빌드 단계는 없다(네이티브 ESM). 플로팅 범위(`^`, `~`, `latest`)는 지원하지 않는다. 상태 커널의 replay 보장은 버전에 묶여 있다:
609+
npm([npmjs.com/package/pyproc](https://www.npmjs.com/package/pyproc)): `npm install pyproc@0.0.19 --save-exact`. 빌드 단계는 없다(네이티브 ESM). 플로팅 범위(`^`, `~`, `latest`)는 지원하지 않는다. 상태 커널의 replay 보장은 버전에 묶여 있다:
610610

611611
```jsonc
612612
// package.json
613-
"dependencies": { "pyproc": "0.0.18" }
613+
"dependencies": { "pyproc": "0.0.19" }
614614
```
615615

616616
`pyproc/runtime`과 typed API subpath 항목은 0.0.11에 출하된다. 아직 릴리즈하지 않은 커밋을

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ restored. A fail-closed network policy can also keep selected data local while c
157157
## Quick start
158158

159159
```sh
160-
npm install pyproc@0.0.18 --save-exact
160+
npm install pyproc@0.0.19 --save-exact
161161
npx pyproc-engine --out public/vendor/pyodide
162162
```
163163

@@ -320,7 +320,7 @@ writing JavaScript:
320320

321321
```sh
322322
python -m pip install \
323-
"https://github.com/eddmpython/pyproc/releases/download/v0.0.18/pyproc_control-0.0.18-py3-none-any.whl"
323+
"https://github.com/eddmpython/pyproc/releases/download/v0.0.19/pyproc_control-0.0.19-py3-none-any.whl"
324324
```
325325

326326
```python
@@ -607,11 +607,11 @@ Can't set headers at all (e.g. GitHub Pages)? Register `pyprocSw.js?coi=1` and r
607607

608608
## Install and pinning
609609

610-
From npm ([npmjs.com/package/pyproc](https://www.npmjs.com/package/pyproc)): `npm install pyproc@0.0.18 --save-exact`. There is no build step (native ESM). Floating ranges (`^`, `~`, `latest`) are not supported because a state kernel's replay guarantee is version-bound:
610+
From npm ([npmjs.com/package/pyproc](https://www.npmjs.com/package/pyproc)): `npm install pyproc@0.0.19 --save-exact`. There is no build step (native ESM). Floating ranges (`^`, `~`, `latest`) are not supported because a state kernel's replay guarantee is version-bound:
611611

612612
```jsonc
613613
// package.json
614-
"dependencies": { "pyproc": "0.0.18" }
614+
"dependencies": { "pyproc": "0.0.19" }
615615
```
616616

617617
`pyproc/runtime` and the typed API subpath entries ship in 0.0.11. A SHA pin

docs/operations/release.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232

3333
## 설치 재현성
3434

35-
- 공식 설치 예제는 **npm 정확 버전**을 사용한다: `"pyproc": "0.0.18"`(+ 락파일). 플로팅(`^`/`~`/`latest`)은 재현 가능한 제품 입구가 아니므로 문서에 두지 않는다.
35+
- 공식 설치 예제는 **npm 정확 버전**을 사용한다: `"pyproc": "0.0.19"`(+ 락파일). 플로팅(`^`/`~`/`latest`)은 재현 가능한 제품 입구가 아니므로 문서에 두지 않는다.
3636
- Python SDK는 같은 버전 GitHub Release의 exact wheel URL을 사용한다. wheel과 source distribution을 Release에 함께 첨부하고 clean venv에서 wheel 설치를 확인한다.
3737
- 새 버전은 pyproc tarball 자체에서 npm 해석, 타입 검사, 워커 emit, 브라우저 부팅을 모두 통과해야 한다.
3838
- 버전이나 태그는 북극성 점수의 증거가 아니다. 제품 능력은 저장소의 실행 계약과 실패 게이트로만 판정한다.

docs/usage/contract.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ The roles are split.
1414
```jsonc
1515
// package.json
1616
"dependencies": {
17-
"pyproc": "0.0.18"
17+
"pyproc": "0.0.19"
1818
}
1919
```
2020

docs/usage/pythonSdk.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@ The two packages have separate jobs:
99
- Python `pyproc-control` ships the strict protocol client, typed values, cancellation, and attachment
1010
verification.
1111

12-
Pin both packages to the same version. A normal release uses `0.0.18` for each.
12+
Pin both packages to the same version. A normal release uses `0.0.19` for each.
1313

1414
## Install
1515

1616
```sh
17-
npm install --save-exact pyproc@0.0.18
17+
npm install --save-exact pyproc@0.0.19
1818
npx pyproc-engine --out /absolute/path/to/pyodide
1919
python -m pip install \
20-
"https://github.com/eddmpython/pyproc/releases/download/v0.0.18/pyproc_control-0.0.18-py3-none-any.whl"
20+
"https://github.com/eddmpython/pyproc/releases/download/v0.0.19/pyproc_control-0.0.19-py3-none-any.whl"
2121
```
2222

2323
The Python distribution is currently published as wheel and source distribution assets on the matching

package-lock.json

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "pyproc",
3-
"version": "0.0.18",
3+
"version": "0.0.19",
44
"description": "A persistent Python computer in the browser: real CPython, durable workspaces, processes, rewindable history, and signed machine images. No application server. (브라우저에 영속하는 Python 컴퓨터.)",
55
"type": "module",
66
"repository": {

pythonSdk/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Install the exact wheel from the matching GitHub Release:
88

99
```sh
1010
python -m pip install \
11-
"https://github.com/eddmpython/pyproc/releases/download/v0.0.18/pyproc_control-0.0.18-py3-none-any.whl"
11+
"https://github.com/eddmpython/pyproc/releases/download/v0.0.19/pyproc_control-0.0.19-py3-none-any.whl"
1212
```
1313

1414
PyPI is not an installation source yet. The versioned GitHub Release also contains the source distribution.

pythonSdk/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "pyproc-control"
7-
version = "0.0.18"
7+
version = "0.0.19"
88
description = "Python client for the pyproc Control Protocol"
99
readme = "README.md"
1010
requires-python = ">=3.10"

0 commit comments

Comments
 (0)