Skip to content

[WIP] Update objectstack to latest version and adjust code#852

Merged
hotlong merged 3 commits intomainfrom
copilot/upgrade-objectstack-to-latest-yet-again
Feb 25, 2026
Merged

[WIP] Update objectstack to latest version and adjust code#852
hotlong merged 3 commits intomainfrom
copilot/upgrade-objectstack-to-latest-yet-again

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Feb 25, 2026

  • Update all @objectstack/* package versions from ^3.0.9 to ^3.0.10 across all 14 package.json files
  • Run pnpm install to update lockfile
  • Re-export new spec/ui types from @object-ui/types: DensityModeSchema, ViewFilterRule, ViewFilterRuleSchema, ThemeModeSchema, WcagContrastLevelSchema
  • Update p2-spec-exports.test.ts to cover new types (29/29 pass)
  • Fix examples to conform to v3.0.10 protocol:
    • CRM view filters: convert tuple ['field', '=', 'value'] → object [{ field, operator, value }] (6 files)
    • Todo active filter: convert [['status', '!=', 'Done']][{ field: 'status', operator: '!=', value: 'Done' }]
    • Kitchen-sink dashboard widgets: add id to 7 widgets
    • Todo dashboard widgets: add id to 6 widgets
    • CRM dashboard widgets: add id to 12 widgets
  • Update ROADMAP.md with v3.0.10 upgrade notes
  • Run full test suite: 6698 passed, 8 pre-existing date-timezone failures (unrelated)
Original prompt

@objectstack升级到最新版,并按新版协议,调整现有的代码


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

@vercel
Copy link
Copy Markdown

vercel Bot commented Feb 25, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
objectui Canceled Canceled Feb 25, 2026 4:57am
objectui-demo Ready Ready Preview, Comment Feb 25, 2026 4:57am
objectui-storybook Ready Ready Preview, Comment Feb 25, 2026 4:57am

Request Review

Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
…ormat)

Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
@hotlong hotlong marked this pull request as ready for review February 25, 2026 05:02
Copilot AI review requested due to automatic review settings February 25, 2026 05:02
@hotlong hotlong merged commit 8a6c4f0 into main Feb 25, 2026
5 checks passed
Copilot AI requested a review from hotlong February 25, 2026 05:02
Copilot stopped work on behalf of hotlong due to an error February 25, 2026 05:02
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR upgrades the monorepo to @objectstack/* v3.0.10 and updates ObjectUI’s type re-exports and example metadata to conform to the updated spec protocol (notably view filter rule format and dashboard widget id requirements).

Changes:

  • Bump all @objectstack/* dependencies to ^3.0.10 and update pnpm-lock.yaml.
  • Re-export newly added spec/UI types in @object-ui/types and extend export validation tests.
  • Migrate example view filters to { field, operator, value } objects and add required id fields to example dashboard widgets; document the upgrade in ROADMAP.md.

Reviewed changes

Copilot reviewed 26 out of 27 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
pnpm-lock.yaml Updates resolved dependency graph for @objectstack/* v3.0.10 (and transitive bumps).
packages/types/src/theme.ts Adds ThemeModeSchema type re-export from @objectstack/spec/ui.
packages/types/src/index.ts Adds new v3.0.10 spec/UI type re-exports (e.g., DensityModeSchema, ViewFilterRule*, WcagContrastLevelSchema).
packages/types/src/tests/p2-spec-exports.test.ts Extends tests to cover new spec types and schema availability/behavior (runtime checks via spec import, compile-time via type imports).
packages/types/package.json Bumps @objectstack/spec dependency to ^3.0.10.
packages/react/package.json Bumps @objectstack/spec dependency to ^3.0.10.
packages/plugin-timeline/package.json Bumps @objectstack/spec dependency to ^3.0.10.
packages/plugin-map/package.json Bumps @objectstack/spec dependency to ^3.0.10.
packages/plugin-gantt/package.json Bumps @objectstack/spec dependency to ^3.0.10.
packages/data-objectstack/package.json Bumps @objectstack/client dependency to ^3.0.10.
packages/core/package.json Bumps @objectstack/spec dependency to ^3.0.10.
package.json Bumps root @objectstack/* deps to ^3.0.10 (dev + runtime).
examples/todo/package.json Bumps example deps to ^3.0.10.
examples/todo/objectstack.config.ts Converts list view filter to object rules and adds required widget ids.
examples/msw-todo/package.json Bumps example deps to ^3.0.10.
examples/kitchen-sink/package.json Bumps example deps to ^3.0.10.
examples/kitchen-sink/objectstack.config.ts Adds required widget ids to dashboard widgets.
examples/crm/src/views/user.view.ts Converts view filter to object rule format.
examples/crm/src/views/product.view.ts Converts view filter to object rule format.
examples/crm/src/views/order.view.ts Converts view filter to object rule format.
examples/crm/src/views/event.view.ts Converts view filter to object rule format.
examples/crm/src/views/contact.view.ts Converts view filter to object rule format.
examples/crm/src/views/account.view.ts Converts view filter to object rule format.
examples/crm/src/dashboards/crm.dashboard.ts Adds required widget ids to CRM dashboard widgets.
examples/crm/package.json Bumps example deps to ^3.0.10.
apps/console/package.json Bumps app deps to ^3.0.10.
ROADMAP.md Documents the v3.0.10 upgrade and protocol changes applied.
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported
Comments suppressed due to low confidence (1)

examples/crm/src/dashboards/crm.dashboard.ts:66

  • This section has inconsistent indentation compared to the KPI widgets above (e.g., id/title/type are indented further than other widget objects in the same array). Running Prettier (or aligning indentation manually) would avoid noisy diffs and reduce the chance of failing formatting/lint checks.
    // --- Row 2: Charts (provider: 'object' — dynamic aggregation) ---
    {
        id: 'revenue_trends',
        title: 'Revenue Trends',
        type: 'area' as const,
        object: 'opportunity',
        categoryField: 'stage',

Comment on lines +1093 to +1099
// ============================================================================
// v3.0.10 Spec UI Types — View Filter Rules
// ============================================================================
export type {
ViewFilterRule,
ViewFilterRuleSchema,
} from '@objectstack/spec/ui';
Copy link

Copilot AI Feb 25, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ThemeModeSchema is not re-exported from the package entrypoint. Since packages/types/package.json does not export a ./theme subpath, consumers can’t import ThemeModeSchema from @object-ui/types/theme and it also isn’t available via @object-ui/types.

To match the PR description and make the new spec schema type usable, re-export ThemeModeSchema from packages/types/src/index.ts (e.g., include it in the export type { … } from './theme' block or re-export it from @objectstack/spec/ui alongside the other *Schema types).

Copilot uses AI. Check for mistakes.
Comment on lines +39 to +41
import type {
ThemeModeSchema,
} from '../theme';
Copy link

Copilot AI Feb 25, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test imports ThemeModeSchema from ../theme, but that subpath isn’t part of @object-ui/types’ public exports map (only . / ./base / ./layout / etc. are exported). To ensure the test reflects the public API (and avoids unused-import warnings), import ThemeModeSchema from ../index after it’s re-exported there, and reference it in a small type annotation so the compile-time check is meaningful.

Copilot uses AI. Check for mistakes.

/**
* Theme Mode Schema
* Canonical Zod schema from @objectstack/spec/ui.
Copy link

Copilot AI Feb 25, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The comment says “Canonical Zod schema”, but this module only re-exports ThemeModeSchema as a type (export type { … }), not the runtime Zod schema value. Consider clarifying the wording (e.g., “Type of the canonical Zod schema”) to avoid implying that ThemeModeSchema.parse() is available from @object-ui/types.

Suggested change
* Canonical Zod schema from @objectstack/spec/ui.
* Type of the canonical Zod schema from @objectstack/spec/ui.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants