From 7d414638da22d0fc235b8f170d26061ca8a0b656 Mon Sep 17 00:00:00 2001 From: Nik Graf Date: Thu, 19 Jun 2025 12:53:14 +0200 Subject: [PATCH] move mapping to app provider --- apps/events/src/Boot.tsx | 3 +- apps/events/src/mapping.ts | 2 +- apps/events/src/routes/playground.lazy.tsx | 3 +- .../events/src/routes/space/$spaceId/chat.tsx | 3 +- .../src/routes/space/$spaceId/index.tsx | 3 +- .../src/routes/space/$spaceId/playground.tsx | 3 +- .../space/$spaceId/public-integration.tsx | 3 +- .../src/routes/space/$spaceId/users.tsx | 3 +- .../next-example/src/components/providers.tsx | 2 +- .../src/HypergraphAppContext.tsx | 11 +- .../src/HypergraphSpaceContext.tsx | 27 +- .../src/internal/use-generate-create-ops.tsx | 5 +- .../src/internal/use-generate-update-ops.tsx | 6 +- .../src/internal/use-query-public.tsx | 10 +- packages/hypergraph-react/src/types.ts | 16 +- packages/hypergraph-react/src/use-query.tsx | 7 +- .../test/HypergraphAppContext.test.tsx | 2 +- packages/hypergraph/package.json | 1 + packages/hypergraph/src/store.ts | 12 +- packages/hypergraph/src/types.ts | 15 ++ pnpm-lock.yaml | 239 +++++++++--------- 21 files changed, 189 insertions(+), 187 deletions(-) diff --git a/apps/events/src/Boot.tsx b/apps/events/src/Boot.tsx index b46cdf28..0dc57d91 100644 --- a/apps/events/src/Boot.tsx +++ b/apps/events/src/Boot.tsx @@ -1,5 +1,6 @@ import { HypergraphAppProvider } from '@graphprotocol/hypergraph-react'; import { RouterProvider, createRouter } from '@tanstack/react-router'; +import { mapping } from './mapping.js'; import { routeTree } from './routeTree.gen'; // Create a new router instance @@ -14,7 +15,7 @@ declare module '@tanstack/react-router' { export function Boot() { return ( - + ); diff --git a/apps/events/src/mapping.ts b/apps/events/src/mapping.ts index 1f6732d2..6890f24a 100644 --- a/apps/events/src/mapping.ts +++ b/apps/events/src/mapping.ts @@ -1,5 +1,5 @@ import { Id } from '@graphprotocol/grc-20'; -import type { Mapping } from '@graphprotocol/hypergraph-react'; +import type { Mapping } from '@graphprotocol/hypergraph'; export const mapping: Mapping = { RelationEntry: { diff --git a/apps/events/src/routes/playground.lazy.tsx b/apps/events/src/routes/playground.lazy.tsx index 16641839..f371eabe 100644 --- a/apps/events/src/routes/playground.lazy.tsx +++ b/apps/events/src/routes/playground.lazy.tsx @@ -1,5 +1,4 @@ import { Playground } from '@/components/playground'; -import { mapping } from '@/mapping.js'; import { HypergraphSpaceProvider } from '@graphprotocol/hypergraph-react'; import { createLazyFileRoute } from '@tanstack/react-router'; @@ -9,7 +8,7 @@ export const Route = createLazyFileRoute('/playground')({ function RouteComponent() { return ( - +

Playground

diff --git a/apps/events/src/routes/space/$spaceId/chat.tsx b/apps/events/src/routes/space/$spaceId/chat.tsx index 5df942ad..4121bcda 100644 --- a/apps/events/src/routes/space/$spaceId/chat.tsx +++ b/apps/events/src/routes/space/$spaceId/chat.tsx @@ -1,5 +1,4 @@ import { SpaceChat } from '@/components/SpaceChat'; -import { mapping } from '@/mapping.js'; import { store } from '@graphprotocol/hypergraph'; import { HypergraphSpaceProvider, useHypergraphApp } from '@graphprotocol/hypergraph-react'; import { createFileRoute } from '@tanstack/react-router'; @@ -32,7 +31,7 @@ function RouteComponent() { return (
- +
diff --git a/apps/events/src/routes/space/$spaceId/index.tsx b/apps/events/src/routes/space/$spaceId/index.tsx index f38b1108..e9e5a4fb 100644 --- a/apps/events/src/routes/space/$spaceId/index.tsx +++ b/apps/events/src/routes/space/$spaceId/index.tsx @@ -4,7 +4,6 @@ import { TodosReadOnly } from '@/components/todos-read-only'; import { TodosReadOnlyFilter } from '@/components/todos-read-only-filter'; import { Button } from '@/components/ui/button'; import { Users } from '@/components/users'; -import { mapping } from '@/mapping.js'; import { store } from '@graphprotocol/hypergraph'; import { HypergraphSpaceProvider, useHypergraphApp } from '@graphprotocol/hypergraph-react'; import { createFileRoute } from '@tanstack/react-router'; @@ -38,7 +37,7 @@ function Space() { return (
- + diff --git a/apps/events/src/routes/space/$spaceId/playground.tsx b/apps/events/src/routes/space/$spaceId/playground.tsx index 902a53f7..59900560 100644 --- a/apps/events/src/routes/space/$spaceId/playground.tsx +++ b/apps/events/src/routes/space/$spaceId/playground.tsx @@ -1,5 +1,4 @@ import { TodosPublic } from '@/components/todo/todos-public'; -import { mapping } from '@/mapping.js'; import { store } from '@graphprotocol/hypergraph'; import { HypergraphSpaceProvider, useHypergraphApp } from '@graphprotocol/hypergraph-react'; import { createFileRoute } from '@tanstack/react-router'; @@ -32,7 +31,7 @@ function PlaygroundRouteComponent() { return (
- +
diff --git a/apps/events/src/routes/space/$spaceId/public-integration.tsx b/apps/events/src/routes/space/$spaceId/public-integration.tsx index a246164d..979880d2 100644 --- a/apps/events/src/routes/space/$spaceId/public-integration.tsx +++ b/apps/events/src/routes/space/$spaceId/public-integration.tsx @@ -1,6 +1,5 @@ import { CreatePropertiesAndTypes } from '@/components/create-properties-and-types'; import { Todos2 } from '@/components/todos2'; -import { mapping } from '@/mapping.js'; import { store } from '@graphprotocol/hypergraph'; import { HypergraphSpaceProvider, useHypergraphApp } from '@graphprotocol/hypergraph-react'; import { createFileRoute } from '@tanstack/react-router'; @@ -33,7 +32,7 @@ function PublicIntegration() { return (
- + diff --git a/apps/events/src/routes/space/$spaceId/users.tsx b/apps/events/src/routes/space/$spaceId/users.tsx index 57e1028c..6fb5d901 100644 --- a/apps/events/src/routes/space/$spaceId/users.tsx +++ b/apps/events/src/routes/space/$spaceId/users.tsx @@ -1,6 +1,5 @@ import { UsersMerged } from '@/components/users/users-merged'; import { UsersPublic } from '@/components/users/users-public'; -import { mapping } from '@/mapping.js'; import { store } from '@graphprotocol/hypergraph'; import { HypergraphSpaceProvider, useHypergraphApp } from '@graphprotocol/hypergraph-react'; import { createFileRoute } from '@tanstack/react-router'; @@ -33,7 +32,7 @@ function UsersRouteComponent() { return (
- + diff --git a/apps/next-example/src/components/providers.tsx b/apps/next-example/src/components/providers.tsx index a8d2b29f..3fa2a518 100644 --- a/apps/next-example/src/components/providers.tsx +++ b/apps/next-example/src/components/providers.tsx @@ -7,7 +7,7 @@ export default function Providers({ children }: { children: React.ReactNode }) { const storage = typeof window !== 'undefined' ? window.localStorage : (undefined as unknown as Storage); return ( - + {children} ); diff --git a/packages/hypergraph-react/src/HypergraphAppContext.tsx b/packages/hypergraph-react/src/HypergraphAppContext.tsx index d1a26af4..6d89dd31 100644 --- a/packages/hypergraph-react/src/HypergraphAppContext.tsx +++ b/packages/hypergraph-react/src/HypergraphAppContext.tsx @@ -14,6 +14,7 @@ import { type InboxMessageStorageEntry, Inboxes, Key, + type Mapping, Messages, SpaceEvents, type SpaceStorageEntry, @@ -184,6 +185,7 @@ export type HypergraphAppProviderProps = Readonly<{ syncServerUri?: string; chainId?: number; children: ReactNode; + mapping: Mapping; }>; // 1) a) Get session token from local storage, or // b) Auth with the sync server @@ -193,8 +195,8 @@ export type HypergraphAppProviderProps = Readonly<{ export function HypergraphAppProvider({ storage, syncServerUri = 'https://syncserver.hypergraph.thegraph.com', - chainId = 80451, children, + mapping, }: HypergraphAppProviderProps) { const [websocketConnection, setWebsocketConnection] = useState(); const [isConnecting, setIsConnecting] = useState(true); @@ -227,6 +229,11 @@ export function HypergraphAppProvider({ const initialRenderAuthCheckRef = useRef(false); // using a layout effect to avoid a re-render useLayoutEffect(() => { + store.send({ + type: 'setMapping', + mapping, + }); + if (!initialRenderAuthCheckRef.current) { const identity = Identity.loadIdentity(storage); if (identity) { @@ -238,7 +245,7 @@ export function HypergraphAppProvider({ // set render auth check to true so next potential rerender doesn't proc this initialRenderAuthCheckRef.current = true; } - }, [storage]); + }, [storage, mapping]); useEffect(() => { if (!identity) { diff --git a/packages/hypergraph-react/src/HypergraphSpaceContext.tsx b/packages/hypergraph-react/src/HypergraphSpaceContext.tsx index a51bee1e..31bd70e7 100644 --- a/packages/hypergraph-react/src/HypergraphSpaceContext.tsx +++ b/packages/hypergraph-react/src/HypergraphSpaceContext.tsx @@ -6,19 +6,17 @@ import { Entity, Utils } from '@graphprotocol/hypergraph'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import * as Schema from 'effect/Schema'; import { type ReactNode, createContext, useContext, useMemo, useRef, useState, useSyncExternalStore } from 'react'; -import type { Mapping } from './types.js'; export type HypergraphContext = { space: string; repo: Repo; id: AnyDocumentId; handle: DocHandle; - mapping?: Mapping | undefined; }; export const HypergraphReactContext = createContext(undefined); -export function useHypergraph() { +function useHypergraphSpaceInternal() { const context = useContext(HypergraphReactContext); if (!context) { throw new Error('useHypergraphSpace must be used within a HypergraphSpaceProvider'); @@ -29,11 +27,7 @@ export function useHypergraph() { const queryClient = new QueryClient(); -export function HypergraphSpaceProvider({ - space, - children, - mapping, -}: { space: string; children: ReactNode; mapping?: Mapping }) { +export function HypergraphSpaceProvider({ space, children }: { space: string; children: ReactNode }) { const repo = useRepo(); const ref = useRef(undefined); @@ -47,7 +41,6 @@ export function HypergraphSpaceProvider({ repo, id, handle: result.handle, - mapping, }; } @@ -59,27 +52,27 @@ export function HypergraphSpaceProvider({ } export function useCreateEntity(type: S) { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); return Entity.create(hypergraph.handle, type); } export function useUpdateEntity(type: S) { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); return Entity.update(hypergraph.handle, type); } export function useDeleteEntity() { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); return Entity.markAsDeleted(hypergraph.handle); } export function useRemoveRelation() { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); return Entity.removeRelation(hypergraph.handle); } export function useHardDeleteEntity() { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); return Entity.delete(hypergraph.handle); } @@ -93,7 +86,7 @@ export function useQueryLocal(type: S, para const { enabled = true, filter, include } = params ?? {}; const entitiesRef = useRef[]>([]); - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); const [subscription] = useState(() => { if (!enabled) { return { @@ -130,7 +123,7 @@ export function useQueryEntity( id: string, include?: { [K in keyof Schema.Schema.Type]?: Record }, ) { - const hypergraph = useHypergraph(); + const hypergraph = useHypergraphSpaceInternal(); const prevEntityRef = useRef | undefined>(undefined); const equals = Schema.equivalence(type); @@ -174,6 +167,6 @@ export function useQueryEntity( } export const useHypergraphSpace = () => { - const { space } = useHypergraph(); + const { space } = useHypergraphSpaceInternal(); return space; }; diff --git a/packages/hypergraph-react/src/internal/use-generate-create-ops.tsx b/packages/hypergraph-react/src/internal/use-generate-create-ops.tsx index f146e682..7882e778 100644 --- a/packages/hypergraph-react/src/internal/use-generate-create-ops.tsx +++ b/packages/hypergraph-react/src/internal/use-generate-create-ops.tsx @@ -1,8 +1,9 @@ import type { Entity } from '@graphprotocol/hypergraph'; -import { useHypergraph } from '../HypergraphSpaceContext.js'; +import { store } from '@graphprotocol/hypergraph'; +import { useSelector } from '@xstate/store/react'; export function useGenerateCreateOps(type: S, enabled = true) { - const { mapping } = useHypergraph(); + const mapping = useSelector(store, (state) => state.context.mapping); return (properties: Entity.Entity) => { // @ts-expect-error TODO should use the actual type instead of the name in the mapping diff --git a/packages/hypergraph-react/src/internal/use-generate-update-ops.tsx b/packages/hypergraph-react/src/internal/use-generate-update-ops.tsx index 7442d9b1..459a43b8 100644 --- a/packages/hypergraph-react/src/internal/use-generate-update-ops.tsx +++ b/packages/hypergraph-react/src/internal/use-generate-update-ops.tsx @@ -1,10 +1,10 @@ import type { Op } from '@graphprotocol/grc-20'; -import type { Entity } from '@graphprotocol/hypergraph'; -import { useHypergraph } from '../HypergraphSpaceContext.js'; +import { type Entity, store } from '@graphprotocol/hypergraph'; +import { useSelector } from '@xstate/store/react'; import type { DiffEntry } from '../types.js'; export function useGenerateUpdateOps(type: S, enabled = true) { - const { mapping } = useHypergraph(); + const mapping = useSelector(store, (state) => state.context.mapping); return ({ id, diff }: { id: string; diff: DiffEntry }) => { // @ts-expect-error TODO should use the actual type instead of the name in the mapping diff --git a/packages/hypergraph-react/src/internal/use-query-public.tsx b/packages/hypergraph-react/src/internal/use-query-public.tsx index 6349bbd9..9c31d534 100644 --- a/packages/hypergraph-react/src/internal/use-query-public.tsx +++ b/packages/hypergraph-react/src/internal/use-query-public.tsx @@ -1,11 +1,11 @@ -import { type Entity, Type } from '@graphprotocol/hypergraph'; +import { type Entity, type Mapping, type MappingEntry, Type, store } from '@graphprotocol/hypergraph'; import { useQuery as useQueryTanstack } from '@tanstack/react-query'; +import { useSelector } from '@xstate/store/react'; import * as Either from 'effect/Either'; import * as Schema from 'effect/Schema'; import { gql, request } from 'graphql-request'; import { useMemo } from 'react'; -import { useHypergraph } from '../HypergraphSpaceContext.js'; -import type { Mapping, MappingEntry } from '../types.js'; +import { useHypergraphSpace } from '../HypergraphSpaceContext.js'; import { GEO_API_TESTNET_ENDPOINT } from './constants.js'; import type { QueryPublicParams } from './types.js'; @@ -161,7 +161,9 @@ export const parseResult = ( export const useQueryPublic = (type: S, params?: QueryPublicParams) => { const { enabled = true, include } = params ?? {}; - const { space, mapping } = useHypergraph(); + const space = useHypergraphSpace(); + const mapping = useSelector(store, (state) => state.context.mapping); + console.log('mapping', mapping); // @ts-expect-error TODO should use the actual type instead of the name in the mapping const typeName = type.name; diff --git a/packages/hypergraph-react/src/types.ts b/packages/hypergraph-react/src/types.ts index aeccde1b..9be00c01 100644 --- a/packages/hypergraph-react/src/types.ts +++ b/packages/hypergraph-react/src/types.ts @@ -1,21 +1,7 @@ -import type { Id as Grc20Id, Op } from '@graphprotocol/grc-20'; +import type { Op } from '@graphprotocol/grc-20'; import type { Entity } from '@graphprotocol/hypergraph'; import type * as Schema from 'effect/Schema'; -export type MappingEntry = { - typeIds: Grc20Id.Id[]; - properties?: { - [key: string]: Grc20Id.Id; - }; - relations?: { - [key: string]: Grc20Id.Id; - }; -}; - -export type Mapping = { - [key: string]: MappingEntry; -}; - export type EntityLike = { id: string; [key: string]: unknown; diff --git a/packages/hypergraph-react/src/use-query.tsx b/packages/hypergraph-react/src/use-query.tsx index a73e155f..35d6fc74 100644 --- a/packages/hypergraph-react/src/use-query.tsx +++ b/packages/hypergraph-react/src/use-query.tsx @@ -1,7 +1,8 @@ -import { type Entity, Type, Utils } from '@graphprotocol/hypergraph'; +import { type Entity, Type, Utils, store } from '@graphprotocol/hypergraph'; +import { useSelector } from '@xstate/store/react'; import type * as Schema from 'effect/Schema'; import { useMemo } from 'react'; -import { useHypergraph, useQueryLocal } from './HypergraphSpaceContext.js'; +import { useQueryLocal } from './HypergraphSpaceContext.js'; import { generateDeleteOps } from './internal/generate-delete-ops.js'; import { useGenerateCreateOps } from './internal/use-generate-create-ops.js'; import { useGenerateUpdateOps } from './internal/use-generate-update-ops.js'; @@ -147,7 +148,7 @@ export function useQuery(type: S, params?: const { mode = 'merged', filter, include } = params ?? {}; const publicResult = useQueryPublic(type, { enabled: mode === 'public' || mode === 'merged', include }); const localResult = useQueryLocal(type, { enabled: mode === 'local' || mode === 'merged', filter, include }); - const { mapping } = useHypergraph(); + const mapping = useSelector(store, (state) => state.context.mapping); const generateCreateOps = useGenerateCreateOps(type, mode === 'merged'); const generateUpdateOps = useGenerateUpdateOps(type, mode === 'merged'); diff --git a/packages/hypergraph-react/test/HypergraphAppContext.test.tsx b/packages/hypergraph-react/test/HypergraphAppContext.test.tsx index fd51190b..1ae00c3f 100644 --- a/packages/hypergraph-react/test/HypergraphAppContext.test.tsx +++ b/packages/hypergraph-react/test/HypergraphAppContext.test.tsx @@ -26,7 +26,7 @@ const storageMock = { describe('HypergraphAppContext', () => { it('should render the HypergraphAppProvider and be initially unauthenticated', async () => { const wrapper = ({ children }: Readonly<{ children: React.ReactNode }>) => ( - + {children} ); diff --git a/packages/hypergraph/package.json b/packages/hypergraph/package.json index 1f1c219b..63f7b407 100644 --- a/packages/hypergraph/package.json +++ b/packages/hypergraph/package.json @@ -29,6 +29,7 @@ "@automerge/automerge": "^2.2.9", "@automerge/automerge-repo": "=2.0.0-beta.5", "@effect/experimental": "^0.44.20", + "@graphprotocol/grc-20": "^0.20.0", "@noble/ciphers": "^1.3.0", "@noble/curves": "^1.9.0", "@noble/hashes": "^1.8.0", diff --git a/packages/hypergraph/src/store.ts b/packages/hypergraph/src/store.ts index 5c50f2cd..060b2e78 100644 --- a/packages/hypergraph/src/store.ts +++ b/packages/hypergraph/src/store.ts @@ -5,6 +5,7 @@ import { mergeMessages } from './inboxes/merge-messages.js'; import type { InboxSenderAuthPolicy } from './inboxes/types.js'; import type { Invitation, Updates } from './messages/index.js'; import type { SpaceEvent, SpaceState } from './space-events/index.js'; +import type { Mapping } from './types.js'; import { idToAutomergeId } from './utils/automergeId.js'; export type InboxMessageStorageEntry = { @@ -66,6 +67,7 @@ interface StoreContext { identity: PrivateAppIdentity | null; lastUpdateClock: { [spaceId: string]: number }; accountInboxes: AccountInboxStorageEntry[]; + mapping: Mapping; } const initialStoreContext: StoreContext = { @@ -78,10 +80,12 @@ const initialStoreContext: StoreContext = { identity: null, lastUpdateClock: {}, accountInboxes: [], + mapping: {}, }; type StoreEvent = | { type: 'setInvitations'; invitations: Invitation[] } + | { type: 'setMapping'; mapping: Mapping } | { type: 'reset' } | { type: 'addUpdateInFlight'; updateId: string } | { type: 'removeUpdateInFlight'; updateId: string } @@ -154,9 +158,15 @@ export const store: Store = create invitations: event.invitations, }; }, + setMapping: (context, event: { mapping: Mapping }) => { + return { + ...context, + mapping: event.mapping, + }; + }, reset: (context) => { // once the repo is initialized, there is no need to reset it - return { ...initialStoreContext, repo: context.repo }; + return { ...initialStoreContext, repo: context.repo, mapping: context.mapping }; }, addUpdateInFlight: (context, event: { updateId: string }) => { return { diff --git a/packages/hypergraph/src/types.ts b/packages/hypergraph/src/types.ts index d1183579..b367fe64 100644 --- a/packages/hypergraph/src/types.ts +++ b/packages/hypergraph/src/types.ts @@ -1,3 +1,4 @@ +import type { Id as Grc20Id } from '@graphprotocol/grc-20'; import * as Data from 'effect/Data'; import * as Schema from 'effect/Schema'; @@ -45,3 +46,17 @@ export class FailedToParseConnectAuthUrl extends Data.TaggedError('FailedToParse export class FailedToParseAuthCallbackUrl extends Data.TaggedError('FailedToParseAuthCallbackUrl')<{ message: string; }> {} + +export type MappingEntry = { + typeIds: Grc20Id.Id[]; + properties?: { + [key: string]: Grc20Id.Id; + }; + relations?: { + [key: string]: Grc20Id.Id; + }; +}; + +export type Mapping = { + [key: string]: MappingEntry; +}; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 25ebb66a..1d4cf1b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -173,7 +173,7 @@ importers: version: 7.1.2(graphql@16.11.0) isomorphic-ws: specifier: ^5.0.0 - version: 5.0.0(ws@8.18.1(bufferutil@4.0.9)(utf-8-validate@5.0.10)) + version: 5.0.0(ws@8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10)) lucide-react: specifier: ^0.508.0 version: 0.508.0(react@19.1.0) @@ -386,7 +386,7 @@ importers: version: 4.1.0 effect: specifier: latest - version: 3.16.5 + version: 3.16.8 graphql: specifier: ^16.11.0 version: 16.11.0 @@ -414,28 +414,28 @@ importers: devDependencies: '@effect/cli': specifier: latest - version: 0.63.9(@effect/platform@0.84.9(effect@3.16.5))(@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5))(@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5))(effect@3.16.5) + version: 0.64.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8))(@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8))(effect@3.16.8) '@effect/experimental': specifier: latest - version: 0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) + version: 0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) '@effect/language-service': specifier: latest - version: 0.20.1 + version: 0.21.3 '@effect/platform': specifier: latest - version: 0.84.9(effect@3.16.5) + version: 0.85.2(effect@3.16.8) '@effect/platform-node': specifier: latest - version: 0.85.14(@effect/cluster@0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(bufferutil@4.0.9)(effect@3.16.5)(utf-8-validate@5.0.10) + version: 0.86.4(@effect/cluster@0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(bufferutil@4.0.9)(effect@3.16.8)(utf-8-validate@5.0.10) '@effect/sql': specifier: latest - version: 0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) + version: 0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) '@effect/sql-sqlite-node': specifier: latest - version: 0.38.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(effect@3.16.5) + version: 0.39.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(effect@3.16.8) '@effect/vitest': specifier: latest - version: 0.23.5(effect@3.16.5)(vitest@3.1.3(@types/debug@4.1.12)(@types/node@22.15.29)(jiti@2.4.2)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(terser@5.39.1)(tsx@4.19.4)(yaml@2.7.0)) + version: 0.23.8(effect@3.16.8)(vitest@3.1.3(@types/debug@4.1.12)(@types/node@22.15.29)(jiti@2.4.2)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(terser@5.39.1)(tsx@4.19.4)(yaml@2.7.0)) '@graphprotocol/grc-20': specifier: ^0.20.0 version: 0.20.0(bufferutil@4.0.9)(graphql@16.11.0)(ox@0.6.7(typescript@5.8.3)(zod@3.25.51))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.51) @@ -518,7 +518,10 @@ importers: version: 2.0.0-beta.5 '@effect/experimental': specifier: ^0.44.20 - version: 0.44.20(@effect/platform@0.84.9(effect@3.16.3))(effect@3.16.3) + version: 0.44.20(@effect/platform@0.85.2(effect@3.16.3))(effect@3.16.3) + '@graphprotocol/grc-20': + specifier: ^0.20.0 + version: 0.20.0(bufferutil@4.0.9)(graphql@16.11.0)(ox@0.6.7(typescript@5.8.3)(zod@3.25.51))(typescript@5.8.3)(utf-8-validate@5.0.10)(zod@3.25.51) '@noble/ciphers': specifier: ^1.3.0 version: 1.3.0 @@ -2175,13 +2178,13 @@ packages: resolution: {integrity: sha512-e7zcB6TPnVzyUaHMJyLSArKa2AG3h9+4CfvKXKKWNx6hRs+p0a+u7HHTJBgo6KW2m+vqDnuIHK4X+bhmoghAFA==} engines: {node: '>=18.0'} - '@effect/cli@0.63.9': - resolution: {integrity: sha512-SKgoyDbXBra9sgpLLRAI2rDgfWvWIda5vV/ce7TaEUkIpfohJZ7yMcTZ9X4wXLbsc2pxWczkwOVn51WxAg3qng==} + '@effect/cli@0.64.2': + resolution: {integrity: sha512-j+HsbpyglfVwNFVgFNxb7EDVDvvGJgWqDqvN1B+idfHMl9D+3qB1P3pou/40yKj8J3dpOR87OBSSVIDrKc97mg==} peerDependencies: - '@effect/platform': ^0.84.9 - '@effect/printer': ^0.44.5 - '@effect/printer-ansi': ^0.44.5 - effect: ^3.16.5 + '@effect/platform': ^0.85.2 + '@effect/printer': ^0.44.8 + '@effect/printer-ansi': ^0.44.8 + effect: ^3.16.8 '@effect/cluster@0.37.2': resolution: {integrity: sha512-9U4P/Fk8C6fN/s0e4nvA++prZmELtV7k5RwG2AOw4NgqBZqptiJMutgaT10ltwgdvddRF/77PVjgORyzNTBmbg==} @@ -2205,11 +2208,11 @@ packages: lmdb: optional: true - '@effect/experimental@0.48.10': - resolution: {integrity: sha512-B6XlTdDlh4tDl+kU2+tpKR0xmK38XXXy27+PH8ILhM8m5RB0MJDtshzVLogw3Vzq2NjYsGkrxV/yEcU1HaQoLw==} + '@effect/experimental@0.49.2': + resolution: {integrity: sha512-0J4oEt2zlDoetg5pv+mE3eH+d7VMLeXIfvEu1VO7eA8CKoU4j8KYcN6E4YlIewmeXJJXNwlOW3IkUD0TQ1IBCg==} peerDependencies: - '@effect/platform': ^0.84.9 - effect: ^3.16.5 + '@effect/platform': ^0.85.2 + effect: ^3.16.8 ioredis: ^5 lmdb: ^3 peerDependenciesMeta: @@ -2218,31 +2221,31 @@ packages: lmdb: optional: true - '@effect/language-service@0.20.1': - resolution: {integrity: sha512-AgFazqxD2rlE0mc8V03BZw1XKghfOv9rrvR0M2xBv5haT4jHw5j07UK+Ln+dyeGmvrVXUT3a8Uc3pEkRJb+XHw==} + '@effect/language-service@0.21.3': + resolution: {integrity: sha512-dX/Q1OUzGxpRnhKW0iNXxHWXEMMD+mAKTKpiQMaq2HtuYffVRhBaDM2dxLjYrM4cUoGYO4asqOexNZ/D6GkkZg==} - '@effect/platform-node-shared@0.39.14': - resolution: {integrity: sha512-sb/BGXhVGVgEAZl0ycV9N2T7fwd/s+9bgjRHPaF4VTc3mWe9Yuljm01gMyqSp9c1wCZp82rezCVt51rnWzHzZw==} + '@effect/platform-node-shared@0.40.4': + resolution: {integrity: sha512-EfnRTSHKs33OTfKN9pF+G2AyxMXm/+4rKrGM8yEw56Ij6QV5dq2g28yi0eOH7BytvilnreVmcbAec7M77EArgg==} peerDependencies: - '@effect/cluster': ^0.38.14 - '@effect/platform': ^0.84.9 - '@effect/rpc': ^0.61.13 - '@effect/sql': ^0.37.10 - effect: ^3.16.5 + '@effect/cluster': ^0.39.4 + '@effect/platform': ^0.85.2 + '@effect/rpc': ^0.62.4 + '@effect/sql': ^0.38.2 + effect: ^3.16.8 - '@effect/platform-node@0.85.14': - resolution: {integrity: sha512-9/ikeqeKL+n5vH6qRLdHDy8sTFRNLtqu32b1k6Im0bt98Kps3zy/ye77ZwjugNd7lb22CnK1SdORZv45WlC0ig==} + '@effect/platform-node@0.86.4': + resolution: {integrity: sha512-AImYc+Tg/EF0miKKgORgQEEZ1a6PpdqkH2ZU4wt0ChmWi1XFa1WF/NYzK5qRrtfSKF+ug6Vd/5/psWvZNJTdyw==} peerDependencies: - '@effect/cluster': ^0.38.14 - '@effect/platform': ^0.84.9 - '@effect/rpc': ^0.61.13 - '@effect/sql': ^0.37.10 - effect: ^3.16.5 + '@effect/cluster': ^0.39.4 + '@effect/platform': ^0.85.2 + '@effect/rpc': ^0.62.4 + '@effect/sql': ^0.38.2 + effect: ^3.16.8 - '@effect/platform@0.84.9': - resolution: {integrity: sha512-I1xX/dpFCyA9DlwD3kungWD0Pu7tnM2pxifUEz0U1N2GSMmdcC4EWIOsjnCaC+hd0WSIsVJVZZjGsDeQeX+r2g==} + '@effect/platform@0.85.2': + resolution: {integrity: sha512-zIRixbQeO6QniR0k2mwR7DmR2HO1w6+qQlzQ5nb8lyPyPgd1gV9wo/9yBeB6zRC+CGnxiUiYsRMamclVISuxLw==} peerDependencies: - effect: ^3.16.5 + effect: ^3.16.8 '@effect/printer-ansi@0.40.10': resolution: {integrity: sha512-XMmAcHxojINGZKnNGJSrG1fMvMYLOlHGVAvvD/5pbp2Yi5Rh8PGDJjtaPmrj5PmO+WssovevLHGonrbKa8xybA==} @@ -2262,30 +2265,30 @@ packages: '@effect/platform': ^0.84.4 effect: ^3.16.3 - '@effect/sql-sqlite-node@0.38.10': - resolution: {integrity: sha512-wNO5h33JgaaAERi8e7hz+8BxULp8YwwC4OBbXCh9vH+0dz6HVXjfD8+N8DIdaz5ZrCgBmr/pJsq/RnaQToZkig==} + '@effect/sql-sqlite-node@0.39.2': + resolution: {integrity: sha512-J1rkNrtrYuia/eljmSTk+RmVafGA5z/1f9CTNPiRMgKNc1qfmOoqSQdwgLBjlJN7wQc+Db9tGDuK7gdsI5SoZw==} peerDependencies: - '@effect/experimental': ^0.48.10 - '@effect/platform': ^0.84.9 - '@effect/sql': ^0.37.10 - effect: ^3.16.5 + '@effect/experimental': ^0.49.2 + '@effect/platform': ^0.85.2 + '@effect/sql': ^0.38.2 + effect: ^3.16.8 - '@effect/sql@0.37.10': - resolution: {integrity: sha512-tPnGb+JTWvtRYHyYxriMlX3ueC6hCZxAX6UgN40tSZ65pfhKtTfx2tqoEB55HnkWWrO09CbpO/S0q7RTqgFflQ==} + '@effect/sql@0.38.2': + resolution: {integrity: sha512-hZNFlVDINrORcLyVuL8zhjjR3ghR4WxzQZZdqmkKKi3C5sE7AOl6TUNogkqmepKw0aLWF0MbLi46/htgeRtsCQ==} peerDependencies: - '@effect/experimental': ^0.48.10 - '@effect/platform': ^0.84.9 - effect: ^3.16.5 + '@effect/experimental': ^0.49.2 + '@effect/platform': ^0.85.2 + effect: ^3.16.8 '@effect/typeclass@0.31.10': resolution: {integrity: sha512-mDuQ44IfyDUSnltcFS+cEQGWhMg37IwNiPmATLw/NYBYHDBkqUc77vzlCpSlBiKDzExSI8vjMVWqGjL22MLHGQ==} peerDependencies: effect: ^3.12.10 - '@effect/vitest@0.23.5': - resolution: {integrity: sha512-cBiNyQQ+vslFnAuhjEz0NoNs/YD7hbyKPyIA1Xiu+m/jry6xVoFRQZEt5l5McIWbDfrbzBDEfEE6PpPS7U1D0Q==} + '@effect/vitest@0.23.8': + resolution: {integrity: sha512-yaAfl+qHb0jK38rl3HSd4cjmo4xcQQDKW/bCAhhi9zDlbIDzH+gsOHz094KoQ/kAlp0wOTgjquSI21FV4w9YXg==} peerDependencies: - effect: ^3.16.5 + effect: ^3.16.8 vitest: ^3.0.0 '@effect/workflow@0.1.2': @@ -6406,9 +6409,6 @@ packages: effect@3.16.3: resolution: {integrity: sha512-SWndb1UavNWvet1+hnkU4qp3EHtnmDKhUeP14eB+7vf/2nCFlM77/oIjdDeZctveibNjE65P9H/sBBmF0NTy/w==} - effect@3.16.5: - resolution: {integrity: sha512-7nA+ZPMLoHItabNRV95RpMtwVw2k3BDNhILP4ffo8dG7zGR04XGjarP1JbO+jdBbTRET3eGx1Nz+hWB9kSOajw==} - effect@3.16.8: resolution: {integrity: sha512-E4U0MZFBun99myxOogy9ZZ1c3IYR47L/A5GqCP9Lp+6ORag0YLmGHOrYxQ3agN1FOMTrElgtJmciicwnHdE+Ug==} @@ -13918,60 +13918,60 @@ snapshots: - uglify-js - webpack-cli - '@effect/cli@0.63.9(@effect/platform@0.84.9(effect@3.16.5))(@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5))(@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5))(effect@3.16.5)': + '@effect/cli@0.64.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8))(@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/platform': 0.84.9(effect@3.16.5) - '@effect/printer': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5) - '@effect/printer-ansi': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5) - effect: 3.16.5 + '@effect/platform': 0.85.2(effect@3.16.8) + '@effect/printer': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8) + '@effect/printer-ansi': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8) + effect: 3.16.8 ini: 4.1.3 toml: 3.0.0 yaml: 2.7.0 - '@effect/cluster@0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5)': + '@effect/cluster@0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/platform': 0.84.9(effect@3.16.5) - '@effect/rpc': 0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/sql': 0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/workflow': 0.1.2(effect@3.16.5) - effect: 3.16.5 + '@effect/platform': 0.85.2(effect@3.16.8) + '@effect/rpc': 0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/sql': 0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/workflow': 0.1.2(effect@3.16.8) + effect: 3.16.8 - '@effect/experimental@0.44.20(@effect/platform@0.84.9(effect@3.16.3))(effect@3.16.3)': + '@effect/experimental@0.44.20(@effect/platform@0.85.2(effect@3.16.3))(effect@3.16.3)': dependencies: - '@effect/platform': 0.84.9(effect@3.16.3) + '@effect/platform': 0.85.2(effect@3.16.3) effect: 3.16.3 uuid: 11.1.0 - '@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5)': + '@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/platform': 0.84.9(effect@3.16.5) - effect: 3.16.5 + '@effect/platform': 0.85.2(effect@3.16.8) + effect: 3.16.8 uuid: 11.1.0 - '@effect/language-service@0.20.1': {} + '@effect/language-service@0.21.3': {} - '@effect/platform-node-shared@0.39.14(@effect/cluster@0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(bufferutil@4.0.9)(effect@3.16.5)(utf-8-validate@5.0.10)': + '@effect/platform-node-shared@0.40.4(@effect/cluster@0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(bufferutil@4.0.9)(effect@3.16.8)(utf-8-validate@5.0.10)': dependencies: - '@effect/cluster': 0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5) - '@effect/platform': 0.84.9(effect@3.16.5) - '@effect/rpc': 0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/sql': 0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) + '@effect/cluster': 0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8) + '@effect/platform': 0.85.2(effect@3.16.8) + '@effect/rpc': 0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/sql': 0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) '@parcel/watcher': 2.5.1 - effect: 3.16.5 + effect: 3.16.8 multipasta: 0.2.5 ws: 8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate - '@effect/platform-node@0.85.14(@effect/cluster@0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(bufferutil@4.0.9)(effect@3.16.5)(utf-8-validate@5.0.10)': + '@effect/platform-node@0.86.4(@effect/cluster@0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(bufferutil@4.0.9)(effect@3.16.8)(utf-8-validate@5.0.10)': dependencies: - '@effect/cluster': 0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5) - '@effect/platform': 0.84.9(effect@3.16.5) - '@effect/platform-node-shared': 0.39.14(@effect/cluster@0.37.2(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/workflow@0.1.2(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(bufferutil@4.0.9)(effect@3.16.5)(utf-8-validate@5.0.10) - '@effect/rpc': 0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/sql': 0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - effect: 3.16.5 + '@effect/cluster': 0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8) + '@effect/platform': 0.85.2(effect@3.16.8) + '@effect/platform-node-shared': 0.40.4(@effect/cluster@0.37.2(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/workflow@0.1.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(bufferutil@4.0.9)(effect@3.16.8)(utf-8-validate@5.0.10) + '@effect/rpc': 0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/sql': 0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + effect: 3.16.8 mime: 3.0.0 undici: 7.10.0 ws: 8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10) @@ -13979,65 +13979,65 @@ snapshots: - bufferutil - utf-8-validate - '@effect/platform@0.84.9(effect@3.16.3)': + '@effect/platform@0.85.2(effect@3.16.3)': dependencies: effect: 3.16.3 find-my-way-ts: 0.1.5 msgpackr: 1.11.4 multipasta: 0.2.5 - '@effect/platform@0.84.9(effect@3.16.5)': + '@effect/platform@0.85.2(effect@3.16.8)': dependencies: - effect: 3.16.5 + effect: 3.16.8 find-my-way-ts: 0.1.5 msgpackr: 1.11.4 multipasta: 0.2.5 - '@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5)': + '@effect/printer-ansi@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/printer': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5) - '@effect/typeclass': 0.31.10(effect@3.16.5) - effect: 3.16.5 + '@effect/printer': 0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8) + '@effect/typeclass': 0.31.10(effect@3.16.8) + effect: 3.16.8 - '@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.5))(effect@3.16.5)': + '@effect/printer@0.40.10(@effect/typeclass@0.31.10(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/typeclass': 0.31.10(effect@3.16.5) - effect: 3.16.5 + '@effect/typeclass': 0.31.10(effect@3.16.8) + effect: 3.16.8 - '@effect/rpc@0.61.4(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5)': + '@effect/rpc@0.61.4(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/platform': 0.84.9(effect@3.16.5) - effect: 3.16.5 + '@effect/platform': 0.85.2(effect@3.16.8) + effect: 3.16.8 - '@effect/sql-sqlite-node@0.38.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(effect@3.16.5)': + '@effect/sql-sqlite-node@0.39.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/experimental': 0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/platform': 0.84.9(effect@3.16.5) - '@effect/sql': 0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) + '@effect/experimental': 0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/platform': 0.85.2(effect@3.16.8) + '@effect/sql': 0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) '@opentelemetry/semantic-conventions': 1.34.0 better-sqlite3: 11.10.0 - effect: 3.16.5 + effect: 3.16.8 - '@effect/sql@0.37.10(@effect/experimental@0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5))(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5)': + '@effect/sql@0.38.2(@effect/experimental@0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8))(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8)': dependencies: - '@effect/experimental': 0.48.10(@effect/platform@0.84.9(effect@3.16.5))(effect@3.16.5) - '@effect/platform': 0.84.9(effect@3.16.5) + '@effect/experimental': 0.49.2(@effect/platform@0.85.2(effect@3.16.8))(effect@3.16.8) + '@effect/platform': 0.85.2(effect@3.16.8) '@opentelemetry/semantic-conventions': 1.34.0 - effect: 3.16.5 + effect: 3.16.8 uuid: 11.1.0 - '@effect/typeclass@0.31.10(effect@3.16.5)': + '@effect/typeclass@0.31.10(effect@3.16.8)': dependencies: - effect: 3.16.5 + effect: 3.16.8 - '@effect/vitest@0.23.5(effect@3.16.5)(vitest@3.1.3(@types/debug@4.1.12)(@types/node@22.15.29)(jiti@2.4.2)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(terser@5.39.1)(tsx@4.19.4)(yaml@2.7.0))': + '@effect/vitest@0.23.8(effect@3.16.8)(vitest@3.1.3(@types/debug@4.1.12)(@types/node@22.15.29)(jiti@2.4.2)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(terser@5.39.1)(tsx@4.19.4)(yaml@2.7.0))': dependencies: - effect: 3.16.5 + effect: 3.16.8 vitest: 3.1.3(@types/debug@4.1.12)(@types/node@22.15.29)(jiti@2.4.2)(jsdom@26.1.0(bufferutil@4.0.9)(utf-8-validate@5.0.10))(lightningcss@1.30.1)(terser@5.39.1)(tsx@4.19.4)(yaml@2.7.0) - '@effect/workflow@0.1.2(effect@3.16.5)': + '@effect/workflow@0.1.2(effect@3.16.8)': dependencies: - effect: 3.16.5 + effect: 3.16.8 '@emnapi/runtime@1.4.3': dependencies: @@ -19495,11 +19495,6 @@ snapshots: '@standard-schema/spec': 1.0.0 fast-check: 3.23.2 - effect@3.16.5: - dependencies: - '@standard-schema/spec': 1.0.0 - fast-check: 3.23.2 - effect@3.16.8: dependencies: '@standard-schema/spec': 1.0.0 @@ -20861,10 +20856,6 @@ snapshots: dependencies: ws: 7.5.10(bufferutil@4.0.9)(utf-8-validate@5.0.10) - isomorphic-ws@5.0.0(ws@8.18.1(bufferutil@4.0.9)(utf-8-validate@5.0.10)): - dependencies: - ws: 8.18.1(bufferutil@4.0.9)(utf-8-validate@5.0.10) - isomorphic-ws@5.0.0(ws@8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10)): dependencies: ws: 8.18.2(bufferutil@4.0.9)(utf-8-validate@5.0.10)