Skip to content

Commit bb62d4d

Browse files
os-steveclaude
andauthored
docs(qa): retarget rollup-summary-filter editor half at duplicate route (#11913)
automation.rollup-summary-filter clause 5 (the visual filter-editor half) was blocked.by:fixture, tracked at #3358. The maintainer ruled NO on a stock writable showcase package (2026-08-19, 「接受你的所有建议」) and directed retargeting at the platform's own runtime path instead: the runner clones the showcase base into a writable target via POST /packages/:id/duplicate (ADR-0070 D4 "duplicate base"). Bumped revision to 3 with a history entry; removed the item-level blocked.by:fixture entry and its matching fixtures.knownGaps line, since the clause is runnable on every boot now. Oracle stays screenshot — the clause specifically exercises the visual editor, corroborated by a meta-API read of the persisted filter. The sibling half (access-security.json, readonly-package-locks-studio) is held by open PR #11780 and stays out of scope here — see the PR body for the card relationship. Claude-Session: https://claude.ai/code/session_015ahemw8RcTgqtxrj15PEZx Co-authored-by: Claude <noreply@anthropic.com>
1 parent d2abd00 commit bb62d4d

1 file changed

Lines changed: 15 additions & 13 deletions

File tree

docs/qa/platform-checklist/areas/automation.json

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,7 @@
254254
"title": "Filtered roll-up summaries recompute only through their own filter",
255255
"since": "v16",
256256
"status": "active",
257-
"revision": 2,
257+
"revision": 3,
258258
"priority": "P1",
259259
"surface": "mixed",
260260
"personas": [
@@ -263,10 +263,8 @@
263263
"fixtures": {
264264
"app": "showcase",
265265
"requires": [
266-
"a parent with several filtered roll-ups in different filter shapes (showcase_expense_report: equality / boolean / operator / unfiltered)"
267-
],
268-
"knownGaps": [
269-
"the visual filter-editor half needs a summary field in a WRITABLE package — the showcase ships read-only, so Studio editing is not reachable on stock fixtures (#3358)"
266+
"a parent with several filtered roll-ups in different filter shapes (showcase_expense_report: equality / boolean / operator / unfiltered)",
267+
"the editor-half clause additionally needs a writable target package — obtained at runtime via POST /packages/:id/duplicate (ADR-0070 D4 'duplicate base'), not a stock fixture"
270268
]
271269
},
272270
"steps": [
@@ -276,7 +274,7 @@
276274
"PATCH one line's status approved→rejected over /api/v1/data/showcase_expense_line/:id; re-read the parent and recompute again",
277275
"PATCH a different line's billable true→false; re-read the parent",
278276
"DELETE one line; re-read the parent — a delete must move every roll-up whose filter matched the deleted row, including the unfiltered total",
279-
"(editor half, blocked) on a writable package: edit a summary field's child-row filter in Studio's visual filter editor, save, and re-read the persisted metadata"
277+
"on a writable package: POST /packages/com.example.showcase/duplicate {targetPackageId: <scratch id>} (ADR-0070 D4 'duplicate base' — the platform's supported writable-base route) to clone the showcase base, then in Studio's visual filter editor edit the duplicated expense-report's summary field child-row filter, save, and re-read the persisted metadata over the meta API"
280278
],
281279
"acceptance": [
282280
{
@@ -304,25 +302,23 @@
304302
"evidence": "before/after value table"
305303
},
306304
{
307-
"clause": "the child-row filter is settable via the visual editor on a writable package",
305+
"clause": "the child-row filter is settable via the visual editor on a writable package obtained through the platform's own duplicate-base route",
308306
"oracle": "screenshot",
309-
"verify": "edit a summary field's filter in Studio on a writable package and confirm the persisted metadata via the meta API",
307+
"verify": "POST /packages/com.example.showcase/duplicate to clone the showcase base into a writable target package (ADR-0070 D4), open the duplicated parent's summary field in Studio's visual filter editor, edit its child-row filter, save, and confirm the persisted metadata via the meta API",
310308
"evidence": "editor screenshot + saved metadata read"
311309
}
312310
],
313311
"negative": [
314312
"an untouched-filter roll-up that moves on an edit outside its filter (e.g. rejected_count changing on the billable flip) is a FAIL even if every touched value is right"
315313
],
316-
"blocked": {
317-
"by": "fixture",
318-
"ref": "#3358 (editor half needs a writable-package summary field fixture)"
319-
},
320314
"traps": [
321315
"seed-data-thin"
322316
],
323317
"source": [
324318
"#3358 §2 (recompute half proven; editor half explicitly left unticked)",
325-
"examples/app-showcase/src/data/objects/expense-report.object.ts (the six roll-up shapes and their filters)"
319+
"examples/app-showcase/src/data/objects/expense-report.object.ts (the six roll-up shapes and their filters)",
320+
"packages/runtime/src/domains/packages.ts (POST /packages/:id/duplicate — ADR-0070 D4 'duplicate base', the writable-target route)",
321+
"docs/adr/0070-package-first-authoring.md §D4 ('clone a base into a new writable package')"
326322
],
327323
"history": [
328324
{
@@ -336,6 +332,12 @@
336332
"date": "2026-08-07",
337333
"change": "expanded to deep-test contract: concrete steps, multi-clause acceptance, negatives, variants",
338334
"ref": "claude/platform-test-checklist-ocwugl"
335+
},
336+
{
337+
"revision": 3,
338+
"date": "2026-08-25",
339+
"change": "retargeted clause 5 (the visual filter-editor half) at the platform's supported runtime path per the maintainer ruling on #9788 (2026-08-19, 「接受你的所有建议」): the stock showcase does NOT boot with a writable package, so the runner instead clones the showcase base via POST /packages/:id/duplicate (ADR-0070 D4 'duplicate base') to get a writable target for the visual editor. Removed the item-level blocked.by:fixture entry and the matching fixtures.knownGaps line — the clause is runnable on every boot now, not fixture-blocked. Oracle stays screenshot: the clause specifically tests the VISUAL editor, corroborated by a meta-API read of the persisted filter",
340+
"ref": "#9788"
339341
}
340342
]
341343
},

0 commit comments

Comments
 (0)