@vertesia/common 1.5.0-dev.20260717.131047Z → 1.5.0-dev.20260725.083715Z
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.
- package/lib/apps.d.ts +184 -48
- package/lib/apps.d.ts.map +1 -1
- package/lib/apps.js +21 -9
- package/lib/apps.js.map +1 -1
- package/lib/audit-trail.d.ts +61 -1
- package/lib/audit-trail.d.ts.map +1 -1
- package/lib/audit-trail.js +15 -0
- package/lib/audit-trail.js.map +1 -1
- package/lib/environment.d.ts +2 -0
- package/lib/environment.d.ts.map +1 -1
- package/lib/environment.js.map +1 -1
- package/lib/index.d.ts +7 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +7 -0
- package/lib/index.js.map +1 -1
- package/lib/interaction.d.ts +77 -1
- package/lib/interaction.d.ts.map +1 -1
- package/lib/interaction.js +48 -0
- package/lib/interaction.js.map +1 -1
- package/lib/platform-event.d.ts +37 -3
- package/lib/platform-event.d.ts.map +1 -1
- package/lib/platform-event.js.map +1 -1
- package/lib/project.d.ts +119 -20
- package/lib/project.d.ts.map +1 -1
- package/lib/project.js +65 -0
- package/lib/project.js.map +1 -1
- package/lib/query.d.ts +6 -0
- package/lib/query.d.ts.map +1 -1
- package/lib/refs.d.ts +1 -0
- package/lib/refs.d.ts.map +1 -1
- package/lib/schema-for-extraction.d.ts +21 -0
- package/lib/schema-for-extraction.d.ts.map +1 -0
- package/lib/schema-for-extraction.js +205 -0
- package/lib/schema-for-extraction.js.map +1 -0
- package/lib/store/agent-run.d.ts +23 -1
- package/lib/store/agent-run.d.ts.map +1 -1
- package/lib/store/conversation-state.d.ts +3 -1
- package/lib/store/conversation-state.d.ts.map +1 -1
- package/lib/store/conversation-state.js.map +1 -1
- package/lib/store/doc-analyzer.d.ts +10 -67
- package/lib/store/doc-analyzer.d.ts.map +1 -1
- package/lib/store/dsl-workflow.d.ts +1 -0
- package/lib/store/dsl-workflow.d.ts.map +1 -1
- package/lib/store/dsl-workflow.js.map +1 -1
- package/lib/store/grounded-extraction.d.ts +146 -0
- package/lib/store/grounded-extraction.d.ts.map +1 -0
- package/lib/store/grounded-extraction.js +8 -0
- package/lib/store/grounded-extraction.js.map +1 -0
- package/lib/store/index.d.ts +1 -0
- package/lib/store/index.d.ts.map +1 -1
- package/lib/store/index.js +1 -0
- package/lib/store/index.js.map +1 -1
- package/lib/store/store.d.ts +314 -1
- package/lib/store/store.d.ts.map +1 -1
- package/lib/store/store.js +451 -0
- package/lib/store/store.js.map +1 -1
- package/lib/store/workflow.d.ts +8 -1
- package/lib/store/workflow.d.ts.map +1 -1
- package/lib/store/workflow.js +5 -0
- package/lib/store/workflow.js.map +1 -1
- package/lib/user.d.ts +14 -0
- package/lib/user.d.ts.map +1 -1
- package/lib/user.js +31 -0
- package/lib/user.js.map +1 -1
- package/lib/vertesia-common.js +2 -2
- package/lib/vertesia-common.js.map +1 -1
- package/lib/view-configuration-validation.d.ts +15 -0
- package/lib/view-configuration-validation.d.ts.map +1 -0
- package/lib/view-configuration-validation.js +63 -0
- package/lib/view-configuration-validation.js.map +1 -0
- package/lib/view-query-validation.d.ts +13 -0
- package/lib/view-query-validation.d.ts.map +1 -0
- package/lib/view-query-validation.js +266 -0
- package/lib/view-query-validation.js.map +1 -0
- package/lib/view-validation-helpers.d.ts +15 -0
- package/lib/view-validation-helpers.d.ts.map +1 -0
- package/lib/view-validation-helpers.js +25 -0
- package/lib/view-validation-helpers.js.map +1 -0
- package/lib/views-schema.d.ts +1992 -0
- package/lib/views-schema.d.ts.map +1 -0
- package/lib/views-schema.js +674 -0
- package/lib/views-schema.js.map +1 -0
- package/lib/views-validation.d.ts +21 -0
- package/lib/views-validation.d.ts.map +1 -0
- package/lib/views-validation.js +164 -0
- package/lib/views-validation.js.map +1 -0
- package/lib/views.d.ts +381 -0
- package/lib/views.d.ts.map +1 -0
- package/lib/views.js +41 -0
- package/lib/views.js.map +1 -0
- package/package.json +5 -5
- package/src/agent-resources.test.ts +100 -0
- package/src/apps.test.ts +9 -1
- package/src/apps.ts +220 -73
- package/src/audit-trail.ts +83 -0
- package/src/environment.ts +2 -0
- package/src/index.ts +12 -0
- package/src/interaction.ts +135 -1
- package/src/platform-event.ts +39 -2
- package/src/project.test.ts +44 -0
- package/src/project.ts +205 -22
- package/src/query.ts +6 -0
- package/src/refs.ts +1 -0
- package/src/schema-for-extraction.test.ts +191 -0
- package/src/schema-for-extraction.ts +231 -0
- package/src/store/agent-run.ts +29 -0
- package/src/store/content-type-editing.test.ts +17 -0
- package/src/store/conversation-state.ts +4 -1
- package/src/store/doc-analyzer.ts +10 -76
- package/src/store/dsl-workflow.ts +1 -0
- package/src/store/grounded-extraction.ts +154 -0
- package/src/store/index.ts +1 -0
- package/src/store/store.ts +800 -1
- package/src/store/workflow.ts +12 -0
- package/src/user.ts +46 -0
- package/src/view-configuration-validation.ts +74 -0
- package/src/view-query-validation.test.ts +21 -0
- package/src/view-query-validation.ts +319 -0
- package/src/view-validation-helpers.ts +28 -0
- package/src/views-schema.test.ts +364 -0
- package/src/views-schema.ts +689 -0
- package/src/views-validation.ts +234 -0
- package/src/views.ts +484 -0
package/src/apps.ts
CHANGED
|
@@ -1,7 +1,13 @@
|
|
|
1
1
|
import type { JSONObject, JSONSchema, ToolDefinition } from '@llumiverse/common';
|
|
2
2
|
import type { AppDashboardDefinition } from './data-platform.js';
|
|
3
3
|
import type { CatalogInteractionRef } from './interaction.js';
|
|
4
|
-
import type {
|
|
4
|
+
import type {
|
|
5
|
+
AgentRunSearchHit,
|
|
6
|
+
DSLActivityOptions,
|
|
7
|
+
InCodeProcessDefinition,
|
|
8
|
+
InCodeTypeDefinition,
|
|
9
|
+
} from './store/index.js';
|
|
10
|
+
import type { InCodeViewDefinition } from './views.js';
|
|
5
11
|
|
|
6
12
|
/** Allowed values for AppUINavItem.preferredSection */
|
|
7
13
|
export const PREFERRED_SECTIONS = ['default', 'footer', 'settings'] as const;
|
|
@@ -383,27 +389,26 @@ export interface RemoteActivityDefinition {
|
|
|
383
389
|
options?: DSLActivityOptions;
|
|
384
390
|
}
|
|
385
391
|
|
|
386
|
-
export type AppCapabilities = 'ui' | 'tools' | 'interactions' | 'types' | 'processes' | 'templates' | 'dashboards';
|
|
387
|
-
|
|
388
392
|
/**
|
|
389
|
-
* Canonical
|
|
390
|
-
*
|
|
391
|
-
* the two. Consumers (publish manifest derivation, etc.) must use this rather than
|
|
392
|
-
* re-listing the values.
|
|
393
|
+
* Canonical app capabilities Studio renders/supports. The public type is derived from
|
|
394
|
+
* this list so runtime validation and TypeScript cannot drift.
|
|
393
395
|
*/
|
|
394
|
-
export const APP_CAPABILITIES
|
|
396
|
+
export const APP_CAPABILITIES = [
|
|
395
397
|
'ui',
|
|
396
398
|
'tools',
|
|
397
399
|
'interactions',
|
|
398
400
|
'types',
|
|
399
401
|
'processes',
|
|
402
|
+
'views',
|
|
400
403
|
'templates',
|
|
401
404
|
'dashboards',
|
|
402
|
-
];
|
|
405
|
+
] as const;
|
|
406
|
+
|
|
407
|
+
export type AppCapabilities = (typeof APP_CAPABILITIES)[number];
|
|
403
408
|
|
|
404
409
|
/**
|
|
405
410
|
* Header carrying the app version a generated-app UI is running, so studio/zeno resolve app-owned
|
|
406
|
-
* capability refs (`app:<app>:...`) against that version
|
|
411
|
+
* capability refs (`app:<app>:...`) against that exact version instead of the promoted version.
|
|
407
412
|
* Resolution-time only; never persisted. Set by the generated app template via client.withAppVersion.
|
|
408
413
|
*/
|
|
409
414
|
export const APP_VERSION_HEADER = 'x-vertesia-app-version';
|
|
@@ -414,26 +419,19 @@ export const APP_VERSION_HEADER = 'x-vertesia-app-version';
|
|
|
414
419
|
* {@link AppCapabilities} folds together. Used by the App Solution Architect manifest and
|
|
415
420
|
* the publish-time capability gate.
|
|
416
421
|
*/
|
|
417
|
-
export
|
|
418
|
-
| 'interaction'
|
|
419
|
-
| 'agent'
|
|
420
|
-
| 'type'
|
|
421
|
-
| 'process'
|
|
422
|
-
| 'template'
|
|
423
|
-
| 'dashboard'
|
|
424
|
-
| 'activity'
|
|
425
|
-
| 'tool';
|
|
426
|
-
|
|
427
|
-
export const APP_ARTIFACT_TYPES: readonly AppArtifactType[] = [
|
|
422
|
+
export const APP_ARTIFACT_TYPES = [
|
|
428
423
|
'interaction',
|
|
429
424
|
'agent',
|
|
430
425
|
'type',
|
|
431
426
|
'process',
|
|
427
|
+
'view',
|
|
432
428
|
'template',
|
|
433
429
|
'dashboard',
|
|
434
430
|
'activity',
|
|
435
431
|
'tool',
|
|
436
|
-
];
|
|
432
|
+
] as const;
|
|
433
|
+
|
|
434
|
+
export type AppArtifactType = (typeof APP_ARTIFACT_TYPES)[number];
|
|
437
435
|
|
|
438
436
|
/**
|
|
439
437
|
* A single platform artifact the App Solution Architect requires the build to create.
|
|
@@ -473,8 +471,8 @@ export interface AppPlannedArtifact {
|
|
|
473
471
|
/**
|
|
474
472
|
* Structured result the App Solution Architect emits alongside its prose artifacts — the
|
|
475
473
|
* machine-readable contract for the build. The implementation MUST create and successfully
|
|
476
|
-
* exercise every required artifact before
|
|
477
|
-
* {@link APP_CAPABILITY_MANIFEST_PATH} so it survives across runs and the
|
|
474
|
+
* exercise every required artifact before building a deployable version. Persisted into the app repo as
|
|
475
|
+
* {@link APP_CAPABILITY_MANIFEST_PATH} so it survives across runs and the version-build
|
|
478
476
|
* capability gate can verify against it deterministically. If the builder finds the plan
|
|
479
477
|
* wrong or insufficient, the orchestrator relaunches the architect to revise the manifest;
|
|
480
478
|
* the gate always checks against the latest committed copy.
|
|
@@ -499,16 +497,14 @@ export interface AppCapabilityManifest {
|
|
|
499
497
|
notes?: string;
|
|
500
498
|
}
|
|
501
499
|
|
|
502
|
-
/** Repo-relative path the capability manifest is committed to, read by
|
|
500
|
+
/** Repo-relative path the capability manifest is committed to, read by version-build gates. */
|
|
503
501
|
export const APP_CAPABILITY_MANIFEST_PATH = 'docs/app-capability-manifest.json';
|
|
504
|
-
|
|
505
502
|
export type AppAvailableIn = 'app_portal' | 'composite_app';
|
|
506
503
|
|
|
507
|
-
export type AppVersionKind = 'design' | '
|
|
504
|
+
export type AppVersionKind = 'design' | 'version';
|
|
508
505
|
export type AppVersionState = 'ready' | 'failed' | 'expired';
|
|
509
506
|
export type AppVersionTarget = 'static' | 'service';
|
|
510
507
|
export type AppVersionGitRefType = 'branch' | 'tag' | 'commit' | 'detached';
|
|
511
|
-
export type AppBuildIntent = 'preview' | 'publish';
|
|
512
508
|
export type AppBuildTrigger = 'ui' | 'git_push' | 'agent' | 'api';
|
|
513
509
|
|
|
514
510
|
export interface AppVersionStorage {
|
|
@@ -527,8 +523,8 @@ export interface AppVersionGitSource {
|
|
|
527
523
|
url?: string;
|
|
528
524
|
remote?: string;
|
|
529
525
|
/**
|
|
530
|
-
* The source ref that should be used to reproduce this version.
|
|
531
|
-
* app versions
|
|
526
|
+
* The source ref that should be used to reproduce this version. Immutable
|
|
527
|
+
* app versions use the exact commit SHA rather than a mutable branch or tag.
|
|
532
528
|
*/
|
|
533
529
|
ref?: string;
|
|
534
530
|
ref_type?: AppVersionGitRefType;
|
|
@@ -558,13 +554,21 @@ export interface AppVersionRecord {
|
|
|
558
554
|
version_id: string;
|
|
559
555
|
kind: AppVersionKind;
|
|
560
556
|
state: AppVersionState;
|
|
561
|
-
|
|
557
|
+
promoted?: boolean;
|
|
562
558
|
target?: AppVersionTarget;
|
|
563
559
|
agent_run_id?: string;
|
|
560
|
+
/** Development task that produced this version, when built by the app assistant. */
|
|
561
|
+
development_task_id?: string;
|
|
562
|
+
/** Temporal workflow that produced this version. */
|
|
563
|
+
build_workflow_id?: string;
|
|
564
|
+
/** Temporal run that produced this version. */
|
|
565
|
+
build_workflow_run_id?: string;
|
|
564
566
|
sandbox_id?: string;
|
|
565
567
|
title?: string;
|
|
566
568
|
description?: string;
|
|
567
569
|
storage?: AppVersionStorage;
|
|
570
|
+
/** Exact Git commit used to build this immutable version. */
|
|
571
|
+
source_commit?: string;
|
|
568
572
|
urls?: AppVersionUrls;
|
|
569
573
|
manifest?: Record<string, unknown>;
|
|
570
574
|
files?: string[];
|
|
@@ -575,25 +579,41 @@ export interface AppVersionRecord {
|
|
|
575
579
|
created_by?: string;
|
|
576
580
|
created_at: string;
|
|
577
581
|
updated_at: string;
|
|
578
|
-
|
|
582
|
+
built_at?: string;
|
|
579
583
|
checked_at?: string;
|
|
580
584
|
expires_at?: string;
|
|
581
585
|
}
|
|
582
586
|
|
|
587
|
+
export interface DeleteAppVersionResponse {
|
|
588
|
+
id: string;
|
|
589
|
+
app_id: string;
|
|
590
|
+
version_id: string;
|
|
591
|
+
storage_prefix?: string;
|
|
592
|
+
deleted: boolean;
|
|
593
|
+
warnings: string[];
|
|
594
|
+
}
|
|
595
|
+
|
|
583
596
|
export interface UpsertAppVersionRequest {
|
|
597
|
+
/** Existing version record to update in place, used by reproducible rebuilds. */
|
|
598
|
+
record_id?: string;
|
|
584
599
|
app?: string;
|
|
585
600
|
app_id: string;
|
|
586
601
|
app_name?: string;
|
|
587
602
|
version_id: string;
|
|
588
603
|
kind: AppVersionKind;
|
|
589
604
|
state?: AppVersionState;
|
|
590
|
-
active?: boolean;
|
|
591
605
|
target?: AppVersionTarget;
|
|
592
606
|
agent_run_id?: string;
|
|
607
|
+
/** Development task that produced this version, when built by the app assistant. */
|
|
608
|
+
development_task_id?: string;
|
|
609
|
+
build_workflow_id?: string;
|
|
610
|
+
build_workflow_run_id?: string;
|
|
593
611
|
sandbox_id?: string;
|
|
594
612
|
title?: string;
|
|
595
613
|
description?: string;
|
|
596
614
|
storage?: AppVersionStorage;
|
|
615
|
+
/** Exact Git commit used to build this immutable version. */
|
|
616
|
+
source_commit?: string;
|
|
597
617
|
urls?: AppVersionUrls;
|
|
598
618
|
manifest?: Record<string, unknown>;
|
|
599
619
|
files?: string[];
|
|
@@ -601,7 +621,7 @@ export interface UpsertAppVersionRequest {
|
|
|
601
621
|
source_file_count?: number;
|
|
602
622
|
screenshot_artifact?: string;
|
|
603
623
|
checks?: string[];
|
|
604
|
-
|
|
624
|
+
built_at?: string;
|
|
605
625
|
checked_at?: string;
|
|
606
626
|
expires_at?: string;
|
|
607
627
|
}
|
|
@@ -613,7 +633,7 @@ export interface AppVersionListQuery {
|
|
|
613
633
|
limit?: number;
|
|
614
634
|
}
|
|
615
635
|
|
|
616
|
-
export interface
|
|
636
|
+
export interface PromoteAppVersionResponse {
|
|
617
637
|
version: AppVersionRecord;
|
|
618
638
|
app?: AppManifest;
|
|
619
639
|
}
|
|
@@ -621,15 +641,12 @@ export interface ActivateAppVersionResponse {
|
|
|
621
641
|
export interface StartAppBuildRequest {
|
|
622
642
|
/**
|
|
623
643
|
* Source branch, tag, or commit to build. When omitted, the app source
|
|
624
|
-
* configuration chooses
|
|
625
|
-
* for publishes.
|
|
644
|
+
* configuration chooses its default branch.
|
|
626
645
|
*/
|
|
627
646
|
source_ref?: string;
|
|
628
647
|
source_ref_type?: Extract<AppVersionGitRefType, 'branch' | 'tag' | 'commit'>;
|
|
629
|
-
intent?: AppBuildIntent;
|
|
630
648
|
trigger?: AppBuildTrigger;
|
|
631
649
|
target?: AppVersionTarget;
|
|
632
|
-
activate?: boolean;
|
|
633
650
|
title?: string;
|
|
634
651
|
description?: string;
|
|
635
652
|
}
|
|
@@ -638,7 +655,8 @@ export interface StartAppBuildResponse {
|
|
|
638
655
|
workflow_id: string;
|
|
639
656
|
run_id: string;
|
|
640
657
|
app_id: string;
|
|
641
|
-
|
|
658
|
+
version_id?: string;
|
|
659
|
+
rebuild_version_record_id?: string;
|
|
642
660
|
source_ref?: string;
|
|
643
661
|
source_ref_type?: Extract<AppVersionGitRefType, 'branch' | 'tag' | 'commit'>;
|
|
644
662
|
}
|
|
@@ -646,6 +664,8 @@ export interface StartAppBuildResponse {
|
|
|
646
664
|
export interface AppBuildWorkflowInput extends StartAppBuildRequest {
|
|
647
665
|
app_id: string;
|
|
648
666
|
app_record_id?: string;
|
|
667
|
+
/** Rebuild this persisted version record at its original commit and target. */
|
|
668
|
+
rebuild_version_record_id?: string;
|
|
649
669
|
app_title?: string;
|
|
650
670
|
app_description?: string;
|
|
651
671
|
source_git_url?: string;
|
|
@@ -654,8 +674,9 @@ export interface AppBuildWorkflowInput extends StartAppBuildRequest {
|
|
|
654
674
|
export interface AppBuildWorkflowResult {
|
|
655
675
|
app_id: string;
|
|
656
676
|
version_id: string;
|
|
657
|
-
kind: Extract<AppVersionKind, '
|
|
677
|
+
kind: Extract<AppVersionKind, 'version'>;
|
|
658
678
|
state: AppVersionState;
|
|
679
|
+
source_commit: string;
|
|
659
680
|
source_git?: AppVersionGitSource;
|
|
660
681
|
urls?: AppVersionUrls;
|
|
661
682
|
file_count?: number;
|
|
@@ -668,7 +689,6 @@ export interface AppBuildProgress {
|
|
|
668
689
|
step: string;
|
|
669
690
|
app_id?: string;
|
|
670
691
|
version_id?: string;
|
|
671
|
-
intent?: AppBuildIntent;
|
|
672
692
|
source_ref?: string;
|
|
673
693
|
source_ref_type?: Extract<AppVersionGitRefType, 'branch' | 'tag' | 'commit'>;
|
|
674
694
|
source_commit?: string;
|
|
@@ -678,6 +698,68 @@ export interface AppBuildProgress {
|
|
|
678
698
|
updated_at: string;
|
|
679
699
|
}
|
|
680
700
|
|
|
701
|
+
export type AppScaffoldModule = 'service' | 'assistant' | 'content-app' | 'examples';
|
|
702
|
+
|
|
703
|
+
export interface StartAppScaffoldRequest {
|
|
704
|
+
/**
|
|
705
|
+
* App id / package name to create. It is normalized to the same slug rules
|
|
706
|
+
* used by @vertesia/create-plugin.
|
|
707
|
+
*/
|
|
708
|
+
app_id: string;
|
|
709
|
+
title?: string;
|
|
710
|
+
description?: string;
|
|
711
|
+
modules?: AppScaffoldModule[];
|
|
712
|
+
/**
|
|
713
|
+
* Start an initial app version build after the source has been pushed.
|
|
714
|
+
* Defaults to true.
|
|
715
|
+
*/
|
|
716
|
+
create_version?: boolean;
|
|
717
|
+
}
|
|
718
|
+
|
|
719
|
+
export interface StartAppScaffoldResponse {
|
|
720
|
+
workflow_id: string;
|
|
721
|
+
run_id: string;
|
|
722
|
+
app_id: string;
|
|
723
|
+
app_record_id?: string;
|
|
724
|
+
git_url?: string;
|
|
725
|
+
create_version: boolean;
|
|
726
|
+
}
|
|
727
|
+
|
|
728
|
+
export interface AppScaffoldWorkflowInput extends StartAppScaffoldRequest {}
|
|
729
|
+
|
|
730
|
+
export interface AppScaffoldWorkflowResult {
|
|
731
|
+
app_id: string;
|
|
732
|
+
app_record_id?: string;
|
|
733
|
+
installation_id?: string;
|
|
734
|
+
git_url?: string;
|
|
735
|
+
source_git?: AppVersionGitSource;
|
|
736
|
+
files?: number;
|
|
737
|
+
initial_version_build?: StartAppBuildResponse;
|
|
738
|
+
}
|
|
739
|
+
|
|
740
|
+
export type AppScaffoldProgressStatus =
|
|
741
|
+
| 'queued'
|
|
742
|
+
| 'reserving'
|
|
743
|
+
| 'scaffolding'
|
|
744
|
+
| 'pushing'
|
|
745
|
+
| 'building'
|
|
746
|
+
| 'completed'
|
|
747
|
+
| 'failed';
|
|
748
|
+
|
|
749
|
+
export interface AppScaffoldProgress {
|
|
750
|
+
status: AppScaffoldProgressStatus;
|
|
751
|
+
step: string;
|
|
752
|
+
app_id?: string;
|
|
753
|
+
app_record_id?: string;
|
|
754
|
+
installation_id?: string;
|
|
755
|
+
git_url?: string;
|
|
756
|
+
files?: number;
|
|
757
|
+
initial_version_build?: StartAppBuildResponse;
|
|
758
|
+
error?: string;
|
|
759
|
+
error_details?: string[];
|
|
760
|
+
updated_at: string;
|
|
761
|
+
}
|
|
762
|
+
|
|
681
763
|
/**
|
|
682
764
|
* Access control policy for an app installation.
|
|
683
765
|
* Declares which access surfaces are gated by per-user ACEs.
|
|
@@ -832,8 +914,9 @@ export interface AppManifestData {
|
|
|
832
914
|
|
|
833
915
|
/**
|
|
834
916
|
* Source repository configuration for apps generated and maintained through
|
|
835
|
-
* AppGen. Branches are mutable
|
|
836
|
-
* record their exact source
|
|
917
|
+
* AppGen. Branches are mutable development lanes; immutable app versions
|
|
918
|
+
* record their exact source commit in AppVersionRecord.source_commit and
|
|
919
|
+
* AppVersionRecord.storage.source_git.
|
|
837
920
|
*/
|
|
838
921
|
source?: AppSourceConfig;
|
|
839
922
|
|
|
@@ -881,7 +964,7 @@ export interface Endpoints {
|
|
|
881
964
|
ui?: string;
|
|
882
965
|
/** The Smart HTTP app source git server base URL */
|
|
883
966
|
git?: string;
|
|
884
|
-
/** The appgen app-gateway base URL (serves
|
|
967
|
+
/** The appgen app-gateway base URL (serves promoted app bundles + their `/api` runtime). */
|
|
885
968
|
gateway?: string;
|
|
886
969
|
}
|
|
887
970
|
|
|
@@ -927,14 +1010,46 @@ export interface AppRepoTree {
|
|
|
927
1010
|
entries: AppRepoTreeEntry[];
|
|
928
1011
|
}
|
|
929
1012
|
|
|
930
|
-
/**
|
|
931
|
-
export
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
1013
|
+
/** Browser-side limits mirrored by the app Git service document endpoint. */
|
|
1014
|
+
export const APP_REPO_DOCUMENT_UPLOAD_MAX_FILE_BYTES = 20 * 1024 * 1024;
|
|
1015
|
+
export const APP_REPO_DOCUMENT_UPLOAD_MAX_TOTAL_BYTES = 80 * 1024 * 1024;
|
|
1016
|
+
export const APP_REPO_DOCUMENT_UPLOAD_MAX_FILES = 20;
|
|
1017
|
+
export const APP_REPO_DOCUMENT_UPLOAD_PREFIX = 'docs/';
|
|
1018
|
+
|
|
1019
|
+
/** Result of committing one or more uploaded documents to an app repository. */
|
|
1020
|
+
export interface AppRepoDocumentCommit {
|
|
1021
|
+
/** Updated branch name. */
|
|
1022
|
+
ref: string;
|
|
1023
|
+
/** Branch HEAD before the commit. */
|
|
1024
|
+
previous_commit: string;
|
|
1025
|
+
/** Newly created commit SHA. */
|
|
1026
|
+
commit: string;
|
|
1027
|
+
/** Repository paths changed by the commit. */
|
|
1028
|
+
paths: string[];
|
|
1029
|
+
}
|
|
1030
|
+
|
|
1031
|
+
/** One commit that inserted or changed a file in an app git repository. */
|
|
1032
|
+
export interface AppRepoCommit {
|
|
1033
|
+
/** Full commit SHA. */
|
|
1034
|
+
commit: string;
|
|
1035
|
+
/** Complete commit message. */
|
|
1036
|
+
message: string;
|
|
1037
|
+
/** Commit author name, when available. */
|
|
1038
|
+
author?: string;
|
|
1039
|
+
/** Commit author date as an ISO-8601 string, when available. */
|
|
1040
|
+
date?: string;
|
|
1041
|
+
}
|
|
1042
|
+
|
|
1043
|
+
/** Commit history in an app git repository, optionally filtered to a file. */
|
|
1044
|
+
export interface AppRepoCommits {
|
|
1045
|
+
/** Ref from which history traversal started (empty/undefined = default branch / HEAD). */
|
|
935
1046
|
ref?: string;
|
|
936
|
-
/**
|
|
937
|
-
|
|
1047
|
+
/** File path relative to the repository root, when history was filtered to a file. */
|
|
1048
|
+
path?: string;
|
|
1049
|
+
/** Commits ordered newest first. */
|
|
1050
|
+
commits: AppRepoCommit[];
|
|
1051
|
+
/** Pass this cursor to retrieve the next page. Absent when history is exhausted. */
|
|
1052
|
+
next_cursor?: string;
|
|
938
1053
|
}
|
|
939
1054
|
|
|
940
1055
|
/** A branch or tag in an app git repo, resolved to its latest commit. */
|
|
@@ -959,37 +1074,64 @@ export interface AppRepoRefs {
|
|
|
959
1074
|
tags: AppRepoRef[];
|
|
960
1075
|
}
|
|
961
1076
|
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
1077
|
+
/** A mutable app development task represented by an `agent/*` Git branch. */
|
|
1078
|
+
export interface AppDevelopmentTask {
|
|
1079
|
+
/** Task slug derived from the branch name. */
|
|
1080
|
+
id: string;
|
|
1081
|
+
/** Complete Git branch name. */
|
|
1082
|
+
branch: string;
|
|
1083
|
+
/** Commit currently at the branch head. */
|
|
1084
|
+
source_commit: string;
|
|
1085
|
+
/** Branch-head commit date, when available. */
|
|
1086
|
+
commit_date?: string;
|
|
1087
|
+
}
|
|
1088
|
+
|
|
1089
|
+
/** Git-backed development tasks and the branch used for new tasks by default. */
|
|
1090
|
+
export interface AppDevelopmentTaskList {
|
|
1091
|
+
/** Repository default branch, when resolvable. */
|
|
1092
|
+
default_branch?: string;
|
|
1093
|
+
tasks: AppDevelopmentTask[];
|
|
1094
|
+
}
|
|
1095
|
+
|
|
1096
|
+
/** Development task details, including the latest parent assistant run when one exists. */
|
|
1097
|
+
export interface AppDevelopmentTaskDetails extends AppDevelopmentTask {
|
|
1098
|
+
/** Latest Studio Assistant run started for this task branch. */
|
|
1099
|
+
agent_run?: AgentRunSearchHit;
|
|
1100
|
+
}
|
|
1101
|
+
|
|
1102
|
+
/** Request to create a branch from an existing branch, tag, or commit. */
|
|
1103
|
+
export interface CreateAppRepoBranchRequest {
|
|
1104
|
+
name: string;
|
|
1105
|
+
source_ref: string;
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
/** A newly created app repository branch. */
|
|
1109
|
+
export interface AppRepoBranch {
|
|
1110
|
+
name: string;
|
|
1111
|
+
commit: string;
|
|
1112
|
+
source_ref: string;
|
|
1113
|
+
}
|
|
974
1114
|
|
|
975
1115
|
/**
|
|
976
|
-
* Canonical
|
|
977
|
-
*
|
|
978
|
-
* /package?scope= parser, the inspection report) must use this rather than re-listing.
|
|
1116
|
+
* Canonical package scopes, including the catch-all `all`. The public type is derived
|
|
1117
|
+
* from this list so request parsing and TypeScript cannot drift.
|
|
979
1118
|
*/
|
|
980
|
-
export const APP_PACKAGE_SCOPES
|
|
1119
|
+
export const APP_PACKAGE_SCOPES = [
|
|
981
1120
|
'ui',
|
|
982
1121
|
'tools',
|
|
983
1122
|
'interactions',
|
|
984
1123
|
'types',
|
|
985
1124
|
'processes',
|
|
1125
|
+
'views',
|
|
986
1126
|
'templates',
|
|
987
1127
|
'dashboards',
|
|
988
1128
|
'settings',
|
|
989
1129
|
'widgets',
|
|
990
1130
|
'activities',
|
|
991
1131
|
'all',
|
|
992
|
-
];
|
|
1132
|
+
] as const;
|
|
1133
|
+
|
|
1134
|
+
export type AppPackageScope = (typeof APP_PACKAGE_SCOPES)[number];
|
|
993
1135
|
export interface AppPackage {
|
|
994
1136
|
/**
|
|
995
1137
|
* The UI configuration of the app
|
|
@@ -1024,6 +1166,11 @@ export interface AppPackage {
|
|
|
1024
1166
|
*/
|
|
1025
1167
|
processes?: InCodeProcessDefinition[];
|
|
1026
1168
|
|
|
1169
|
+
/**
|
|
1170
|
+
* View Experiences exposed by the app as in-code definitions.
|
|
1171
|
+
*/
|
|
1172
|
+
views?: InCodeViewDefinition[];
|
|
1173
|
+
|
|
1027
1174
|
/**
|
|
1028
1175
|
* Templates provided by the app.
|
|
1029
1176
|
*/
|
|
@@ -1066,14 +1213,14 @@ export interface AppInspectionIssue {
|
|
|
1066
1213
|
}
|
|
1067
1214
|
|
|
1068
1215
|
/**
|
|
1069
|
-
* Per-capability report of what an app's
|
|
1216
|
+
* Per-capability report of what an app's promoted package actually exposes,
|
|
1070
1217
|
* compared against what its manifest declares.
|
|
1071
1218
|
*/
|
|
1072
1219
|
export interface AppInspectionCapabilityReport {
|
|
1073
1220
|
capability: AppPackageScope;
|
|
1074
1221
|
/** True when the manifest's `capabilities` array declares this capability. */
|
|
1075
1222
|
declared: boolean;
|
|
1076
|
-
/** The local ids the
|
|
1223
|
+
/** The local ids the promoted package actually serves for this capability. */
|
|
1077
1224
|
exposed_ids: string[];
|
|
1078
1225
|
/** Convenience count of `exposed_ids`. */
|
|
1079
1226
|
exposed_count: number;
|
|
@@ -1081,7 +1228,7 @@ export interface AppInspectionCapabilityReport {
|
|
|
1081
1228
|
|
|
1082
1229
|
/**
|
|
1083
1230
|
* Result of inspecting an app's registration: the resolved manifest state, what
|
|
1084
|
-
* the
|
|
1231
|
+
* the promoted package actually exposes per capability, and diagnostics. This
|
|
1085
1232
|
* is the ground truth used by the `app_inspect_registration` agent tool and the
|
|
1086
1233
|
* Build › App inspection UI to verify what is registered vs declared, instead of
|
|
1087
1234
|
* inferring it from failed object/import calls.
|
|
@@ -1099,7 +1246,7 @@ export interface AppInspectionResult {
|
|
|
1099
1246
|
access_control?: string;
|
|
1100
1247
|
/** The capabilities declared on the manifest. */
|
|
1101
1248
|
capabilities: AppPackageScope[];
|
|
1102
|
-
/** What the
|
|
1249
|
+
/** What the promoted package exposes, per capability. */
|
|
1103
1250
|
package: AppInspectionCapabilityReport[];
|
|
1104
1251
|
/** Diagnostics — errors and warnings about the registration state. */
|
|
1105
1252
|
issues: AppInspectionIssue[];
|
package/src/audit-trail.ts
CHANGED
|
@@ -19,6 +19,8 @@ export const AUDIT_ACTIONS = [
|
|
|
19
19
|
'inference',
|
|
20
20
|
'embedding',
|
|
21
21
|
'image_generation',
|
|
22
|
+
// Content processing outcomes
|
|
23
|
+
'document_processed',
|
|
22
24
|
] as const;
|
|
23
25
|
|
|
24
26
|
export type KnownAuditAction = (typeof AUDIT_ACTIONS)[number];
|
|
@@ -113,3 +115,84 @@ export interface AuditTrailResponse {
|
|
|
113
115
|
limit: number;
|
|
114
116
|
offset: number;
|
|
115
117
|
}
|
|
118
|
+
|
|
119
|
+
export const AUDIT_AGGREGATION_DIMENSIONS = [
|
|
120
|
+
'time',
|
|
121
|
+
'action',
|
|
122
|
+
'resource_type',
|
|
123
|
+
'event_category',
|
|
124
|
+
'provider',
|
|
125
|
+
'project_id',
|
|
126
|
+
'details.pipeline',
|
|
127
|
+
'details.verdict',
|
|
128
|
+
'details.workflow_type',
|
|
129
|
+
'details.rule_id',
|
|
130
|
+
'model',
|
|
131
|
+
] as const;
|
|
132
|
+
|
|
133
|
+
export type AuditAggregationDimension = (typeof AUDIT_AGGREGATION_DIMENSIONS)[number];
|
|
134
|
+
export type AuditAggregationResolution = 'hour' | 'day' | 'week' | 'month';
|
|
135
|
+
export type AuditAggregationDetailField = 'pipeline' | 'verdict' | 'workflow_type' | 'rule_id';
|
|
136
|
+
export type AuditAggregationOperation = 'count' | 'count_distinct' | 'sum_meter' | 'average_meter';
|
|
137
|
+
export type AuditAggregationDistinctField = 'resource_id' | 'request_id';
|
|
138
|
+
|
|
139
|
+
export interface AuditAggregationGroup {
|
|
140
|
+
dimension: AuditAggregationDimension;
|
|
141
|
+
/** Required for the time dimension; defaults to day. */
|
|
142
|
+
resolution?: AuditAggregationResolution;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
export interface AuditAggregationMetric {
|
|
146
|
+
/** Stable key used in response rows. Must contain only letters, numbers, underscores, or hyphens. */
|
|
147
|
+
id: string;
|
|
148
|
+
operation: AuditAggregationOperation;
|
|
149
|
+
/** Required for count_distinct. */
|
|
150
|
+
field?: AuditAggregationDistinctField;
|
|
151
|
+
/** Required for meter operations. */
|
|
152
|
+
meterCategory?: string;
|
|
153
|
+
/** Required for meter operations. */
|
|
154
|
+
meterType?: string;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export interface AuditAggregationDetailFilter {
|
|
158
|
+
field: AuditAggregationDetailField;
|
|
159
|
+
values: string[];
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
export interface AuditAggregationFilter {
|
|
163
|
+
actions?: AuditAction[];
|
|
164
|
+
resourceTypes?: string[];
|
|
165
|
+
eventCategories?: EventCategory[];
|
|
166
|
+
providers?: string[];
|
|
167
|
+
success?: boolean;
|
|
168
|
+
details?: AuditAggregationDetailFilter[];
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Safe audit aggregation query. The server always applies the authenticated account scope and,
|
|
173
|
+
* for project-scoped principals, replaces projectId with the authenticated project.
|
|
174
|
+
*/
|
|
175
|
+
export interface AuditAggregationQuery {
|
|
176
|
+
/** Optional account-admin project filter. Ignored for project-scoped principals. */
|
|
177
|
+
projectId?: string;
|
|
178
|
+
/** Start time; defaults to 30 days before to. The server caps the range at 366 days. */
|
|
179
|
+
from?: string;
|
|
180
|
+
/** End time; defaults to the current time. */
|
|
181
|
+
to?: string;
|
|
182
|
+
filter?: AuditAggregationFilter;
|
|
183
|
+
groupBy?: AuditAggregationGroup[];
|
|
184
|
+
metrics: AuditAggregationMetric[];
|
|
185
|
+
/** Maximum groups returned (default 50, max 200). */
|
|
186
|
+
limit?: number;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
export interface AuditAggregationRow {
|
|
190
|
+
dimensions: Partial<Record<AuditAggregationDimension, string | null>>;
|
|
191
|
+
metrics: Record<string, number>;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
export interface AuditAggregationResponse {
|
|
195
|
+
rows: AuditAggregationRow[];
|
|
196
|
+
from: string;
|
|
197
|
+
to: string;
|
|
198
|
+
}
|
package/src/environment.ts
CHANGED
|
@@ -91,6 +91,8 @@ export interface TextFallbackOptions {
|
|
|
91
91
|
export interface ExecutionEnvironmentSettings {
|
|
92
92
|
[key: string]: unknown;
|
|
93
93
|
bucket_access_principal?: string;
|
|
94
|
+
/** Custom HTTP headers sent by OpenAI-compatible environments. */
|
|
95
|
+
default_headers?: Record<string, string>;
|
|
94
96
|
}
|
|
95
97
|
|
|
96
98
|
/**
|
package/src/index.ts
CHANGED
|
@@ -37,6 +37,7 @@ export * from './rate-limiter.js';
|
|
|
37
37
|
export * from './refs.js';
|
|
38
38
|
export * from './roles/types.js';
|
|
39
39
|
export * from './runs.js';
|
|
40
|
+
export * from './schema-for-extraction.js';
|
|
40
41
|
export * from './secrets.js';
|
|
41
42
|
export * from './skill.js';
|
|
42
43
|
export * from './store/index.js';
|
|
@@ -74,4 +75,15 @@ export * from './utils/auth.js';
|
|
|
74
75
|
export * from './utils/schemas.js';
|
|
75
76
|
export type * from './utils/type-helpers.js';
|
|
76
77
|
export * from './versions.js';
|
|
78
|
+
export * from './view-configuration-validation.js';
|
|
79
|
+
export * from './view-query-validation.js';
|
|
80
|
+
export * from './view-validation-helpers.js';
|
|
81
|
+
export * from './views.js';
|
|
82
|
+
export * from './views-schema.js';
|
|
83
|
+
export {
|
|
84
|
+
type AppViewExperienceId,
|
|
85
|
+
parseAppViewExperienceId,
|
|
86
|
+
type ViewValidationIssue,
|
|
87
|
+
validateViewExperienceId,
|
|
88
|
+
} from './views-validation.js';
|
|
77
89
|
export * from './workflow-analytics.js';
|