@trebired/git-host 2.1.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +327 -6
  3. package/bin/git-host-actions-runner-darwin-arm64 +0 -0
  4. package/bin/git-host-actions-runner-darwin-x64 +0 -0
  5. package/bin/git-host-actions-runner-linux-arm64-gnu +0 -0
  6. package/bin/git-host-actions-runner-linux-x64-gnu +0 -0
  7. package/dist/api/forge/actions.d.ts +6 -3
  8. package/dist/api/forge/actions.d.ts.map +1 -1
  9. package/dist/api/forge/actions.js +46 -10
  10. package/dist/api/forge/actions.js.map +1 -1
  11. package/dist/api/forge/route.d.ts +10 -0
  12. package/dist/api/forge/route.d.ts.map +1 -1
  13. package/dist/api/forge/route.js +6 -0
  14. package/dist/api/forge/route.js.map +1 -1
  15. package/dist/api/forge/socket.d.ts.map +1 -1
  16. package/dist/api/forge/socket.js +4 -148
  17. package/dist/api/forge/socket.js.map +1 -1
  18. package/dist/api/forge/socket_subscription.d.ts +10 -0
  19. package/dist/api/forge/socket_subscription.d.ts.map +1 -0
  20. package/dist/api/forge/socket_subscription.js +202 -0
  21. package/dist/api/forge/socket_subscription.js.map +1 -0
  22. package/dist/api/handler/action.d.ts.map +1 -1
  23. package/dist/api/handler/action.js +24 -18
  24. package/dist/api/handler/action.js.map +1 -1
  25. package/dist/api/socket/linguist_connection.d.ts +9 -0
  26. package/dist/api/socket/linguist_connection.d.ts.map +1 -0
  27. package/dist/api/socket/linguist_connection.js +167 -0
  28. package/dist/api/socket/linguist_connection.js.map +1 -0
  29. package/dist/api/socket/server.d.ts.map +1 -1
  30. package/dist/api/socket/server.js +4 -119
  31. package/dist/api/socket/server.js.map +1 -1
  32. package/dist/core/actions/artifacts.d.ts +21 -0
  33. package/dist/core/actions/artifacts.d.ts.map +1 -0
  34. package/dist/core/actions/artifacts.js +121 -0
  35. package/dist/core/actions/artifacts.js.map +1 -0
  36. package/dist/core/actions/environment.d.ts +9 -0
  37. package/dist/core/actions/environment.d.ts.map +1 -0
  38. package/dist/core/actions/environment.js +64 -0
  39. package/dist/core/actions/environment.js.map +1 -0
  40. package/dist/core/actions/expressions.d.ts +15 -0
  41. package/dist/core/actions/expressions.d.ts.map +1 -0
  42. package/dist/core/actions/expressions.js +279 -0
  43. package/dist/core/actions/expressions.js.map +1 -0
  44. package/dist/core/actions/go_runner.d.ts +6 -0
  45. package/dist/core/actions/go_runner.d.ts.map +1 -0
  46. package/dist/core/actions/go_runner.js +106 -0
  47. package/dist/core/actions/go_runner.js.map +1 -0
  48. package/dist/core/actions/local_runner.d.ts +33 -0
  49. package/dist/core/actions/local_runner.d.ts.map +1 -0
  50. package/dist/core/actions/local_runner.js +173 -0
  51. package/dist/core/actions/local_runner.js.map +1 -0
  52. package/dist/core/actions/node_runner.d.ts +4 -0
  53. package/dist/core/actions/node_runner.d.ts.map +1 -0
  54. package/dist/core/actions/node_runner.js +176 -0
  55. package/dist/core/actions/node_runner.js.map +1 -0
  56. package/dist/core/actions/normalize.d.ts +7 -0
  57. package/dist/core/actions/normalize.d.ts.map +1 -0
  58. package/dist/core/actions/normalize.js +401 -0
  59. package/dist/core/actions/normalize.js.map +1 -0
  60. package/dist/core/actions/planner.d.ts +13 -0
  61. package/dist/core/actions/planner.d.ts.map +1 -0
  62. package/dist/core/actions/planner.js +106 -0
  63. package/dist/core/actions/planner.js.map +1 -0
  64. package/dist/core/actions/redaction.d.ts +16 -0
  65. package/dist/core/actions/redaction.d.ts.map +1 -0
  66. package/dist/core/actions/redaction.js +43 -0
  67. package/dist/core/actions/redaction.js.map +1 -0
  68. package/dist/core/actions/release_assets.d.ts +31 -0
  69. package/dist/core/actions/release_assets.d.ts.map +1 -0
  70. package/dist/core/actions/release_assets.js +114 -0
  71. package/dist/core/actions/release_assets.js.map +1 -0
  72. package/dist/core/actions/runner/launch.d.ts +5 -0
  73. package/dist/core/actions/runner/launch.d.ts.map +1 -0
  74. package/dist/core/actions/runner/launch.js +100 -0
  75. package/dist/core/actions/runner/launch.js.map +1 -0
  76. package/dist/core/actions/runner/protocol.d.ts +7 -0
  77. package/dist/core/actions/runner/protocol.d.ts.map +1 -0
  78. package/dist/core/actions/runner/protocol.js +66 -0
  79. package/dist/core/actions/runner/protocol.js.map +1 -0
  80. package/dist/core/actions/runner.d.ts +6 -0
  81. package/dist/core/actions/runner.d.ts.map +1 -0
  82. package/dist/core/actions/runner.js +13 -0
  83. package/dist/core/actions/runner.js.map +1 -0
  84. package/dist/core/actions/sandbox.d.ts +4 -0
  85. package/dist/core/actions/sandbox.d.ts.map +1 -0
  86. package/dist/core/actions/sandbox.js +46 -0
  87. package/dist/core/actions/sandbox.js.map +1 -0
  88. package/dist/core/{actions_runner.d.ts → actions/types.d.ts} +38 -6
  89. package/dist/core/actions/types.d.ts.map +1 -0
  90. package/dist/core/actions/types.js +2 -0
  91. package/dist/core/actions/types.js.map +1 -0
  92. package/dist/core/{actions_workflows.d.ts → actions/workflows.d.ts} +4 -4
  93. package/dist/core/actions/workflows.d.ts.map +1 -0
  94. package/dist/core/{actions_workflows.js → actions/workflows.js} +40 -100
  95. package/dist/core/actions/workflows.js.map +1 -0
  96. package/dist/core/actions/workspace.d.ts +7 -0
  97. package/dist/core/actions/workspace.d.ts.map +1 -0
  98. package/dist/core/actions/workspace.js +47 -0
  99. package/dist/core/actions/workspace.js.map +1 -0
  100. package/dist/core/activity.d.ts.map +1 -1
  101. package/dist/core/activity.js +57 -39
  102. package/dist/core/activity.js.map +1 -1
  103. package/dist/core/archive_cache_filesystem.d.ts.map +1 -1
  104. package/dist/core/archive_cache_filesystem.js +39 -33
  105. package/dist/core/archive_cache_filesystem.js.map +1 -1
  106. package/dist/core/create/git/forge.d.ts.map +1 -1
  107. package/dist/core/create/git/forge.js +12 -2
  108. package/dist/core/create/git/forge.js.map +1 -1
  109. package/dist/core/create_git_host/remote_methods.js.map +1 -1
  110. package/dist/core/forge_actions.d.ts +10 -2
  111. package/dist/core/forge_actions.d.ts.map +1 -1
  112. package/dist/core/forge_actions.js +1025 -160
  113. package/dist/core/forge_actions.js.map +1 -1
  114. package/dist/core/git_forge/storage_memory.d.ts.map +1 -1
  115. package/dist/core/git_forge/storage_memory.js +72 -2
  116. package/dist/core/git_forge/storage_memory.js.map +1 -1
  117. package/dist/core/repository/parsers.d.ts.map +1 -1
  118. package/dist/core/repository/parsers.js +45 -32
  119. package/dist/core/repository/parsers.js.map +1 -1
  120. package/dist/core/run_git/process.d.ts.map +1 -1
  121. package/dist/core/run_git/process.js +19 -18
  122. package/dist/core/run_git/process.js.map +1 -1
  123. package/dist/core/working_tree/read.d.ts.map +1 -1
  124. package/dist/core/working_tree/read.js +26 -32
  125. package/dist/core/working_tree/read.js.map +1 -1
  126. package/dist/index.d.ts +2 -1
  127. package/dist/index.d.ts.map +1 -1
  128. package/dist/index.js +1 -0
  129. package/dist/index.js.map +1 -1
  130. package/dist/types/forge/activity.d.ts +52 -0
  131. package/dist/types/forge/activity.d.ts.map +1 -0
  132. package/dist/types/forge/activity.js +2 -0
  133. package/dist/types/forge/activity.js.map +1 -0
  134. package/dist/types/forge/api.d.ts +116 -0
  135. package/dist/types/forge/api.d.ts.map +1 -0
  136. package/dist/types/forge/api.js +2 -0
  137. package/dist/types/forge/api.js.map +1 -0
  138. package/dist/types/forge/releases.d.ts +98 -0
  139. package/dist/types/forge/releases.d.ts.map +1 -0
  140. package/dist/types/forge/releases.js +2 -0
  141. package/dist/types/forge/releases.js.map +1 -0
  142. package/dist/types/forge/social_forks.d.ts +51 -0
  143. package/dist/types/forge/social_forks.d.ts.map +1 -0
  144. package/dist/types/forge/social_forks.js +2 -0
  145. package/dist/types/forge/social_forks.js.map +1 -0
  146. package/dist/types/forge/workflows.d.ts +361 -0
  147. package/dist/types/forge/workflows.d.ts.map +1 -0
  148. package/dist/types/forge/workflows.js +2 -0
  149. package/dist/types/forge/workflows.js.map +1 -0
  150. package/dist/types/forge.d.ts +5 -475
  151. package/dist/types/forge.d.ts.map +1 -1
  152. package/dist/types/host/archive.d.ts.map +1 -1
  153. package/dist/types/host/options.d.ts.map +1 -1
  154. package/dist/types/host/service.d.ts.map +1 -1
  155. package/dist/types/index.d.ts +1 -1
  156. package/dist/types/index.d.ts.map +1 -1
  157. package/package.json +38 -9
  158. package/dist/core/actions_runner.d.ts.map +0 -1
  159. package/dist/core/actions_runner.js +0 -414
  160. package/dist/core/actions_runner.js.map +0 -1
  161. package/dist/core/actions_workflows.d.ts.map +0 -1
  162. package/dist/core/actions_workflows.js.map +0 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,31 @@ All notable changes to `@trebired/git-host` will be documented here.
4
4
 
5
5
  This project follows semantic versioning once published.
6
6
 
7
+ ## 3.0.0
8
+
9
+ - **Security (breaking):** the Actions execution engine no longer spreads the embedding process's full `process.env` into workflow steps. Previously every step inherited the entire host environment, so any caller who could trigger a run could read (and echo) host process secrets, and those inherited values were not redacted from logs. Steps now run with a minimal, clean base env.
10
+ - Added a documented default passthrough allowlist needed for tooling to work — `PATH`, `HOME`, `LANG`, `LC_ALL`, `TZ`, `TERM` (plus the platform equivalents on Windows) — with everything else opt-in.
11
+ - Added `actions.environment` configuration: `passthrough` (additive allowlist of `process.env` keys), `baseEnv` (explicit key/value pairs), `sensitiveKeys` (key names whose resolved values are always masked), and `inheritProcessEnv` (explicit, warning-logged opt-in that reproduces the pre-3.0 full-inheritance behavior exactly).
12
+ - Extended output redaction so all values from the secrets map plus any `environment.sensitiveKeys` are masked in `step.output`/`job.output` event chunks, step output previews, and step summaries derived from step/action errors.
13
+ - Added off-by-default local-runner isolation hooks under `actions.localRunner`: `uid`/`gid` privilege drop (passed to `spawn` where supported), `execTimeoutMs` per-step wall-clock kill (SIGTERM → SIGKILL), and a `beforeSpawn(childSpec)` hook so callers can wrap the step shell in their own sandbox (bwrap/nsjail/container) without forking. Documented the local-runner trust boundary: it executes arbitrary code as the host user, so only trusted workflows should run on it.
14
+ - Added `createBubblewrapSandbox()`, a batteries-included `beforeSpawn` sandbox for Linux that wraps each step in `bwrap` with an isolated filesystem view (read-only system paths plus a writable job workspace), no network by default, and fresh pid/ipc/uts/user namespaces — configurable via `allowNetwork`, `roBind`, `bind`, `systemPaths`, and `bwrapPath`.
15
+ - Added a startup warning when the local runner would execute steps as root with no `localRunner.uid` drop and no `beforeSpawn` sandbox (workflow code would run as root on the host).
16
+ - Corrected the published package `license` metadata to `AGPL-3.0-only` to match the bundled `LICENSE`.
17
+
18
+ **Migration:** if a workflow relied on an inherited host env variable, add it to `actions.environment.passthrough` (or `actions.environment.baseEnv`), or set `actions.environment.inheritProcessEnv: true` to restore the previous behavior.
19
+
20
+ ## 2.2.0
21
+
22
+ - Added a GitHub-Actions-inspired workflow schema (`gha-subset-v1`) alongside the existing flat shell-step format: `on.workflow_dispatch.inputs`, `on.push.branches`/`tags`, top-level `env`/`permissions`/`concurrency`, and multiple `jobs` with `runs-on`, `needs`, `if`, `env`, and `strategy.matrix`, normalized and validated against an explicit supported subset. Old flat workflow files keep running unchanged.
23
+ - Added a scoped `${{ ... }}` expression engine covering `github.ref`/`ref_name`/`event_name`/`event.inputs.<name>`, `matrix.<name>`, `secrets.<name>`, `env.<name>`, `job.status`, and `needs.<job>.result`, usable in env values, `if`, shell commands, concurrency groups, and built-in `uses:` `with` values.
24
+ - Added multi-job scheduling with `needs` dependency ordering, matrix expansion into per-instance child jobs, and persisted job/step status per matrix instance, plus workflow `concurrency.group`/`cancel-in-progress` to block or cancel overlapping runs in the same group.
25
+ - Added named artifacts: `actions/upload-artifact@v4` and `actions/download-artifact@v4` store/retrieve files across jobs in the same run, with `artifact.uploaded`/`artifact.downloaded` run events for live UIs.
26
+ - Added `actions/publish-release-asset@v1`, a built-in step (no GitHub equivalent) that compresses a workspace path into a real `.tar.gz`/`.zip` and attaches it to an existing release as a downloadable `GitForgeReleaseAsset`, resolving the target release from `with.tag`, the run's `release_id`, or `github.ref_name`, and failing clearly if no release exists yet. Emits `release_asset.published`. Configurable via `actions.releaseAssetsRoot`, kept separate from per-run workspace storage so assets outlive run cleanup.
27
+ - Added built-in `uses:` adapters for `actions/checkout@v4`, `actions/setup-node@v4`, and `oven-sh/setup-bun@v2`, plus host-provided secrets that are merged into runtime env and expressions and redacted from streamed/persisted step output.
28
+ - Added repo-local `code-discipline` enforcement config with `.gitignore`-driven directory exclusion and explicit TypeScript, JavaScript, MJS, and Go source coverage for the git-host codebase.
29
+ - Refactored Actions runner internals into smaller `src/core/actions/*` modules (planner, expressions, normalize, redaction, artifacts, release assets, workspace) plus focused Go runner helpers, and split live linguist and workflow-run socket subscription handling into dedicated API modules.
30
+ - Moved build runner utilities under `scripts/build/`, refreshed package import metadata, and split shared type surfaces into smaller forge and React client modules while preserving the published backend/runtime package surface.
31
+
7
32
  ## 2.1.0
8
33
 
9
34
  - Switched Actions workflow definitions to repository files discovered from `<workflowRoot>/workflows/*.yml`, with `.git-host` as the default root and configurable per-platform or per-repository overrides such as `.platform/workflows`.
package/README.md CHANGED
@@ -78,7 +78,12 @@ The `workflows/` directory is intentional. It keeps the model familiar and gives
78
78
 
79
79
  ### Workflow File
80
80
 
81
- Example workflow file:
81
+ `git-host` now supports two workflow formats:
82
+
83
+ - legacy flat shell workflows for backward compatibility
84
+ - a documented GitHub-Actions-inspired subset for multi-job CI and publish pipelines
85
+
86
+ Legacy workflows still work:
82
87
 
83
88
  ```yaml
84
89
  name: Build and test
@@ -102,6 +107,137 @@ Supported trigger values in v1:
102
107
  - `release.update`
103
108
  - `manual`
104
109
 
110
+ The richer subset uses `on`, `jobs`, `needs`, matrix strategy, expressions, built-in `uses:` adapters, artifacts, and concurrency:
111
+
112
+ ```yaml
113
+ name: Package publish
114
+ on:
115
+ workflow_dispatch:
116
+ inputs:
117
+ publish:
118
+ type: boolean
119
+ default: false
120
+ target_ref:
121
+ type: string
122
+ required: true
123
+ push:
124
+ tags:
125
+ - v*
126
+ env:
127
+ BUILD_DIR: dist
128
+ concurrency:
129
+ group: publish-${{ github.ref }}
130
+ cancel-in-progress: true
131
+ permissions:
132
+ contents: read
133
+ packages: write
134
+ jobs:
135
+ build:
136
+ runs-on: ubuntu-latest
137
+ strategy:
138
+ matrix:
139
+ target:
140
+ - linux
141
+ - darwin
142
+ steps:
143
+ - uses: actions/checkout@v4
144
+ - uses: oven-sh/setup-bun@v2
145
+ - run: bun install --frozen-lockfile
146
+ - run: |
147
+ mkdir -p "${BUILD_DIR}"
148
+ printf '%s\n' "${{ matrix.target }}" > "${BUILD_DIR}/${{ matrix.target }}.txt"
149
+ - uses: actions/upload-artifact@v4
150
+ with:
151
+ name: build-${{ matrix.target }}
152
+ path: dist/${{ matrix.target }}.txt
153
+
154
+ publish:
155
+ needs: build
156
+ runs-on: ubuntu-latest
157
+ if: ${{ needs.build.result == 'success' }}
158
+ steps:
159
+ - uses: actions/download-artifact@v4
160
+ with:
161
+ name: build-linux
162
+ path: publish-assets
163
+ - name: Publish
164
+ env:
165
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
166
+ run: |
167
+ test -n "${NPM_TOKEN}"
168
+ ls -R publish-assets
169
+ printf 'publishing from %s\n' "${{ github.ref }}"
170
+ - uses: actions/publish-release-asset@v1
171
+ with:
172
+ name: mytool-linux-x64
173
+ path: publish-assets
174
+ format: tar.gz
175
+ ```
176
+
177
+ Supported subset:
178
+
179
+ - top-level `name`, `on`, `env`, `permissions`, and `concurrency`
180
+ - `on.workflow_dispatch.inputs` with `string` and `boolean` types, defaults, and required flags
181
+ - `on.push.branches` and `on.push.tags` with exact matches or `*` wildcards
182
+ - multiple `jobs`
183
+ - per-job `name`, `runs-on`, `needs`, `if`, `env`, `strategy.matrix`, and `steps`
184
+ - shell steps with `run`
185
+ - built-in `uses:` handlers for:
186
+ - `actions/checkout@v4`
187
+ - `actions/setup-node@v4`
188
+ - `oven-sh/setup-bun@v2`
189
+ - `actions/upload-artifact@v4`
190
+ - `actions/download-artifact@v4`
191
+ - `actions/publish-release-asset@v1` (no GitHub equivalent — see below)
192
+ - expressions in common places such as env values, `if`, shell commands, concurrency groups, and built-in action `with` values
193
+ - expression contexts:
194
+ - `github.ref`
195
+ - `github.ref_name`
196
+ - `github.event_name`
197
+ - `github.event.inputs.<name>`
198
+ - `matrix.<name>`
199
+ - `secrets.<name>`
200
+ - `env.<name>`
201
+ - `job.status`
202
+ - `needs.<job>.result`
203
+
204
+ ### Publishing Release Assets
205
+
206
+ `actions/publish-release-asset@v1` compresses a downloaded/checked-out path into a real
207
+ `.tar.gz` or `.zip` and attaches it to a release as a `GitForgeReleaseAsset` with a
208
+ `storage_pointer` your host's `releaseAssetStore.openAssetDownload()` resolves at
209
+ download time — the same asset shape and download path the release API already
210
+ serves. GitHub Actions has no built-in equivalent for this (you'd reach for a
211
+ marketplace action like `softprops/action-gh-release`); this is an intentional
212
+ first-party addition to git-host's Actions, not an attempt to mirror GitHub syntax
213
+ for something GitHub doesn't ship itself.
214
+
215
+ ```yaml
216
+ - uses: actions/publish-release-asset@v1
217
+ with:
218
+ name: mytool-linux-x64 # required; archive extension is added automatically
219
+ path: dist/linux # required; file or directory, relative to the workspace
220
+ format: tar.gz # optional, "tar.gz" (default) or "zip"
221
+ tag: v1.2.3 # optional; defaults to github.ref_name
222
+ ```
223
+
224
+ The target release must already exist — this step does not create one. Resolution
225
+ order: `with.tag` if given, else the run's `release_id` (set automatically when the
226
+ workflow was triggered by `release.create`), else a release matching `with.tag`/
227
+ `github.ref_name` by `tag_name`. If none is found, the step fails with a clear error
228
+ rather than guessing at release metadata (author, target ref, draft state) that
229
+ belongs to the proper release-creation flow. Successful publishes emit a
230
+ `release_asset.published` run event.
231
+
232
+ Intentional differences from GitHub Actions:
233
+
234
+ - this is not a full marketplace runner
235
+ - only the built-in `uses:` adapters above are supported
236
+ - unsupported `runs-on` labels fail clearly instead of pretending to be available
237
+ - matrix jobs run sequentially on the local runner in v1
238
+ - secrets are injected for expressions and runtime env, then redacted from streamed and persisted logs
239
+ - service containers and arbitrary marketplace actions are not supported in v1
240
+
105
241
  Each workflow file is exposed through the forge API as a repository-owned workflow record. The stable workflow id is the repository-relative definition path, for example:
106
242
 
107
243
  ```text
@@ -158,23 +294,209 @@ Workflow runs are persistent and repository-owned:
158
294
 
159
295
  - workflows are loaded from the triggering ref/commit
160
296
  - each run materializes an exact snapshot for that ref/commit
161
- - steps run sequentially
297
+ - jobs and matrix children execute from staged snapshot workspaces, never from a dirty live working tree
298
+ - jobs honor `needs` ordering
299
+ - steps run sequentially inside each job
162
300
  - stdout and stderr are captured and persisted
301
+ - host-provided env and secrets can be merged into the execution context
302
+ - named artifacts can be uploaded in one job and downloaded in dependent jobs
163
303
  - live run events are streamed over Socket.IO
164
304
  - queued/running runs can be cancelled
305
+ - workflow concurrency groups can block or cancel overlapping runs
165
306
 
166
307
  The runtime emits persisted run events such as:
167
308
 
168
309
  - `run.accepted`
310
+ - `run.cancellation_requested`
169
311
  - `run.status`
312
+ - `job.started`
313
+ - `job.output`
314
+ - `job.heartbeat`
315
+ - `job.finished`
170
316
  - `step.started`
171
317
  - `step.output`
172
318
  - `step.heartbeat`
173
319
  - `step.finished`
320
+ - `artifact.uploaded`
321
+ - `artifact.downloaded`
322
+ - `release_asset.published`
174
323
  - `run.finished`
175
324
  - `run.failed`
176
325
  - `run.cancelled`
177
326
 
327
+ ### Host Context And Redaction
328
+
329
+ Hosts can inject per-repository execution context through `actions.resolveExecutionContext()`:
330
+
331
+ ```ts
332
+ const forge = createGitForge({
333
+ actions: {
334
+ async resolveExecutionContext({ repositoryId, triggerKind, workflow }) {
335
+ return {
336
+ actor: {
337
+ id: "ci-bot",
338
+ },
339
+ env: {
340
+ CI: "true",
341
+ REPOSITORY_ID: repositoryId,
342
+ },
343
+ metadata: {
344
+ trigger_kind: triggerKind,
345
+ workflow_name: workflow.name,
346
+ },
347
+ secrets: {
348
+ NPM_TOKEN: process.env.NPM_TOKEN || "",
349
+ },
350
+ };
351
+ },
352
+ },
353
+ createForkRepository({ upstreamRepositoryId }) {
354
+ return {
355
+ id: `${upstreamRepositoryId}-fork`,
356
+ path: resolveRepositoryPath({
357
+ rootDir: repositoriesRoot,
358
+ repositoryPath: `${upstreamRepositoryId}-fork/workspace`,
359
+ }),
360
+ };
361
+ },
362
+ gitHost,
363
+ storage,
364
+ });
365
+ ```
366
+
367
+ Runtime env merge order (later layers win):
368
+
369
+ - clean base env (see below — **not** the full host `process.env` by default)
370
+ - static `actions.env`
371
+ - host-provided execution env
372
+ - workflow `env`
373
+ - job `env`
374
+ - step `env`
375
+ - host-provided secrets
376
+
377
+ #### Step environment isolation
378
+
379
+ By default the runtime does **not** spread the embedding process's `process.env`
380
+ into workflow steps, so host process secrets can never leak into (or be echoed
381
+ by) a workflow. Instead it builds a minimal base env from a small passthrough
382
+ allowlist needed for tooling to work: `PATH`, `HOME`, `LANG`, `LC_ALL`, `TZ`,
383
+ `TERM` (plus the platform equivalents on Windows). Everything else is opt-in via
384
+ `actions.environment`:
385
+
386
+ ```ts
387
+ const forge = createGitForge({
388
+ actions: {
389
+ environment: {
390
+ // Additive allowlist of extra process.env keys to expose to steps.
391
+ passthrough: ["NODE_EXTRA_CA_CERTS"],
392
+ // Explicit key/value pairs injected into the clean base env.
393
+ baseEnv: { CI: "true" },
394
+ // Key names whose resolved values are always masked from logs/output.
395
+ sensitiveKeys: ["DEPLOY_KEY"],
396
+ // Escape hatch: restore the pre-2.x behavior of inheriting the ENTIRE host
397
+ // process env. Explicit opt-in, logged with a warning. Not redacted.
398
+ inheritProcessEnv: false,
399
+ },
400
+ },
401
+ gitHost,
402
+ storage,
403
+ });
404
+ ```
405
+
406
+ > **Migration note (breaking):** before this release every step inherited the
407
+ > full host `process.env`. If a workflow relied on an inherited variable, add it
408
+ > to `environment.passthrough` (or `environment.baseEnv`), or set
409
+ > `environment.inheritProcessEnv: true` to reproduce the old behavior exactly.
410
+
411
+ Secrets are available to expressions and the runtime env, but their values —
412
+ along with the resolved values of any `environment.sensitiveKeys` — are redacted
413
+ from:
414
+
415
+ - live socket output
416
+ - persisted event payloads (`step.output`/`job.output` chunks)
417
+ - step output previews
418
+ - step summaries derived from step/action errors
419
+
420
+ #### Local runner trust boundary and isolation hooks
421
+
422
+ The local runner executes each step as `spawn(shell, ["-lc", command])` **as the
423
+ host user, unsandboxed by default**, with full filesystem reach; only the per-job
424
+ git workspace is scratch. **Only run untrusted workflows behind a sandbox.** If
425
+ the runtime detects it is running as root with no `localRunner.uid` drop and no
426
+ `beforeSpawn` sandbox, it logs a warning at startup.
427
+
428
+ For a batteries-included sandbox on Linux, pass `createBubblewrapSandbox()` as the
429
+ `beforeSpawn` hook. It wraps each step in [bubblewrap](https://github.com/containers/bubblewrap)
430
+ (`bwrap` must be on `PATH`) with an isolated filesystem view (read-only system
431
+ paths plus a writable job workspace), no network, and fresh pid/ipc/uts/user
432
+ namespaces:
433
+
434
+ ```ts
435
+ import { createBubblewrapSandbox, createGitForge } from "@trebired/git-host";
436
+
437
+ const forge = createGitForge({
438
+ actions: {
439
+ localRunner: {
440
+ beforeSpawn: createBubblewrapSandbox({
441
+ allowNetwork: false, // default: no network for steps
442
+ roBind: ["/opt/toolchain"], // extra read-only host paths
443
+ bind: [], // extra writable host paths
444
+ }),
445
+ },
446
+ },
447
+ gitHost,
448
+ storage,
449
+ });
450
+ ```
451
+
452
+ For finer control (or a different sandbox such as nsjail or a container),
453
+ `actions.localRunner` also exposes lower-level off-by-default knobs:
454
+
455
+ ```ts
456
+ const forge = createGitForge({
457
+ actions: {
458
+ localRunner: {
459
+ uid: 65534, // drop privileges (passed to spawn where supported)
460
+ gid: 65534,
461
+ execTimeoutMs: 600_000, // per-step wall-clock kill (SIGTERM -> SIGKILL)
462
+ // Wrap the shell in your own sandbox (bwrap/nsjail/container). Return a
463
+ // modified child spec, or nothing to keep the default.
464
+ beforeSpawn(child) {
465
+ return {
466
+ ...child,
467
+ command: "bwrap",
468
+ args: ["--unshare-all", "--", child.command, ...child.args],
469
+ };
470
+ },
471
+ },
472
+ },
473
+ gitHost,
474
+ storage,
475
+ });
476
+ ```
477
+
478
+ ### Workflow APIs
479
+
480
+ The forge API exposes:
481
+
482
+ - list workflows
483
+ - read a workflow definition
484
+ - manually run a workflow with `inputs`, `env`, `secrets`, and trigger context
485
+ - cancel a workflow run
486
+ - list workflow runs
487
+ - read a workflow run
488
+ - list job runs
489
+ - list step runs
490
+ - list run artifacts
491
+ - list run events
492
+ - subscribe to live run events over Socket.IO
493
+
494
+ The HTTP API keeps the existing routes and adds run sub-collections such as:
495
+
496
+ - `GET /repositories/:repositoryKey/actions/runs/:runId/jobs`
497
+ - `GET /repositories/:repositoryKey/actions/runs/:runId/steps`
498
+ - `GET /repositories/:repositoryKey/actions/runs/:runId/artifacts`
499
+
178
500
  ## Activity Integration
179
501
 
180
502
  Repository activity is normalized and repository-owned. Activity entries are returned through the repository activity API and can be used to trigger workflows.
@@ -270,6 +592,9 @@ const forge = createGitForge({
270
592
  actions: {
271
593
  workflowRoot: ".git-host",
272
594
  workspaceRoot: "/srv/git-actions-workspaces",
595
+ // Separate from workspaceRoot: published release assets must outlive the run
596
+ // (and any per-run workspace cleanup) that produced them.
597
+ releaseAssetsRoot: "/srv/git-release-assets",
273
598
  },
274
599
  createForkRepository({ upstreamRepositoryId }) {
275
600
  return {
@@ -307,7 +632,3 @@ Repository Actions workflow binaries are built in CI for:
307
632
  - Linux arm64 GNU
308
633
  - macOS x64
309
634
  - macOS arm64
310
-
311
- ## License
312
-
313
- MIT
@@ -1,10 +1,10 @@
1
1
  import type { IncomingMessage } from "node:http";
2
- import type { CreateGitForgeApiHandlerOptions, GitForgeActivityFilters, GitForgeActor, GitForgeOperation, GitForgeRelease, GitForgeWorkflowFilters, GitForgeWorkflowRunFilters, GitForgeWorkflowRunEventFilters } from "../../types.js";
2
+ import type { CreateGitForgeApiHandlerOptions, GitForgeActivityFilters, GitForgeActor, GitForgeOperation, GitForgeRelease, GitForgeWorkflowFilters, GitForgeWorkflowRunArtifactFilters, GitForgeWorkflowRunFilters, GitForgeWorkflowRunJobFilters, GitForgeWorkflowRunEventFilters, GitForgeWorkflowRunStepFilters } from "../../types.js";
3
3
  import type { GitForgeApiRoute } from "./route.js";
4
4
  declare function routeOperation(route: GitForgeApiRoute, method: string): GitForgeOperation;
5
5
  declare function allowedMethodsForRoute(route: GitForgeApiRoute): string[];
6
6
  declare function readJsonBody(req: IncomingMessage): Promise<Record<string, unknown>>;
7
- declare function runForgeAction(options: CreateGitForgeApiHandlerOptions, route: GitForgeApiRoute, repositoryId: string, actor: GitForgeActor | null, body: Record<string, unknown>, searchParams: URLSearchParams): Promise<import("../../types.js").GitArchive | import("../../types.js").GitCommitDetail | import("../../types.js").GitCommitSummary[] | import("../../types.js").GitCompareSummary | import("../../types.js").GitTagDetail | import("../../types.js").GitBlame | import("../../types.js").GitSearchResult | import("../../types.js").GitBlob | import("../../types.js").GitBranchSummary[] | import("../../types.js").GitRepositorySummary | import("../../types.js").GitRepositoryLinguist | import("../../types.js").GitTreeEntry[] | GitForgeRelease | import("../../types.js").GitForgeSocialState | import("../../types.js").GitForgeFork | import("../../types.js").GitForgeActivityEntry[] | import("../../types.js").GitForgeWorkflow | import("../../types.js").GitForgeWorkflowRun | import("../../types.js").GitForgeRepositoryOverview | GitForgeRelease[] | import("../../types.js").GitForgeWorkflowRunEvent[] | import("../../types.js").GitForgeWorkflowRunStep[] | import("../../types.js").GitForgeWorkflowRun[] | import("../../types.js").GitForgeFork[] | import("../../types.js").GitForgeWorkflow[] | import("../../types.js").GitTagSummary[] | {
7
+ declare function runForgeAction(options: CreateGitForgeApiHandlerOptions, route: GitForgeApiRoute, repositoryId: string, actor: GitForgeActor | null, body: Record<string, unknown>, searchParams: URLSearchParams): Promise<import("../../types.js").GitArchive | import("../../types.js").GitCommitDetail | import("../../types.js").GitCommitSummary[] | import("../../types.js").GitCompareSummary | import("../../types.js").GitTagDetail | import("../../types.js").GitBlame | import("../../types.js").GitSearchResult | import("../../types.js").GitBlob | import("../../types.js").GitBranchSummary[] | import("../../types.js").GitRepositorySummary | import("../../types.js").GitRepositoryLinguist | import("../../types.js").GitTreeEntry[] | import("../../types.js").GitForgeActivityEntry[] | GitForgeRelease | GitForgeRelease[] | import("../../types.js").GitForgeSocialState | import("../../types.js").GitForgeFork | import("../../types.js").GitForgeWorkflow | import("../../types.js").GitForgeWorkflowRun | import("../../types.js").GitForgeRepositoryOverview | import("../../types.js").GitForgeWorkflowRunArtifact[] | import("../../types.js").GitForgeWorkflowRunEvent[] | import("../../types.js").GitForgeWorkflowRunJob[] | import("../../types.js").GitForgeWorkflowRunStep[] | import("../../types.js").GitForgeWorkflowRun[] | import("../../types.js").GitForgeFork[] | import("../../types.js").GitForgeWorkflow[] | import("../../types.js").GitTagSummary[] | {
8
8
  deleted: boolean;
9
9
  release_id: string;
10
10
  }>;
@@ -12,6 +12,9 @@ declare function readActivityFilters(searchParams: URLSearchParams): GitForgeAct
12
12
  declare function readWorkflowFilters(searchParams: URLSearchParams): GitForgeWorkflowFilters;
13
13
  declare function readWorkflowRunFilters(searchParams: URLSearchParams): GitForgeWorkflowRunFilters;
14
14
  declare function readWorkflowRunEventFilters(searchParams: URLSearchParams): GitForgeWorkflowRunEventFilters;
15
+ declare function readWorkflowRunJobFilters(searchParams: URLSearchParams): GitForgeWorkflowRunJobFilters;
16
+ declare function readWorkflowRunStepFilters(searchParams: URLSearchParams): GitForgeWorkflowRunStepFilters;
17
+ declare function readWorkflowRunArtifactFilters(searchParams: URLSearchParams): GitForgeWorkflowRunArtifactFilters;
15
18
  declare function isForgeReleasePayload(value: unknown): value is GitForgeRelease;
16
- export { allowedMethodsForRoute, isForgeReleasePayload, readJsonBody, readActivityFilters, readWorkflowFilters, readWorkflowRunEventFilters, readWorkflowRunFilters, routeOperation, runForgeAction, };
19
+ export { allowedMethodsForRoute, isForgeReleasePayload, readActivityFilters, readJsonBody, readWorkflowFilters, readWorkflowRunArtifactFilters, readWorkflowRunEventFilters, readWorkflowRunFilters, readWorkflowRunJobFilters, readWorkflowRunStepFilters, routeOperation, runForgeAction, };
17
20
  //# sourceMappingURL=actions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/api/forge/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAGjD,OAAO,KAAK,EAEV,+BAA+B,EAC/B,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAChC,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,iBAAS,cAAc,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAiClF;AAED,iBAAS,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CA6BjE;AAED,iBAAe,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CASlF;AAED,iBAAe,cAAc,CAC3B,OAAO,EAAE,+BAA+B,EACxC,KAAK,EAAE,gBAAgB,EACvB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,aAAa,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,eAAe;;;GA2C9B;AAED,iBAAS,mBAAmB,CAAC,YAAY,EAAE,eAAe,GAAG,uBAAuB,CAUnF;AAED,iBAAS,mBAAmB,CAAC,YAAY,EAAE,eAAe,GAAG,uBAAuB,CAOnF;AAED,iBAAS,sBAAsB,CAAC,YAAY,EAAE,eAAe,GAAG,0BAA0B,CAczF;AAED,iBAAS,2BAA2B,CAAC,YAAY,EAAE,eAAe,GAAG,+BAA+B,CAKnG;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAMvE;AA2JD,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,YAAY,EACZ,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,cAAc,EACd,cAAc,GACf,CAAC"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../../src/api/forge/actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAGjD,OAAO,KAAK,EAEV,+BAA+B,EAC/B,uBAAuB,EACvB,aAAa,EACb,iBAAiB,EACjB,eAAe,EACf,uBAAuB,EACvB,kCAAkC,EAClC,0BAA0B,EAC1B,6BAA6B,EAC7B,+BAA+B,EAC/B,8BAA8B,EAC/B,MAAM,eAAe,CAAC;AAGvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,iBAAS,cAAc,CAAC,KAAK,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,GAAG,iBAAiB,CAmClF;AAED,iBAAS,sBAAsB,CAAC,KAAK,EAAE,gBAAgB,GAAG,MAAM,EAAE,CA+BjE;AAED,iBAAe,YAAY,CAAC,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CASlF;AAED,iBAAe,cAAc,CAC3B,OAAO,EAAE,+BAA+B,EACxC,KAAK,EAAE,gBAAgB,EACvB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,aAAa,GAAG,IAAI,EAC3B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,YAAY,EAAE,eAAe;;;GA+C9B;AAED,iBAAS,mBAAmB,CAAC,YAAY,EAAE,eAAe,GAAG,uBAAuB,CAUnF;AAED,iBAAS,mBAAmB,CAAC,YAAY,EAAE,eAAe,GAAG,uBAAuB,CAOnF;AAED,iBAAS,sBAAsB,CAAC,YAAY,EAAE,eAAe,GAAG,0BAA0B,CAczF;AAED,iBAAS,2BAA2B,CAAC,YAAY,EAAE,eAAe,GAAG,+BAA+B,CAKnG;AAED,iBAAS,yBAAyB,CAAC,YAAY,EAAE,eAAe,GAAG,6BAA6B,CAM/F;AAED,iBAAS,0BAA0B,CAAC,YAAY,EAAE,eAAe,GAAG,8BAA8B,CAMjG;AAED,iBAAS,8BAA8B,CAAC,YAAY,EAAE,eAAe,GAAG,kCAAkC,CAKzG;AAED,iBAAS,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,eAAe,CAMvE;AAqKD,OAAO,EACL,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,8BAA8B,EAC9B,2BAA2B,EAC3B,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,cAAc,EACd,cAAc,GACf,CAAC"}
@@ -14,7 +14,9 @@ function routeOperation(route, method) {
14
14
  case "action_run_cancel":
15
15
  return "cancel";
16
16
  case "action_run":
17
+ case "action_run_artifacts":
17
18
  case "action_run_events":
19
+ case "action_run_jobs":
18
20
  case "action_run_steps":
19
21
  case "asset":
20
22
  return "read";
@@ -47,7 +49,9 @@ function allowedMethodsForRoute(route) {
47
49
  case "action_runs":
48
50
  return ["GET", "HEAD", "POST"];
49
51
  case "action_run":
52
+ case "action_run_artifacts":
50
53
  case "action_run_events":
54
+ case "action_run_jobs":
51
55
  case "action_run_steps":
52
56
  return ["GET", "HEAD"];
53
57
  case "action_run_cancel":
@@ -89,8 +93,12 @@ async function runForgeAction(options, route, repositoryId, actor, body, searchP
89
93
  return await runWorkflowRunCollectionAction(options, repositoryId, actor, body, searchParams);
90
94
  case "action_run":
91
95
  return await options.forge.readWorkflowRun(repositoryId, route.runId);
96
+ case "action_run_artifacts":
97
+ return await options.forge.listWorkflowRunArtifacts(repositoryId, route.runId, readWorkflowRunArtifactFilters(searchParams));
92
98
  case "action_run_steps":
93
- return await options.forge.listWorkflowRunSteps(repositoryId, route.runId);
99
+ return await options.forge.listWorkflowRunSteps(repositoryId, route.runId, readWorkflowRunStepFilters(searchParams));
100
+ case "action_run_jobs":
101
+ return await options.forge.listWorkflowRunJobs(repositoryId, route.runId, readWorkflowRunJobFilters(searchParams));
94
102
  case "action_run_events":
95
103
  return await options.forge.listWorkflowRunEvents(repositoryId, route.runId, readWorkflowRunEventFilters(searchParams));
96
104
  case "action_run_cancel":
@@ -162,6 +170,26 @@ function readWorkflowRunEventFilters(searchParams) {
162
170
  limit: searchParams.has("limit") ? Number(searchParams.get("limit")) || undefined : undefined,
163
171
  };
164
172
  }
173
+ function readWorkflowRunJobFilters(searchParams) {
174
+ const status = text(searchParams.get("status"));
175
+ return {
176
+ jobId: text(searchParams.get("jobId")),
177
+ ...(status ? { status: status.split(",").map((entry) => text(entry)).filter(Boolean) } : {}),
178
+ };
179
+ }
180
+ function readWorkflowRunStepFilters(searchParams) {
181
+ const status = text(searchParams.get("status"));
182
+ return {
183
+ jobRunId: text(searchParams.get("jobRunId")),
184
+ ...(status ? { status: status.split(",").map((entry) => text(entry)).filter(Boolean) } : {}),
185
+ };
186
+ }
187
+ function readWorkflowRunArtifactFilters(searchParams) {
188
+ return {
189
+ jobRunId: text(searchParams.get("jobRunId")),
190
+ name: text(searchParams.get("name")),
191
+ };
192
+ }
165
193
  function isForgeReleasePayload(value) {
166
194
  if (!value || typeof value !== "object")
167
195
  return false;
@@ -242,7 +270,23 @@ async function runWorkflowRunCollectionAction(options, repositoryId, actor, body
242
270
  actor: actor,
243
271
  branch: text(body.branch),
244
272
  commitHash: text(body.commitHash),
273
+ env: body.env && typeof body.env === "object"
274
+ ? Object.fromEntries(Object.entries(body.env)
275
+ .map(([key, value]) => [text(key), text(value)])
276
+ .filter(([key, value]) => key && value))
277
+ : undefined,
278
+ executionContext: body.executionContext && typeof body.executionContext === "object"
279
+ ? body.executionContext
280
+ : undefined,
281
+ inputs: body.inputs && typeof body.inputs === "object"
282
+ ? body.inputs
283
+ : undefined,
245
284
  ref: text(body.ref),
285
+ secrets: body.secrets && typeof body.secrets === "object"
286
+ ? Object.fromEntries(Object.entries(body.secrets)
287
+ .map(([key, value]) => [text(key), text(value)])
288
+ .filter(([key, value]) => key && value))
289
+ : undefined,
246
290
  triggerContext: body.triggerContext && typeof body.triggerContext === "object"
247
291
  ? body.triggerContext
248
292
  : undefined,
@@ -260,13 +304,5 @@ function buildCreateTagInput(value) {
260
304
  targetRef: text(createTag.targetRef),
261
305
  };
262
306
  }
263
- function normalizeEnvRecord(value) {
264
- if (!value || typeof value !== "object")
265
- return undefined;
266
- const next = Object.fromEntries(Object.entries(value)
267
- .map(([key, entry]) => [text(key), text(entry)])
268
- .filter(([key, entry]) => key && entry));
269
- return Object.keys(next).length ? next : undefined;
270
- }
271
- export { allowedMethodsForRoute, isForgeReleasePayload, readJsonBody, readActivityFilters, readWorkflowFilters, readWorkflowRunEventFilters, readWorkflowRunFilters, routeOperation, runForgeAction, };
307
+ export { allowedMethodsForRoute, isForgeReleasePayload, readActivityFilters, readJsonBody, readWorkflowFilters, readWorkflowRunArtifactFilters, readWorkflowRunEventFilters, readWorkflowRunFilters, readWorkflowRunJobFilters, readWorkflowRunStepFilters, routeOperation, runForgeAction, };
272
308
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/api/forge/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../../src/api/forge/actions.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,16 @@ type GitForgeApiRoute = {
23
23
  repositoryKey: string;
24
24
  resource: "action_run";
25
25
  runId: string;
26
+ } | {
27
+ action: "action_run_artifacts";
28
+ repositoryKey: string;
29
+ resource: "action_run";
30
+ runId: string;
31
+ } | {
32
+ action: "action_run_jobs";
33
+ repositoryKey: string;
34
+ resource: "action_run";
35
+ runId: string;
26
36
  } | {
27
37
  action: "action_run_steps";
28
38
  repositoryKey: string;
@@ -1 +1 @@
1
- {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/api/forge/route.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAIjD,KAAK,gBAAgB,GACjB;IACE,MAAM,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,UAAU,GAAG,YAAY,GAAG,QAAQ,CAAC;CAChD,GACD;IACE,MAAM,EAAE,QAAQ,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;CACpB,GACD;IACE,MAAM,EAAE,YAAY,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,MAAM,EAAE,mBAAmB,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,MAAM,EAAE,kBAAkB,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,GACD;IACE,MAAM,EAAE,aAAa,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB,GACD;IACE,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,GACD;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB,GACD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB,GACD;IACE,MAAM,EAAE,UAAU,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB,GACD;IACE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,QAAQ,CAAC;CACpB,GACD,CAAC,UAAU,CAAC,OAAO,gBAAgB,CAAC,GAAG;IACrC,QAAQ,EAAE,YAAY,CAAC;CACxB,CAAC,CAAC;AAEP,iBAAS,qBAAqB,CAAC,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,GAAG,gBAAgB,GAAG,IAAI,CAmBtG;AAkFD,OAAO,EAAE,qBAAqB,EAAE,CAAC;AACjC,YAAY,EAAE,gBAAgB,EAAE,CAAC"}
1
+ {"version":3,"file":"route.d.ts","sourceRoot":"","sources":["../../../src/api/forge/route.ts"],"names":[],"mappings":"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"}