Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -70,8 +70,8 @@ lookupFilters)、命名视图与视图路由、userFilters、筛选/分组/排

| # | 严重度 | 问题 | 证据 |
| --- | --- | --- | --- |
| 29 | **P0** | **导航项 viewName 生成短名路由,视图解析静默失败回退默认视图**:Analytics→Task List 生成 `/view/tabular`,页面面包屑显示 "Tabular"、侧边栏高亮,但渲染的列/筛选/选中 tab 全是默认视图的;页内视图切换用全限定名 `/view/showcase_task.tabular` 则一切正常 —— 同一视图两个入口两种结果,且失败无任何提示 | 截图 35 vs 36 |
| 30 | **P0** | **视图 `userFilters` 配置完全不渲染**:tabular 视图 meta 定义了 dropdown 快捷筛选(status / priority(showCount) / done(boolean) / project),页面上既无独立下拉,也不出现在"筛选"面板 | 截图 36 |
| 29 | **P0** | **导航项 viewName 生成短名路由,视图解析静默失败回退默认视图**:Analytics→Task List 生成 `/view/tabular`,页面面包屑显示 "Tabular"、侧边栏高亮,但渲染的列/筛选/选中 tab 全是默认视图的;页内视图切换用全限定名 `/view/showcase_task.tabular` 则一切正常 —— 同一视图两个入口两种结果,且失败无任何提示。**→ 已修复**:objectui#2217 / PR #2218(解析端双向解析短名↔全限定名,失配时 console.warn 列出已知视图) | 截图 35 vs 36 |
| 30 | ~~P0~~ 定性更正 | **视图 `userFilters` 不渲染 —— 实为按设计抑制,非渲染 bug**:objectui ADR-0053 规定对象列表视图("views" 模式)唯一导航控件是视图切换器,`userFilters` 只属于页面列表(InterfaceListPage "filters" 模式,showcase 的 task-workbench 等 page 示例即正确用法)。真正缺陷有二:① 抑制**完全静默**(ADR-0053 phase-4 校验护栏未落地)→ objectui#2219 / PR #2220 已加一次性 console.warn;② showcase 自身 tabular 视图携带 wrong-context 的 `userFilters` 块(framework#2563,本次移除) | 截图 36;扫码 ADR-0053 |
| 25 | P1 | 筛选/排序面板新增行**默认字段为系统字段 Organization**(英文);字段列表暴露 Sync Status / Sync Error 等内部字段,且系统字段全英文 | 截图 26 |
| 26 | P2 | 分组点"添加分组字段"立即按默认字段"标题"分组(每组 1 条,无意义);组头显示英文选项标签(Done/In Progress) | 截图 27 |
| 31 | P1 | **列表页脚记录数显示的是当前页行数而非总数**:120 条数据、每页 100 时页脚显示 "100 条记录",翻到第 2 页变 "20 条记录" —— 用户看不到真实总量(分页条本身的"第 X 页,共 Y 页"是对的) | 截图 37、38 |
Expand Down Expand Up @@ -127,7 +127,8 @@ lookupFilters)、命名视图与视图路由、userFilters、筛选/分组/排

1. **P0 数据/功能级**:#12 批量多选写坏数据、#10 行内编辑不可用、#8/#19/#20 form
action 与 forms 路由全链、#27/#35 flow action、#16 visibleOn、#21 级联 lookup、
#29 视图路由静默回退、#30 userFilters
#29 视图路由静默回退(已修:objectui#2218)、#30 userFilters(定性更正:按设计
抑制,静默问题已修 objectui#2220,showcase 元数据已清理 framework#2563)
2. **P1 误导/受损**:#31 页脚计数、#25 筛选默认系统字段、#33 select 默认值、#34 API
静默忽略参数、#9 DB 元数据缓存、#13/#15 批量参数控件、#22 只读旁路、#23 action 位置
3. **P2 国际化一致性**:集中治理 console 内置 UI 文案与元数据标签的 zh-CN 覆盖
Expand Down
22 changes: 6 additions & 16 deletions examples/app-showcase/src/views/task.view.ts
Original file line number Diff line number Diff line change
Expand Up @@ -97,22 +97,12 @@ export const TaskViews = defineView({
{ field: 'estimate_hours' },
],

// ADR-0047 — end-user quick-filter dropdowns (Airtable "User
// filters", Elements: dropdowns). Options/labels are inferred from
// the field definitions; `priority` shows per-option record counts.
// Counterpart to the default view's `tabs` — one element style per
// view, never both.
userFilters: {
element: 'dropdown',
fields: [
{ field: 'status' },
{ field: 'priority', showCount: true },
{ field: 'done', type: 'boolean' },
// Lookup field — renders as a record-picker dropdown (the
// CRM-parity case: filter by a referenced record, e.g. owner).
{ field: 'project' },
],
},
// ADR-0053 — NO `userFilters` here: on an object list view ("views"
// mode) the console suppresses them by design (the view switcher is
// the only nav control; objectui warns since #2220). End-user filter
// elements live in interface pages ("filters" mode) — see
// task-workbench / task-triage / active-projects *.page.ts. Status
// presets on this object are the named views above instead.
},

// 1 ── Grid ─────────────────────────────────────────────────────────
Expand Down