code-foundry 0.7.0 → 0.8.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.
@@ -13,5 +13,5 @@ permissions:
13
13
  jobs:
14
14
  ci:
15
15
  name: CI
16
- uses: 0xPlayerOne/code-foundry/.github/workflows/reusable-ci.yml@v0.6.0
16
+ uses: 0xPlayerOne/code-foundry/.github/workflows/reusable-ci.yml@v0.7.0
17
17
  secrets: inherit
@@ -12,7 +12,7 @@ on:
12
12
  description: Code Foundry runtime tag or ref.
13
13
  required: false
14
14
  type: string
15
- default: v0.5.0
15
+ default: v0.7.0
16
16
 
17
17
  permissions:
18
18
  contents: read
@@ -0,0 +1,243 @@
1
+ name: Code Foundry Test
2
+
3
+ on:
4
+ workflow_call:
5
+ inputs:
6
+ runtime-repository:
7
+ description: Repository containing the Code Foundry runtime.
8
+ required: false
9
+ type: string
10
+ default: 0xPlayerOne/code-foundry
11
+ runtime-ref:
12
+ description: Code Foundry runtime tag or ref.
13
+ required: false
14
+ type: string
15
+ default: v0.7.0
16
+
17
+ permissions:
18
+ contents: read
19
+
20
+ env:
21
+ TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
22
+ TURBO_TEAM: ${{ vars.TURBO_TEAM }}
23
+ REPO_FOUNDRY_PROFILE: ${{ vars.REPO_FOUNDRY_PROFILE }}
24
+ REPO_FOUNDRY_LANGUAGES: ${{ vars.REPO_FOUNDRY_LANGUAGES }}
25
+ REPO_FOUNDRY_FEATURES: ${{ vars.REPO_FOUNDRY_FEATURES }}
26
+ REPO_FOUNDRY_PACKAGE_MANAGER: ${{ vars.REPO_FOUNDRY_PACKAGE_MANAGER }}
27
+ REPO_FOUNDRY_RUNNER: ${{ vars.REPO_FOUNDRY_RUNNER }}
28
+ REPO_FOUNDRY_CACHE_PACKAGES: ${{ vars.REPO_FOUNDRY_CACHE_PACKAGES || 'auto' }}
29
+ REPO_FOUNDRY_CACHE_BUILD: ${{ vars.REPO_FOUNDRY_CACHE_BUILD || 'auto' }}
30
+ REPO_FOUNDRY_BASE_SHA: ${{ github.event_name == 'pull_request' && github.event.pull_request.base.sha || github.event.before || '' }}
31
+
32
+ concurrency:
33
+ group: ${{ github.workflow }}-${{ github.event.pull_request.head.repo.full_name || github.repository }}-${{ github.event.pull_request.head.ref || github.ref_name }}
34
+ cancel-in-progress: true
35
+
36
+ jobs:
37
+ unit:
38
+ name: Unit
39
+ runs-on: ${{ vars.REPO_FOUNDRY_UNIT_RUNNER || 'ubuntu-slim' }}
40
+ timeout-minutes: 30
41
+ steps:
42
+ - name: Checkout
43
+ uses: actions/checkout@v7
44
+ with:
45
+ fetch-depth: 2
46
+ - name: Runtime
47
+ uses: actions/checkout@v7
48
+ with:
49
+ repository: ${{ inputs.runtime-repository }}
50
+ ref: ${{ inputs.runtime-ref }}
51
+ path: .code-foundry
52
+ sparse-checkout: |
53
+ .github/actions
54
+ .github/scripts
55
+ - name: Install runtime
56
+ run: |
57
+ mkdir -p .github/actions .github/scripts
58
+ cp -R .code-foundry/.github/actions/. .github/actions/
59
+ cp -R .code-foundry/.github/scripts/. .github/scripts/
60
+ - name: Detect
61
+ id: applicability
62
+ run: bash .github/scripts/ci.sh task_profile unit >> "$GITHUB_OUTPUT"
63
+ - name: Setup
64
+ if: steps.applicability.outputs.applicable == 'true'
65
+ uses: ./.github/actions/setup
66
+ with:
67
+ install: true
68
+ install-javascript: ${{ steps.applicability.outputs.javascript == 'true' }}
69
+ install-python: ${{ steps.applicability.outputs.python == 'true' }}
70
+ install-rust: ${{ steps.applicability.outputs.rust == 'true' }}
71
+ cache-build: false
72
+ cache-environment: false
73
+ cache-packages: ${{ vars.REPO_FOUNDRY_CACHE_PACKAGES || 'auto' }}
74
+ task: unit
75
+ task-javascript: ${{ steps.applicability.outputs.javascript }}
76
+ task-python: ${{ steps.applicability.outputs.python }}
77
+ task-rust: ${{ steps.applicability.outputs.rust }}
78
+ - name: Unit
79
+ if: steps.applicability.outputs.applicable == 'true'
80
+ run: bash .github/scripts/ci.sh unit
81
+ - name: Upload coverage
82
+ if: >-
83
+ always() &&
84
+ steps.applicability.outputs.applicable == 'true' &&
85
+ hashFiles('coverage/**', 'htmlcov/**', '.coverage*', 'target/llvm-cov/**') != ''
86
+ uses: actions/upload-artifact@v7
87
+ with:
88
+ name: coverage-unit-${{ github.run_id }}
89
+ path: |
90
+ coverage/**
91
+ htmlcov/**
92
+ .coverage*
93
+ target/llvm-cov/**
94
+ compression-level: 1
95
+ if-no-files-found: ignore
96
+ retention-days: 14
97
+
98
+ integration:
99
+ name: Integration
100
+ runs-on: ubuntu-latest
101
+ timeout-minutes: 30
102
+ steps:
103
+ - name: Checkout
104
+ uses: actions/checkout@v7
105
+ with:
106
+ fetch-depth: 2
107
+ - name: Runtime
108
+ uses: actions/checkout@v7
109
+ with:
110
+ repository: ${{ inputs.runtime-repository }}
111
+ ref: ${{ inputs.runtime-ref }}
112
+ path: .code-foundry
113
+ sparse-checkout: |
114
+ .github/actions
115
+ .github/scripts
116
+ - name: Install runtime
117
+ run: |
118
+ mkdir -p .github/actions .github/scripts
119
+ cp -R .code-foundry/.github/actions/. .github/actions/
120
+ cp -R .code-foundry/.github/scripts/. .github/scripts/
121
+ - name: Detect
122
+ id: applicability
123
+ run: bash .github/scripts/ci.sh task_profile integration >> "$GITHUB_OUTPUT"
124
+ - name: Setup
125
+ if: steps.applicability.outputs.applicable == 'true'
126
+ uses: ./.github/actions/setup
127
+ with:
128
+ install: true
129
+ install-javascript: ${{ steps.applicability.outputs.javascript == 'true' }}
130
+ install-python: ${{ steps.applicability.outputs.python == 'true' }}
131
+ install-rust: ${{ steps.applicability.outputs.rust == 'true' }}
132
+ cache-build: ${{ steps.applicability.outputs.rust == 'true' }}
133
+ cache-environment: false
134
+ cache-save: ${{ github.event_name == 'push' }}
135
+ task: integration
136
+ task-javascript: ${{ steps.applicability.outputs.javascript }}
137
+ task-python: ${{ steps.applicability.outputs.python }}
138
+ task-rust: ${{ steps.applicability.outputs.rust }}
139
+ - name: Integration
140
+ if: steps.applicability.outputs.applicable == 'true'
141
+ run: bash .github/scripts/ci.sh integration
142
+
143
+ e2e:
144
+ name: E2E
145
+ runs-on: ubuntu-latest
146
+ timeout-minutes: 45
147
+ steps:
148
+ - name: Checkout
149
+ uses: actions/checkout@v7
150
+ with:
151
+ fetch-depth: 2
152
+ - name: Runtime
153
+ uses: actions/checkout@v7
154
+ with:
155
+ repository: ${{ inputs.runtime-repository }}
156
+ ref: ${{ inputs.runtime-ref }}
157
+ path: .code-foundry
158
+ sparse-checkout: |
159
+ .github/actions
160
+ .github/scripts
161
+ - name: Install runtime
162
+ run: |
163
+ mkdir -p .github/actions .github/scripts
164
+ cp -R .code-foundry/.github/actions/. .github/actions/
165
+ cp -R .code-foundry/.github/scripts/. .github/scripts/
166
+ - name: Detect
167
+ id: applicability
168
+ run: bash .github/scripts/ci.sh task_profile e2e >> "$GITHUB_OUTPUT"
169
+ - name: Cache browser binaries
170
+ if: steps.applicability.outputs.applicable == 'true' && steps.applicability.outputs.browser == 'true'
171
+ uses: ./.github/actions/cache
172
+ with:
173
+ save: ${{ github.event_name == 'push' }}
174
+ path: |
175
+ ~/.cache/ms-playwright
176
+ ~/.cache/Cypress
177
+ ~/.cache/puppeteer
178
+ key: ${{ runner.os }}-e2e-browsers-${{ hashFiles('**/package.json', '**/bun.lock', '**/bun.lockb', '**/pnpm-lock.yaml', '**/yarn.lock', '**/package-lock.json', '**/playwright.config.*', '**/cypress.config.*') }}
179
+ restore-keys: |
180
+ ${{ runner.os }}-e2e-browsers-
181
+ - name: Setup
182
+ if: steps.applicability.outputs.applicable == 'true'
183
+ uses: ./.github/actions/setup
184
+ with:
185
+ install: true
186
+ install-javascript: ${{ steps.applicability.outputs.javascript == 'true' }}
187
+ install-python: ${{ steps.applicability.outputs.python == 'true' }}
188
+ install-rust: ${{ steps.applicability.outputs.rust == 'true' }}
189
+ cache-build: false
190
+ cache-environment: false
191
+ cache-save: ${{ github.event_name == 'push' }}
192
+ task: e2e
193
+ task-javascript: ${{ steps.applicability.outputs.javascript }}
194
+ task-python: ${{ steps.applicability.outputs.python }}
195
+ task-rust: ${{ steps.applicability.outputs.rust }}
196
+ - name: E2E
197
+ if: steps.applicability.outputs.applicable == 'true'
198
+ run: bash .github/scripts/ci.sh e2e
199
+
200
+ smoke:
201
+ name: Smoke
202
+ runs-on: ubuntu-latest
203
+ timeout-minutes: 15
204
+ steps:
205
+ - name: Checkout
206
+ uses: actions/checkout@v7
207
+ with:
208
+ fetch-depth: 2
209
+ - name: Runtime
210
+ uses: actions/checkout@v7
211
+ with:
212
+ repository: ${{ inputs.runtime-repository }}
213
+ ref: ${{ inputs.runtime-ref }}
214
+ path: .code-foundry
215
+ sparse-checkout: |
216
+ .github/actions
217
+ .github/scripts
218
+ - name: Install runtime
219
+ run: |
220
+ mkdir -p .github/actions .github/scripts
221
+ cp -R .code-foundry/.github/actions/. .github/actions/
222
+ cp -R .code-foundry/.github/scripts/. .github/scripts/
223
+ - name: Detect
224
+ id: applicability
225
+ run: bash .github/scripts/ci.sh task_profile smoke >> "$GITHUB_OUTPUT"
226
+ - name: Setup
227
+ if: steps.applicability.outputs.applicable == 'true'
228
+ uses: ./.github/actions/setup
229
+ with:
230
+ install: true
231
+ install-javascript: ${{ steps.applicability.outputs.javascript == 'true' }}
232
+ install-python: ${{ steps.applicability.outputs.python == 'true' }}
233
+ install-rust: ${{ steps.applicability.outputs.rust == 'true' }}
234
+ cache-build: false
235
+ cache-environment: false
236
+ cache-save: ${{ github.event_name == 'push' }}
237
+ task: smoke
238
+ task-javascript: ${{ steps.applicability.outputs.javascript }}
239
+ task-python: ${{ steps.applicability.outputs.python }}
240
+ task-rust: ${{ steps.applicability.outputs.rust }}
241
+ - name: Smoke
242
+ if: steps.applicability.outputs.applicable == 'true'
243
+ run: bash .github/scripts/ci.sh smoke
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.8.0](https://github.com/0xPlayerOne/code-foundry/compare/v0.7.0...v0.8.0) (2026-07-28)
4
+
5
+
6
+ ### Features
7
+
8
+ * **test:** add reusable test workflow runtime ([5a1f4cf](https://github.com/0xPlayerOne/code-foundry/commit/5a1f4cfadb6b11f27b001ba8f6424b11de32fd64))
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **test:** keep local workflow during runtime release ([8827659](https://github.com/0xPlayerOne/code-foundry/commit/88276590451ee6b3230ad3b1349ccd4785a686bf))
14
+
3
15
  ## [0.7.0](https://github.com/0xPlayerOne/code-foundry/compare/v0.6.0...v0.7.0) (2026-07-28)
4
16
 
5
17
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "code-foundry",
3
- "version": "0.7.0",
3
+ "version": "0.8.0",
4
4
  "description": "A fast, language-aware repository factory for agent-ready workflows, testing, security, and release automation.",
5
5
  "type": "module",
6
6
  "license": "AGPL-3.0-or-later",