@dazl/api-client 1.0.36 → 1.0.39

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.
@@ -589,6 +589,14 @@ export type WorkspaceRepo = {
589
589
  * Mirrors `Workspace.repoId`; exactly one registered repo is the primary
590
590
  */
591
591
  isPrimary: boolean;
592
+ /**
593
+ * Dazl manages this repo as the workspace's root repo (`dazl-workspace-<name>`): sessions publish their root to it
594
+ */
595
+ isWorkspaceRoot: boolean;
596
+ /**
597
+ * The root repo is attached but not created on GitHub yet; `repoFullName` is a bare name and `gitRepoURL` cannot be cloned
598
+ */
599
+ pendingCreation: boolean;
592
600
  };
593
601
 
594
602
  export type HostSettingsResponse = {
@@ -1008,6 +1016,54 @@ export type EditReplyInput = {
1008
1016
  mentions?: Array<UserMention>;
1009
1017
  };
1010
1018
 
1019
+ export type WorkspaceSecretsResponse = {
1020
+ workspaceId: string | null;
1021
+ /**
1022
+ * One entry per repository that holds a readable copy
1023
+ */
1024
+ secrets: Array<RepoSecretsEntry>;
1025
+ /**
1026
+ * Repositories whose stored copy cannot be served
1027
+ */
1028
+ unreadable: Array<string>;
1029
+ };
1030
+
1031
+ export type RepoSecretsEntry = {
1032
+ repo: string;
1033
+ secrets: string;
1034
+ };
1035
+
1036
+ export type SetWorkspaceSecretsResponse = {
1037
+ stored: boolean;
1038
+ workspaceId: string | null;
1039
+ reason: 'stored' | 'too-many-repos' | 'no-workspace';
1040
+ };
1041
+
1042
+ export type SetWorkspaceSecretsRequest = {
1043
+ repo: string;
1044
+ secrets: string;
1045
+ };
1046
+
1047
+ export type WorkspaceSecretsByWorkspaceResponse = {
1048
+ /**
1049
+ * One entry per repository that holds a readable copy
1050
+ */
1051
+ secrets: Array<RepoSecretsEntry>;
1052
+ /**
1053
+ * Repositories whose stored copy cannot be served
1054
+ */
1055
+ unreadable: Array<string>;
1056
+ };
1057
+
1058
+ export type SetWorkspaceSecretsByWorkspaceResponse = {
1059
+ stored: boolean;
1060
+ reason: 'stored' | 'too-many-repos';
1061
+ };
1062
+
1063
+ export type DeleteWorkspaceSecretsResponse = {
1064
+ removed: boolean;
1065
+ };
1066
+
1011
1067
  export type EnsureMyUserData = {
1012
1068
  body?: {
1013
1069
  name?: string;
@@ -2072,6 +2128,8 @@ export type GetProjectInfoResponses = {
2072
2128
  projectId: string;
2073
2129
  branch: string;
2074
2130
  isPrimary: boolean;
2131
+ isWorkspaceRoot: boolean;
2132
+ pendingCreation: boolean;
2075
2133
  repoFullName: string;
2076
2134
  token: string | null;
2077
2135
  repoId: string;
@@ -2265,11 +2323,161 @@ export type CreateRepositoryResponses = {
2265
2323
  repoFullName: string;
2266
2324
  repoUrl: string;
2267
2325
  branch: string;
2326
+ /**
2327
+ * Set when the repository exists but could not be added to the App installation, so pushes to it will fail until it is
2328
+ */
2329
+ installationWarning?: string;
2268
2330
  };
2269
2331
  };
2270
2332
 
2271
2333
  export type CreateRepositoryResponse = CreateRepositoryResponses[keyof CreateRepositoryResponses];
2272
2334
 
2335
+ export type CreateProjectRepoData = {
2336
+ body?: {
2337
+ dazlId: string;
2338
+ installationId: number;
2339
+ repoName: string;
2340
+ isPrivate?: boolean;
2341
+ description?: string;
2342
+ /**
2343
+ * Directory under the project root the repository will live in; null links it as the project's root (workspace) repository, of which a project has at most one
2344
+ */
2345
+ dirName: string | null;
2346
+ };
2347
+ path: {
2348
+ projectId: string;
2349
+ };
2350
+ query?: never;
2351
+ url: '/github/project/{projectId}/repos';
2352
+ };
2353
+
2354
+ export type CreateProjectRepoErrors = {
2355
+ /**
2356
+ * Bad request - Invalid parameters or malformed JSON
2357
+ */
2358
+ 400: {
2359
+ message: string;
2360
+ issues?: string;
2361
+ };
2362
+ /**
2363
+ * Unauthorized
2364
+ */
2365
+ 401: ErrorResponse;
2366
+ /**
2367
+ * Forbidden
2368
+ */
2369
+ 403: ErrorResponse;
2370
+ /**
2371
+ * Not Found
2372
+ */
2373
+ 404: ErrorResponse;
2374
+ /**
2375
+ * Conflict
2376
+ */
2377
+ 409: ErrorResponse;
2378
+ /**
2379
+ * Internal server error
2380
+ */
2381
+ 500: ErrorResponse;
2382
+ /**
2383
+ * Service Unavailable
2384
+ */
2385
+ 503: ErrorResponse;
2386
+ };
2387
+
2388
+ export type CreateProjectRepoError = CreateProjectRepoErrors[keyof CreateProjectRepoErrors];
2389
+
2390
+ export type CreateProjectRepoResponses = {
2391
+ /**
2392
+ * Repository created and linked to the project at dirName
2393
+ */
2394
+ 200: {
2395
+ repoId: string;
2396
+ repoFullName: string;
2397
+ repoUrl: string;
2398
+ branch: string;
2399
+ dirName: string | null;
2400
+ /**
2401
+ * Set when the repository exists but could not be added to the App installation, so pushes to it will fail until it is
2402
+ */
2403
+ installationWarning?: string;
2404
+ };
2405
+ };
2406
+
2407
+ export type CreateProjectRepoResponse = CreateProjectRepoResponses[keyof CreateProjectRepoResponses];
2408
+
2409
+ export type CreateWorkspaceRootRepoData = {
2410
+ body?: {
2411
+ dazlId: string;
2412
+ installationId: number;
2413
+ isPrivate?: boolean;
2414
+ description?: string;
2415
+ };
2416
+ path: {
2417
+ workspaceId: string;
2418
+ };
2419
+ query?: never;
2420
+ url: '/github/workspace/{workspaceId}/root-repo';
2421
+ };
2422
+
2423
+ export type CreateWorkspaceRootRepoErrors = {
2424
+ /**
2425
+ * Bad request - Invalid parameters or malformed JSON
2426
+ */
2427
+ 400: {
2428
+ message: string;
2429
+ issues?: string;
2430
+ };
2431
+ /**
2432
+ * Unauthorized
2433
+ */
2434
+ 401: ErrorResponse;
2435
+ /**
2436
+ * Forbidden
2437
+ */
2438
+ 403: ErrorResponse;
2439
+ /**
2440
+ * Not Found
2441
+ */
2442
+ 404: ErrorResponse;
2443
+ /**
2444
+ * Conflict
2445
+ */
2446
+ 409: ErrorResponse;
2447
+ /**
2448
+ * Internal server error
2449
+ */
2450
+ 500: ErrorResponse;
2451
+ /**
2452
+ * Service Unavailable
2453
+ */
2454
+ 503: ErrorResponse;
2455
+ };
2456
+
2457
+ export type CreateWorkspaceRootRepoError = CreateWorkspaceRootRepoErrors[keyof CreateWorkspaceRootRepoErrors];
2458
+
2459
+ export type CreateWorkspaceRootRepoResponses = {
2460
+ /**
2461
+ * The workspace root repository now exists on GitHub
2462
+ */
2463
+ 200: {
2464
+ repoId: string;
2465
+ repoFullName: string;
2466
+ repoUrl: string;
2467
+ branch: string;
2468
+ /**
2469
+ * Sessions of the workspace that now have it as their root repo
2470
+ */
2471
+ linkedProjects: number;
2472
+ /**
2473
+ * Set when the repository exists but could not be added to the App installation, so pushes to it will fail until it is
2474
+ */
2475
+ installationWarning?: string;
2476
+ };
2477
+ };
2478
+
2479
+ export type CreateWorkspaceRootRepoResponse = CreateWorkspaceRootRepoResponses[keyof CreateWorkspaceRootRepoResponses];
2480
+
2273
2481
  export type GetOAuthUrlData = {
2274
2482
  body?: never;
2275
2483
  path?: never;
@@ -3418,11 +3626,18 @@ export type GetProjectInitDataResponses = {
3418
3626
  gitRepoURL: string;
3419
3627
  gitBranchToClone: string | null;
3420
3628
  gitBranchToCreate: string | null;
3629
+ /**
3630
+ * Directory under the project root to clone into; '' is the project root itself (the workspace root repo)
3631
+ */
3421
3632
  dirName: string;
3422
3633
  attemptCount: number;
3423
3634
  position: number;
3424
3635
  createdAt: string;
3425
3636
  updatedAt: string;
3637
+ /**
3638
+ * The repo is the workspace's Dazl-managed root repository: the container clones it AS the session root and marks the root as engine-owned
3639
+ */
3640
+ isWorkspaceRoot?: boolean;
3426
3641
  }>;
3427
3642
  };
3428
3643
  };
@@ -3701,10 +3916,18 @@ export type ListProjectReposResponses = {
3701
3916
  repoFullName: string;
3702
3917
  host: string;
3703
3918
  /**
3704
- * Directory under the project root the repo was cloned into; null for legacy root-layout repos
3919
+ * Directory under the project root the repo was cloned into; null for the root repo (legacy root-layout repos, and the workspace root repo)
3705
3920
  */
3706
3921
  dirName: string | null;
3707
3922
  hasActiveInstallation: boolean;
3923
+ /**
3924
+ * Dazl-managed workspace root repository (`dazl-workspace-<name>`)
3925
+ */
3926
+ isWorkspaceRoot: boolean;
3927
+ /**
3928
+ * Attached but not created on GitHub yet; nothing can clone or push to it
3929
+ */
3930
+ pendingCreation: boolean;
3708
3931
  }>;
3709
3932
  /**
3710
3933
  * Repos awaiting their clone by the session container
@@ -3716,11 +3939,18 @@ export type ListProjectReposResponses = {
3716
3939
  gitRepoURL: string;
3717
3940
  gitBranchToClone: string | null;
3718
3941
  gitBranchToCreate: string | null;
3942
+ /**
3943
+ * Directory under the project root to clone into; '' is the project root itself (the workspace root repo)
3944
+ */
3719
3945
  dirName: string;
3720
3946
  attemptCount: number;
3721
3947
  position: number;
3722
3948
  createdAt: string;
3723
3949
  updatedAt: string;
3950
+ /**
3951
+ * The repo is the workspace's Dazl-managed root repository: the container clones it AS the session root and marks the root as engine-owned
3952
+ */
3953
+ isWorkspaceRoot?: boolean;
3724
3954
  }>;
3725
3955
  };
3726
3956
  };
@@ -3792,11 +4022,18 @@ export type AddProjectRepoResponses = {
3792
4022
  gitRepoURL: string;
3793
4023
  gitBranchToClone: string | null;
3794
4024
  gitBranchToCreate: string | null;
4025
+ /**
4026
+ * Directory under the project root to clone into; '' is the project root itself (the workspace root repo)
4027
+ */
3795
4028
  dirName: string;
3796
4029
  attemptCount: number;
3797
4030
  position: number;
3798
4031
  createdAt: string;
3799
4032
  updatedAt: string;
4033
+ /**
4034
+ * The repo is the workspace's Dazl-managed root repository: the container clones it AS the session root and marks the root as engine-owned
4035
+ */
4036
+ isWorkspaceRoot?: boolean;
3800
4037
  };
3801
4038
  };
3802
4039
  };
@@ -5447,6 +5684,9 @@ export type CreateChatResponses = {
5447
5684
  archived: boolean;
5448
5685
  createdByUserId: string;
5449
5686
  schemaVersion: number;
5687
+ metadata: {
5688
+ [key: string]: unknown;
5689
+ } | null;
5450
5690
  createdAt: string;
5451
5691
  updatedAt: string;
5452
5692
  pinnedContext?: unknown;
@@ -5520,6 +5760,9 @@ export type ListProjectChatsResponses = {
5520
5760
  archived: boolean;
5521
5761
  createdByUserId: string;
5522
5762
  schemaVersion: number;
5763
+ metadata: {
5764
+ [key: string]: unknown;
5765
+ } | null;
5523
5766
  createdAt: string;
5524
5767
  updatedAt: string;
5525
5768
  }>;
@@ -5648,6 +5891,9 @@ export type GetChatResponses = {
5648
5891
  archived: boolean;
5649
5892
  createdByUserId: string;
5650
5893
  schemaVersion: number;
5894
+ metadata: {
5895
+ [key: string]: unknown;
5896
+ } | null;
5651
5897
  createdAt: string;
5652
5898
  updatedAt: string;
5653
5899
  pinnedContext?: unknown;
@@ -5668,6 +5914,9 @@ export type UpdateChatData = {
5668
5914
  archived: boolean;
5669
5915
  pinnedContext?: unknown;
5670
5916
  agentSession?: unknown;
5917
+ metadata?: {
5918
+ [key: string]: unknown;
5919
+ } | null;
5671
5920
  schemaVersion: number;
5672
5921
  messages: Array<{
5673
5922
  id: string;
@@ -5730,6 +5979,9 @@ export type UpdateChatResponses = {
5730
5979
  archived: boolean;
5731
5980
  createdByUserId: string;
5732
5981
  schemaVersion: number;
5982
+ metadata: {
5983
+ [key: string]: unknown;
5984
+ } | null;
5733
5985
  createdAt: string;
5734
5986
  updatedAt: string;
5735
5987
  pinnedContext?: unknown;
@@ -10496,3 +10748,331 @@ export type EditReplyResponses = {
10496
10748
  };
10497
10749
 
10498
10750
  export type EditReplyResponse = EditReplyResponses[keyof EditReplyResponses];
10751
+
10752
+ export type DeleteWorkspaceSecretsForProjectData = {
10753
+ body?: never;
10754
+ path: {
10755
+ projectId: string;
10756
+ };
10757
+ query: {
10758
+ repo: string;
10759
+ };
10760
+ url: '/workspace-secrets/{projectId}';
10761
+ };
10762
+
10763
+ export type DeleteWorkspaceSecretsForProjectErrors = {
10764
+ /**
10765
+ * Bad request - Invalid parameters or malformed JSON
10766
+ */
10767
+ 400: {
10768
+ message: string;
10769
+ issues?: string;
10770
+ };
10771
+ /**
10772
+ * Unauthorized
10773
+ */
10774
+ 401: ErrorResponse;
10775
+ /**
10776
+ * Forbidden
10777
+ */
10778
+ 403: ErrorResponse;
10779
+ /**
10780
+ * Not Found
10781
+ */
10782
+ 404: ErrorResponse;
10783
+ /**
10784
+ * Conflict
10785
+ */
10786
+ 409: ErrorResponse;
10787
+ /**
10788
+ * Internal server error
10789
+ */
10790
+ 500: ErrorResponse;
10791
+ /**
10792
+ * Service Unavailable
10793
+ */
10794
+ 503: ErrorResponse;
10795
+ };
10796
+
10797
+ export type DeleteWorkspaceSecretsForProjectError = DeleteWorkspaceSecretsForProjectErrors[keyof DeleteWorkspaceSecretsForProjectErrors];
10798
+
10799
+ export type DeleteWorkspaceSecretsForProjectResponses = {
10800
+ /**
10801
+ * Whether an entry was removed
10802
+ */
10803
+ 200: DeleteWorkspaceSecretsResponse;
10804
+ };
10805
+
10806
+ export type DeleteWorkspaceSecretsForProjectResponse = DeleteWorkspaceSecretsForProjectResponses[keyof DeleteWorkspaceSecretsForProjectResponses];
10807
+
10808
+ export type GetWorkspaceSecretsForProjectData = {
10809
+ body?: never;
10810
+ path: {
10811
+ projectId: string;
10812
+ };
10813
+ query?: never;
10814
+ url: '/workspace-secrets/{projectId}';
10815
+ };
10816
+
10817
+ export type GetWorkspaceSecretsForProjectErrors = {
10818
+ /**
10819
+ * Bad request - Invalid parameters or malformed JSON
10820
+ */
10821
+ 400: {
10822
+ message: string;
10823
+ issues?: string;
10824
+ };
10825
+ /**
10826
+ * Unauthorized
10827
+ */
10828
+ 401: ErrorResponse;
10829
+ /**
10830
+ * Forbidden
10831
+ */
10832
+ 403: ErrorResponse;
10833
+ /**
10834
+ * Not Found
10835
+ */
10836
+ 404: ErrorResponse;
10837
+ /**
10838
+ * Conflict
10839
+ */
10840
+ 409: ErrorResponse;
10841
+ /**
10842
+ * Internal server error
10843
+ */
10844
+ 500: ErrorResponse;
10845
+ /**
10846
+ * Service Unavailable
10847
+ */
10848
+ 503: ErrorResponse;
10849
+ };
10850
+
10851
+ export type GetWorkspaceSecretsForProjectError = GetWorkspaceSecretsForProjectErrors[keyof GetWorkspaceSecretsForProjectErrors];
10852
+
10853
+ export type GetWorkspaceSecretsForProjectResponses = {
10854
+ /**
10855
+ * The workspace's stored `.env` files, by repository
10856
+ */
10857
+ 200: WorkspaceSecretsResponse;
10858
+ };
10859
+
10860
+ export type GetWorkspaceSecretsForProjectResponse = GetWorkspaceSecretsForProjectResponses[keyof GetWorkspaceSecretsForProjectResponses];
10861
+
10862
+ export type SetWorkspaceSecretsForProjectData = {
10863
+ body: SetWorkspaceSecretsRequest;
10864
+ path: {
10865
+ projectId: string;
10866
+ };
10867
+ query?: never;
10868
+ url: '/workspace-secrets/{projectId}';
10869
+ };
10870
+
10871
+ export type SetWorkspaceSecretsForProjectErrors = {
10872
+ /**
10873
+ * Bad request - Invalid parameters or malformed JSON
10874
+ */
10875
+ 400: {
10876
+ message: string;
10877
+ issues?: string;
10878
+ };
10879
+ /**
10880
+ * Unauthorized
10881
+ */
10882
+ 401: ErrorResponse;
10883
+ /**
10884
+ * Forbidden
10885
+ */
10886
+ 403: ErrorResponse;
10887
+ /**
10888
+ * Not Found
10889
+ */
10890
+ 404: ErrorResponse;
10891
+ /**
10892
+ * Conflict
10893
+ */
10894
+ 409: ErrorResponse;
10895
+ /**
10896
+ * Internal server error
10897
+ */
10898
+ 500: ErrorResponse;
10899
+ /**
10900
+ * Service Unavailable
10901
+ */
10902
+ 503: ErrorResponse;
10903
+ };
10904
+
10905
+ export type SetWorkspaceSecretsForProjectError = SetWorkspaceSecretsForProjectErrors[keyof SetWorkspaceSecretsForProjectErrors];
10906
+
10907
+ export type SetWorkspaceSecretsForProjectResponses = {
10908
+ /**
10909
+ * Whether the copy was stored
10910
+ */
10911
+ 200: SetWorkspaceSecretsResponse;
10912
+ };
10913
+
10914
+ export type SetWorkspaceSecretsForProjectResponse = SetWorkspaceSecretsForProjectResponses[keyof SetWorkspaceSecretsForProjectResponses];
10915
+
10916
+ export type DeleteWorkspaceSecretsData = {
10917
+ body?: never;
10918
+ path: {
10919
+ workspaceId: string;
10920
+ };
10921
+ query: {
10922
+ repo: string;
10923
+ };
10924
+ url: '/workspace-secrets/workspace/{workspaceId}';
10925
+ };
10926
+
10927
+ export type DeleteWorkspaceSecretsErrors = {
10928
+ /**
10929
+ * Bad request - Invalid parameters or malformed JSON
10930
+ */
10931
+ 400: {
10932
+ message: string;
10933
+ issues?: string;
10934
+ };
10935
+ /**
10936
+ * Unauthorized
10937
+ */
10938
+ 401: ErrorResponse;
10939
+ /**
10940
+ * Forbidden
10941
+ */
10942
+ 403: ErrorResponse;
10943
+ /**
10944
+ * Not Found
10945
+ */
10946
+ 404: ErrorResponse;
10947
+ /**
10948
+ * Conflict
10949
+ */
10950
+ 409: ErrorResponse;
10951
+ /**
10952
+ * Internal server error
10953
+ */
10954
+ 500: ErrorResponse;
10955
+ /**
10956
+ * Service Unavailable
10957
+ */
10958
+ 503: ErrorResponse;
10959
+ };
10960
+
10961
+ export type DeleteWorkspaceSecretsError = DeleteWorkspaceSecretsErrors[keyof DeleteWorkspaceSecretsErrors];
10962
+
10963
+ export type DeleteWorkspaceSecretsResponses = {
10964
+ /**
10965
+ * Whether an entry was removed
10966
+ */
10967
+ 200: DeleteWorkspaceSecretsResponse;
10968
+ };
10969
+
10970
+ export type DeleteWorkspaceSecretsResponse2 = DeleteWorkspaceSecretsResponses[keyof DeleteWorkspaceSecretsResponses];
10971
+
10972
+ export type GetWorkspaceSecretsData = {
10973
+ body?: never;
10974
+ path: {
10975
+ workspaceId: string;
10976
+ };
10977
+ query?: never;
10978
+ url: '/workspace-secrets/workspace/{workspaceId}';
10979
+ };
10980
+
10981
+ export type GetWorkspaceSecretsErrors = {
10982
+ /**
10983
+ * Bad request - Invalid parameters or malformed JSON
10984
+ */
10985
+ 400: {
10986
+ message: string;
10987
+ issues?: string;
10988
+ };
10989
+ /**
10990
+ * Unauthorized
10991
+ */
10992
+ 401: ErrorResponse;
10993
+ /**
10994
+ * Forbidden
10995
+ */
10996
+ 403: ErrorResponse;
10997
+ /**
10998
+ * Not Found
10999
+ */
11000
+ 404: ErrorResponse;
11001
+ /**
11002
+ * Conflict
11003
+ */
11004
+ 409: ErrorResponse;
11005
+ /**
11006
+ * Internal server error
11007
+ */
11008
+ 500: ErrorResponse;
11009
+ /**
11010
+ * Service Unavailable
11011
+ */
11012
+ 503: ErrorResponse;
11013
+ };
11014
+
11015
+ export type GetWorkspaceSecretsError = GetWorkspaceSecretsErrors[keyof GetWorkspaceSecretsErrors];
11016
+
11017
+ export type GetWorkspaceSecretsResponses = {
11018
+ /**
11019
+ * The workspace's stored `.env` files, by repository
11020
+ */
11021
+ 200: WorkspaceSecretsByWorkspaceResponse;
11022
+ };
11023
+
11024
+ export type GetWorkspaceSecretsResponse = GetWorkspaceSecretsResponses[keyof GetWorkspaceSecretsResponses];
11025
+
11026
+ export type SetWorkspaceSecretsData = {
11027
+ body: SetWorkspaceSecretsRequest;
11028
+ path: {
11029
+ workspaceId: string;
11030
+ };
11031
+ query?: never;
11032
+ url: '/workspace-secrets/workspace/{workspaceId}';
11033
+ };
11034
+
11035
+ export type SetWorkspaceSecretsErrors = {
11036
+ /**
11037
+ * Bad request - Invalid parameters or malformed JSON
11038
+ */
11039
+ 400: {
11040
+ message: string;
11041
+ issues?: string;
11042
+ };
11043
+ /**
11044
+ * Unauthorized
11045
+ */
11046
+ 401: ErrorResponse;
11047
+ /**
11048
+ * Forbidden
11049
+ */
11050
+ 403: ErrorResponse;
11051
+ /**
11052
+ * Not Found
11053
+ */
11054
+ 404: ErrorResponse;
11055
+ /**
11056
+ * Conflict
11057
+ */
11058
+ 409: ErrorResponse;
11059
+ /**
11060
+ * Internal server error
11061
+ */
11062
+ 500: ErrorResponse;
11063
+ /**
11064
+ * Service Unavailable
11065
+ */
11066
+ 503: ErrorResponse;
11067
+ };
11068
+
11069
+ export type SetWorkspaceSecretsError = SetWorkspaceSecretsErrors[keyof SetWorkspaceSecretsErrors];
11070
+
11071
+ export type SetWorkspaceSecretsResponses = {
11072
+ /**
11073
+ * Whether the copy was stored
11074
+ */
11075
+ 200: SetWorkspaceSecretsByWorkspaceResponse;
11076
+ };
11077
+
11078
+ export type SetWorkspaceSecretsResponse2 = SetWorkspaceSecretsResponses[keyof SetWorkspaceSecretsResponses];
@@ -105,6 +105,14 @@ export type WorkspaceRepo = {
105
105
  * Mirrors `Workspace.repoId`; exactly one registered repo is the primary
106
106
  */
107
107
  isPrimary: boolean;
108
+ /**
109
+ * Dazl manages this repo as the workspace's root repo (`dazl-workspace-<name>`): sessions publish their root to it
110
+ */
111
+ isWorkspaceRoot: boolean;
112
+ /**
113
+ * The root repo is attached but not created on GitHub yet; `repoFullName` is a bare name and `gitRepoURL` cannot be cloned
114
+ */
115
+ pendingCreation: boolean;
108
116
  };
109
117
 
110
118
  export type HostSettingsResponse = {