Skip to content

Commit eac206a

Browse files
committed
chore(platform): point the seam rule and guidance at the embedded views
1 parent 10e8935 commit eac206a

4 files changed

Lines changed: 7 additions & 7 deletions

File tree

‎.claude/rules/sim-platform-views.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
---
22
description: One pattern per job across the organization views (Settings, People, Integrations, Links, Home)
33
paths:
4-
- "apps/sim/platform/app/(shell)/{settings,people,integrations,links,home}/**"
4+
- "apps/sim/platform/embedded/app/(shell)/{settings,people,integrations,links,home}/**"
55
- "apps/sim/platform/design-system/components/{status,modal,picker,settings-section,search-field,activity-row}/**"
66
- "apps/sim/app/o/*/**"
77
---
88

99
# Organization Views
1010

11-
The organization views live in `apps/sim/platform/app/(shell)/` and take everything shared from
11+
The organization views live in `apps/sim/platform/embedded/app/(shell)/` and take everything shared from
1212
`@/platform/design-system/components`. Each job below has one pattern. A view that differs needs a
1313
reason written where it differs; "it was already like that" is not one.
1414

‎.cursor/rules/sim-platform-views.mdc‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
---
22
description: "One pattern per job across the organization views (Settings, People, Integrations, Links, Home)"
3-
globs: ["apps/sim/platform/app/(shell)/{settings,people,integrations,links,home}/**","apps/sim/platform/design-system/components/{status,modal,picker,settings-section,search-field,activity-row}/**","apps/sim/app/o/*/**"]
3+
globs: ["apps/sim/platform/embedded/app/(shell)/{settings,people,integrations,links,home}/**","apps/sim/platform/design-system/components/{status,modal,picker,settings-section,search-field,activity-row}/**","apps/sim/app/o/*/**"]
44
---
55

66
<!-- Generated from .claude/rules/sim-platform-views.md by `bun run skills:sync`. Edit the source, not this file. -->
77

88
# Organization Views
99

10-
The organization views live in `apps/sim/platform/app/(shell)/` and take everything shared from
10+
The organization views live in `apps/sim/platform/embedded/app/(shell)/` and take everything shared from
1111
`@/platform/design-system/components`. Each job below has one pattern. A view that differs needs a
1212
reason written where it differs; "it was already like that" is not one.
1313

‎apps/sim/platform/AGENTS.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ Gates live on the server and arrive as data. Hiding an entry is navigation, not
7474

7575
## Embedded in the organization surface
7676

77-
The main app's `app/o/[organizationId]/` also mounts these views, on routes flag-off organizations still use. That route is the only legacy code that may import `@/platform/*`; `check:platform-css` holds every other entry out. Whatever needs legacy chrome (`WorkspaceChrome`, the legacy composer, Search's source cards) lives on the host's side in `app/o/[organizationId]/_redesign/`, never here. A view shared by both takes what differs as props or slots. `lib/data` modules read `useOrganization()`, which the host's layout fills from the same surface read this app makes, with `routePrefix` set to `/o/<id>`, so `surfaceHref` and `legacyRoutes` serve both. Notices go through `usePlatformNotices`, which a host may redirect, and `PlatformSurface` collapses inside another, so a part can wrap itself when it alternates with legacy chrome.
77+
The main app's `app/o/[organizationId]/` also mounts these views, on routes flag-off organizations still use. That route is the only legacy code that may import `@/platform/*`; `check:platform-css` holds every other entry out. Whatever needs legacy chrome (`WorkspaceChrome`, the legacy composer, Search's source cards) lives in `platform/embedded/`, which holds the organization surface's own views and data and which the zone never imports. A view shared by both takes what differs as props or slots. `lib/data` modules read `useOrganization()`, which the host's layout fills from the same surface read this app makes, with `routePrefix` set to `/o/<id>`, so `surfaceHref` and `legacyRoutes` serve both. Notices go through `usePlatformNotices`, which a host may redirect, and `PlatformSurface` collapses inside another, so a part can wrap itself when it alternates with legacy chrome.
7878

7979
## Product UI and desktop
8080

‎scripts/check-monorepo-boundaries.test.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -184,7 +184,7 @@ describe('package boundary command', () => {
184184
const cases = [
185185
["import { Row } from '@/app/o/[organizationId]/row'", false],
186186
["import type { Row } from '@/app/o/[organizationId]/model'", false],
187-
["export { Row } from '../../../app/o/[organizationId]/row'", false],
187+
["export { Row } from '../../../../app/o/[organizationId]/row'", false],
188188
["const row = import('@/app/o/[organizationId]/row')", false],
189189
["import { value } from '@/app/other/value'", true],
190190
["import { value } from '@/lib/organizations/value'", true],
@@ -249,7 +249,7 @@ describe('package boundary command', () => {
249249
["import { useDeep } from '@/ee/widgets/parts/hooks/deep'", false],
250250
["import { useFlat } from '@/ee/hooks'", false],
251251
["const widgets = import('@/hooks/queries/widgets')", false],
252-
["import { useWidgets } from '../../../../hooks/queries/widgets'", false],
252+
["import { useWidgets } from '../../../../../hooks/queries/widgets'", false],
253253
["import type { Widget } from '@/hooks/queries/widgets'", true],
254254
["import { useWidgets } from '@/platform/embedded/lib/data/widgets'", true],
255255
["import { useDebounce } from '@/hooks/use-debounce'", true],

0 commit comments

Comments
 (0)