@plumbus/core 0.2.6 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/ai/__tests__/model-pricing.test.js +10 -0
  3. package/dist/ai/__tests__/model-pricing.test.js.map +1 -1
  4. package/dist/ai/index.d.ts +1 -1
  5. package/dist/ai/index.d.ts.map +1 -1
  6. package/dist/ai/index.js +1 -1
  7. package/dist/ai/index.js.map +1 -1
  8. package/dist/ai/model-pricing.d.ts +7 -0
  9. package/dist/ai/model-pricing.d.ts.map +1 -1
  10. package/dist/ai/model-pricing.js +7 -2
  11. package/dist/ai/model-pricing.js.map +1 -1
  12. package/dist/api/__tests__/route-generator.test.js +112 -0
  13. package/dist/api/__tests__/route-generator.test.js.map +1 -1
  14. package/dist/api/route-generator.d.ts.map +1 -1
  15. package/dist/api/route-generator.js +55 -1
  16. package/dist/api/route-generator.js.map +1 -1
  17. package/dist/cli/__tests__/cli.test.js +4 -1
  18. package/dist/cli/__tests__/cli.test.js.map +1 -1
  19. package/dist/cli/__tests__/create.test.js +11 -1
  20. package/dist/cli/__tests__/create.test.js.map +1 -1
  21. package/dist/cli/__tests__/generate.test.js +120 -12
  22. package/dist/cli/__tests__/generate.test.js.map +1 -1
  23. package/dist/cli/__tests__/ui.test.js +15 -1
  24. package/dist/cli/__tests__/ui.test.js.map +1 -1
  25. package/dist/cli/cli.d.ts.map +1 -1
  26. package/dist/cli/cli.js +12 -1
  27. package/dist/cli/cli.js.map +1 -1
  28. package/dist/cli/commands/create.js +2 -2
  29. package/dist/cli/commands/create.js.map +1 -1
  30. package/dist/cli/commands/dev.d.ts.map +1 -1
  31. package/dist/cli/commands/dev.js +26 -0
  32. package/dist/cli/commands/dev.js.map +1 -1
  33. package/dist/cli/commands/generate.d.ts +6 -0
  34. package/dist/cli/commands/generate.d.ts.map +1 -1
  35. package/dist/cli/commands/generate.js +94 -4
  36. package/dist/cli/commands/generate.js.map +1 -1
  37. package/dist/cli/commands/start.d.ts.map +1 -1
  38. package/dist/cli/commands/start.js +26 -0
  39. package/dist/cli/commands/start.js.map +1 -1
  40. package/dist/cli/commands/ui.d.ts +1 -0
  41. package/dist/cli/commands/ui.d.ts.map +1 -1
  42. package/dist/cli/commands/ui.js +41 -5
  43. package/dist/cli/commands/ui.js.map +1 -1
  44. package/dist/data/__tests__/repository.test.js +203 -0
  45. package/dist/data/__tests__/repository.test.js.map +1 -1
  46. package/dist/data/index.d.ts +1 -0
  47. package/dist/data/index.d.ts.map +1 -1
  48. package/dist/data/index.js +2 -0
  49. package/dist/data/index.js.map +1 -1
  50. package/dist/data/repository.d.ts +1 -1
  51. package/dist/data/repository.d.ts.map +1 -1
  52. package/dist/data/repository.js +67 -3
  53. package/dist/data/repository.js.map +1 -1
  54. package/dist/errors/__tests__/errors.test.js +30 -2
  55. package/dist/errors/__tests__/errors.test.js.map +1 -1
  56. package/dist/errors/http.d.ts +3 -3
  57. package/dist/errors/http.d.ts.map +1 -1
  58. package/dist/errors/http.js.map +1 -1
  59. package/dist/errors/index.d.ts +12 -1
  60. package/dist/errors/index.d.ts.map +1 -1
  61. package/dist/errors/index.js +22 -1
  62. package/dist/errors/index.js.map +1 -1
  63. package/dist/execution/capability-executor.d.ts +2 -2
  64. package/dist/execution/capability-executor.d.ts.map +1 -1
  65. package/dist/flows/engine.d.ts.map +1 -1
  66. package/dist/flows/engine.js +24 -2
  67. package/dist/flows/engine.js.map +1 -1
  68. package/dist/index.d.ts +3 -3
  69. package/dist/index.d.ts.map +1 -1
  70. package/dist/index.js +3 -3
  71. package/dist/index.js.map +1 -1
  72. package/dist/server/bootstrap.d.ts +11 -0
  73. package/dist/server/bootstrap.d.ts.map +1 -1
  74. package/dist/server/bootstrap.js +30 -0
  75. package/dist/server/bootstrap.js.map +1 -1
  76. package/dist/testing/__tests__/simulate-flow.test.js +10 -0
  77. package/dist/testing/__tests__/simulate-flow.test.js.map +1 -1
  78. package/dist/testing/context.d.ts.map +1 -1
  79. package/dist/testing/context.js +70 -6
  80. package/dist/testing/context.js.map +1 -1
  81. package/dist/testing/simulate-flow.d.ts.map +1 -1
  82. package/dist/testing/simulate-flow.js +13 -0
  83. package/dist/testing/simulate-flow.js.map +1 -1
  84. package/dist/types/context.d.ts +23 -7
  85. package/dist/types/context.d.ts.map +1 -1
  86. package/dist/types/errors.d.ts +6 -6
  87. package/dist/types/errors.d.ts.map +1 -1
  88. package/dist/types/index.d.ts +3 -3
  89. package/dist/types/index.d.ts.map +1 -1
  90. package/dist/types/index.js.map +1 -1
  91. package/dist/types/registry.d.ts +6 -0
  92. package/dist/types/registry.d.ts.map +1 -1
  93. package/dist/types/registry.js +3 -1
  94. package/dist/types/registry.js.map +1 -1
  95. package/instructions/capabilities.md +4 -0
  96. package/instructions/cli.md +2 -0
  97. package/instructions/framework.md +49 -0
  98. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"simulate-flow.js","sourceRoot":"","sources":["../../src/testing/simulate-flow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulate-flow.js","sourceRoot":"","sources":["../../src/testing/simulate-flow.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,35 @@
1
1
  import type { z } from 'zod';
2
2
  import type { AuditService } from './audit.js';
3
3
  import type { ErrorService } from './errors.js';
4
- import type { RegisteredEntities, RegisteredEventName, RegisteredFlowName } from './registry.js';
4
+ import type { RegisteredAppConfig, RegisteredEntities, RegisteredEventName, RegisteredEventPayloadMap, RegisteredFlowName } from './registry.js';
5
5
  import type { AuthContext } from './security.js';
6
6
  import type { TranslationService } from './translation.js';
7
- export interface Repository<T = Record<string, any>> {
7
+ export interface QueryOptions {
8
+ /** Max rows to return (1–100). Omit for no limit. */
9
+ limit?: number;
10
+ /** Number of rows to skip (default 0) */
11
+ offset?: number;
12
+ /** Column name to sort by — validated against entity table columns */
13
+ orderBy?: string;
14
+ /** Sort direction (default 'desc') */
15
+ orderDir?: 'asc' | 'desc';
16
+ /** Date range filters: { columnName: { gte?: Date, lte?: Date } } */
17
+ dateFilters?: Record<string, {
18
+ gte?: Date;
19
+ lte?: Date;
20
+ }>;
21
+ }
22
+ export interface Repository<T = Record<string, any>, TCreate = Record<string, any>, TUpdate = Record<string, any>> {
8
23
  findById(id: string): Promise<T | null>;
9
- create(data: Record<string, any>): Promise<T>;
10
- update(id: string, updates: Record<string, any>): Promise<T>;
24
+ create(data: TCreate): Promise<T>;
25
+ update(id: string, updates: TUpdate): Promise<T>;
11
26
  delete(id: string): Promise<void>;
12
- findMany(query?: Record<string, any>): Promise<T[]>;
27
+ findMany(query?: Partial<T>, options?: QueryOptions): Promise<T[]>;
28
+ count(query?: Partial<T>, options?: Pick<QueryOptions, 'dateFilters'>): Promise<number>;
13
29
  }
14
30
  export type DataService = RegisteredEntities;
15
31
  export interface EventService {
16
- emit(eventName: RegisteredEventName, payload: unknown): Promise<void>;
32
+ emit<E extends RegisteredEventName>(eventName: E, payload: RegisteredEventPayloadMap[E]): Promise<void>;
17
33
  }
18
34
  export interface FlowExecution {
19
35
  id: string;
@@ -96,7 +112,7 @@ export interface LoggerService {
96
112
  export interface TimeService {
97
113
  now(): Date;
98
114
  }
99
- export type ConfigService = Record<string, unknown>;
115
+ export type ConfigService = RegisteredAppConfig;
100
116
  export interface SecurityService {
101
117
  /** Check if the current user has a specific role */
102
118
  hasRole(role: string): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
1
  import type { ErrorCode } from './enums.js';
2
- export interface PlumbusError {
2
+ export interface PlumbusErrorLike {
3
3
  code: ErrorCode;
4
4
  message: string;
5
5
  metadata?: Record<string, unknown>;
6
6
  }
7
7
  export interface ErrorService {
8
- validation(message: string, metadata?: Record<string, unknown>): PlumbusError;
9
- notFound(message: string, metadata?: Record<string, unknown>): PlumbusError;
10
- forbidden(message: string, metadata?: Record<string, unknown>): PlumbusError;
11
- conflict(message: string, metadata?: Record<string, unknown>): PlumbusError;
12
- internal(message: string, metadata?: Record<string, unknown>): PlumbusError;
8
+ validation(message: string, metadata?: Record<string, unknown>): PlumbusErrorLike;
9
+ notFound(message: string, metadata?: Record<string, unknown>): PlumbusErrorLike;
10
+ forbidden(message: string, metadata?: Record<string, unknown>): PlumbusErrorLike;
11
+ conflict(message: string, metadata?: Record<string, unknown>): PlumbusErrorLike;
12
+ internal(message: string, metadata?: Record<string, unknown>): PlumbusErrorLike;
13
13
  }
14
14
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAGD,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;IAC9E,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;IAC5E,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;IAC7E,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;IAC5E,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,YAAY,CAAC;CAC7E"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC;AAKD,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAAC;IAClF,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAAC;IAChF,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAAC;IACjF,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAAC;IAChF,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAAC;CACjF"}
@@ -1,16 +1,16 @@
1
1
  export type { AuditRecord, AuditService } from './audit.js';
2
2
  export type { CapabilityAuditConfig, CapabilityContract, CapabilityEffects, CapabilityExplanationConfig, } from './capability.js';
3
3
  export type { AIProviderConfig, AIProvidersConfig, AuthAdapterConfig, DatabaseConfig, Environment, PlumbusConfig, PromptModelOverride, QueueConfig, } from './config.js';
4
- export type { AIDocument, AIGenerateResult, AIService, AIStreamEvent, AITokenUsage, ConfigService, DataService, EventService, ExecutionContext, FlowExecution, FlowService, LoggerService, Repository, RequestMeta, SecurityService, TimeService, } from './context.js';
4
+ export type { AIDocument, AIGenerateResult, AIService, AIStreamEvent, AITokenUsage, ConfigService, DataService, EventService, ExecutionContext, FlowExecution, FlowService, LoggerService, QueryOptions, Repository, RequestMeta, SecurityService, TimeService, } from './context.js';
5
5
  export type { EntityDefinition, EntityRetention } from './entity.js';
6
6
  export { BackoffStrategy, CapabilityKind, ErrorCode, FieldClassification, FlowStepType, GovernanceSeverity, PolicyProfile, RelationType, RuleStatus, } from './enums.js';
7
- export type { ErrorService, PlumbusError } from './errors.js';
7
+ export type { ErrorService, PlumbusErrorLike } from './errors.js';
8
8
  export type { EventDefinition, EventEnvelope } from './event.js';
9
9
  export type { BaseFieldOptions, BooleanFieldDescriptor, EnumFieldDescriptor, FieldDescriptor, IdFieldDescriptor, JsonFieldDescriptor, NumberFieldDescriptor, RelationFieldDescriptor, StringFieldDescriptor, TimestampFieldDescriptor, } from './fields.js';
10
10
  export type { CapabilityStep, ConditionalStep, DelayStep, EventEmitStep, FlowDefinition, FlowRetryPolicy, FlowSchedule, FlowStep, FlowTrigger, ParallelStep, WaitStep, } from './flow.js';
11
11
  export type { GovernanceOverride, GovernanceSignal, PolicyReport, RuleEvaluation, } from './governance.js';
12
12
  export type { ModelConfig, PromptDefinition } from './prompt.js';
13
- export type { PlumbusRegistry, RegisteredCapabilityName, RegisteredEntities, RegisteredEventName, RegisteredFlowName, } from './registry.js';
13
+ export type { PlumbusRegistry, RegisteredAppConfig, RegisteredCapabilityName, RegisteredEntities, RegisteredEventName, RegisteredEventPayloadMap, RegisteredFlowName, } from './registry.js';
14
14
  export type { AccessPolicy, AuthContext } from './security.js';
15
15
  export type { MessageCatalog, TranslationDefinition, TranslationResolver, TranslationService, } from './translation.js';
16
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAMA,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,YAAY,EACV,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,EACb,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAErE,OAAO,EACL,eAAe,EACf,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE9D,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEjE,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,cAAc,EACd,eAAe,EACf,SAAS,EACT,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,QAAQ,GACT,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjE,YAAY,EACV,eAAe,EACf,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE/D,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAMA,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE5D,YAAY,EACV,qBAAqB,EACrB,kBAAkB,EAClB,iBAAiB,EACjB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,cAAc,EACd,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,WAAW,GACZ,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,aAAa,EACb,WAAW,EACX,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,WAAW,EACX,aAAa,EACb,YAAY,EACZ,UAAU,EACV,WAAW,EACX,eAAe,EACf,WAAW,GACZ,MAAM,cAAc,CAAC;AAEtB,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAErE,OAAO,EACL,eAAe,EACf,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAElE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEjE,YAAY,EACV,gBAAgB,EAChB,sBAAsB,EACtB,mBAAmB,EACnB,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,qBAAqB,EACrB,wBAAwB,GACzB,MAAM,aAAa,CAAC;AAErB,YAAY,EACV,cAAc,EACd,eAAe,EACf,SAAS,EACT,aAAa,EACb,cAAc,EACd,eAAe,EACf,YAAY,EACZ,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,QAAQ,GACT,MAAM,WAAW,CAAC;AAEnB,YAAY,EACV,kBAAkB,EAClB,gBAAgB,EAChB,YAAY,EACZ,cAAc,GACf,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEjE,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,wBAAwB,EACxB,kBAAkB,EAClB,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE/D,YAAY,EACV,cAAc,EACd,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,kBAAkB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,iEAAiE;AACjE,uEAAuE;AACvE,8EAA8E;AA2C9E,0BAA0B;AAC1B,OAAO,EACL,eAAe,EACf,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,qBAAqB;AACrB,iEAAiE;AACjE,uEAAuE;AACvE,8EAA8E;AA4C9E,0BAA0B;AAC1B,OAAO,EACL,eAAe,EACf,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,YAAY,EACZ,UAAU,GACX,MAAM,YAAY,CAAC"}
@@ -13,4 +13,10 @@ export type RegisteredFlowName = PlumbusRegistry extends {
13
13
  export type RegisteredEntities = PlumbusRegistry extends {
14
14
  entities: infer E extends Record<string, Repository>;
15
15
  } ? E : Record<string, Repository>;
16
+ export type RegisteredEventPayloadMap = PlumbusRegistry extends {
17
+ eventPayloads: infer M extends Record<string, unknown>;
18
+ } ? M : Record<string, unknown>;
19
+ export type RegisteredAppConfig = PlumbusRegistry extends {
20
+ appConfig: infer C extends Record<string, unknown>;
21
+ } ? C : Record<string, unknown>;
16
22
  //# sourceMappingURL=registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,WAAW,eAAe;CAAG;AAMnC,MAAM,MAAM,wBAAwB,GAAG,eAAe,SAAS;IAC7D,cAAc,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CACxC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,eAAe,SAAS;IACxD,SAAS,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CACnC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,eAAe,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CAClC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,eAAe,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACtD,GACG,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAG/C,MAAM,WAAW,eAAe;CAAG;AAMnC,MAAM,MAAM,wBAAwB,GAAG,eAAe,SAAS;IAC7D,cAAc,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CACxC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,eAAe,SAAS;IACxD,SAAS,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CACnC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,eAAe,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC;CAClC,GACG,CAAC,GACD,MAAM,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,eAAe,SAAS;IACvD,QAAQ,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;CACtD,GACG,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;AAE/B,MAAM,MAAM,yBAAyB,GAAG,eAAe,SAAS;IAC9D,aAAa,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACxD,GACG,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG,eAAe,SAAS;IACxD,SAAS,EAAE,MAAM,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpD,GACG,CAAC,GACD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC"}
@@ -6,8 +6,10 @@
6
6
  // interface PlumbusRegistry {
7
7
  // capabilityName: "getInvoice" | "createOrder";
8
8
  // eventName: "user.created" | "order.completed";
9
+ // eventPayloads: { "user.created": { userId: string }; "order.completed": { orderId: string } };
9
10
  // flowName: "onboardUser" | "processOrder";
10
- // entities: { User: Repository<UserRecord>; Order: Repository<OrderRecord> };
11
+ // entities: { User: Repository<UserRecord, UserCreateInput, UserUpdateInput>; ... };
12
+ // appConfig: { featureFlags: { newCheckout: boolean } };
11
13
  // }
12
14
  // }
13
15
  //
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,iFAAiF;AACjF,sEAAsE;AACtE,EAAE;AACF,qCAAqC;AACrC,kCAAkC;AAClC,sDAAsD;AACtD,uDAAuD;AACvD,kDAAkD;AAClD,oFAAoF;AACpF,QAAQ;AACR,MAAM;AACN,EAAE;AACF,6EAA6E;AAC7E,qFAAqF"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/types/registry.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,iFAAiF;AACjF,sEAAsE;AACtE,EAAE;AACF,qCAAqC;AACrC,kCAAkC;AAClC,sDAAsD;AACtD,uDAAuD;AACvD,uGAAuG;AACvG,kDAAkD;AAClD,2FAA2F;AAC3F,+DAA+D;AAC/D,QAAQ;AACR,MAAM;AACN,EAAE;AACF,6EAA6E;AAC7E,qFAAqF"}
@@ -140,6 +140,10 @@ These map to HTTP status codes: 400, 404, 403, 409, 500.
140
140
 
141
141
  These are the **only** structured error types. If you need a custom error, use `ctx.errors.internal()` with a descriptive message.
142
142
 
143
+ Errors are `PlumbusError` instances (extends `Error`) with `code`, `message`, and optional `metadata`. They serialize to JSON via `toJSON()` and can be detected with `isPlumbusError()` (supports both `instanceof` and duck-type checks for cross-version compatibility).
144
+
145
+ **Do not** use `throw new Error(...)` in capability handlers — always use `ctx.errors.*()` for proper HTTP status mapping and structured error responses.
146
+
143
147
  ## Job Capabilities
144
148
 
145
149
  Capabilities with `kind: "job"` are for long-running operations. They return immediately with a job handle, and the work executes asynchronously.
@@ -166,3 +166,5 @@ export default async function (ctx: { sql: any; args: string[] }) {
166
166
  - **Scaffolded files have TODOs**: After scaffolding, open the generated file and replace `// TODO` sections with your implementation.
167
167
  - **`.plumbus/` is generated**: The `.plumbus/` directory contains auto-generated files. Don't edit them manually — they are regenerated by `plumbus generate`.
168
168
  - **Use the framework's `define*()` functions**: Never create primitives by hand. Use the CLI to scaffold, then fill in the contracts using `defineEntity()`, `defineCapability()`, `defineFlow()`, `defineEvent()`, `definePrompt()`.
169
+ - **`plumbus ui generate` is safe to re-run**: It only regenerates contract-derived data files (`lib/client.ts`, `hooks/hooks.ts`, `lib/auth.ts`, `lib/form-hints.ts`, i18n). It never touches custom pages.
170
+ - **`plumbus ui nextjs` protects existing files**: Scaffold files (`page.tsx`, `layout.tsx`, `globals.css`, login, signup, etc.) are skipped if they already exist. Only contract-derived module files are overwritten. Use `--force` to overwrite scaffold files.
@@ -105,3 +105,52 @@ The framework provides common dependencies — **consumer apps must NOT install
105
105
  | Watch mode | `plumbus test --watch` |
106
106
  | Run e2e tests | `plumbus test --config frontend/e2e/vitest.config.e2e.ts` |
107
107
  | Dev server | `plumbus dev` |
108
+
109
+ ## Server Extensions (`app/server.ts`)
110
+
111
+ The optional `app/server.ts` file exports hooks that customize server behavior. The framework auto-discovers this file on `plumbus dev` and `plumbus start`.
112
+
113
+ ### Available Hooks
114
+
115
+ | Hook | When it fires | Use for |
116
+ |------|--------------|---------|
117
+ | `onRoutesRegistered` | After capability routes are registered | Adding custom routes (e.g. streaming endpoints) |
118
+ | `onCapabilityError` | After a capability returns a non-success result | Logging capability failures to a system log table |
119
+ | `onFlowError` | After a flow fails permanently (retries exhausted) | Logging flow failures to a system log table |
120
+ | `onProcessError` | On uncaught exceptions, unhandled rejections, and Fastify-level errors | Logging process-level crashes that bypass capability/flow hooks |
121
+ | `resolveAiOverrides` | Before each AI call | Dynamic model/provider configuration from DB |
122
+
123
+ ### Error Capture Coverage
124
+
125
+ The framework provides hooks for **every error category**:
126
+
127
+ | Error Type | Hook | Source Field |
128
+ |------------|------|-------------|
129
+ | Capability failure (handler throw, validation, access) | `onCapabilityError` | capability name, domain, error code |
130
+ | Flow permanent failure (retries exhausted) | `onFlowError` | flow name, step, execution ID |
131
+ | Uncaught exception (process crash) | `onProcessError` | `source: 'uncaughtException'` |
132
+ | Unhandled promise rejection | `onProcessError` | `source: 'unhandledRejection'` |
133
+ | Fastify request error (malformed request, timeout) | `onProcessError` | `source: 'fastify'` |
134
+
135
+ ### Example: Full Error Logging
136
+
137
+ ```ts
138
+ import type { ServerConfig } from '@plumbus/core';
139
+
140
+ // Capability errors
141
+ export const onCapabilityError: NonNullable<ServerConfig['onCapabilityError']> = async (info) => {
142
+ await db.insert({ level: 'error', message: `[${info.capabilityName}] ${info.errorMessage}`, source: 'backend' });
143
+ };
144
+
145
+ // Flow errors
146
+ export const onFlowError = async (info) => {
147
+ await db.insert({ level: 'error', message: `[flow:${info.flowName}] ${info.error}`, source: 'flow-engine' });
148
+ };
149
+
150
+ // Process-level errors (uncaught exceptions, unhandled rejections, Fastify errors)
151
+ export const onProcessError: NonNullable<ServerConfig['onProcessError']> = async (info) => {
152
+ await db.insert({ level: 'error', message: `[${info.source}] ${info.message}`, stack: info.stack, source: 'backend' });
153
+ };
154
+ ```
155
+
156
+ All hooks are fire-and-forget — exceptions inside hooks are caught and swallowed to prevent logging from breaking the application.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plumbus/core",
3
- "version": "0.2.6",
3
+ "version": "0.2.7",
4
4
  "description": "Plumbus framework core — types, SDK, runtime, CLI, test utilities",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -50,6 +50,7 @@
50
50
  "drizzle-kit": "^0.31.9",
51
51
  "drizzle-orm": "^0.45.1",
52
52
  "fastify": "^5.8.2",
53
+ "jsonc-parser": "^3.3.1",
53
54
  "playwright": "^1.52.0",
54
55
  "postgres": "^3.4.8",
55
56
  "tsx": "^4.19.0",