boardx / boardx/boardx-dev-template
[F08] /me 三栏真数据 + D4 登录落点(UC-09)
- Dominant language
- TypeScript
- Stars
- 1
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
## 交付契约(user_visible_behavior)
/me 三栏接真:待拍板@我(跨项目真实 decide 请求按 SLA 排序)/ 我卡住的 PR(真实 RepoHub 镜像的 mergeable/checks 判定,催办按钮产生真实事件)/ 我的 agent 异常(真实心跳丢失);下方各项目一行式脉搏为真实数据;侧栏切换器红点为真实计数且点击导航到 /p/:slug;登录默认落点为 /me,且记住上次停留(D4 两条行为,批次 1 已知偏差兑现);每卡四态齐全(loading/空/降级/无权限,N1)。
## Story
[requirements/feature-list-draft.md](https://github.com/boardx/boardx-dev-template/blob/main/phases/phase-p30-devportal-platform/requirements/feature-list-draft.md) — 章节 `R8`
## 验证(完成的唯一标准:每条命令退出码 0)
- [ ] `pnpm --filter devportal lint && pnpm --filter devportal build`
- [ ] `bash phases/phase-p30-devportal-platform/scripts/verify-me-live.sh`
- [ ] `test -f apps/devportal/e2e/p30/me-workbench.spec.ts && pnpm --filter devportal exec playwright test e2e/p30/me-workbench.spec.ts`
证据落盘:`phases/phase-p30-devportal-platform/sprints/sprint-02/evidence/F08.verify.log`
## 实现指引(notes)
「10 秒知道该干什么」。晨报条(morning-brief)本 feature 保留占位/降级态,叙事内容属 R4 后的 F19——边界写死避免范围蔓延。e2e spec 待写,锚定批 1 testid:登录后 URL 落 /me;col-decisions/col-stuck-prs/col-agent-anomalies 有真数据行;switcher-badge- 计数与注入事实一致;点击切换器 → URL /p/:slug。
## 设计参照
(无 UI 或沿用现有界面)
## 前置依赖
- 无
## 元数据
| phase | sprint | 能力平面 | 优先级 | wave | area |
|---|---|---|---|---|---|
| p30 | 02 | CAP-WEB | P2 | - | devportal |
## 开工流程(agent 必读)
> 本 issue 是仓库的**只读投影**;权威是 [`phases/phase-p30-devportal-platform/feature_list.json`](https://github.com/boardx/boardx-dev-template/blob/main/phases/phase-p30-devportal-platform/feature_list.json)。若两者不一致,以仓库为准。
1. 环境:`./init.sh`(验证失败先修基础状态,别在坏地基上开工)。
2. 认领:`pnpm harness claim --phase p30 --feature F08 --owner <你的-agent-id>`(同一 owner 同时最多一个 in_progress)。
3. 读上下文:[`requirements/`](https://github.com/boardx/boardx-dev-template/blob/main/phases/phase-p30-devportal-platform/requirements)(原始需求)、[`ui-signoff.md`](https://github.com/boardx/boardx-dev-template/blob/main/phases/phase-p30-devportal-platform/ui-signoff.md)(已确认 UI 的组件落点与 data-testid)、[`sprints/sprint-02/session-handoff.md`](https://github.com/boardx/boardx-dev-template/blob/main/phases/phase-p30-devportal-platform/sprints/sprint-02/session-handoff.md)(上一轮交接)。
4. 实现:只做本 feature 的最小实现,不顺手重构无关区域;不碰 `active-features.json`(脚本派生只读)。
5. 验证:逐条跑上方 verification,输出留到 `phases/phase-p30-devportal-platform/sprints/sprint-02/evidence/F08.verify.log`;然后 `pnpm harness verify --sprint p30/02 --feature F08` 门控转 passing——**不允许手改 status**。
6. 提交:分支 `worker/-p30-f08-`,PR 关联本 issue(`Closes #<本 issue 号>`),收尾更新 progress.md 与 session-handoff.md。
完整硬约束见 [`AGENTS.md`](https://github.com/boardx/boardx-dev-template/blob/main/AGENTS.md);多 agent 协作规则见 [`.harness/instructions/multi-agent-coordination.md`](https://github.com/boardx/boardx-dev-template/blob/main/.harness/instructions/multi-agent-coordination.md)。
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with ./init.sh, then read requirements/feature-list-draft.md at R8, ui-signoff.md, and sprints/sprint-02/session-handoff.md. Implement and verify the /me workbench and login behavior, then run the listed lint, build, verify-me-live.sh, and Playwright commands for e2e/p30/me-workbench.spec.ts. Done means every command exits 0, evidence is saved to F08.verify.log, and harness verification passes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- playwright, typescript
- Domain
- authentication, full-stack, testing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100