code-foundry 1.31.0 → 1.33.1
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/.github/workflows/ci.yml +1 -0
- package/.github/workflows/cloudflare-deploy.yml +6 -0
- package/CHANGELOG.md +26 -0
- package/docs/WORKFLOWS.md +4 -0
- package/package.json +1 -1
- package/src/runtime-core.mjs +21 -2
package/.github/workflows/ci.yml
CHANGED
|
@@ -57,6 +57,9 @@ on:
|
|
|
57
57
|
required: true
|
|
58
58
|
CLOUDFLARE_ACCOUNT_ID:
|
|
59
59
|
required: true
|
|
60
|
+
TURBO_TOKEN:
|
|
61
|
+
description: 'Optional turborepo remote cache token; when set, the Build Worker step authenticates to TURBO_API so deploy builds save to and hit the remote cache.'
|
|
62
|
+
required: false
|
|
60
63
|
outputs:
|
|
61
64
|
url:
|
|
62
65
|
value: ${{ jobs.deploy.outputs.url }}
|
|
@@ -264,6 +267,9 @@ jobs:
|
|
|
264
267
|
working-directory: ${{ inputs.working-directory }}
|
|
265
268
|
env:
|
|
266
269
|
BUILD_SCRIPT: ${{ inputs.build-script }}
|
|
270
|
+
TURBO_API: ${{ vars.TURBO_API }}
|
|
271
|
+
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
|
|
272
|
+
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
|
|
267
273
|
run: bun run "$BUILD_SCRIPT"
|
|
268
274
|
- name: Deploy to Cloudflare
|
|
269
275
|
id: deploy
|
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,31 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.33.1](https://github.com/0xPlayerOne/code-foundry/compare/v1.33.0...v1.33.1) (2026-09-25)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **security:** stop a clean pip-audit result from failing the audit gate ([#643](https://github.com/0xPlayerOne/code-foundry/issues/643)) ([7260291](https://github.com/0xPlayerOne/code-foundry/commit/7260291fc24e851678ddbf9cc9dfcf99bea48f59))
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Maintenance
|
|
12
|
+
|
|
13
|
+
* **perf:** recalibrate the packed artifact budget ([#645](https://github.com/0xPlayerOne/code-foundry/issues/645)) ([64b6504](https://github.com/0xPlayerOne/code-foundry/commit/64b65049ba313f01f6989bf52a83efe31d2b91dd))
|
|
14
|
+
|
|
15
|
+
## [1.33.0](https://github.com/0xPlayerOne/code-foundry/compare/v1.32.0...v1.33.0) (2026-09-22)
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
### Features
|
|
19
|
+
|
|
20
|
+
* **cloudflare-deploy:** accept optional TURBO_TOKEN secret for remote-cached deploy builds ([#640](https://github.com/0xPlayerOne/code-foundry/issues/640)) ([091bfd1](https://github.com/0xPlayerOne/code-foundry/commit/091bfd12b6bbca0e9289a74827713dc50bcb4193))
|
|
21
|
+
|
|
22
|
+
## [1.32.0](https://github.com/0xPlayerOne/code-foundry/compare/v1.31.0...v1.32.0) (2026-09-21)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Features
|
|
26
|
+
|
|
27
|
+
* forward TURBO_API to validation and cloudflare deploy builds ([#638](https://github.com/0xPlayerOne/code-foundry/issues/638)) ([55347f6](https://github.com/0xPlayerOne/code-foundry/commit/55347f6fd3bea41f11aa936650222cd73cfd8026))
|
|
28
|
+
|
|
3
29
|
## [1.31.0](https://github.com/0xPlayerOne/code-foundry/compare/v1.30.2...v1.31.0) (2026-09-21)
|
|
4
30
|
|
|
5
31
|
|
package/docs/WORKFLOWS.md
CHANGED
|
@@ -282,6 +282,10 @@ The repository's format and lint jobs are ordinary CI checks. Set `codeql:
|
|
|
282
282
|
false` or `dependency_review: false` when a public repository also needs those
|
|
283
283
|
checks disabled.
|
|
284
284
|
|
|
285
|
+
The Python audit fails only on a reported advisory: `pip-audit` can report a
|
|
286
|
+
clean result with a non-zero status, so the runtime decides from the report,
|
|
287
|
+
replays it to the job log, and emits a `::warning::` when it downgrades.
|
|
288
|
+
|
|
285
289
|
## Branch protection
|
|
286
290
|
|
|
287
291
|
Use repository rulesets (or legacy branch protection settings) to mirror the
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "code-foundry",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.33.1",
|
|
4
4
|
"description": "A fast, language-aware repository factory for agent-ready workflows, testing, security, and release automation.",
|
|
5
5
|
"homepage": "https://github.com/0xPlayerOne/code-foundry#readme",
|
|
6
6
|
"bugs": {
|
package/src/runtime-core.mjs
CHANGED
|
@@ -432,6 +432,25 @@ function run(command, args = [], options = {}) {
|
|
|
432
432
|
if (result.status !== 0) process.exit(result.status ?? 1)
|
|
433
433
|
}
|
|
434
434
|
|
|
435
|
+
// pip-audit can report its clean result with a non-zero status when the
|
|
436
|
+
// inspected environment hits a resolution problem, so decide from the report.
|
|
437
|
+
const CLEAN_AUDIT = 'No known vulnerabilities found'
|
|
438
|
+
const ADVISORY = /\b(?:PYSEC|GHSA|CVE|OSV)-[A-Za-z0-9._-]+/
|
|
439
|
+
|
|
440
|
+
/** @param {string} command @param {string[]} [args] */
|
|
441
|
+
function runAudited(command, args = []) {
|
|
442
|
+
const result = spawnSync(command, args, { cwd: root, encoding: 'utf8', env: process.env })
|
|
443
|
+
if (result.error) throw result.error
|
|
444
|
+
const stdout = result.stdout ?? ''
|
|
445
|
+
const stderr = result.stderr ?? ''
|
|
446
|
+
if (stdout) process.stdout.write(stdout)
|
|
447
|
+
if (stderr) process.stderr.write(stderr)
|
|
448
|
+
if (result.status === 0) return
|
|
449
|
+
const report = `${stdout}\n${stderr}`
|
|
450
|
+
if (!report.includes(CLEAN_AUDIT) || ADVISORY.test(report)) process.exit(result.status ?? 1)
|
|
451
|
+
console.warn(`::warning::${command} exited ${result.status} with no known vulnerabilities`)
|
|
452
|
+
}
|
|
453
|
+
|
|
435
454
|
/** @param {string} command @param {string[]} [args] */
|
|
436
455
|
function capture(command, args = []) {
|
|
437
456
|
const result = spawnSync(command, args, { cwd: root, encoding: 'utf8', env: process.env })
|
|
@@ -879,10 +898,10 @@ function security(task, ecosystem) {
|
|
|
879
898
|
const auditArgs =
|
|
880
899
|
requirement && !['project', 'none'].includes(requirement) ? ['-r', requirement] : []
|
|
881
900
|
if (commandExists('uv'))
|
|
882
|
-
|
|
901
|
+
runAudited('uv', ['tool', 'run', '--from', 'pip-audit==2.10.1', 'pip-audit', ...auditArgs])
|
|
883
902
|
else {
|
|
884
903
|
run('python', ['-m', 'pip', 'install', '--quiet', 'pip-audit==2.10.1'])
|
|
885
|
-
|
|
904
|
+
runAudited('python', ['-m', 'pip_audit', ...auditArgs])
|
|
886
905
|
}
|
|
887
906
|
}
|
|
888
907
|
}
|