Skip to content

Commit 7bee0c2

Browse files
committed
chore: release 0.9.0
Bump package, plugin manifest, and lockfile; document MCP stability and quality gates in CHANGELOG. Made-with: Cursor
1 parent d79858c commit 7bee0c2

7 files changed

Lines changed: 28 additions & 6 deletions

File tree

.claude-plugin/plugin.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "autocode",
3-
"version": "0.8.0",
3+
"version": "0.9.0",
44
"description": "Claude Code plugin for competitive programming problem-setting workflows.",
55
"author": {
66
"name": "SummerOneTwo",

CHANGELOG.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,28 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.9.0] - 2026-04-29
9+
10+
### Features
11+
12+
- **`problem_generate_tests` 稳定性与可恢复性**
13+
- 新增 `answer_ext`(答案文件后缀,默认 `.ans`,可配置为 `.out` 等),贯穿生成、清理、manifest 与 Polygon 打包路径。
14+
- 新增 `resume``hard_timeout_seconds``checkpoint_every`:支持 checkpoint 落盘、硬超时后保留状态、中断后可续跑。
15+
- 子进程 PID 跟踪(`active_pids`),供精准清理残留生成器进程。
16+
- **`problem_cleanup_processes` 工具**:按状态文件中记录的 PID 清理残留生成器(Windows `taskkill` / POSIX `kill`),更新 `active_pids` 时保留 checkpoint 其它字段,避免破坏 `resume`
17+
- **`problem_verify_tests`**
18+
- 支持 `answer_ext` 与 manifest 推断;`file_count` 正确处理多段后缀(如 `.a.out`)。
19+
- 新增 `limit_semantics`:基于 manifest 中 type=3/4 的 signature 重叠度做语义质量提示。
20+
- **`generator_build`**
21+
- 可选 `enable_semantic_check` / `strict_semantic_check`:对 type=3/type=4 分支做静态语义差异检查(含 `case N:``N == type` 等常见写法);不确定时以 advisory 提示而非一律失败。
22+
- **MCP 服务端**:工具调用被取消时返回结构化结果并提示 `resume`
23+
- **执行与 Windows Job**`run_binary` / `run_binary_with_args` 支持 `process_start_hook`;取消路径强制终止子进程;`WinJobObject.close()` 文档与注释对齐 `KILL_ON_JOB_CLOSE` 语义。
24+
25+
### Improvements
26+
27+
- **`problem_pack_polygon`**:从 manifest 读取的 `answer_ext` 经规范化校验,写入 `problem.xml` 时做 XML 转义,避免脏数据破坏打包文件。
28+
- **文档与工作流**:README、CLAUDE.md、workflow skill、agent、prompts、`workflow_guard` 同步说明新参数、新工具与长耗时任务注意事项。
29+
830
## [0.8.0] - 2026-04-28
931

1032
### Improvements

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "autocode-mcp"
3-
version = "0.8.0"
3+
version = "0.9.0"
44
description = "MCP Server for competitive programming problem creation, based on AutoCode paper"
55
readme = "README.md"
66
requires-python = ">=3.10"

src/autocode_mcp/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
"""
77
import os
88

9-
__version__ = "0.8.0"
9+
__version__ = "0.9.0"
1010

1111
# 获取 templates 目录路径(包内目录)
1212
_PACKAGE_DIR = os.path.dirname(__file__)

tests/test_packaging.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ def test_import():
1111
"""测试模块导入。"""
1212
from autocode_mcp import __version__
1313

14-
assert __version__ == "0.8.0"
14+
assert __version__ == "0.9.0"
1515

1616

1717
def test_tool_result():

tests/test_plugin_manifest.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ def test_claude_plugin_manifest_links_mcp_config():
1111
manifest = json.loads(Path(".claude-plugin/plugin.json").read_text(encoding="utf-8"))
1212

1313
assert manifest["name"] == "autocode"
14-
assert manifest["version"] == "0.8.0"
14+
assert manifest["version"] == "0.9.0"
1515

1616

1717
def test_claude_plugin_manifest_has_interface_metadata():

uv.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)