agentic-lang 0.2.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 (146) hide show
  1. package/COMMUNITY.md +220 -0
  2. package/CONTRIBUTING.md +194 -0
  3. package/FINAL_REPORT.md +398 -0
  4. package/FOR_OTHER_LLMS.md +286 -0
  5. package/IMPROVEMENTS.md +319 -0
  6. package/LAUNCH_GUIDE.md +388 -0
  7. package/LICENSE +21 -0
  8. package/NPM_PUBLISH.md +257 -0
  9. package/PROJECT_COMPLETE.md +414 -0
  10. package/PROJECT_OVERVIEW.md +265 -0
  11. package/PROJECT_TREE.txt +228 -0
  12. package/PUBLISHING_GUIDE.md +426 -0
  13. package/PUBLISH_NOW.md +337 -0
  14. package/QUICKSTART.md +207 -0
  15. package/README.md +195 -0
  16. package/README_ENHANCED.md +329 -0
  17. package/READY_TO_LAUNCH.txt +56 -0
  18. package/REFACTOR_PLAN.md +179 -0
  19. package/ROADMAP.md +201 -0
  20. package/SUMMARY.md +315 -0
  21. package/bin/agentic.js +3 -0
  22. package/blog/001-introducing-agentic.md +382 -0
  23. package/blog/002-confidence-driven-development.md +490 -0
  24. package/blog/003-formal-verification.md +427 -0
  25. package/blog/004-multi-agent-production.md +436 -0
  26. package/dist/cli.d.ts +7 -0
  27. package/dist/cli.d.ts.map +1 -0
  28. package/dist/cli.js +151 -0
  29. package/dist/cli.js.map +1 -0
  30. package/dist/diagnostics/diagnostic.d.ts +115 -0
  31. package/dist/diagnostics/diagnostic.d.ts.map +1 -0
  32. package/dist/diagnostics/diagnostic.js +101 -0
  33. package/dist/diagnostics/diagnostic.js.map +1 -0
  34. package/dist/diagnostics/formatter.d.ts +36 -0
  35. package/dist/diagnostics/formatter.d.ts.map +1 -0
  36. package/dist/diagnostics/formatter.js +263 -0
  37. package/dist/diagnostics/formatter.js.map +1 -0
  38. package/dist/effects/effect-system.d.ts +64 -0
  39. package/dist/effects/effect-system.d.ts.map +1 -0
  40. package/dist/effects/effect-system.js +197 -0
  41. package/dist/effects/effect-system.js.map +1 -0
  42. package/dist/generator/typescript-generator.d.ts +31 -0
  43. package/dist/generator/typescript-generator.d.ts.map +1 -0
  44. package/dist/generator/typescript-generator.js +308 -0
  45. package/dist/generator/typescript-generator.js.map +1 -0
  46. package/dist/index.d.ts +19 -0
  47. package/dist/index.d.ts.map +1 -0
  48. package/dist/index.js +60 -0
  49. package/dist/index.js.map +1 -0
  50. package/dist/lean4/exporter.d.ts +24 -0
  51. package/dist/lean4/exporter.d.ts.map +1 -0
  52. package/dist/lean4/exporter.js +142 -0
  53. package/dist/lean4/exporter.js.map +1 -0
  54. package/dist/lsp/server.d.ts +6 -0
  55. package/dist/lsp/server.d.ts.map +1 -0
  56. package/dist/lsp/server.js +131 -0
  57. package/dist/lsp/server.js.map +1 -0
  58. package/dist/parser/lexer.d.ts +79 -0
  59. package/dist/parser/lexer.d.ts.map +1 -0
  60. package/dist/parser/lexer.js +296 -0
  61. package/dist/parser/lexer.js.map +1 -0
  62. package/dist/parser/parser-enhanced.d.ts +12 -0
  63. package/dist/parser/parser-enhanced.d.ts.map +1 -0
  64. package/dist/parser/parser-enhanced.js +206 -0
  65. package/dist/parser/parser-enhanced.js.map +1 -0
  66. package/dist/parser/parser.d.ts +34 -0
  67. package/dist/parser/parser.d.ts.map +1 -0
  68. package/dist/parser/parser.js +507 -0
  69. package/dist/parser/parser.js.map +1 -0
  70. package/dist/property-tests/generator-enhanced.d.ts +27 -0
  71. package/dist/property-tests/generator-enhanced.d.ts.map +1 -0
  72. package/dist/property-tests/generator-enhanced.js +209 -0
  73. package/dist/property-tests/generator-enhanced.js.map +1 -0
  74. package/dist/property-tests/generator-fixed.d.ts +2 -0
  75. package/dist/property-tests/generator-fixed.d.ts.map +1 -0
  76. package/dist/property-tests/generator-fixed.js +7 -0
  77. package/dist/property-tests/generator-fixed.js.map +1 -0
  78. package/dist/property-tests/generator.d.ts +28 -0
  79. package/dist/property-tests/generator.d.ts.map +1 -0
  80. package/dist/property-tests/generator.js +284 -0
  81. package/dist/property-tests/generator.js.map +1 -0
  82. package/dist/refinements/refinement-types.d.ts +96 -0
  83. package/dist/refinements/refinement-types.d.ts.map +1 -0
  84. package/dist/refinements/refinement-types.js +234 -0
  85. package/dist/refinements/refinement-types.js.map +1 -0
  86. package/dist/repl.d.ts +21 -0
  87. package/dist/repl.d.ts.map +1 -0
  88. package/dist/repl.js +317 -0
  89. package/dist/repl.js.map +1 -0
  90. package/dist/runtime/agents.d.ts +97 -0
  91. package/dist/runtime/agents.d.ts.map +1 -0
  92. package/dist/runtime/agents.js +258 -0
  93. package/dist/runtime/agents.js.map +1 -0
  94. package/dist/runtime/index.d.ts +98 -0
  95. package/dist/runtime/index.d.ts.map +1 -0
  96. package/dist/runtime/index.js +253 -0
  97. package/dist/runtime/index.js.map +1 -0
  98. package/dist/types-extended.d.ts +197 -0
  99. package/dist/types-extended.d.ts.map +1 -0
  100. package/dist/types-extended.js +7 -0
  101. package/dist/types-extended.js.map +1 -0
  102. package/dist/types.d.ts +129 -0
  103. package/dist/types.d.ts.map +1 -0
  104. package/dist/types.js +6 -0
  105. package/dist/types.js.map +1 -0
  106. package/dist/verification/z3-engine.d.ts +75 -0
  107. package/dist/verification/z3-engine.d.ts.map +1 -0
  108. package/dist/verification/z3-engine.js +234 -0
  109. package/dist/verification/z3-engine.js.map +1 -0
  110. package/examples/advanced-features.agentic +98 -0
  111. package/examples/annotations.agentic +37 -0
  112. package/examples/auth.agentic +53 -0
  113. package/examples/enterprise-example.agentic +360 -0
  114. package/examples/minimal.agentic +3 -0
  115. package/examples/minimal.ts +7 -0
  116. package/examples/ml-pipeline.agentic +350 -0
  117. package/examples/multi-agent-example.agentic +212 -0
  118. package/examples/onboarding-tutorial.agentic +263 -0
  119. package/examples/production-api.agentic +304 -0
  120. package/examples/real-world-chatbot.agentic +351 -0
  121. package/examples/result-handling.agentic +34 -0
  122. package/examples/runtime.ts +24 -0
  123. package/examples/showcase.agentic +22 -0
  124. package/examples/showcase.ts +28 -0
  125. package/examples/simple-test.agentic +4 -0
  126. package/examples/simple-test.ts +7 -0
  127. package/examples/simple.agentic +20 -0
  128. package/examples/test2.agentic +4 -0
  129. package/examples/test2.ts +9 -0
  130. package/examples/test3.agentic +4 -0
  131. package/examples/test3.ts +9 -0
  132. package/package.json +70 -0
  133. package/playground/index.html +221 -0
  134. package/playground/playground.js +291 -0
  135. package/registry/package-registry.ts +319 -0
  136. package/scripts/build.js +50 -0
  137. package/scripts/validate-confidence-mutation.ts +112 -0
  138. package/stdlib/async/promise.agentic +216 -0
  139. package/stdlib/database/pool.agentic +235 -0
  140. package/stdlib/file/io.agentic +194 -0
  141. package/stdlib/http/client.agentic +168 -0
  142. package/video-scripts/001-agentic-in-100-seconds.md +175 -0
  143. package/vscode-extension/README.md +67 -0
  144. package/vscode-extension/language-configuration.json +31 -0
  145. package/vscode-extension/package.json +46 -0
  146. package/vscode-extension/syntaxes/agentic.tmLanguage.json +134 -0
@@ -0,0 +1,253 @@
1
+ "use strict";
2
+ /**
3
+ * Agentic Runtime Library
4
+ * Provides runtime support for confidence tracking, context validation, etc.
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.stageValidator = exports.healthMonitor = exports.contextValidator = exports.confidence = exports.AgenticRuntime = void 0;
8
+ exports.Ok = Ok;
9
+ exports.Err = Err;
10
+ exports.isOk = isOk;
11
+ exports.isErr = isErr;
12
+ exports.unwrap = unwrap;
13
+ exports.unwrapOr = unwrapOr;
14
+ exports.unwrapOrElse = unwrapOrElse;
15
+ exports.map = map;
16
+ exports.mapErr = mapErr;
17
+ exports.andThen = andThen;
18
+ exports.orElse = orElse;
19
+ exports.validate = validate;
20
+ exports.validateAll = validateAll;
21
+ exports.retry = retry;
22
+ exports.fallbackChain = fallbackChain;
23
+ function Ok(value) {
24
+ return { ok: true, value };
25
+ }
26
+ function Err(error) {
27
+ return { ok: false, error };
28
+ }
29
+ // Result helper functions
30
+ function isOk(result) {
31
+ return result.ok === true;
32
+ }
33
+ function isErr(result) {
34
+ return result.ok === false;
35
+ }
36
+ function unwrap(result) {
37
+ if (result.ok) {
38
+ return result.value;
39
+ }
40
+ throw new Error(`Called unwrap on an Err value: ${JSON.stringify(result.error)}`);
41
+ }
42
+ function unwrapOr(result, defaultValue) {
43
+ return result.ok ? result.value : defaultValue;
44
+ }
45
+ function unwrapOrElse(result, fn) {
46
+ return result.ok ? result.value : fn(result.error);
47
+ }
48
+ function map(result, fn) {
49
+ return result.ok ? Ok(fn(result.value)) : result;
50
+ }
51
+ function mapErr(result, fn) {
52
+ return result.ok ? result : Err(fn(result.error));
53
+ }
54
+ function andThen(result, fn) {
55
+ return result.ok ? fn(result.value) : result;
56
+ }
57
+ function orElse(result, fn) {
58
+ return result.ok ? result : fn(result.error);
59
+ }
60
+ class ConfidenceTracker {
61
+ constructor() {
62
+ this.confidenceMap = new Map();
63
+ }
64
+ register(identifier, confidence, reason) {
65
+ this.confidenceMap.set(identifier, {
66
+ level: confidence,
67
+ reason,
68
+ timestamp: Date.now(),
69
+ });
70
+ if (confidence < 0.80) {
71
+ console.warn(`⚠️ Low confidence (${confidence.toFixed(2)}) in ${identifier}: ${reason || 'No reason provided'}`);
72
+ }
73
+ }
74
+ get(identifier) {
75
+ return this.confidenceMap.get(identifier);
76
+ }
77
+ all() {
78
+ return Object.fromEntries(this.confidenceMap);
79
+ }
80
+ }
81
+ class ContextValidator {
82
+ validate(requirements, context) {
83
+ const missing = [];
84
+ for (const req of requirements) {
85
+ if (req.required && !(req.name in context)) {
86
+ missing.push(req.name);
87
+ }
88
+ }
89
+ if (missing.length > 0) {
90
+ throw new Error(`Missing required context: ${missing.join(', ')}\n` +
91
+ `Required: ${requirements.map(r => r.name).join(', ')}\n` +
92
+ `Available: ${Object.keys(context).join(', ')}`);
93
+ }
94
+ }
95
+ }
96
+ class HealthCheckMonitor {
97
+ constructor() {
98
+ this.checks = new Map();
99
+ this.timers = new Map();
100
+ }
101
+ register(check) {
102
+ this.checks.set(check.name, check);
103
+ if (check.interval) {
104
+ const timer = setInterval(async () => {
105
+ await this.runCheck(check.name);
106
+ }, check.interval);
107
+ this.timers.set(check.name, timer);
108
+ }
109
+ }
110
+ async runCheck(name) {
111
+ const check = this.checks.get(name);
112
+ if (!check) {
113
+ throw new Error(`Health check not found: ${name}`);
114
+ }
115
+ const status = await check.check();
116
+ if (status === 'FAILED' && check.recovery) {
117
+ console.warn(`Health check ${name} failed - attempting recovery`);
118
+ try {
119
+ await check.recovery();
120
+ console.info(`Recovery successful for ${name}`);
121
+ }
122
+ catch (error) {
123
+ console.error(`Recovery failed for ${name}:`, error);
124
+ }
125
+ }
126
+ return status;
127
+ }
128
+ stopAll() {
129
+ for (const timer of this.timers.values()) {
130
+ clearInterval(timer);
131
+ }
132
+ this.timers.clear();
133
+ }
134
+ }
135
+ // Global runtime instance
136
+ class AgenticRuntime {
137
+ // Decorator-like function for confidence tracking
138
+ static withConfidence(fn, confidence, reason) {
139
+ this.confidence.register(fn.name, confidence, reason);
140
+ return fn;
141
+ }
142
+ // Decorator-like function for context validation
143
+ static withContext(fn, requirements) {
144
+ return ((...args) => {
145
+ const context = args[args.length - 1]; // Assume last arg is context
146
+ this.context.validate(requirements, context);
147
+ return fn(...args);
148
+ });
149
+ }
150
+ // Helper for error recovery
151
+ static async tryWithRecovery(operation, recovery, maxAttempts = 3) {
152
+ let lastError = null;
153
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
154
+ try {
155
+ return await operation();
156
+ }
157
+ catch (error) {
158
+ lastError = error;
159
+ console.warn(`Attempt ${attempt}/${maxAttempts} failed:`, error);
160
+ if (attempt < maxAttempts) {
161
+ console.info('Attempting recovery...');
162
+ try {
163
+ return await recovery();
164
+ }
165
+ catch (recoveryError) {
166
+ console.warn('Recovery failed:', recoveryError);
167
+ }
168
+ }
169
+ }
170
+ }
171
+ throw lastError;
172
+ }
173
+ }
174
+ exports.AgenticRuntime = AgenticRuntime;
175
+ AgenticRuntime.confidence = new ConfidenceTracker();
176
+ AgenticRuntime.context = new ContextValidator();
177
+ AgenticRuntime.health = new HealthCheckMonitor();
178
+ class StageValidator {
179
+ constructor() {
180
+ this.stageMap = new Map();
181
+ }
182
+ register(identifier, metadata) {
183
+ this.stageMap.set(identifier, metadata);
184
+ if (metadata.stage === 'stub') {
185
+ console.warn(`⚠️ ${identifier} is a stub - not yet implemented`);
186
+ }
187
+ else if (metadata.stage === 'partial') {
188
+ console.warn(`⚠️ ${identifier} is partially implemented (${metadata.completionPercentage || 0}%)` +
189
+ (metadata.missingFeatures ? `\n Missing: ${metadata.missingFeatures.join(', ')}` : ''));
190
+ }
191
+ }
192
+ get(identifier) {
193
+ return this.stageMap.get(identifier);
194
+ }
195
+ requireComplete(identifier) {
196
+ const metadata = this.stageMap.get(identifier);
197
+ if (!metadata) {
198
+ return; // No metadata = assume complete
199
+ }
200
+ if (metadata.stage !== 'complete') {
201
+ throw new Error(`${identifier} is not complete (stage: ${metadata.stage})\n` +
202
+ (metadata.missingFeatures ? `Missing: ${metadata.missingFeatures.join(', ')}` : ''));
203
+ }
204
+ }
205
+ }
206
+ // Validation utilities
207
+ function validate(value, predicate, errorMessage) {
208
+ return predicate(value) ? Ok(value) : Err(errorMessage);
209
+ }
210
+ function validateAll(values, predicate, errorMessage) {
211
+ const allValid = values.every(predicate);
212
+ return allValid ? Ok(values) : Err(errorMessage);
213
+ }
214
+ async function retry(fn, options = {}) {
215
+ const { maxAttempts = 3, delayMs = 1000, backoffMultiplier = 2, onRetry, } = options;
216
+ let lastError = new Error('No attempts made');
217
+ let currentDelay = delayMs;
218
+ for (let attempt = 1; attempt <= maxAttempts; attempt++) {
219
+ try {
220
+ const result = await fn();
221
+ return Ok(result);
222
+ }
223
+ catch (error) {
224
+ lastError = error instanceof Error ? error : new Error(String(error));
225
+ if (attempt < maxAttempts) {
226
+ onRetry?.(attempt, lastError);
227
+ await new Promise(resolve => setTimeout(resolve, currentDelay));
228
+ currentDelay *= backoffMultiplier;
229
+ }
230
+ }
231
+ }
232
+ return Err(lastError);
233
+ }
234
+ // Fallback chain
235
+ function fallbackChain(...fns) {
236
+ const errors = [];
237
+ for (const fn of fns) {
238
+ const result = fn();
239
+ if (result.ok) {
240
+ return result;
241
+ }
242
+ errors.push(result.error instanceof Error
243
+ ? result.error
244
+ : new Error(String(result.error)));
245
+ }
246
+ return Err(errors);
247
+ }
248
+ // Export convenience functions
249
+ exports.confidence = AgenticRuntime.confidence;
250
+ exports.contextValidator = AgenticRuntime.context;
251
+ exports.healthMonitor = AgenticRuntime.health;
252
+ exports.stageValidator = new StageValidator();
253
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/runtime/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,197 @@
1
+ /**
2
+ * Extended Type System for Agentic
3
+ * Includes session types, effect types, and multi-agent primitives
4
+ */
5
+ import * as AST from './types';
6
+ export interface SessionType {
7
+ kind: 'session';
8
+ protocol: ProtocolDefinition;
9
+ }
10
+ export interface ProtocolDefinition {
11
+ name: string;
12
+ states: ProtocolState[];
13
+ transitions: ProtocolTransition[];
14
+ channels: Channel[];
15
+ }
16
+ export interface ProtocolState {
17
+ name: string;
18
+ isInitial: boolean;
19
+ isFinal: boolean;
20
+ }
21
+ export interface ProtocolTransition {
22
+ from: string;
23
+ to: string;
24
+ action: 'send' | 'receive';
25
+ messageType: AST.TypeAnnotation;
26
+ guard?: string;
27
+ }
28
+ export interface Channel {
29
+ name: string;
30
+ direction: 'input' | 'output' | 'bidirectional';
31
+ messageType: AST.TypeAnnotation;
32
+ buffered: boolean;
33
+ capacity?: number;
34
+ }
35
+ export interface AgentType {
36
+ type: 'AgentDeclaration';
37
+ name: string;
38
+ role: string;
39
+ capabilities: string[];
40
+ inbox: Channel;
41
+ outbox: Channel;
42
+ handlers: AgentHandler[];
43
+ }
44
+ export interface AgentHandler {
45
+ messageType: string;
46
+ handler: AST.FunctionDeclaration;
47
+ }
48
+ export interface EffectType {
49
+ kind: 'effect';
50
+ effects: Effect[];
51
+ }
52
+ export type Effect = 'io' | 'state' | 'async' | 'network' | 'database' | 'llm_call' | 'human_interaction' | 'file_system';
53
+ export interface FunctionSignatureWithEffects extends AST.FunctionDeclaration {
54
+ effects?: Effect[];
55
+ capabilities?: Capability[];
56
+ }
57
+ export interface Capability {
58
+ name: string;
59
+ permissions: Permission[];
60
+ }
61
+ export type Permission = 'read' | 'write' | 'execute' | 'admin';
62
+ export interface CapabilityRequirement {
63
+ capability: string;
64
+ permissions: Permission[];
65
+ scoped?: Record<string, any>;
66
+ }
67
+ export interface Contract {
68
+ requires?: Precondition[];
69
+ ensures?: Postcondition[];
70
+ invariants?: Invariant[];
71
+ }
72
+ export interface Precondition {
73
+ expression: string;
74
+ description?: string;
75
+ }
76
+ export interface Postcondition {
77
+ expression: string;
78
+ description?: string;
79
+ }
80
+ export interface Invariant {
81
+ expression: string;
82
+ description?: string;
83
+ }
84
+ export interface SessionState {
85
+ sessionId: string;
86
+ agentId: string;
87
+ timestamp: number;
88
+ state: Record<string, any>;
89
+ checkpoints: Checkpoint[];
90
+ metadata: SessionMetadata;
91
+ }
92
+ export interface Checkpoint {
93
+ id: string;
94
+ label: string;
95
+ timestamp: number;
96
+ state: Record<string, any>;
97
+ }
98
+ export interface SessionMetadata {
99
+ userId?: string;
100
+ conversationHistory?: Message[];
101
+ confidenceHistory?: number[];
102
+ intent?: string;
103
+ reasonForHandoff?: string;
104
+ }
105
+ export interface Message {
106
+ role: 'user' | 'assistant' | 'system';
107
+ content: string;
108
+ timestamp: number;
109
+ }
110
+ export interface AgentHandoff {
111
+ fromAgent: string;
112
+ toAgent: string;
113
+ reason: string;
114
+ context: HandoffContext;
115
+ metadata: SessionMetadata;
116
+ }
117
+ export interface HandoffContext {
118
+ conversationHistory: Message[];
119
+ partialResults: Record<string, any>;
120
+ intent: string;
121
+ confidence: number;
122
+ attemptedApproaches: string[];
123
+ }
124
+ export interface WorkflowDefinition {
125
+ name: string;
126
+ states: WorkflowState[];
127
+ transitions: WorkflowTransition[];
128
+ checkpoints: string[];
129
+ persistent: boolean;
130
+ resumable: boolean;
131
+ }
132
+ export interface WorkflowState {
133
+ name: string;
134
+ handler: AST.FunctionDeclaration;
135
+ annotations: AST.Annotation[];
136
+ }
137
+ export interface WorkflowTransition {
138
+ from: string;
139
+ to: string;
140
+ event: string;
141
+ condition?: string;
142
+ maxAttempts?: number;
143
+ }
144
+ export interface ApprovalGate {
145
+ channel: 'slack' | 'email' | 'webhook' | 'inline';
146
+ approvers: string[];
147
+ timeout: number;
148
+ fallback: 'approve' | 'reject' | 'escalate';
149
+ metadata: Record<string, any>;
150
+ }
151
+ export interface ApprovalDecision {
152
+ approved: boolean;
153
+ decision: 'approve' | 'edit' | 'reject';
154
+ approver: string;
155
+ timestamp: number;
156
+ reason?: string;
157
+ modifications?: Record<string, any>;
158
+ }
159
+ export interface Trace {
160
+ traceId: string;
161
+ spanId: string;
162
+ parentSpanId?: string;
163
+ operationName: string;
164
+ startTime: number;
165
+ endTime?: number;
166
+ tags: Record<string, any>;
167
+ logs: TraceLog[];
168
+ }
169
+ export interface TraceLog {
170
+ timestamp: number;
171
+ level: 'debug' | 'info' | 'warn' | 'error';
172
+ message: string;
173
+ fields: Record<string, any>;
174
+ }
175
+ export interface DecisionTrace {
176
+ decisionId: string;
177
+ timestamp: number;
178
+ decision: string;
179
+ alternatives: string[];
180
+ reasoning: string;
181
+ confidence: number;
182
+ context: Record<string, any>;
183
+ }
184
+ export interface CostMetadata {
185
+ userId?: string;
186
+ feature?: string;
187
+ environment?: string;
188
+ modelName?: string;
189
+ tokenCount?: number;
190
+ estimatedCost?: number;
191
+ }
192
+ export interface BudgetLimit {
193
+ daily: number;
194
+ monthly: number;
195
+ action: 'throttle' | 'reject' | 'notify';
196
+ }
197
+ //# sourceMappingURL=types-extended.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-extended.d.ts","sourceRoot":"","sources":["../src/types-extended.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * Extended Type System for Agentic
4
+ * Includes session types, effect types, and multi-agent primitives
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=types-extended.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-extended.js","sourceRoot":"","sources":["../src/types-extended.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -0,0 +1,129 @@
1
+ /**
2
+ * Core type definitions for the Agentic language
3
+ */
4
+ export interface SourceLocation {
5
+ line: number;
6
+ column: number;
7
+ offset: number;
8
+ }
9
+ export interface SourceRange {
10
+ start: SourceLocation;
11
+ end: SourceLocation;
12
+ }
13
+ export type ASTNode = FunctionDeclaration | VariableDeclaration | IfStatement | ReturnStatement | BinaryExpression | CallExpression | Identifier | Literal | BlockStatement | MatchExpression | ErrorRecovery;
14
+ export interface BaseNode {
15
+ type: string;
16
+ loc?: SourceRange;
17
+ }
18
+ export interface FunctionDeclaration extends BaseNode {
19
+ type: 'FunctionDeclaration';
20
+ name: string;
21
+ params: Parameter[];
22
+ returnType: TypeAnnotation | null;
23
+ body: BlockStatement;
24
+ annotations: Annotation[];
25
+ }
26
+ export interface Parameter {
27
+ name: string;
28
+ typeAnnotation: TypeAnnotation | null;
29
+ }
30
+ export interface TypeAnnotation {
31
+ kind: 'primitive' | 'union' | 'result' | 'custom';
32
+ value: string | TypeAnnotation[];
33
+ }
34
+ export interface Annotation {
35
+ name: string;
36
+ args: Record<string, any>;
37
+ loc?: SourceRange;
38
+ }
39
+ export interface VariableDeclaration extends BaseNode {
40
+ type: 'VariableDeclaration';
41
+ name: string;
42
+ initializer: ASTNode | null;
43
+ typeAnnotation: TypeAnnotation | null;
44
+ }
45
+ export interface IfStatement extends BaseNode {
46
+ type: 'IfStatement';
47
+ condition: ASTNode;
48
+ consequent: BlockStatement;
49
+ alternate: BlockStatement | IfStatement | null;
50
+ }
51
+ export interface ReturnStatement extends BaseNode {
52
+ type: 'ReturnStatement';
53
+ argument: ASTNode | null;
54
+ }
55
+ export interface BinaryExpression extends BaseNode {
56
+ type: 'BinaryExpression';
57
+ operator: string;
58
+ left: ASTNode;
59
+ right: ASTNode;
60
+ }
61
+ export interface CallExpression extends BaseNode {
62
+ type: 'CallExpression';
63
+ callee: ASTNode;
64
+ arguments: ASTNode[];
65
+ }
66
+ export interface Identifier extends BaseNode {
67
+ type: 'Identifier';
68
+ name: string;
69
+ }
70
+ export interface Literal extends BaseNode {
71
+ type: 'Literal';
72
+ value: string | number | boolean | null;
73
+ raw: string;
74
+ }
75
+ export interface BlockStatement extends BaseNode {
76
+ type: 'BlockStatement';
77
+ body: ASTNode[];
78
+ }
79
+ export interface MatchExpression extends BaseNode {
80
+ type: 'MatchExpression';
81
+ discriminant: ASTNode;
82
+ cases: MatchCase[];
83
+ }
84
+ export interface MatchCase {
85
+ pattern: string;
86
+ binding?: string;
87
+ body: ASTNode;
88
+ }
89
+ export interface ErrorRecovery extends BaseNode {
90
+ type: 'ErrorRecovery';
91
+ binding: string;
92
+ contextBlock: ContextBlock;
93
+ errorAction: ASTNode;
94
+ }
95
+ export interface ContextBlock {
96
+ what_failed?: string;
97
+ what_i_tried?: string;
98
+ current_state?: Record<string, any>;
99
+ likely_cause?: string;
100
+ suggestions?: string[];
101
+ recovery?: {
102
+ action: string;
103
+ command?: string;
104
+ };
105
+ }
106
+ export interface TranspilerOptions {
107
+ sourceMap?: boolean;
108
+ target?: 'ES2020' | 'ES2015' | 'ESNext';
109
+ includeRuntime?: boolean;
110
+ outputPath?: string;
111
+ }
112
+ export interface CompilationResult {
113
+ code: string;
114
+ sourceMap?: string;
115
+ diagnostics: Diagnostic[];
116
+ propertyTests?: PropertyTest[];
117
+ }
118
+ export interface Diagnostic {
119
+ severity: 'error' | 'warning' | 'info';
120
+ message: string;
121
+ location: SourceRange;
122
+ suggestion?: string;
123
+ }
124
+ export interface PropertyTest {
125
+ name: string;
126
+ description: string;
127
+ testCode: string;
128
+ }
129
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ /**
3
+ * Core type definitions for the Agentic language
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";AAAA;;GAEG"}