泛微项目汇报呈现
面向泛微项目汇报与会议场景,把已确认内容依照标准模板转化为可连续审阅的页面和可编辑演示文稿,保持业务内容与视觉表达一致。
核心能力
| 业务场景 | 能力说明 | 交付结果 |
|---|---|---|
| 整套模板总览 | 集中展示整套演示模板与页面结构,支持连续查看 | 可确认的整套模板选择 |
| HTML审阅 | 根据已确认内容生成连续可审阅页面 | 完整HTML演示页面 |
| HTML确认打包 | 固化已确认页面并形成标准交付包 | 正式命名的HTML压缩包 |
| PPT生成 | 依据同一已确认内容和模板生成可编辑文稿 | 正式命名的可编辑PPT |
| 内容一致性 | 保持页面结构、视觉风格和业务正文一致 | 可核验的HTML与PPT成品 |
使用流程
先确认整套模板,再审阅并确认HTML页面,最后生成和确认同一内容对应的可编辑PPT;本能力不执行文件上传。
客户案例Logo墙可独立调用公开操作 render-logo-wall。输入必须是恰好一个 page_type=客户案例、semantic_role=industry-cases 的已确认handoff:未同时提供 --html-root 与 --html-artifact 时只输出一页HTML;同时提供二者时只输出一页可编辑PPT。独立调用与启动会组合复用同一个 kickoff.industry-cases.v1 绑定、同一HTML物理页和PPT来源页6,不新增其他版式或公开别名。
执行契约
技术执行统一通过 scripts/run_renderer.py;运行环境预检使用 scripts/run_renderer.py --stage doctor。各生成阶段写入 renderer-receipt.json,同一请求与模板绑定基线由逐页指纹决定复用,不同请求或基线保留原成品并建议新的版本目录。
机器状态依次为 template_confirmation_required、html_confirmation_required、html_package_ready、ppt_confirmation_required 与 status=ppt_confirmed;确认动作分别使用 html-confirmation 和 ppt-confirmation。
这是独立通用HTML/PPT渲染包的唯一公开入口。weaver-presentation-html 与 weaver-presentation-ppt 只是内部worker,模型、业务Skill和用户都不得直接调用。任何生成都必须经过本入口的 scripts/run_renderer.py;禁止模型自行编写HTML/PPT、空白起稿、自由设计、通用样式回退、截图型PPT或绕过物理模板。
依赖
先由宿主提供已经发现的总控包记录,运行 python scripts/ensure_peer_skillhub_package.py --action status --host-record <宿主包记录JSON>。记录包含实际包根和宿主确认的最新版本;实际目录名不限,WorkBuddy扁平安装名和其他宿主安装名都可用。脚本只验证显式包根;版本以根 SKILL.md 的实际SemVer为权威,release占位符不参与版本判断。纯协调总控允许 capabilities/workers 为空,改为核验协调入口、注册表、状态机和禁止业务执行权限;仅对仍声明worker的旧包验证物理投影或external-manifest-cache依赖闭包。脚本不自行寻找包或安装方法。总控未发现或版本无效、落后时,只向用户显示:
请根据 [https://skillhub.cn/install/skillhub.md,安装](https://skillhub.cn/install/skillhub.md) @user_040dcc29/weaver-project-delivery。
用户当次确认后,脚本返回 HOST_INSTALL_LATEST_PACKAGE,由宿主按官方说明安装不带版本号的最新版。宿主回传安装后的实际包根、最新版本和 installStatus=succeeded,renderer再次验证同一身份、版本和完整闭包;成功后只恢复原请求一次,后续ready静默且不再恢复。拒绝、失败、闭包损坏或结果不确定时停止且不重试;内部worker不得处理外部包依赖。
后续每次调用 scripts/run_renderer.py 都必须附带宿主本次发现的 --peer-root <packageRoot> --latest-version <latestVersion>;生产入口只把这两个显式值交给同伴校验器并使用其验证结果,禁止从renderer所在目录推测总控兄弟目录。
唯一状态主线
必须严格按以下顺序执行,任何SHA、输入或模板变化都会使后续确认失效:
python scripts/run_renderer.py --stage template-preview --output-dir <新目录> [视觉诉求参数]。- 只向用户打开回执中的
template_preview_entry查看全部页面缩略图总览;该回执固定标记artifact_stage=template-preview与user_artifact.kind=template-preview,不提供通用index字段。用户点击任意缩略图后可在同一入口使用“上一页”“下一页”“返回总览”连续查看,不得让用户逐页返回再点。展示选择依据和selection_sha256,停止于template_confirmation_required;不得静默使用默认模板。用户确认后调用template-confirmation,由根入口从待确认文件生成字段精确的template-selection-confirmed.json,禁止手工拼JSON。 - 只接收总控提供的、已确认计划和已确认完整大纲生成的
presentation-handoff.json。其template_selection.confirmation.status必须为confirmed,且确认SHA、确认者和确认时间完整。 - 模板确认后运行一次
doctor并保存renderer-doctor.json;路径仍有效时HTML/PPT直接复用。HTML与PPT阶段均稳定写入renderer-state.json、renderer-receipt.json和实体描述。HTML成功时只返回artifact_stage=html且user_artifact.artifact_role=kickoff-html-site的本次组合目录,字段必须包含组合根、当前index.html、固定相对入口、树回执及摘要和正式目录名;禁止递归寻找其他index.html,禁止将模板预览入口、历史入口或单页调试入口当作业务HTML。PPT成功只返回artifact_role=kickoff-pptx的正式文件名、源路径和SHA-256。渲染器不猜项目空间,由启动会包拿这些明确源实体完成归位。相同输入及实体SHA一致时安全续作;输入变化时保留旧结果并建议新的版本目录,禁止整目录归档或覆盖。 - HTML确认后,先运行
html-confirmation,由根入口自动复核整树、固化manifest并生成字段精确的新confirmed handoff;禁止手工复制manifest或注入确认字段。再运行python scripts/run_renderer.py --stage html-package --handoff <confirmed交接> --html-root <已确认完整HTML根> --html-artifact <html-artifact.json> --output-dir <新目录>,ZIP名称只取自handoffartifact_identity.html_package_filename。成功返回html_package_ready,其中ZIP固定标识为kickoff-html-zip并携带正式文件名、源路径、SHA-256和对应kickoff-html-site源目录,不覆盖旧输出。 - PPT阶段运行
python scripts/run_renderer.py --stage ppt --doctor-receipt <renderer-doctor.json> --handoff <交接> --html-root <已确认完整HTML根> --html-artifact <html-artifact.json> --output-dir <新目录>。必须核验完整HTML树和物理PPT模板;根runtime不要求@oai/artifact-tool或tencent-pptx。页数由handoff动态决定,不以22/25页路由。首次对外返回的实体PPT只使用handoffartifact_identity.ppt_filename的正式名称(默认<项目名称>_项目启动会_V1.0.pptx),拒绝公开presentation.pptx及含 preview/review/draft 的名称;成功只返回ppt_confirmation_required。 - 用户确认同一PPT SHA后,运行
python scripts/run_renderer.py --stage ppt-confirmation --output-dir <PPT目录> --confirmed-ppt-sha256 <SHA> --confirmed-by <确认者> --confirmed-at <时间>。只有status=ppt_confirmed才表示渲染完成并返回总控处理上传;本渲染器不上传。
任何阶段缺少前一确认时必须结构化停止并返回 weaver-project-delivery。不得伪造确认、自动确认、跳过确认或用测试状态代替用户确认。
模板和页面路由
HTML只能复制已确认profile中的物理单页模板并填充声明槽位;PPT只能复制 html-manifest.json 绑定的物理来源页。SkillHub安全后缀资产必须通过 scripts/restore_skillhub_office_assets.py 恢复并核对SHA,禁止找不到模板后自由生成。
启动会只读取 references/page-skills/kickoff/registry.json。公开权威页型固定为:首页、目录、章节页、泛微公司简介、泛微数字化运营平台、客户案例、项目建设背景、项目建设目标、项目建设范围、项目功能架构、项目业务过程、项目关键交付成果、预期应用效果、项目实施方法、项目组织保障、项目团队、项目实施计划、沟通与确认机制、培训与运维保障、项目成功承诺。
只能用完全一致的 page_key + page_type + semantic_role 解析。HTML/PPT profile中的历史命名只允许由注册表 profile_bindings 显式转换;不得把“泛微公司介绍”“功能架构”“项目交付成果”等历史模板名当成第二套公开页型。章节实例和重复预期效果页按注册表声明复用,不按页码猜模板。未知页必须返回 RETURN_TO_CONTROLLER_UNKNOWN_KICKOFF_PAGE,generic_fallback_allowed=false。
页面正文只来自已确认大纲。固定页复制模板且不接受正文覆盖;动态页只填声明槽位。不得补事实、删减、扩写、摘要、重排或用模板示例替代用户确认内容。