6.9 KiB
6.9 KiB
name, description
| name | description |
|---|---|
| hyb-oa-delivery | Use for hyb-oa project delivery tasks: natural-language triage, planning with Issue CSV, implementing Fastify/Prisma or React/Vite changes, refining PC/mobile/WeCom UI, reimbursement/invoice/OCR/attachment work, trial-run troubleshooting, automated/visual verification, and Chinese batch commits. |
hyb-oa Delivery
Use this skill when working in /home/shunli/Projects/hyb-oa or when the user asks to continue planning, implementation, trial-run validation, visual QA, reimbursement/invoice improvements, Enterprise WeChat checks, deployment preparation, or project-wide review.
Required Reading
Read only what is relevant:
- Always read
AGENTS.mdand the newest relevantissues/*.csv. - After R5, first check the main R5/R6 contract status before planning trial-run or follow-up work; R5 must remain the completed gate and R6 must have its own Issue CSV before expanding scope.
- For UI/page work, PC/mobile/WeCom experience, approval UX, or domestic OA benchmarking, read
docs/product-design-rules.mdandreferences/visual-qa.md. Mobile page work must treatdocs/product-design-rules.mdas the source of truth for the unified mobile shell, icon grid, card lists, deep Push pages, sticky actions, safe-area, and cross-viewport matrix. 移动页必须先对齐该设计事实源,再进入实现或验证。 - For approval workflow, roles, self-approval, notification, deeplink, reminder, or escalation work, read
docs/需求-统一审批中心规约.md. - For reimbursement, invoice, OCR, duplicate invoice, or attachment work, read
docs/reimbursement-invoice-rules.mdandreferences/reimbursement.md. - For local/WeCom/public trial-run, OCR runtime, Caddy, or DB drift work, read
docs/trialrun-runbook.mdandreferences/trialrun.md. - For how this skill should evolve, read
docs/agent-development-practices.md.
Natural-Language Triage
Users may assign work with a plain paragraph. Before asking follow-up questions, classify the request into defect, feature, acceptance feedback, plan, review, QA, deployment, design, or product-flow optimization.
Default behavior:
- Extract intent, target surface, constraints, approval state, and next action.
- Check existing assets before declaring a blocker:
issues/,docs/,artifacts/,output/, scripts, Playwright tests, runbooks, and prior trial-run evidence. - Ask only when required by
AGENTS.mdor safety: missing approval for non-trivial coding, destructive data work, production config, secrets/accounts, conflicting goals, or unclear high-risk acceptance. - Treat a plain "确认" as approval for the immediately preceding explicit plan or Issue CSV, unless multiple candidates exist.
- If the user asks whether a problem is real, verify first with automation, code inspection, public checks, or visual evidence before proposing broad changes.
Delivery Loop
- Check
git status --short; do not revert unrelated user changes. - Identify or create the current Issue CSV before non-trivial work; after R5, distinguish R6 preparation from actual trial-run execution.
- State the implementation approach before editing code; if already approved, proceed.
- Keep changes scoped to the current Issue.
- Prefer existing project patterns, official SDKs, and principles from documented domestic OA/approval/mobile references; do not copy competitor flows or text directly.
- Verify with the narrowest relevant automated tests, then expand by risk.
- Use Playwright screenshots or visual metrics for PC/mobile/WeCom UI changes. New or changed mobile pages must join the unified responsive system and the 320/360/375/390/393/414/430px 统一视觉矩阵 rather than adding page-specific layout fixes.
- Dedicated
/mobilepages must use the shared mobile slot/card/list/sticky-action system fromdocs/product-design-rules.md: fixed icon/avatar/status slots,minmax(0, 1fr)copy slots,mobile-card/mobile list cards, mobile tokens, and no desktopcard-std p-4as a mobile main container. - Update Issue CSV statuses only after the stated
Test_Methodpasses. - Commit in Chinese batches with Issue IDs.
- 面向用户可测试的改动,最终必须明确“是否已部署”。只有部署与公网检查通过后,才能告知用户可以去企业微信或公网试运行环境测试。
Default Verification Matrix
Backend:
cd server && npm run prisma:validate
cd server && node --check src/routes/reimbursements.js
cd server && node --check src/routes/workflow.js
Frontend:
cd client && npm run typecheck
cd client && npm run build
Cross-device UI:
cd client && npx playwright test <relevant-spec> --workers=1 --reporter=list
Docs/Skill:
python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py <issue.csv>
python3 /home/shunli/.codex/skills/.system/skill-creator/scripts/quick_validate.py .agents/skills/hyb-oa-delivery
git diff --check
Stop Conditions
Pause for user confirmation before:
- Resetting, rebuilding, or destructively modifying a database.
- Resolving Prisma migration drift by editing migration history.
- Changing production Caddy/systemd/remote deployment state.
- Using or exposing real secrets.
- Reverting unrelated dirty files.
Output Contract
Final responses should include:
- What changed.
- What was verified, with commands.
- 面向用户可测改动的部署状态:commit hash、公网 URL、
/ready、公网前端资源/文案检查,以及用户现在是否可以测试。 - What remains blocked and why.
- Commit hashes when commits were made.
R6 and Trial-Run Defaults
- R6 can start only from a new Issue CSV that fixes users, roles, time window, rollback contact, issue log, and daily closeout rhythm.
- R6 scope defaults to reimbursement, leave, procurement, approval, Enterprise WeChat entry/notification, finance payment/export.
- Do not expand to budget, ERP, AI, full travel, or complex BPM during R6; record those as follow-up Issues.
- Enterprise WeChat personal app message is the formal approval notification channel after R5; mock and group bots are not acceptance evidence for R6 business notification.
- Approval-chain correctness can be proven by PC or automation, while Enterprise WeChat validates entry, binding,免登录, notification, deeplink, and mobile layout.
- If real-device mobile validation is paused after automation passes, record the gate as
PAUSED; do not close RS6/UI6/R6 mobile blockers until representative real-device confirmation is recorded. - Role-specific pages should use one shared OA/mobile framework and tailor summaries, entries, actions, and sensitive fields by role. Do not create unrelated UI systems for employee, approver, finance, admin, or CEO views.
- After MUD6,
R6-ISSUE-001is treated as resolved based on representative real-device confirmation; future mobile regressions should be recorded as new Issues rather than reopening the old WCM6/MME6 gate unless the same production behavior returns.