@plasius/graph-contracts
v0.1.1
Published
Shared contracts and ports for the Plasius cached graph platform
Maintainers
Readme
@plasius/graph-contracts
Shared contracts, constants, ports, and runtime validators for the Plasius cached graph platform.
Apache-2.0. ESM + CJS builds. TypeScript types included.
Requirements
- Node.js 24+ (matches
.nvmrcand CI/CD)
Installation
npm install @plasius/graph-contractsExports
import {
DEFAULT_SOFT_TTL_SECONDS,
DEFAULT_HARD_TTL_SECONDS,
SUPPORTED_SCHEMA_VERSIONS,
isGraphQuery,
isDomainEvent,
isWriteCommand,
getSchemaSupportLevel,
isSchemaVersionSupported,
type GraphQuery,
type CacheStore,
type WriteCommand,
} from "@plasius/graph-contracts";Quick Start
import {
isGraphQuery,
type GraphQuery,
DEFAULT_SOFT_TTL_SECONDS,
} from "@plasius/graph-contracts";
const query: GraphQuery = {
traceId: "trace-1",
requests: [{ resolver: "user.profile", key: "user:1" }],
};
if (!isGraphQuery(query)) {
throw new Error("Invalid graph query payload");
}
console.log("softTtlSeconds", DEFAULT_SOFT_TTL_SECONDS);Development
npm run clean
npm install
npm run lint
npm run typecheck
npm run test:coverage
npm run buildContract Compatibility
- Versioning policy:
docs/contract-versioning.md - Compatibility helpers:
SUPPORTED_SCHEMA_VERSIONSgetSchemaSupportLevelisSchemaVersionSupported
- CI compatibility suite:
tests/compatibility.test.ts
Architecture
- Package ADRs:
docs/adrs - Cross-package ADRs:
plasius-ltd-site/docs/adrs/adr-0020toadr-0024
License
Licensed under the Apache-2.0 License.
