3.3 KiB
Feishu Web Full Flow Implementation Plan
For agentic workers: REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (
- [ ]) syntax for tracking.
Goal: Add a real Feishu web automation script that drives the PMFlow draft-confirmation flow end to end, and make project creation auto-assign generated tasks through the skill graph.
Architecture: Keep the existing draft_pending_confirm PMFlow flow as the orchestration backbone. The backend change assigns owners during AI Steward project creation by resolving skill tags and calling the existing personnel recommender. The browser change uses Playwright with a persistent Chrome profile to send real Feishu web messages, then verifies downstream results through the database.
Tech Stack: FastAPI, SQLAlchemy, React/Vite workspace tooling, Playwright, Node.js, PostgreSQL
Task 1: Lock task auto-assignment with a failing backend test
Files:
-
Modify:
backend/tests/test_ai_steward_project_from_text_contract.py -
Add a unit test for
_normalize_project_creation_draftthat expects a generated task draft to includeassignee_idand structured recommendation metadata when the skill recommender returns a top match. -
Run the focused pytest target and confirm it fails for the missing assignment behavior.
Task 2: Implement skill-graph-based auto-assignment in AI Steward
Files:
-
Modify:
backend/app/services/ai_steward_service/shared.py -
Modify:
backend/app/services/ai_steward_service/mixin_creation_normalize_persist.py -
Import the personnel recommender into the AI Steward service layer.
-
Add a helper that requests recommendations from the skill graph and normalizes the top candidate into
assignee_idplusai_recommended_assignees. -
Thread the recommendation result into
build_task_create_draft. -
Re-run the focused pytest target and confirm it passes.
Task 3: Add Playwright Feishu web automation scaffolding
Files:
-
Modify:
frontend/package.json -
Add:
frontend/playwright.config.ts -
Add:
frontend/e2e/feishu-project-full-flow.spec.ts -
Add Playwright dev dependencies and test scripts.
-
Add a config that supports a persistent Chrome session, local artifacts, and env-driven runtime settings.
-
Write the Feishu web E2E that sends a unique project-creation message, revises the draft for 3-5 rounds with explicit
work_itemtargeting, confirms the draft, and validates database side effects.
Task 4: Update project docs
Files:
-
Modify:
CLAUDE.md -
Document the new
frontend/playwright.config.tsandfrontend/e2e/test directory in the structure sections. -
Document the AI Steward task auto-assignment behavior and the new Feishu web E2E coverage where relevant.
Task 5: Verify and iterate until green
Files:
-
No code changes expected, but rerun as needed
-
Run focused backend pytest for the new auto-assignment behavior.
-
Install frontend dependencies and Playwright.
-
Run the Feishu web E2E and fix selectors, environment assumptions, or backend gaps until it passes in the current environment.
-
Run
python -m py_compileon changed backend modules andnpm run build/tsc --noEmitinfrontendif dependency/setup state permits.