Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .changeset/email-service-core-service-name-jsdoc.md
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
---
"@objectstack/spec": patch
---

fix(spec): correct false "Aligned with CoreServiceName '…'" JSDoc claims across `packages/spec/src/contracts/*.ts` — `email-service.ts` now names the real `'email'` runtime slot registered by `@objectstack/plugin-email` (not a `CoreServiceName` member; subsumed under `'notification'`), and `export-service.ts` / `seed-loader-service.ts` now state plainly that they have no evidenced `CoreServiceName` slot or registration binding (`seed-loader-service.ts`'s companion "SeedLoaderProtocol in data/seed-loader.zod.ts" claim was also fabricated — no such export exists). The other 13 template instances were checked against `CoreServiceName` and left byte-identical; they are true. Comment-only; accept/reject behaviour is unchanged (#9752)
4 changes: 3 additions & 1 deletion packages/spec/src/contracts/email-service.ts
Original file line numberDiff line numberDiff line change
Expand Up@@ -8,7 +8,9 @@
* `@objectstack/plugin-email`; integrations (nodemailer, third-party
* SDKs) plug in as an `IEmailTransport`.
*
* Aligned with CoreServiceName 'email' in core-services.zod.ts.
* Registered as runtime service slot 'email' by `@objectstack/plugin-email`
* (`ctx.registerService('email', ...)`). Not a `CoreServiceName` member
* itself — email delivery is subsumed under the 'notification' core service.
*
* Follows Dependency Inversion Principle - plugins depend on this
* interface, not on concrete email service implementations.
Expand Down
4 changes: 3 additions & 1 deletion packages/spec/src/contracts/export-service.ts
Original file line numberDiff line numberDiff line change
Expand Up@@ -11,7 +11,9 @@
* Follows Dependency Inversion Principle - plugins depend on this interface,
* not on concrete export service implementations.
*
* Aligned with CoreServiceName 'export' in core-services.zod.ts.
* Not a `CoreServiceName` member and not a registered runtime service
* slot — `IExportService` has no evidenced provider binding (see
* core-service-contracts.ts's evidence-bar note).
*/

import type {
Expand Down
7 changes: 6 additions & 1 deletion packages/spec/src/contracts/seed-loader-service.ts
Original file line numberDiff line numberDiff line change
Expand Up@@ -24,7 +24,12 @@ import type { Seed } from '../data/seed.zod.js';
* - **ServiceNow**: Sys ID and display value mapping during import
* - **Airtable**: Linked record resolution via display names
*
* Aligned with CoreServiceName 'seed-loader' and SeedLoaderProtocol in data/seed-loader.zod.ts.
* Not a `CoreServiceName` member and not a registered runtime service slot
* (no `SeedLoaderProtocol` export exists in data/seed-loader.zod.ts either —
* the request/result shapes there are `SeedLoaderRequestSchema` /
* `SeedLoaderResultSchema`). `metadata-protocol`'s `SeedLoaderService`
* implements this contract directly, constructed rather than registered
* via `ctx.registerService`.
*/
export interface ISeedLoaderService {
/**
Expand Down
Loading