@punica/editor 1.0.5 → 1.0.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 (69) hide show
  1. package/dist/index.bundle.esm.js +1 -1
  2. package/dist/index.bundle.esm.js.map +1 -1
  3. package/dist/index.bundle.umd.js +1 -1
  4. package/dist/index.bundle.umd.js.map +1 -1
  5. package/package.json +28 -3
  6. package/types/index.d.ts +120 -11
  7. package/types/punica.module.bootstrap.d.ts +45 -0
  8. package/types/punica.module.capability.d.ts +359 -0
  9. package/types/punica.module.extensions.api.d.ts +740 -0
  10. package/types/punica.module.extensions.settings.d.ts +106 -0
  11. package/types/punica.module.flow.agent.d.ts +75 -0
  12. package/types/punica.module.flow.api.d.ts +128 -0
  13. package/types/punica.module.flow.d.ts +490 -0
  14. package/types/punica.module.flow.engine.d.ts +228 -0
  15. package/types/punica.module.flow.mcp.d.ts +26 -0
  16. package/types/punica.module.flow.notebook.d.ts +210 -0
  17. package/types/punica.module.flow.primitives.d.ts +700 -0
  18. package/types/punica.module.flow.shell.d.ts +374 -0
  19. package/types/punica.module.kernel.ai.d.ts +462 -0
  20. package/types/punica.module.kernel.commands.d.ts +49 -0
  21. package/types/punica.module.kernel.events.d.ts +274 -0
  22. package/types/punica.module.kernel.history.d.ts +20 -0
  23. package/types/punica.module.kernel.llm.d.ts +343 -0
  24. package/types/punica.module.kernel.notifications.d.ts +64 -0
  25. package/types/punica.module.kernel.policy.d.ts +273 -0
  26. package/types/punica.module.kernel.tasks.d.ts +107 -0
  27. package/types/punica.module.kernel.timeServer.d.ts +16 -0
  28. package/types/punica.module.runtime.api.d.ts +214 -0
  29. package/types/punica.module.runtime.capabilities.d.ts +175 -0
  30. package/types/punica.module.runtime.compute.d.ts +339 -0
  31. package/types/punica.module.runtime.datasets.d.ts +234 -0
  32. package/types/punica.module.runtime.fs.d.ts +385 -0
  33. package/types/punica.module.runtime.harness.d.ts +246 -0
  34. package/types/punica.module.runtime.host.d.ts +272 -0
  35. package/types/punica.module.runtime.inference.d.ts +164 -0
  36. package/types/punica.module.runtime.lifecycle.d.ts +15 -0
  37. package/types/punica.module.runtime.llm.d.ts +470 -0
  38. package/types/punica.module.runtime.mcp.d.ts +139 -0
  39. package/types/punica.module.runtime.modelRuntimes.d.ts +90 -0
  40. package/types/punica.module.runtime.models.d.ts +254 -0
  41. package/types/punica.module.runtime.search.d.ts +59 -0
  42. package/types/punica.module.runtime.secrets.d.ts +26 -0
  43. package/types/punica.module.runtime.tasks.d.ts +27 -0
  44. package/types/punica.module.runtime.vcs.d.ts +67 -0
  45. package/types/punica.module.runtime.vectors.d.ts +74 -0
  46. package/types/punica.module.runtime.workspace.d.ts +134 -0
  47. package/types/punica.module.shell.activityBar.d.ts +42 -0
  48. package/types/punica.module.shell.components.d.ts +87 -0
  49. package/types/punica.module.shell.contentTabs.d.ts +33 -0
  50. package/types/punica.module.shell.dragDrop.d.ts +25 -0
  51. package/types/punica.module.shell.keyboardShortcuts.d.ts +38 -0
  52. package/types/punica.module.shell.layout.d.ts +106 -0
  53. package/types/punica.module.shell.markdown.d.ts +36 -0
  54. package/types/punica.module.shell.panelTabs.d.ts +48 -0
  55. package/types/punica.module.shell.profile.d.ts +278 -0
  56. package/types/punica.module.shell.statusbar.d.ts +26 -0
  57. package/types/punica.module.shell.view.d.ts +455 -0
  58. package/types/punica.module.shell.views.d.ts +150 -0
  59. package/types/punica.module.test.d.ts +562 -0
  60. package/types/punica.module.activityBar.d.ts +0 -21
  61. package/types/punica.module.commands.d.ts +0 -21
  62. package/types/punica.module.dragDrop.d.ts +0 -23
  63. package/types/punica.module.extensions.d.ts +0 -157
  64. package/types/punica.module.history.d.ts +0 -18
  65. package/types/punica.module.keyboardShortcuts.d.ts +0 -29
  66. package/types/punica.module.layout.d.ts +0 -23
  67. package/types/punica.module.statusbar.d.ts +0 -21
  68. package/types/punica.module.timeServer.d.ts +0 -14
  69. package/types/punica.module.view.d.ts +0 -8
@@ -0,0 +1,562 @@
1
+ declare module 'punica' {
2
+ /**
3
+ * Test Specification ID
4
+ * Format: namespace-prefixed, kebab-case (e.g., "test.ivy.node.http.fetch", "test.mcp.github.search")
5
+ */
6
+ export type TestSpecificationId = string;
7
+
8
+ /**
9
+ * Capability ID reference (from capability module)
10
+ */
11
+ export type CapabilityId = string;
12
+
13
+ /**
14
+ * JSON types for test definitions
15
+ */
16
+ export type JSONPrimitive = string | number | boolean | null;
17
+ export type JSONValue =
18
+ | JSONPrimitive
19
+ | JSONValue[]
20
+ | { [key: string]: JSONValue };
21
+ export interface JSONObject {
22
+ [key: string]: JSONValue;
23
+ }
24
+
25
+ /**
26
+ * -------------------------
27
+ * Test Specification System
28
+ * -------------------------
29
+ * Bağımsız test tanımlama sistemi (CapabilityDefinition'dan bağımsız)
30
+ */
31
+
32
+ /**
33
+ * Matcher types for property and output assertions
34
+ */
35
+ export type MatcherType =
36
+ | 'equals' // Deep equality
37
+ | 'contains' // String/array contains
38
+ | 'matches' // Regex pattern
39
+ | 'greaterThan' // Numeric comparison
40
+ | 'lessThan' // Numeric comparison
41
+ | 'between' // Range check
42
+ | 'isType' // Type check
43
+ | 'hasProperty' // Object property existence
44
+ | 'arrayLength' // Array length check
45
+ | 'custom'; // Custom matcher
46
+
47
+ export interface MatcherOptions {
48
+ tolerance?: number;
49
+ caseSensitive?: boolean;
50
+ ignoreKeys?: string[];
51
+ customFn?: string;
52
+ [key: string]: JSONValue | undefined;
53
+ }
54
+
55
+ export interface MatcherConfig {
56
+ type: MatcherType;
57
+ value?: JSONValue;
58
+ options?: MatcherOptions;
59
+ }
60
+
61
+ /**
62
+ * Test Environment Configuration
63
+ */
64
+ export interface TestEnvironment {
65
+ /**
66
+ * Random seed for determinism
67
+ */
68
+ seed?: number;
69
+ /**
70
+ * Environment variables
71
+ */
72
+ env?: Record<string, string>;
73
+ /**
74
+ * Timezone for date/time tests
75
+ */
76
+ timezone?: string;
77
+ /**
78
+ * Locale for i18n tests
79
+ */
80
+ locale?: string;
81
+ /**
82
+ * Force deterministic execution
83
+ */
84
+ deterministic?: boolean;
85
+ }
86
+
87
+ /**
88
+ * Performance Assertion
89
+ */
90
+ export interface PerformanceAssertion {
91
+ /**
92
+ * Maximum execution duration in milliseconds
93
+ */
94
+ maxDurationMs?: number;
95
+ /**
96
+ * Maximum memory usage in MB
97
+ */
98
+ maxMemoryMB?: number;
99
+ /**
100
+ * Maximum CPU usage percentage
101
+ */
102
+ maxCpuPercent?: number;
103
+ }
104
+
105
+ /**
106
+ * Side-effect Check
107
+ */
108
+ export interface SideEffectCheck {
109
+ files?: {
110
+ /**
111
+ * Files that should be created
112
+ */
113
+ created?: string[];
114
+ /**
115
+ * Files that should be modified
116
+ */
117
+ modified?: string[];
118
+ /**
119
+ * Files that should be deleted
120
+ */
121
+ deleted?: string[];
122
+ /**
123
+ * Files that should not change
124
+ */
125
+ unchanged?: string[];
126
+ };
127
+ network?: {
128
+ /**
129
+ * Expected number of network requests
130
+ */
131
+ requests?: number;
132
+ /**
133
+ * Allowed domains
134
+ */
135
+ domains?: string[];
136
+ };
137
+ state?: {
138
+ /**
139
+ * State keys that should be modified
140
+ */
141
+ modified?: string[];
142
+ /**
143
+ * State keys that should not change
144
+ */
145
+ unchanged?: string[];
146
+ };
147
+ }
148
+
149
+ /**
150
+ * Output Assertion
151
+ */
152
+ export interface OutputAssertion {
153
+ /**
154
+ * Dot-path to output property (e.g., "result.value")
155
+ */
156
+ path?: string;
157
+ /**
158
+ * Matcher configuration
159
+ */
160
+ matcher: MatcherConfig;
161
+ /**
162
+ * Optional description
163
+ */
164
+ description?: string;
165
+ }
166
+
167
+ /**
168
+ * Execution Output Assertions
169
+ */
170
+ export interface ExecutionOutputAssertions {
171
+ stdout?: {
172
+ /**
173
+ * String that stdout should contain
174
+ */
175
+ contains?: string;
176
+ /**
177
+ * Regex pattern that stdout should match
178
+ */
179
+ matches?: string;
180
+ /**
181
+ * Whether stdout should be empty
182
+ */
183
+ isEmpty?: boolean;
184
+ };
185
+ stderr?: {
186
+ /**
187
+ * String that stderr should contain
188
+ */
189
+ contains?: string;
190
+ /**
191
+ * Regex pattern that stderr should match
192
+ */
193
+ matches?: string;
194
+ /**
195
+ * Whether stderr should be empty
196
+ */
197
+ isEmpty?: boolean;
198
+ };
199
+ displayData?: {
200
+ /**
201
+ * MIME type to matcher mapping
202
+ */
203
+ [mimeType: string]: MatcherConfig;
204
+ };
205
+ }
206
+
207
+ /**
208
+ * Property Assertion with matcher
209
+ */
210
+ export interface PropertyAssertion {
211
+ /**
212
+ * Expected value
213
+ */
214
+ expected?: JSONValue;
215
+ /**
216
+ * Matcher configuration or string (for backward compatibility)
217
+ */
218
+ matcher?: MatcherConfig | string;
219
+ }
220
+
221
+ /**
222
+ * Test Assertions
223
+ */
224
+ export interface TestAssertions {
225
+ /**
226
+ * Schema validation assertion
227
+ */
228
+ schema?: boolean;
229
+
230
+ /**
231
+ * Property-based assertions with matchers
232
+ */
233
+ properties?: Record<string, PropertyAssertion>;
234
+
235
+ /**
236
+ * Error expectation
237
+ */
238
+ expectsError?: boolean;
239
+
240
+ /**
241
+ * Error pattern matching (regex)
242
+ */
243
+ errorPattern?: string;
244
+
245
+ /**
246
+ * Output assertions
247
+ */
248
+ outputs?: OutputAssertion[];
249
+
250
+ /**
251
+ * Execution outputs (stdout, stderr, display_data)
252
+ */
253
+ executionOutputs?: ExecutionOutputAssertions;
254
+
255
+ /**
256
+ * Performance assertions
257
+ */
258
+ performance?: PerformanceAssertion;
259
+
260
+ /**
261
+ * Side-effect checks
262
+ */
263
+ sideEffects?: SideEffectCheck;
264
+ }
265
+
266
+ /**
267
+ * Test Case
268
+ */
269
+ export interface TestCase {
270
+ /**
271
+ * Unique identifier for this test case
272
+ */
273
+ id: string;
274
+ /**
275
+ * Human-readable description
276
+ */
277
+ description: string;
278
+ /**
279
+ * Test input data
280
+ */
281
+ input: JSONValue | JSONObject | null;
282
+ /**
283
+ * Test assertions
284
+ */
285
+ assertions?: TestAssertions;
286
+ /**
287
+ * Whether this is a golden test case
288
+ */
289
+ golden?: boolean;
290
+
291
+ /**
292
+ * Environment override for this test case
293
+ */
294
+ environment?: TestEnvironment;
295
+
296
+ /**
297
+ * Skip this test case (boolean or skip reason string)
298
+ */
299
+ skip?: boolean | string;
300
+
301
+ /**
302
+ * Tags for filtering and categorization
303
+ */
304
+ tags?: string[];
305
+ }
306
+
307
+ /**
308
+ * Test Spec
309
+ */
310
+ export interface TestSpec {
311
+ /**
312
+ * Test tier (quality gate level)
313
+ */
314
+ tier: 'draft' | 'verified' | 'certified';
315
+ /**
316
+ * Test cases
317
+ */
318
+ cases?: TestCase[];
319
+ /**
320
+ * Required dependencies for test execution
321
+ */
322
+ requires?: string[];
323
+ /**
324
+ * Default timeout for test cases (ms)
325
+ */
326
+ timeoutMs?: number;
327
+ /**
328
+ * Default environment configuration
329
+ */
330
+ environment?: TestEnvironment;
331
+ /**
332
+ * Execution options
333
+ */
334
+ execution?: {
335
+ /**
336
+ * Run tests in parallel
337
+ */
338
+ parallel?: boolean;
339
+ /**
340
+ * Number of retries for flaky tests
341
+ */
342
+ retries?: number;
343
+ /**
344
+ * Setup script/code
345
+ */
346
+ setup?: string;
347
+ /**
348
+ * Teardown script/code
349
+ */
350
+ teardown?: string;
351
+ };
352
+ }
353
+
354
+ /**
355
+ * Test Metadata
356
+ */
357
+ export interface TestMetadata {
358
+ /**
359
+ * Test author
360
+ */
361
+ author?: string;
362
+ /**
363
+ * Creation timestamp
364
+ */
365
+ createdAt?: string;
366
+ /**
367
+ * Last update timestamp
368
+ */
369
+ updatedAt?: string;
370
+ /**
371
+ * Tags for categorization
372
+ */
373
+ tags?: string[];
374
+ /**
375
+ * Allow additional metadata
376
+ */
377
+ [key: string]: unknown;
378
+ }
379
+
380
+ /**
381
+ * Test Specification - Bağımsız type system
382
+ * CapabilityDefinition'dan bağımsız, kendi sürecine sahip
383
+ */
384
+ export interface TestSpecification {
385
+ /**
386
+ * Unique identifier for this test specification
387
+ * Format: "test.{targetCapabilityId}" or custom
388
+ */
389
+ id: TestSpecificationId;
390
+
391
+ /**
392
+ * API version for test specification format
393
+ */
394
+ apiVersion: 'test/v0.1';
395
+
396
+ /**
397
+ * Kind discriminator
398
+ */
399
+ kind: 'TestSpecification';
400
+
401
+ /**
402
+ * Test edilecek capability'nin ID'si
403
+ */
404
+ targetCapabilityId: CapabilityId;
405
+
406
+ /**
407
+ * Human-readable title
408
+ */
409
+ title: string;
410
+
411
+ /**
412
+ * Optional description
413
+ */
414
+ description?: string;
415
+
416
+ /**
417
+ * Version of this test specification
418
+ */
419
+ version: string;
420
+
421
+ /**
422
+ * Test specification content
423
+ */
424
+ spec: TestSpec;
425
+
426
+ /**
427
+ * Test metadata
428
+ */
429
+ metadata?: TestMetadata;
430
+
431
+ /**
432
+ * Tags for categorization
433
+ */
434
+ tags?: string[];
435
+
436
+ /**
437
+ * Raw ivy.node / ivy.agent manifest this specification was derived
438
+ * from. Lets test tooling execute capabilities that are not present in
439
+ * the node registry (agents) via `flow.test.run(id, { manifest })`.
440
+ */
441
+ sourceManifest?: JSONValue;
442
+
443
+ /**
444
+ * Allow domain-specific extensions while maintaining type safety
445
+ */
446
+ [key: string]: unknown;
447
+ }
448
+
449
+ /**
450
+ * Test case result for a single test case
451
+ */
452
+ export interface TestCaseResult {
453
+ /**
454
+ * Test case ID
455
+ */
456
+ caseId: string;
457
+ /**
458
+ * Test status
459
+ */
460
+ status: 'pass' | 'fail' | 'skip' | 'error';
461
+ /**
462
+ * Execution duration in milliseconds
463
+ */
464
+ durationMs: number;
465
+ /**
466
+ * Test output
467
+ */
468
+ output?: JSONValue;
469
+ /**
470
+ * Error message if test failed
471
+ */
472
+ error?: string;
473
+ /**
474
+ * Assertion results
475
+ */
476
+ assertions?: {
477
+ schema?: { passed: boolean };
478
+ error?: {
479
+ passed: boolean;
480
+ expected?: string;
481
+ actual?: string;
482
+ };
483
+ [key: string]: unknown;
484
+ };
485
+ }
486
+
487
+ /**
488
+ * Test report for a capability
489
+ */
490
+ export interface TestReport {
491
+ /**
492
+ * Unique report identifier
493
+ */
494
+ reportId: string;
495
+ /**
496
+ * Capability ID that was tested
497
+ */
498
+ capabilityId: CapabilityId;
499
+ /**
500
+ * Version of the capability that was tested
501
+ */
502
+ capabilityVersion: string;
503
+ /**
504
+ * Test specification version
505
+ */
506
+ specVersion: string;
507
+ /**
508
+ * Timestamp when report was generated
509
+ */
510
+ timestampMs: number;
511
+ /**
512
+ * Test runner information
513
+ */
514
+ runner: {
515
+ /**
516
+ * Runner version
517
+ */
518
+ version: string;
519
+ /**
520
+ * Execution environment
521
+ */
522
+ environment: string;
523
+ };
524
+ /**
525
+ * Test summary
526
+ */
527
+ summary: {
528
+ /**
529
+ * Test tier
530
+ */
531
+ tier: 'draft' | 'verified' | 'certified';
532
+ /**
533
+ * Overall test status
534
+ */
535
+ status: 'pass' | 'fail' | 'flaky';
536
+ /**
537
+ * Total number of test cases
538
+ */
539
+ totalCases: number;
540
+ /**
541
+ * Number of passed test cases
542
+ */
543
+ passedCases: number;
544
+ /**
545
+ * Number of failed test cases
546
+ */
547
+ failedCases: number;
548
+ /**
549
+ * Number of skipped test cases
550
+ */
551
+ skippedCases: number;
552
+ /**
553
+ * Total execution duration in milliseconds
554
+ */
555
+ durationMs: number;
556
+ };
557
+ /**
558
+ * Individual test case results
559
+ */
560
+ cases: TestCaseResult[];
561
+ }
562
+ }
@@ -1,21 +0,0 @@
1
- declare module 'punica' {
2
- export namespace ActivityBar {
3
- type Alignment = 'primary' | 'secondary';
4
- type ItemType = 'normal' | 'menu';
5
-
6
- interface IItem {
7
- id: string;
8
- name: string;
9
- alignment: Alignment;
10
- title: string;
11
- icon: string;
12
- }
13
-
14
- interface IActivityBarManager {
15
- addItem(item: IItem): void;
16
- removeItem(itemId: string): void;
17
- }
18
-
19
- const manager: IActivityBarManager;
20
- }
21
- }
@@ -1,21 +0,0 @@
1
- declare module 'punica' {
2
- export namespace Commands {
3
- interface IDisposable {
4
- dispose(): void;
5
- }
6
-
7
- interface ICommand {
8
- title: string;
9
- disposable?: Disposable;
10
- execute(...args: any[]): void;
11
- }
12
-
13
- interface ICommandManager {
14
- registerCommand(commandName: string, command: ICommand): void;
15
- executeCommand(commandName: string, ...args: any[]): void;
16
- disposeCommand(commandName: string): void;
17
- }
18
-
19
- const manager: ICommandManager;
20
- }
21
- }
@@ -1,23 +0,0 @@
1
- declare module 'punica' {
2
- export namespace DragDrop {
3
- type DragDropEvents = 'dragging' | 'dragStart' | 'dragStop';
4
- type Events = { [key in DragDropEvents]: string };
5
- type Point = {
6
- x: number;
7
- y: number;
8
- };
9
- type PositionDetail = {
10
- offsetX: number;
11
- offsetY: number;
12
- pageX: number;
13
- pageY: number;
14
- clientX: number;
15
- clientY: number;
16
- };
17
- interface IServiceDragDrop {
18
- handleDragStart(event: MouseEvent): void;
19
- handleDragging(event: MouseEvent): void;
20
- handleDragStop(event: MouseEvent): void;
21
- }
22
- }
23
- }