Files
larablog/docs/specs/plugin-extension-commerce/CHECKLIST.md
T
gouki 3cec4c5e18
CI / PHPUnit (PHP 8.3) (push) Failing after 4s
CI / PHPUnit (PHP 8.2) (push) Failing after 1m9s
CI / Deploy (manual gate) (push) Skipped
wip: article AI polish, category SEO fields, cover generator, membership plan seeder
2026-09-07 18:48:37 +00:00

62 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 插件扩展面 + 支付 / 内容付费 — 功能清单
## 状态
- 对应 SPEC`docs/specs/plugin-extension-commerce/SPEC.md`
- 最近更新:2026-08-13 03:40
## 完成项
### 核心扩展面
- [x] `Hook::collect` / `Hook::filter`
- [x] `ArticleAccess` 决策(作者/admin、密码、filter 只许变严)
- [x] `BlogController::show` 改用 ArticleAccess;密码 POST 解锁后再 resolve
- [x] 试读+购买主题模板(defaultexample fallback
- [x] API show 经 ArticleAccess;响应含 `access`;受限无全文
- [x] RSS 受限文无全文
- [x] `ArticleForm` / Table / Create+Edit 挂载 filament.article.* 扩展点
- [x] `plugin.json``requires` / `optional` / `docs`
- [x] `PluginManager::enable` 依赖校验 + `isEnabled`
- [x] 后台插件卡片:依赖展示 + 查看说明
- [x] 使用说明按 locale 选择 `README.zh_CN.md`Markdown 渲染为 HTML 侧栏弹层(非 Notification 纯文本)
### payment
- [x] 插件 migrations + `loadMigrationsFrom`
- [x] modelsOrder / OrderItem / Entitlement / PaymentTransaction
- [x] StubGateway 建单 → 确认页 → 入账 → entitlement → `order.paid`
- [x] 重复有效权益拒绝建单
- [x] Filament OrderResource + 标记已支付 + 设置/说明页(插件内注册)
- [x] 迁出/替换核心 `PaymentPluginPage` 骨架(导航隐藏)
- [x] README + lang
### paid-content
- [x] 插件骨架 + PSR-4 + `requires: larablog/payment`
- [x] `article_products` migration/model
- [x] 表单 Section 注入 + after_save 落库
- [x]`read_password` 互斥校验
- [x] `article.access` 收紧 + 试读截断(渲染后 chars)
- [x] 表列「付费」标识
- [x] README + lang
### Review 修复(Bugbot 2026-08-12
- [x] `HtmlTeaser` 恒截断,永不返回全文(含 trial ≥ 正文长度)
- [x] `article.access``tightenWith` 逐个折叠,只许变严
- [x] `PluginManager::docsPath` 限制在插件目录内(防路径穿越)
- [x] 建单/`markPaid` 事务内复核权益 + pending 单复用 + 跨单重复支付拦截
- [x] checkout 仅接受 `visible`+`published` 文章
- [x] 复用 pending 单时按当前价格重新定价(避免旧价成交)
### 文档与测试
- [x] `docs/plugins.md` 扩展点 / requires
- [x] OpenAPI + ApiV1Test 同步(破坏性说明写入 openapi)
- [x] PHPUnit:依赖、access 矩阵、Stub、重复下单、API/RSS 防泄露
- [x] 破坏性变更说明(匿名 API/RSS 不再泄密码/付费全文)
## 变更记录
| 时间 | 原因 | 变更 |
|------|------|------|
| 2026-08-12 00:17 | SPEC 定稿后初版 | 创建功能清单 |
| 2026-08-12 00:35 | 实现完成 | 勾选全部完成项 |
| 2026-08-12 01:01 | Bugbot review 5 项发现 | 新增「Review 修复」分组并全部完成 |
| 2026-08-12 01:12 | 用户确认「复用刷新为当前价」 | 补充 pending 单重新定价完成项 |
| 2026-08-13 03:40 | 使用说明英文且无排版 | 中文 README + Markdown 弹层渲染 |