@auto-engineer/narrative 0.14.0 → 0.16.0

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 (46) hide show
  1. package/.turbo/turbo-build.log +9 -10
  2. package/CHANGELOG.md +26 -0
  3. package/README.md +151 -99
  4. package/dist/src/commands/export-schema.d.ts.map +1 -1
  5. package/dist/src/commands/export-schema.js +5 -1
  6. package/dist/src/commands/export-schema.js.map +1 -1
  7. package/dist/tsconfig.tsbuildinfo +1 -1
  8. package/package.json +5 -4
  9. package/src/commands/export-schema.ts +5 -1
  10. package/tsconfig.json +1 -1
  11. package/dist/src/fluent-builder.specs.d.ts +0 -2
  12. package/dist/src/fluent-builder.specs.d.ts.map +0 -1
  13. package/dist/src/fluent-builder.specs.js +0 -28
  14. package/dist/src/fluent-builder.specs.js.map +0 -1
  15. package/dist/src/getNarratives.cache.specs.d.ts +0 -2
  16. package/dist/src/getNarratives.cache.specs.d.ts.map +0 -1
  17. package/dist/src/getNarratives.cache.specs.js +0 -234
  18. package/dist/src/getNarratives.cache.specs.js.map +0 -1
  19. package/dist/src/getNarratives.specs.d.ts +0 -2
  20. package/dist/src/getNarratives.specs.d.ts.map +0 -1
  21. package/dist/src/getNarratives.specs.js +0 -1307
  22. package/dist/src/getNarratives.specs.js.map +0 -1
  23. package/dist/src/id/addAutoIds.specs.d.ts +0 -2
  24. package/dist/src/id/addAutoIds.specs.d.ts.map +0 -1
  25. package/dist/src/id/addAutoIds.specs.js +0 -602
  26. package/dist/src/id/addAutoIds.specs.js.map +0 -1
  27. package/dist/src/id/hasAllIds.specs.d.ts +0 -2
  28. package/dist/src/id/hasAllIds.specs.d.ts.map +0 -1
  29. package/dist/src/id/hasAllIds.specs.js +0 -424
  30. package/dist/src/id/hasAllIds.specs.js.map +0 -1
  31. package/dist/src/model-to-narrative.specs.d.ts +0 -2
  32. package/dist/src/model-to-narrative.specs.d.ts.map +0 -1
  33. package/dist/src/model-to-narrative.specs.js +0 -2437
  34. package/dist/src/model-to-narrative.specs.js.map +0 -1
  35. package/dist/src/narrative-context.specs.d.ts +0 -2
  36. package/dist/src/narrative-context.specs.d.ts.map +0 -1
  37. package/dist/src/narrative-context.specs.js +0 -260
  38. package/dist/src/narrative-context.specs.js.map +0 -1
  39. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts +0 -2
  40. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.d.ts.map +0 -1
  41. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js +0 -142
  42. package/dist/src/transformers/model-to-narrative/generators/gwt.specs.js.map +0 -1
  43. package/dist/src/transformers/narrative-to-model/type-inference.specs.d.ts +0 -2
  44. package/dist/src/transformers/narrative-to-model/type-inference.specs.d.ts.map +0 -1
  45. package/dist/src/transformers/narrative-to-model/type-inference.specs.js +0 -177
  46. package/dist/src/transformers/narrative-to-model/type-inference.specs.js.map +0 -1
@@ -1,10 +1,9 @@
1
-
2
- 
3
- > @auto-engineer/narrative@0.14.0 build /Users/sam/WebstormProjects/top/auto-engineer/packages/narrative
4
- > tsx scripts/build.ts
5
-
6
- Running: tsc
7
- Running: tsx ../../scripts/fix-esm-imports.ts
8
- Fixed ESM imports in dist/
9
- No templates directory found, skipping template copying
10
- Build completed successfully
1
+
2
+ > @auto-engineer/narrative@0.16.0 build /home/runner/work/auto-engineer/auto-engineer/packages/narrative
3
+ > tsx scripts/build.ts
4
+
5
+ Running: tsc
6
+ Running: tsx ../../scripts/fix-esm-imports.ts
7
+ Fixed ESM imports in dist/
8
+ No templates directory found, skipping template copying
9
+ Build completed successfully
package/CHANGELOG.md CHANGED
@@ -1,5 +1,31 @@
1
1
  # @auto-engineer/flow
2
2
 
3
+ ## 0.16.0
4
+
5
+ ### Minor Changes
6
+
7
+ - Adds new endpoints for on.auto
8
+
9
+ ### Patch Changes
10
+
11
+ - Updated dependencies []:
12
+ - @auto-engineer/file-store@0.16.0
13
+ - @auto-engineer/id@0.16.0
14
+ - @auto-engineer/message-bus@0.16.0
15
+
16
+ ## 0.15.0
17
+
18
+ ### Minor Changes
19
+
20
+ - version bump
21
+
22
+ ### Patch Changes
23
+
24
+ - Updated dependencies []:
25
+ - @auto-engineer/message-bus@0.15.0
26
+ - @auto-engineer/file-store@0.15.0
27
+ - @auto-engineer/id@0.15.0
28
+
3
29
  ## 0.14.0
4
30
 
5
31
  ### Minor Changes
package/README.md CHANGED
@@ -1,141 +1,193 @@
1
- # @auto-engineer/flow
1
+ # @auto-engineer/narrative
2
2
 
3
- Domain-specific language for building event-driven applications with type-safe schemas and GraphQL API generation. Plugin for the Auto Engineer CLI that enables defining business flows, data transformations, and integrations using TypeScript-based syntax.
3
+ TypeScript DSL for defining business narratives using BDD patterns with Given/When/Then syntax.
4
4
 
5
- ## Installation
5
+ ---
6
6
 
7
- This is a plugin for the Auto Engineer CLI. Install both the CLI and this plugin:
7
+ ## Purpose
8
8
 
9
- ```bash
10
- npm install -g @auto-engineer/cli
11
- npm install @auto-engineer/flow
12
- ```
9
+ Without `@auto-engineer/narrative`, you would have to manually structure behavioral specifications, write boilerplate for command/query definitions, and handle the conversion between specification code and JSON models.
13
10
 
14
- ## Configuration
11
+ This package enables developers to express system behavior through narratives containing slices (commands, queries, reactions, experiences). Each slice supports client and server specifications using Gherkin-style Given/When/Then syntax.
15
12
 
16
- Add this plugin to your `auto.config.ts`:
13
+ ---
17
14
 
18
- ```typescript
19
- export default {
20
- plugins: [
21
- '@auto-engineer/flow',
22
- // ... other plugins
23
- ],
24
- };
15
+ ## Installation
16
+
17
+ ```bash
18
+ pnpm add @auto-engineer/narrative
25
19
  ```
26
20
 
27
- ## Commands
21
+ ## Quick Start
28
22
 
29
- This plugin provides the following commands:
23
+ ```typescript
24
+ import { flow, command, specs, rule, example, type Event, type Command } from '@auto-engineer/narrative';
25
+
26
+ type OrderPlaced = Event<'OrderPlaced', { orderId: string }>;
27
+ type PlaceOrder = Command<'PlaceOrder', { productId: string }>;
28
+
29
+ flow('Orders', () => {
30
+ command('Place order')
31
+ .server(() => {
32
+ specs('Order placement', () => {
33
+ rule('Valid orders are processed', () => {
34
+ example('User places order')
35
+ .when<PlaceOrder>({ productId: 'p-001' })
36
+ .then<OrderPlaced>({ orderId: 'o-001' });
37
+ });
38
+ });
39
+ });
40
+ });
41
+ ```
30
42
 
31
- - `create:example` - Create an example project with Flow
32
- - `export:schema` - Export flow schema to JSON
43
+ ---
33
44
 
34
- ## What is Flow?
45
+ ## How-to Guides
35
46
 
36
- Flow is a declarative language for describing business processes, data flows, and system integrations. It combines:
47
+ ### Define a Command Slice
37
48
 
38
- - Type Safety: Full TypeScript integration with compile-time validation
39
- - Event-Driven Architecture: Built on top of the Emmett event sourcing framework
40
- - GraphQL Integration: Schema generation and resolver creation
41
- - Message Bus Support: Support for inter-service communication
42
- - Flow Orchestration: Define workflows with branching logic and error handling
49
+ ```typescript
50
+ import { flow, command, specs, rule, example } from '@auto-engineer/narrative';
51
+
52
+ flow('Users', () => {
53
+ command('Create user')
54
+ .stream('user-${userId}')
55
+ .server(() => {
56
+ specs('User creation', () => {
57
+ rule('Valid users created', () => {
58
+ example('New user')
59
+ .when({ name: 'John' })
60
+ .then({ userId: 'u-001' });
61
+ });
62
+ });
63
+ });
64
+ });
65
+ ```
43
66
 
44
- ## Key Features
67
+ ### Define a Query Slice
45
68
 
46
- ### Fluent API Design
69
+ ```typescript
70
+ import { flow, query, describe, it, data, source } from '@auto-engineer/narrative';
71
+
72
+ flow('Products', () => {
73
+ query('View products')
74
+ .client(() => {
75
+ describe('Product list', () => {
76
+ it('displays all products');
77
+ });
78
+ })
79
+ .server(() => {
80
+ data([source().state('Products').fromProjection('ProductsProjection', 'id')]);
81
+ });
82
+ });
83
+ ```
47
84
 
48
- Define business flows using chainable API:
85
+ ### Define Data Sinks and Sources
49
86
 
50
87
  ```typescript
51
- import { flow } from '@auto-engineer/flow';
52
-
53
- const orderFlow = flow('place-order')
54
- .input<PlaceOrderCommand>()
55
- .validate(command => /* validation logic */)
56
- .process(async (command, ctx) => {
57
- // Business logic here
58
- return { orderId: generateId(), status: 'confirmed' };
59
- })
60
- .emit<OrderPlaced>()
61
- .build();
88
+ import { flow, command, data, sink, source } from '@auto-engineer/narrative';
89
+
90
+ flow('Payments', () => {
91
+ command('Process payment')
92
+ .server(() => {
93
+ data([
94
+ sink().event('PaymentProcessed').toStream('payment-${paymentId}'),
95
+ source().state('Account').fromProjection('Accounts', 'accountId'),
96
+ ]);
97
+ });
98
+ });
62
99
  ```
63
100
 
64
- ### Schema Generation
65
-
66
- Generate GraphQL schemas from flow definitions:
101
+ ### Load Narratives from File System
67
102
 
68
103
  ```typescript
69
- // Flows are converted to GraphQL mutations and queries
70
- // Input types become GraphQL input types
71
- // Output events become GraphQL object types
104
+ import { getNarratives } from '@auto-engineer/narrative';
105
+ import { NodeFileStore } from '@auto-engineer/file-store';
106
+
107
+ const vfs = new NodeFileStore();
108
+ const result = await getNarratives({ vfs, root: '/path/to/src' });
109
+ const model = result.toModel();
72
110
  ```
73
111
 
74
- ### Integration Support
112
+ ---
75
113
 
76
- Support for external service integrations:
114
+ ## API Reference
115
+
116
+ ### Package Exports
77
117
 
78
118
  ```typescript
79
- const flow = flow('payment-processing')
80
- .integration('stripe', StripePaymentGateway)
81
- .integration('email', EmailService)
82
- .process(async (command, ctx) => {
83
- const payment = await ctx.integrations.stripe.charge(command.amount);
84
- await ctx.integrations.email.sendReceipt(command.email, payment);
85
- return payment;
86
- });
119
+ import {
120
+ flow, narrative,
121
+ command, query, react, experience,
122
+ specs, rule, example, describe, it, should,
123
+ client, server, data,
124
+ sink, source,
125
+ getNarratives, modelToNarrative,
126
+ addAutoIds, hasAllIds,
127
+ gql,
128
+ type Event, type Command, type State,
129
+ } from '@auto-engineer/narrative';
130
+
131
+ import { COMMANDS, exportSchemaCommandHandler } from '@auto-engineer/narrative/node';
87
132
  ```
88
133
 
89
- ### Testing Support
134
+ ### Entry Points
90
135
 
91
- Testing utilities for flow validation:
136
+ | Entry Point | Import Path | Description |
137
+ |-------------|-------------|-------------|
138
+ | Main | `@auto-engineer/narrative` | Core DSL and types |
139
+ | Node | `@auto-engineer/narrative/node` | Command handlers |
92
140
 
93
- ```typescript
94
- import { testFlow } from '@auto-engineer/flow/testing';
141
+ ### Slice Types
95
142
 
96
- describe('order flow', () => {
97
- it('should process valid orders', async () => {
98
- const result = await testFlow(orderFlow)
99
- .withInput({ productId: '123', quantity: 2 })
100
- .expectEvent<OrderPlaced>()
101
- .run();
143
+ | Type | Description | Client | Server |
144
+ |------|-------------|--------|--------|
145
+ | `command` | User actions that modify state | Yes | Yes |
146
+ | `query` | Read operations | Yes | Yes |
147
+ | `react` | Event reactions | No | Yes |
148
+ | `experience` | UI-only behaviors | Yes | No |
102
149
 
103
- expect(result.orderId).toBeDefined();
104
- });
105
- });
106
- ```
150
+ ### Message Types
107
151
 
108
- ## Architecture
109
-
110
- Flow builds on several core concepts:
152
+ ```typescript
153
+ type Event<Type extends string, Data> = { type: Type; data: Data };
154
+ type Command<Type extends string, Data> = { type: Type; data: Data };
155
+ type State<Type extends string, Data> = { type: Type; data: Data };
156
+ ```
111
157
 
112
- - Flows: The main building blocks that define business processes
113
- - Messages: Strongly-typed data structures for communication
114
- - Integrations: External service connectors with retry and error handling
115
- - Context: Runtime environment providing access to integrations and utilities
116
- - Registry: Central repository for flow definitions and metadata
158
+ ---
117
159
 
118
- ## Getting Started
160
+ ## Architecture
119
161
 
120
- 1. Install the plugin (see Installation above)
121
- 2. Create your first flow project:
122
- ```bash
123
- auto create:example
124
- ```
125
- 3. Explore the generated example flows in the `flows/` directory
126
- 4. Define your own business flows using the Flow API
127
- 5. Export your schema for GraphQL integration:
128
- ```bash
129
- auto export:schema
130
- ```
162
+ ```
163
+ src/
164
+ ├── index.ts
165
+ ├── node.ts
166
+ ├── narrative.ts
167
+ ├── fluent-builder.ts
168
+ ├── schema.ts
169
+ ├── types.ts
170
+ ├── data-narrative-builders.ts
171
+ ├── loader/
172
+ ├── transformers/
173
+ ├── id/
174
+ └── commands/
175
+ ```
131
176
 
132
- ## Integration with Auto Engineer
177
+ ### Key Concepts
133
178
 
134
- Flow works with other Auto Engineer plugins:
179
+ - **Narratives**: Business capabilities containing slices
180
+ - **Slices**: Behavioral units (command, query, react, experience)
181
+ - **Specifications**: BDD-style Given/When/Then assertions
182
+ - **Data Flow**: Sinks (outbound) and Sources (inbound)
135
183
 
136
- - **@auto-engineer/server-generator-apollo-emmett**: Generates server infrastructure from Flow schemas
137
- - **@auto-engineer/frontend-generator-react-graphql**: Creates React components from flow-generated GraphQL schemas
138
- - **@auto-engineer/server-implementer**: Implements flow handlers with AI assistance
139
- - **@auto-engineer/information-architect**: Generates information architecture from flow definitions
184
+ ### Dependencies
140
185
 
141
- This plugin-based approach allows building applications from high-level flow definitions to production code.
186
+ | Package | Usage |
187
+ |---------|-------|
188
+ | `@auto-engineer/file-store` | Virtual file system |
189
+ | `@auto-engineer/id` | ID generation |
190
+ | `@auto-engineer/message-bus` | Command/Event types |
191
+ | `zod` | Schema validation |
192
+ | `typescript` | AST parsing |
193
+ | `graphql` | GraphQL query parsing |
@@ -1 +1 @@
1
- {"version":3,"file":"export-schema.d.ts","sourceRoot":"","sources":["../../../src/commands/export-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAwB,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAQ5F,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,cAAc,EACd;IACE,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CACrC,gBAAgB,EAChB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CACF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,KAAK,CACzC,oBAAoB,EACpB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CACF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,uBAAuB,CAAC;AAE/E,eAAO,MAAM,cAAc;;;;;;GAwBzB,CAAC;AAEH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAoExD;AAGD,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"export-schema.d.ts","sourceRoot":"","sources":["../../../src/commands/export-schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAwB,KAAK,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAQ5F,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,cAAc,EACd;IACE,SAAS,EAAE,MAAM,CAAC;CACnB,CACF,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,KAAK,CACrC,gBAAgB,EAChB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CACF,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,KAAK,CACzC,oBAAoB,EACpB;IACE,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;CACf,CACF,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,uBAAuB,CAAC;AAE/E,eAAO,MAAM,cAAc;;;;;;GA4BzB,CAAC;AAEH,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,mBAAmB,GAAG,uBAAuB,CAAC,CAoExD;AAGD,eAAe,cAAc,CAAC"}
@@ -6,11 +6,15 @@ if ('color' in debug && typeof debug === 'object') {
6
6
  }
7
7
  export const commandHandler = defineCommandHandler({
8
8
  name: 'ExportSchema',
9
+ displayName: 'Export Schema',
9
10
  alias: 'export:schema',
10
11
  description: 'Export flow schemas to context directory',
11
12
  category: 'export',
12
13
  icon: 'download',
13
- events: ['SchemaExported', 'SchemaExportFailed'],
14
+ events: [
15
+ { name: 'SchemaExported', displayName: 'Schema Exported' },
16
+ { name: 'SchemaExportFailed', displayName: 'Schema Export Failed' },
17
+ ],
14
18
  fields: {
15
19
  directory: {
16
20
  description: 'Context directory path (defaults to current working directory)',
@@ -1 +1 @@
1
- {"version":3,"file":"export-schema.js","sourceRoot":"","sources":["../../../src/commands/export-schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"export-schema.js","sourceRoot":"","sources":["../../../src/commands/export-schema.ts"],"names":[],"mappings":"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"}