docs: add README.md and skill/SKILL.md

This commit is contained in:
yumoqing 2026-08-03 16:46:20 +08:00
parent 5858bfcb2f
commit d3f483b012
2 changed files with 80 additions and 1 deletions

View File

@ -1,2 +1,21 @@
# pipeline-task
# pipeline_task
产线任务交互模块 —— 任务提交、状态监控、人工任务审批、产物查看。
## 功能
- **任务提交**:自然语言描述 → 意图识别 → 产线分发
- **任务列表**:实时状态轮询
- **任务详情**:步骤树 + 输入/输出产物
- **人工交互**:审批通过/拒绝、表单填写
- **Bug 管理**Agent 自动提交 Bug
## 集成
本模块无自有数据表(纯交互层),通过 ServerEnv 调用 `pipeline_service``pipeline_sdlc` 的函数。
## 安装
```bash
cd pkgs/pipeline-task && pip install .
```

60
skill/SKILL.md Normal file
View File

@ -0,0 +1,60 @@
---
name: pipeline-task
description: "Pipeline task interaction module — task submission, monitoring, human task approval, and artifact viewing."
---
# pipeline_task
Pure interaction-layer module with no data tables. All operations delegate to `pipeline_service` and `pipeline_sdlc` via ServerEnv.
## Architecture
```
pipeline_task/
├── pipeline_task/
│ ├── __init__.py
│ └── init.py # load_pipeline_task() — registers UI-facing functions
├── wwwroot/
│ ├── index.ui # Task center dashboard
│ ├── task_submit.ui # Natural language task submission form
│ ├── task_detail.ui # Task detail with step tree + artifacts
│ ├── task_tree_popup.ui # Popup step tree view
│ ├── step_panel.ui # Single step input/output viewer
│ └── api/
│ ├── task_submit.dspy # Submit task (NLP → intent → dispatch)
│ ├── task_list.dspy # Task list with filters
│ ├── task_detail.dspy # Task + steps detail
│ ├── task_node.dspy # Single step I/O
│ ├── task_tree.dspy # Step DAG as tree
│ ├── task_control.dspy # Pause/resume/cancel
│ ├── task_restart.dspy # Restart task
│ ├── human_list.dspy # Human task list
│ ├── human_complete.dspy # Complete human task
│ ├── approval_approve.dspy / reject.dspy
│ └── my_bugs.dspy # User's bug list
├── i18n/ # zh/en/jp/ko translations
└── scripts/load_path.py # RBAC registration
```
## Key DSPY Endpoints
### Task Lifecycle
- `task_submit.dspy` — NLP input → intent classification → pipeline dispatch
- `task_list.dspy` — Paginated task list with status filters
- `task_detail.dspy` — Full task info + step tree
### Step Interaction
- `task_node.dspy` — Read/write step input/output artifacts
- `task_tree.dspy` — DAG steps as nested tree for frontend Tree widget
### Human Tasks
- `human_list.dspy` — Pending human tasks
- `human_complete.dspy` — Submit human task result
- `approval_approve.dspy` / `approval_reject.dspy`
## Pitfalls
- **No data tables**: All data ops delegate to pipeline_service. Never write SQL here.
- **Tree widget format**: `task_tree.dspy` must return `[{"id","label","children":[...]}]` format for bricks Tree.
- **i18n**: After editing msg.txt, run `merge_i18n.py` in umbrella's build.sh.
- **Auto-refresh**: Task list uses browser-side polling. No server push.