@elaraai/e3-types 0.0.2-beta.8 → 1.0.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 (69) hide show
  1. package/.turbo/turbo-build.log +4 -0
  2. package/CLA.md +26 -0
  3. package/CLAUDE.md +11 -0
  4. package/CONTRIBUTING.md +28 -0
  5. package/LICENSE.md +1 -1
  6. package/README.md +56 -17
  7. package/dist/src/api.d.ts +1131 -0
  8. package/dist/src/api.d.ts.map +1 -0
  9. package/dist/src/api.js +652 -0
  10. package/dist/src/api.js.map +1 -0
  11. package/dist/src/constants.d.ts +12 -0
  12. package/dist/src/constants.d.ts.map +1 -0
  13. package/dist/src/constants.js +12 -0
  14. package/dist/src/constants.js.map +1 -0
  15. package/dist/src/dataflow.d.ts +574 -0
  16. package/dist/src/dataflow.d.ts.map +1 -0
  17. package/dist/src/dataflow.js +366 -0
  18. package/dist/src/dataflow.js.map +1 -0
  19. package/dist/src/dataset-ref.d.ts +86 -0
  20. package/dist/src/dataset-ref.d.ts.map +1 -0
  21. package/dist/src/dataset-ref.js +82 -0
  22. package/dist/src/dataset-ref.js.map +1 -0
  23. package/dist/src/dataset.d.ts +4 -4
  24. package/dist/src/execution.d.ts +29 -21
  25. package/dist/src/execution.d.ts.map +1 -1
  26. package/dist/src/execution.js +8 -0
  27. package/dist/src/execution.js.map +1 -1
  28. package/dist/src/index.d.ts +7 -1
  29. package/dist/src/index.d.ts.map +1 -1
  30. package/dist/src/index.js +39 -1
  31. package/dist/src/index.js.map +1 -1
  32. package/dist/src/lock.d.ts +85 -0
  33. package/dist/src/lock.d.ts.map +1 -0
  34. package/dist/src/lock.js +71 -0
  35. package/dist/src/lock.js.map +1 -0
  36. package/dist/src/package.d.ts +253 -134
  37. package/dist/src/package.d.ts.map +1 -1
  38. package/dist/src/package.js +53 -23
  39. package/dist/src/package.js.map +1 -1
  40. package/dist/src/structure.d.ts +99 -73
  41. package/dist/src/structure.d.ts.map +1 -1
  42. package/dist/src/structure.js +8 -3
  43. package/dist/src/structure.js.map +1 -1
  44. package/dist/src/task.d.ts +10 -6
  45. package/dist/src/task.d.ts.map +1 -1
  46. package/dist/src/task.js +5 -1
  47. package/dist/src/task.js.map +1 -1
  48. package/dist/src/transfer.d.ts +52 -0
  49. package/dist/src/transfer.d.ts.map +1 -0
  50. package/dist/src/transfer.js +49 -0
  51. package/dist/src/transfer.js.map +1 -0
  52. package/dist/src/workspace.d.ts +7 -9
  53. package/dist/src/workspace.d.ts.map +1 -1
  54. package/dist/src/workspace.js +3 -5
  55. package/dist/src/workspace.js.map +1 -1
  56. package/package.json +11 -11
  57. package/src/api.ts +763 -0
  58. package/src/constants.ts +12 -0
  59. package/src/dataflow.ts +427 -0
  60. package/src/dataset-ref.ts +91 -0
  61. package/src/execution.ts +8 -0
  62. package/src/index.ts +183 -0
  63. package/src/lock.ts +90 -0
  64. package/src/package.ts +72 -23
  65. package/src/structure.ts +8 -3
  66. package/src/task.ts +5 -1
  67. package/src/transfer.ts +56 -0
  68. package/src/workspace.ts +3 -5
  69. package/tsconfig.json +1 -2
@@ -0,0 +1,4 @@
1
+
2
+ > @elaraai/e3-types@0.0.2-beta.54 build /home/crambelsoupy/src/east-workspace/libs/e3/packages/e3-types
3
+ > tsc --build
4
+
package/CLA.md ADDED
@@ -0,0 +1,26 @@
1
+ # Contributor License Agreement
2
+
3
+ This Contributor License Agreement ("Agreement") is entered into between Elara AI Pty Ltd ("Company") and you (the "Contributor").
4
+
5
+ ## Grant of Copyright License
6
+
7
+ You hereby grant to the Company and to recipients of software distributed by the Company a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, distribute, and use Your Contributions and such derivative works.
8
+
9
+ ## Grant of Patent License
10
+
11
+ You hereby grant to the Company and to recipients of software distributed by the Company a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer Your Contributions.
12
+
13
+ ## Relicensing Rights
14
+
15
+ You grant the Company the right to license Your Contributions under any license terms, including but not limited to commercial licenses, in addition to the open source license under which the project is distributed.
16
+
17
+ ## Your Representations
18
+
19
+ You represent that:
20
+ - You are legally entitled to grant the above licenses
21
+ - Each of Your Contributions is Your original creation
22
+ - Your Contribution submissions include complete details of any third-party license or other restriction of which you are aware
23
+
24
+ ## Agreement
25
+
26
+ By signing this Agreement through CLA Assistant or by submitting a Contribution, you accept and agree to the terms of this Agreement.
package/CLAUDE.md ADDED
@@ -0,0 +1,11 @@
1
+ # e3-types
2
+
3
+ Shared East / TypeScript type definitions for e3: API wire types,
4
+ dataset refs, package objects, execution state. Imported by `e3`,
5
+ `e3-core`, `e3-api-client`, `e3-api-server` so they speak a single
6
+ language.
7
+
8
+ ## See also
9
+
10
+ - [`../../CLAUDE.md`](../../CLAUDE.md) — e3 lib-level overview.
11
+ - [`../e3-core/CLAUDE.md`](../e3-core/CLAUDE.md) — primary consumer.
@@ -0,0 +1,28 @@
1
+ # Contributing to e3-types
2
+
3
+ Thank you for your interest in contributing! We welcome contributions from the community.
4
+
5
+ ## Contributor License Agreement (CLA)
6
+
7
+ Before we can accept your contribution, you must sign our Contributor License Agreement (CLA). This agreement gives Elara AI Pty Ltd the right to use and relicense your contributions, including under commercial licenses, while you retain ownership of your contribution.
8
+
9
+ **Why do we require a CLA?**
10
+ This project is dual-licensed under AGPL-3.0 and commercial licenses. The CLA allows us to offer commercial licenses to users who wish to use this software in proprietary applications.
11
+
12
+ ### Signing the CLA
13
+
14
+ When you submit your first pull request, the CLA Assistant bot will automatically comment on your PR with a link to sign the CLA electronically. It only takes a minute, and you'll only need to sign it once.
15
+
16
+ ## Contributing Process
17
+
18
+ 1. Fork the [east-workspace monorepo](https://github.com/elaraai/east-workspace)
19
+ 2. Create a feature branch (`git checkout -b feature/amazing-feature`)
20
+ 3. Make your changes
21
+ 4. Commit your changes (`git commit -m 'Add amazing feature'`)
22
+ 5. Push to the branch (`git push origin feature/amazing-feature`)
23
+ 6. Open a Pull Request
24
+ 7. Sign the CLA when the bot prompts you
25
+
26
+ ## Questions?
27
+
28
+ Contact us at support@elara.ai
package/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  Copyright (c) 2025 Elara AI Pty Ltd
2
2
 
3
- # Dual License
3
+ # Dual License — AGPL-3.0 / Commercial
4
4
 
5
5
  This software is available under two licenses. You may choose which license applies to your use:
6
6
 
package/README.md CHANGED
@@ -11,46 +11,81 @@ npm install @elaraai/e3-types
11
11
  ## Types
12
12
 
13
13
  - **Repository** - Repository configuration and paths
14
- - **Commit** - Task commit types (new, done, error)
15
- - **Task** - Task definition and state
16
14
  - **Package** - Package manifest and metadata
17
15
  - **Dataset** - Dataset schemas and paths
18
- - **Dataflow** - Dataflow definitions
16
+ - **Task** - Task definition and configuration
17
+ - **Dataflow** - Dataflow graph and execution state
18
+ - `TaskStateType` - Individual task execution state
19
+ - `DataflowGraphType` - Task dependency graph
20
+ - `ExecutionEventType` - Execution progress events
21
+ - `DataflowExecutionStateType` - Full execution state
19
22
  - **Runner** - Runner configuration
20
23
 
21
24
 
25
+ ## Claude Code plugin
26
+
27
+ The East ecosystem also ships a [Claude Code](https://claude.com/claude-code) plugin — East language skills, example search, and preemptive diagnostics for East code — installed separately from the `elaraai` marketplace:
28
+
29
+ ```text
30
+ # Inside Claude Code
31
+ /plugin marketplace add elaraai/east-workspace
32
+ /plugin install east@elaraai
33
+ ```
34
+
35
+ ```bash
36
+ # From a terminal
37
+ claude plugin marketplace add elaraai/east-workspace
38
+ claude plugin install east@elaraai
39
+ ```
40
+
22
41
  ## License
23
42
 
24
43
  Dual AGPL-3.0 / Commercial. See [LICENSE.md](./LICENSE.md).
25
44
 
26
45
  ### Ecosystem
27
46
 
28
- - **[East Node](https://github.com/elaraai/east-node)**: Node.js platform functions for I/O, databases, and system operations. Connect East programs to filesystems, SQL/NoSQL databases, cloud storage, and network services.
29
- - [@elaraai/east-node-std](https://www.npmjs.com/package/@elaraai/east-node-std): Filesystem, console, HTTP fetch, crypto, random distributions, timestamps
30
- - [@elaraai/east-node-io](https://www.npmjs.com/package/@elaraai/east-node-io): SQLite, PostgreSQL, MySQL, MongoDB, S3, FTP, SFTP
47
+ - **[East](https://github.com/elaraai/east-workspace/tree/main/libs/east)**: Statically typed, expression-based language with serializable IR. Run portable logic across TypeScript, Python, C, and other runtimes.
48
+ - [@elaraai/east](https://www.npmjs.com/package/@elaraai/east): Core language SDK with type system, expressions, and reference JS compiler
49
+
50
+ - **[East Node](https://github.com/elaraai/east-workspace/tree/main/libs/east-node)**: Node.js platform functions for I/O, databases, and system operations.
51
+ - [@elaraai/east-node-std](https://www.npmjs.com/package/@elaraai/east-node-std): Console, FileSystem, Fetch, Crypto, Time, Path, Random
52
+ - [@elaraai/east-node-io](https://www.npmjs.com/package/@elaraai/east-node-io): SQLite, PostgreSQL, MySQL, MongoDB, Redis, S3, FTP, SFTP, XLSX, XML, compression
31
53
  - [@elaraai/east-node-cli](https://www.npmjs.com/package/@elaraai/east-node-cli): CLI for running East IR programs in Node.js
32
54
 
33
- - **[East Python](https://github.com/elaraai/east-py)**: Python runtime and platform functions for data science and machine learning. Execute East programs with access to optimization solvers, gradient boosting, neural networks, and model explainability.
34
- - [@elaraai/east-py-datascience](https://www.npmjs.com/package/@elaraai/east-py-datascience): TypeScript types for optimization, gradient boosting, neural networks, explainability
55
+ - **[East C](https://github.com/elaraai/east-workspace/tree/main/libs/east-c)**: C11 native runtime for executing East IR. Tarballed for `linux-x64` and `linux-arm64`, attached to each GitHub Release.
56
+ - `east-c`: Core runtime type system, IR interpreter, 200+ builtins, serialization (Beast2, JSON, CSV, East text)
57
+ - `east-c-std`: Console, FileSystem, Fetch, Crypto, Time, Path, Random
58
+ - `east-c-cli`: CLI for running East IR programs natively
59
+
60
+ - **[East Python](https://github.com/elaraai/east-workspace/tree/main/libs/east-py)**: Python runtime, standard platform, I/O, and data-science platform functions. Published to PyPI.
61
+ - [east-py](https://pypi.org/project/east-py/): Core Python runtime — type system, IR compiler, 212+ builtins, Cython-accelerated hot paths
62
+ - [east-py-std](https://pypi.org/project/east-py-std/): Console, FileSystem, Fetch, Crypto, Time, Path, Random
63
+ - [east-py-io](https://pypi.org/project/east-py-io/): SQLite, PostgreSQL, MySQL, MongoDB, Redis, S3, FTP, SFTP, XLSX, XML, compression
64
+ - [east-py-cli](https://pypi.org/project/east-py-cli/): CLI for running East IR programs in Python
65
+ - [east-py-datascience](https://pypi.org/project/east-py-datascience/) (PyPI) + [@elaraai/east-py-datascience](https://www.npmjs.com/package/@elaraai/east-py-datascience) (npm): Optimization (MADS, Optuna, ALNS, GoogleOR), ML (XGBoost, LightGBM, NGBoost, PyTorch, Lightning, GP), Bayesian inference (PyMC), explainability (SHAP), conformal prediction (MAPIE)
35
66
 
36
- - **[East UI](https://github.com/elaraai/east-ui)**: East types and expressions for building dashboards and interactive layouts. Define UIs as data structures that render consistently across React, web, and other environments.
67
+ - **[East UI](https://github.com/elaraai/east-workspace/tree/main/libs/east-ui)**: Typed UI component definitions and React renderer, plus VS Code preview.
37
68
  - [@elaraai/east-ui](https://www.npmjs.com/package/@elaraai/east-ui): 50+ typed UI components for layouts, forms, charts, tables, dialogs
38
- - [@elaraai/east-ui-components](https://www.npmjs.com/package/@elaraai/east-ui-components): React renderer with Chakra UI styling
69
+ - [@elaraai/east-ui-components](https://www.npmjs.com/package/@elaraai/east-ui-components): React renderer with Chakra UI v3 styling
70
+ - [@elaraai/e3-ui](https://www.npmjs.com/package/@elaraai/e3-ui): e3 + UI bridge — Data bindings, `e3.ui()` task, manifest
71
+ - [@elaraai/e3-ui-components](https://www.npmjs.com/package/@elaraai/e3-ui-components): React Query hooks and preview components for the e3 API
72
+ - [east-ui-preview](https://marketplace.visualstudio.com/items?itemName=ElaraAI.east-ui-preview): VS Code extension for live East UI component preview
39
73
 
40
- - **[e3 - East Execution Engine](https://github.com/elaraai/e3)**: Durable execution engine for running East pipelines at scale. Features Git-like content-addressable storage, automatic memoization, task queuing, and real-time monitoring.
74
+ - **[e3 East Execution Engine](https://github.com/elaraai/east-workspace/tree/main/libs/e3)**: Durable execution engine for running East pipelines at scale. Git-like content-addressable storage, automatic memoization, reactive dataflow, real-time monitoring.
41
75
  - [@elaraai/e3](https://www.npmjs.com/package/@elaraai/e3): SDK for authoring e3 packages with typed tasks and pipelines
42
- - [@elaraai/e3-core](https://www.npmjs.com/package/@elaraai/e3-core): Git-like object store, task queue, result caching
76
+ - [@elaraai/e3-core](https://www.npmjs.com/package/@elaraai/e3-core): Object store, dataflow orchestrator, execution state
43
77
  - [@elaraai/e3-types](https://www.npmjs.com/package/@elaraai/e3-types): Shared type definitions for e3 packages
44
- - [@elaraai/e3-cli](https://www.npmjs.com/package/@elaraai/e3-cli): `e3 init`, `e3 run`, `e3 logs` commands for managing and monitoring tasks
45
- - [@elaraai/e3-api-client](https://www.npmjs.com/package/@elaraai/e3-api-client): HTTP client for remote e3 servers
78
+ - [@elaraai/e3-cli](https://www.npmjs.com/package/@elaraai/e3-cli): `e3 repo`, `e3 package`, `e3 workspace`, `e3 start`, `e3 watch`, `e3 logs` commands
79
+ - [@elaraai/e3-api-client](https://www.npmjs.com/package/@elaraai/e3-api-client): HTTP client for remote e3 repositories
46
80
  - [@elaraai/e3-api-server](https://www.npmjs.com/package/@elaraai/e3-api-server): REST API server for e3 repositories
81
+ - [@elaraai/e3-api-tests](https://www.npmjs.com/package/@elaraai/e3-api-tests): Shared API compliance test suites
47
82
 
48
83
  ## Links
49
84
 
50
- - [East Language](https://github.com/elaraai/east)
51
- - [East Python Runtime](https://github.com/elaraai/east-py)
85
+ - [East Language](https://github.com/elaraai/east-workspace/tree/main/libs/east)
86
+ - [East Python Runtime](https://github.com/elaraai/east-workspace/tree/main/libs/east-py)
52
87
  - [Elara AI](https://elaraai.com/)
53
- - [Issues](https://github.com/elaraai/e3/issues)
88
+ - [Issues](https://github.com/elaraai/east-workspace/issues)
54
89
  - support@elara.ai
55
90
 
56
91
  ## About Elara
@@ -59,4 +94,8 @@ East is developed by [Elara AI Pty Ltd](https://elaraai.com/), an AI-powered pla
59
94
 
60
95
  ---
61
96
 
97
+ *Developed by [Elara AI Pty Ltd](https://elaraai.com/).*
98
+
99
+ ---
100
+
62
101
  *Developed by [Elara AI Pty Ltd](https://elaraai.com/)*