Why: An agent bypassing the housestyle kit hand-assembled OOXML with zipfile; the resulting pptx lacked masters, theme and docProps. Text extraction succeeded and every existing check passed, so a package that Office refuses to open reached the user as a deliverable. Evidence: Focused Go suite covers a valid minimal pptx, the incident- shaped package, nine chain-break variants and register-level integration; the housestyle python suite adds BrokenPptxTests for masterless, kit-made and unopenable files. Full combined suite receipt follows on the task card before review. Impact: register_artifact now runs a pure-Go OPC structural check for docx/xlsx/pptx and refuses broken packages with a kit rebuild hint; lint_pptx gains structure-broken assertions (master/theme/layout chain, open-failure fallback) that template mode cannot downgrade; prompts forbid hand-assembled OOXML and specify the missing-library fallback. Refs: Dev task feature/pptx-register-structural-gate
988 B
988 B
id, layer, version, title, description
| id | layer | version | title | description |
|---|---|---|---|---|
| tool.run_python | tool | 2 | run_python 工具描述 | Python 执行原语的模型侧说明文案 |
执行完整 Python 脚本(python3,工作目录=会话工作区)。适用:数据处理、生成 Excel/PPT/图片(housestyle kit)、批量操作。Word 交付物优先写 .md 源后用 run_shell 跑 python3 -m housestyle.build。任何 Office 交付物(docx/xlsx/pptx)都禁止用 zipfile 或字符串手工拼 OOXML——手拼的包缺母版与主题,register_artifact 的结构自检会直接拒绝;一律走 housestyle kit 构件。缺库先 pip install --user python-pptx python-docx openpyxl,装不上就如实告知用户当前环境无法生成本类交付物,不要退回手拼。报错先读退出码与 traceback 定位行号再改,同一错误不要原样重跑。生成带排版的文件(xlsx/pptx)先读 $AGENT_SKILLS_DIR/house-style/SKILL.md 的构件表,不确定签名先 inspect.signature。