Repository navigation
docs(qa): records-forms provisioning recipes for the walled mention leg, a packaged action specimen and the app-crm import spec - #26929
Merged
Conversation
…eg, a packaged action specimen and the app-crm import spec Two area recipes in records-forms.json: qaact-placement-specimen installs, through the package loader, a control action, an action whose visible predicate throws at evaluation and an action with no locations key, all bound to showcase_task, for action-location-matrix acceptance[3]'s fail-closed half and acceptance[4] half (a); qa-crm-import-console boots app-crm behind the console dev server so import-console-undo.spec.ts runs unmodified. record-discussion-mentions already uses qa-feeds-disabled, so its walled two-organization leg is written into steps[13] and fixtures.requires[2]. Each clause was re-driven once and recorded in the item history. Claude-Session: https://claude.ai/code/session_01JQwxbXyxFGYMNdVd5maF1e Co-Authored-By: Claude <noreply@anthropic.com>
…discussion-mentions and fold the seat-requested stale texts main's #26907 landed record-discussion-mentions revision 10, so this branch's row becomes revision 11 after it. At the seat's request the same commit retires the text the recipes made stale: record-discussion-mentions automated.ref no longer says the walled leg waits on this card; action-location-matrix steps[6] and acceptance[4].verify name the qaact-placement-specimen recipe and the surfaces that count; import-job-undo-cancel fixtures.requires[2] and steps[0] name the qa-crm-import-console route, keeping the showcase scratch-copy route as the alternative. The three history rows say so. Claude-Session: https://claude.ai/code/session_01JQwxbXyxFGYMNdVd5maF1e Co-Authored-By: Claude <noreply@anthropic.com>
…he import-harness gap at its retirement card action-location-matrix knownGaps[2] no longer says steps[6] and acceptance[4].verify lack the specimen (the fold rewrote both). The import-harness twin's missing harness is tracked on the existing retirement card #25921, in the qa-crm-import-console recipe's knownGaps[0] and in import-job-undo-cancel knownGaps[0]. Claude-Session: https://claude.ai/code/session_01JQwxbXyxFGYMNdVd5maF1e Co-Authored-By: Claude <noreply@anthropic.com>
Contributor
Author
维护者速读
席位核对ACCEPT ·
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Warren · project thread
Fixes #26625
Clause-②: no
Metadata-protocol: none
维护者速读
records-forms.json新增的两个区级配方qaact-placement-specimen和qa-crm-import-console;②record-discussion-mentions的 steps[13] 新写的 walled 序列;③ 三个条目新加的 history 行。node scripts/check-platform-checklist.mjs,应该看到OK,并且10/10 recipes referenced。What changes
docs/qa/platform-checklist/areas/records-forms.jsononly.qaact-placement-specimen. It installs a package throughPOST /api/v1/marketplace/install-local(namespaceqaact) with three url actions bound toshowcase_task:qaact_controlandqaact_visible_throwsonlist_itemandrecord_header, where the second has avisiblepredicate that throws at evaluation, andqaact_no_locationswith nolocationskey. The package loader's actions are joined into the served object (registry.ts#attachBoundActions). Runtime-authored ones are not, which is why the old probe could not work.action-location-matrixopts in, and itsknownGaps[2]now says the recipe closes the gap and which surfaces count as evidence.qa-crm-import-console. It boots app-crm (pnpm dev:crm -- --fresh -p PORT) behind the console dev server (DEV_PROXY_TARGET=… pnpm --filter @object-ui/console dev), soui/e2e/import-console/import-console-undo.spec.tsruns as committed on its own defaults (crm_app/crm_lead, port 5180). The API half replays againstcrm_lead.import-job-undo-cancelopts in, and itsknownGaps[0]is rewritten.record-discussion-mentions. That item already usesqa-feeds-disabled, andfixtures.provisioning.usetakes one recipe (the checker accepts no list and refuses an unreferenced recipe), so the seat ruled to write the leg into the item.steps[13]carries the literal sequence,fixtures.requires[2]names the group-posture boot and its three variables, andknownGaps[2]says the leg is driven live. The sequence grants the mention target read onsys_commentthrough a scratch permission set (namespaceqamention), because no showcase permission set grants it.action-location-matrix15 → 16,import-job-undo-cancel7 → 8,record-discussion-mentions9 → 11 (after test(dogfood): pin the last records-forms checklist api clauses and name the live legs (slice 4) #26908 and docs(qa): qa-media-constraints and qa-feeds-disabled declare namespaces their object names carry #26907 landed).Scratch packages declare their own namespaces (
qaact,qamention), neverqa,qamedia,qafeedsorqagroup.Tests
Every clause was re-driven once on its recipe, at main
1708115e2f, after a fullpnpm exec turbo run build. The ledger edit was written on main5ce3404aand merged with main8074feb6before this PR, then merged with main8bbdb0b4after #26907 landed.record-discussion-mentions acceptance[9], walled leg: PASS
Group-posture boot (
OS_TENANCY_POSTURE=group OS_PLATFORM_OWNER_EMAIL=admin@objectos.ai OS_AUTH_MEMBERSHIP_POLICY=invite-only pnpm dev -- --fresh -p PORT).Without the grant, the same member got
GET /api/v1/data/sys_comment403PERMISSION_DENIED, and the control mention was withheldcannot_read_thread. That is why the grant is part of the sequence.action-location-matrix acceptance[3] fail-closed half and acceptance[4] half (a): PASS
Stock showcase boot, console from
ui/at the same commit on port 5180.Task Detail's header, overflow and quick-actions bar render the action ids the page lists, so QA Control is absent there too. Those reads are not counted as evidence, and the recipe's knownGaps[0] says so.
import-job-undo-cancel: console spec passes unmodified; API half PASS on all four clauses
Acceptance notes
ui/e2e/import-harness/import-undo.spec.tshas no door.ui/playwright.import-harness.config.tsserves it withpackages/plugin-grid/demo/vite.live.config.tsat/live.html, and neither file exists inui/packages/plugin-grid/demo(onlyindex.htmlandbulk-actions.html). Its CSV (first_name,last_name,email) also has no column forcrm_lead's requiredname. It stays a self-skip, tracked on retire the zero-consumer surface: nine dead modules (2,211 LOC), plugin-ai, runner's publish flag, test-only reset helpers on public barrels, the providers trio, 122 dead i18n keys, root orphans #25921 (comment 6454554259), the card that already lists that config for retirement.ui/playwright.import-console.config.ts's header still names anOBJECTSTACK_CLIENT_DISTalias and a backend on port 3002. Neither is needed: the workspace console resolves the in-tree client.Verification
node scripts/check-platform-checklist.mjs:OK — 16 areas, 329 items …; provisioning: 10 area recipes, 15 item references resolved (2 area-qualified), 10/10 recipes referenced.#symbolanchors resolve as declarations underscripts/symbol-anchors.mjs#symbolResolutionClass.dispatch-gates --commandsderives for this path were run; their exit codes are in the os-dev report on qa(checklist): records-forms — provisioning recipes for a walled two-organization mention leg, a packaged action specimen, and the app-crm import specs #26625.skip-changeset:docs/qa/**ships in no package.Human Minimum
packages/specholds no runtime logic. (not touched)pnpm lintpasses. (JSON ledger only; no lint-covered file touched)main, one pull request.skip-changeset)packages/spectouched: its generated artifacts are regenerated and committed. (not touched)content/docs/references/,packages/*/CHANGELOG.mdorcontent/docs/releases/.Generated by Claude Code