Repository navigation
docs(plugin-gantt): the object-gantt registration no longer teaches the retired view-level api source - #27421
Merged
Merged
Conversation
…he retired view-level api source
The `data` input said `{ provider: 'api', read }` reads through that
request, and `filter` listed an `api` request among the record sources.
The spec refuses that provider by name and `resolveDataSource` has no
`api` arm. Both inputs now name what the gantt reads: the value and
object providers, with server-computed rows reaching it as an object
behind a plugin driver. Manifest and component reference regenerated.
Co-Authored-By: Claude <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01WGufzgPyKYGxK9udhSm8zP
…-j0ssio # Conflicts: # scripts/sdui-manifest.record.json
…ference on the merged tree Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WGufzgPyKYGxK9udhSm8zP
Contributor
Author
|
domain:spec#3 · os-support-ai · session_01WGufzgbJhFoXYsLSe5WSPP 维护者速读 (席位终稿)
席位意见:接受。本 PR 不碰 席位核对 · ACCEPT ·
|
This was referenced Oct 29, 2026
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 Yibo Wang · project thread
Part of #27130
Clause-②: no
Metadata-protocol: none
What stays open on #27130, and whose it is. After this PR nothing on the card is the spec lane's. The card stays open for the customer reply, which is the triage seat's (ruling 6471507187, step 3). The engine floor for plugin drivers (#27277) and the sharing-model refusal (#27332) are in flight on their own cards; neither edits a file this PR edits (measured: open PRs #27403 and #27391 touch no
plugin-gantt,sdui.manifest.jsonorcontent/docs/ui/components/path).维护者速读
object-gantt注册的data和filter两个输入说明,不再把已退役的视图级api数据源写成可用的记录来源;SDUI 清单和组件参考文档随之重新生成。data: { provider: 'api', read },但 spec 早已按名拒收这个 provider,渲染器也没有对应分支,图表是空的、不发任何请求。ui/packages/plugin-gantt/src/index.tsx(data、filter两行说明),ui/packages/plugin-gantt/src/__tests__/apiSourceNotTaught-27130.test.ts,sdui.manifest.json(两行 description)。cd ui && pnpm exec vitest run packages/plugin-gantt/src/__tests__/apiSourceNotTaught-27130.test.ts,应见 3 个测试全绿。What changes
Text only. No registration input, schema, renderer behaviour or export moves: the regenerated
sdui.manifest.jsondiffers fromorigin/mainin exactly the twodescriptionstrings (plus its record file's date and sha256), andcontent/docs/ui/components/plugins.mdxin the same two table rows.Measured on
origin/maincf218eed.resolveDataSource(ui/packages/core/src/adapters/resolveDataSource.ts) has anobjectarm and avaluearm only; any other provider returns the context adapter.ObjectGantttakes rung 1 ofresolveRecordSourceConfig(schema, 'view-data')verbatim, so anapiblock wins the ladder, then queriesschema.objectNamethrough the host adapter (resolveRecordSourceObjectNamereadsdata.objectonly for theobjectprovider). A one-off probe through the realSchemaRendererwith the customer's shape,data: { provider: 'api', read: { url: '/api/gantt/tree' }, write: { url: '/api/gantt/task', method: 'PATCH' } }and noobjectName:ObjectGanttSchema.safeParsefails atdata.provider(invalid_union) with the spec's retirement message, "view.data.provider: 'api'was removed in @objectstack/spec 18 …";findis called once with resource"";fetchis never called, so neither URL is requested;With an
objectNamebeside it,objectNameis queried instead; that row was already pinned ("a retired api block requests nothing and is answered like an unknown provider",recordSourceInputs-10394.test.tsx).Before (
data):After:
"never queries
objectName" moved from every provider to thevalueprovider, where it holds: on any provider the gantt does not read,objectNameis what it queries (above).Before (
filter):After:
Sweep.
git grepoverui/packages/*/src,ui/apps/*/srcand everyui/packages/*/README.mdforprovider: 'api'(any quoting), "apirequest" and "reads through that request": the two lines above were the only text teaching the view-levelapisource as a record source. The remaining hits are the live page-element bindingdataSource: { provider: 'api', read, path? }(productBlocks.tsx,product-blocks.zod.ts,useNavMemberGates.ts,NavigationRenderer.tsx,SchemaRenderer.tsx,useElementApiDataSource.ts,ConsoleElementApiOpen.tsx,i18n/src/locales/en.ts,react/README.md,preview-gallery.tsx), left untouched, or text that already says the view-level arm is retired (resolveDataSource.ts,ApiDataSource.ts,core/src/adapters/README.md,useViewData.ts,plugin-gantt/README.md). No hit underskills/**ordocs/adr/**.Regenerated, not hand-edited:
node scripts/gen-sdui-manifest-node.mjs(in-tree registry:sdui.manifest.json,scripts/sdui-manifest.record.json), thennode scripts/gen-sdui-reference.mjs(content/docs/ui/components/plugins.mdx).Changeset:
.changeset/27130-gantt-api-source-not-taught.md,@object-ui/plugin-ganttpatch.Tests
ui/packages/plugin-gantt/src/__tests__/apiSourceNotTaught-27130.test.ts(3 tests): noobject-ganttinput description matchesprovider: 'api'in any quoting or a code-fontapi; positive control thatdatastill names{ provider: 'object', object }and{ provider: 'value', items }; a matcher control on the three replaced strings.index.tsxrestored fromorigin/main, the pin goes red naming[ 'data', 'filter' ](Tests 1 failed | 2 passed); restored fromHEAD,git diff HEADis empty and the HEAD blob and disk hashes match (4d07512d).@object-ui/plugin-ganttunder the verify lock:test(Test Files 103 passed, 1 skipped; Tests 775 passed, 114 skipped) andtype-check, VERDICT command-exit 0.Acceptance notes
plugin-gantt/README.mdalready says the right thing ("The view-level{ provider: 'api', read, write }arm is retired in the spec … itsread/writeURLs are never requested") and is unchanged.datadescription does not cover the{ provider: 'schema', schemaId }arm the spec union also accepts; the README states it (the gantt queriesobjectNameinstead). Not widened here: the order asked for the two providers the gantt reads.Verification
Derived gates on head
65fcb5de:node scripts/pm/dispatch-gates.mjs --commands --repo objectstack-ai/objectstackderives 76; all 76 exit 0.check:skill-examplesfirst exited 3 (prerequisite not met: no@objectstack/client-reactdist) and was re-run green afterpnpm --filter @objectstack/client-react build.check:sdui-referenceand the ui scripts suite (pnpm --dir ui exec vitest run scripts/) are among the 76.dispatch-gates --ranreconciles: 76 derived, 76 run, 0 NOT-MEASURED, 0 UNRUN.76 gate commands and exit codes
Generated by Claude Code
🤖 Generated with Claude Code
https://claude.ai/code/session_01WGufzgPyKYGxK9udhSm8zP