@playform/buildfrom0.3.4to0.3.5: theExechelper in0.3.4resolved before its child process exited, so thetscandtsc-aliaspasses in the build ran concurrently and left a nondeterministic subset of the generated declarations with unrewritten@Class/@Command/@Configuration/@Function/@Interface/@Type/@Variablealiases.Node.yml: the build matrix runs Node22,24and26instead of the end-of-life18,19and20.package.json: corrected the indentation of theversionfield.Workflow/NPM.yml: added the missing publish step, so the workflow template matches the live.github/workflows/NPM.yml.
- Version
0.3.3.
package.json:RunandprepublishOnlynow execute theSource/scripts withbashinstead ofsh- on GitHub's Ubuntu runnersshis dash, which rejects${BASH_SOURCE[0]}(Bad substitution) andsource(not found), so the CIprepublishOnlydied before generatingConfiguration/ESBuild/*.js(downstreamERR_MODULE_NOT_FOUND). Matches the scripts'#!/usr/bin/env bash.Auto.yml: the Commit job push usesGITHUB_TOKENagain - branch protection was removed fleet-wide, so the per-repo fine-grained PAT (PLAYFORM_AUTO_PAT) approach is retired.- Version registry: Cloudflare Wrangler Action pinned to
v4.1.3.
Update.sh: added agh_api_retryhelper (3 attempts with 2s/4s/8s exponential backoff) so transient TLS/network failures on the GitHub API no longer abort an action's version pin.Update.sh: restricted the workflow scan to./Workflow/and./.github/workflows/only -pnpm-lock.yaml(and any other non-workflow YAML) is no longer rewritten via temp-file+mv on every run.Update.sh: theAuto.ymlCommit job push now uses the per-repo fine-grained PAT secretPLAYFORM_AUTO_PAT(contents:write, authenticating as the repo admin) instead ofGITHUB_TOKEN, which cannot bypass branch protection onCurrent.
- Added
Maintain Workflow --Review: read-only, repository-agnostic review of the GitHub Actions references in the current repository. Reports everyuses:action with its current reference, the latest tag/commit SHA on GitHub (current / stale / floating), and what the canonicalWorkflow/templates would apply in absorb phase 2 - writes nothing. - Added
Maintain Workflow --Absorb: two-phase, versions-only updater for pre-existing repositories. Phase 1 writes a scopedUpdate.shinto the repository root that pins everyuses:reference under.github/to the latest tag + commit SHA; phase 2 (re-run after executingUpdate.sh) iterates the canonicalWorkflow/templates and applies their pinned versions in place - only theuses:version segment is replaced and never downgraded; everything else is left byte-for-byte intact.
Update.sh: replaced GNU-only\swith POSIX[[:space:]]in theuses:rewrite, which silently never matched under BSD sed (macOS) - version pins were never updated.Update.sh: byte-preserving line handling so a workflow file whose last line lacks a trailing newline is no longer truncated bywhile read.
- Fixed circular dependency in
Source/Fetch.sh:ExtractVersion()andExtractTag()previously grepped both./Workflow/and./.github/workflows/. Because.github/workflows/*.ymlare generated byMaintain Workflow, reading them back caused a feedback loop - if the generation env var wasundefined, the# undefinedgot baked into the generated file and then read back as the "source of truth". Now both functions read exclusively from./Workflow/, which is the actual template source.
- Updated dependencies:
- Bump
@octokit/corefrom 7.0.6 to 7.0.8 - Bump
deepmerge-tsfrom 7.1.5 to 8.0.2 - Bump
zodfrom 4.4.3 to 4.5.4 - Bump
@octokit/typesfrom 16.0.0 to 18.0.0 - Bump
@playform/buildfrom 0.3.3 to 0.3.4 - Bump
@types/nodefrom 26.1.1 to 26.4.1 - Bump
esbuildfrom 0.28.1 to 0.28.2
- Bump
- Updated GitHub Actions pinned SHAs:
github/codeql-action/initfrom v4.37.3 to v4.37.6 inWorkflow/codeql.ymlgithub/codeql-action/analyzefrom v4.37.3 to v4.37.6 inWorkflow/codeql.ymlpnpm/action-setupfrom v6.0.9 to v6.1.0 inWorkflow/Node.ymlandWorkflow/codeql.ymlactions-rs/toolchainSHA refreshed inWorkflow/Rust.ymlactions-rs/cargoSHA refreshed inWorkflow/Version.yml
- Improved
Update.sh:- Refactored tag fetching to sort all semantic versions and select the newest, rather than relying on API return order
- Properly dereference annotated tags to their underlying commit SHA
(required for
uses:)
- Normalized
tsconfig.jsonpath aliases with consistent./prefix
- Added
ExtractTag()function toSource/Fetch.shto extract human-readable version tags from pinned SHA comments - Added ESBuild build-time definitions for TAG environment variables:
VERSION_CLOUDFLARE_WRANGLER_ACTION_TAGVERSION_ACTIONS_SETUP_NODE_TAGVERSION_ACTIONS_UPLOAD_ARTIFACT_TAGVERSION_ACTIONS_CACHE_TAGVERSION_ACTIONS_RS_CARGO_TAG
- Added TypeScript declarations for new TAG env vars in
Source/Configuration/ESBuild/Maintain.d.ts
- Updated dependencies:
- Bump
@playform/buildfrom 0.3.2 to 0.3.3 - Bump
@types/nodefrom 25.9.1 to 26.1.1 - Bump
esbuildfrom 0.28.0 to 0.28.1
- Bump
- Major rewrite of
Update.sh:- Switched from floating tag pinning (
@v7.0.1) to immutable commit SHA pinning (@3d3c42e # v7.0.1) - Improved regex to strip existing
# commentfromuses:lines before parsing - Handles annotated tags (tag objects) in addition to lightweight tags
- Appends human-readable tag comment after the SHA for readability
- Switched from floating tag pinning (
- Updated workflow templates (
Cloudflare.ts,Node.ts,Rust.ts) to append tag comments alongside pinned SHAs - Pinned all GitHub Actions across workflow files to commit SHAs:
actions/checkoutv6.0.2 →3d3c42e(v7.0.1) inAuto.yml,Cloudflare.yml,codeql.yml,Node.yml,NPM.yml,Rust.ymlactions/setup-nodev6.4.0 →8207627(v7.0.0) inNode.ts,NPM.yml,codeql.yml,Version.ymlactions/upload-artifactv6.0.0/v7.0.1 →043fb46(v7.0.1) inNode.ts,Version.ymlactions/cachev5.0.5 →55cc834(v6.1.0) inRust.ts,Version.ymlactions-rs/cargov1.0.3 →844f368(v1.0.3) inRust.ts,Version.ymlpnpm/action-setupv6.0.8 →0083308(v6.0.9) incodeql.yml,Node.ymlgithub/codeql-action/initv4.36.0 →c54b30b(v4.37.3) incodeql.ymlgithub/codeql-action/analyzev4.36.0 →c54b30b(v4.37.3) incodeql.ymlpozil/auto-assign-issuev3.0.0 →af6beea(v4.0.1) inGitHub.ymldependabot/fetch-metadatav3.1.0 →25dd0e3(v3.1.0) inInnerDependabot.ymlad-m/github-push-actionv1.3.0 →881a632(v1.3.0) inAuto.ymlcloudflare/wrangler-actionv4.0.0 →ebbaa15(v4.0.0) inVersion.yml
- Verified all GitHub Actions versions are current via
Update.sh- no changes required:actions/checkout@v6.0.2actions/setup-node@v6.4.0actions/upload-artifact@v7.0.1actions/cache@v5.0.5pnpm/action-setup@v6.0.8dependabot/fetch-metadata@v3.1.0ad-m/github-push-action@v1.3.0pozil/auto-assign-issue@v3.0.0cloudflare/wrangler-action@v4.0.0github/codeql-action@v4.36.0actions-rs/cargo@v1.0.3actions-rs/toolchain@v1.0.7
- Registered
Auto.ymlinSource/Variable/GitHub.tssoMaintain Workflownow syncs it to all discovered repos
- Updated dependencies:
- Bump
@types/nodefrom 25.7.0 to 25.9.1 - Add
esbuild0.28.0 as a dev dependency
- Bump
- Updated GitHub Actions versions across workflow files:
- Bump
ad-m/github-push-actionfrom v1.1.0 to v1.3.0 inAuto.yml - Bump
github/codeql-action/initfrom v4.35.4 to v4.36.0 incodeql.yml - Bump
github/codeql-action/analyzefrom v4.35.4 to v4.36.0 incodeql.yml - Bump
pnpm/action-setupfrom v6.0.7 to v6.0.8 incodeql.ymlandNode.yml - Bump
cloudflare/wrangler-actionfrom v3.15.0 to v4.0.0 inVersion.yml
- Bump
- Fixed Dependabot auto-approve workflow (
InnerDependabot.yml) to usesecrets.GITHUB_TOKENinstead ofsecrets.DEPENDABOT_TOKEN, and tightened the job condition to also checkgithub.event.pull_request.user.login - Improved
Update.sh:- Scoped
findto skipnode_modules,vendor,dist,target,.git,.next, and.venvinstead of scanning all files from the project root - Prefixed all shell commands with
\to bypass aliases
- Scoped
- Bumped version from 0.1.9 to 0.2.0 in
package.json - Updated dependencies:
- Bump
dotenvfrom 17.4.1 to 17.4.2 - Bump
@types/nodefrom 25.5.2 to 25.6.2
- Bump
- Updated GitHub Actions versions across workflow files:
- Bump
cloudflare/wrangler-actionfrom v3.14.1 to v3.15.0 inVersion.yml - Bump
actions/upload-artifactfrom v7.0.0 to v7.0.1 inVersion.yml - Bump
actions/cachefrom v5.0.4 to v5.0.5 inVersion.yml - Bump
actions/setup-nodefrom v6.3.0 to v6.4.0 inVersion.yml,NPM.yml,codeql.yml, andNode.yml - Bump
pnpm/action-setupfrom v5.0.0 to v6.0.7 inNode.ymlandcodeql.yml - Bump
github/codeql-action/initfrom v4.35.1 to v4.35.4 incodeql.yml - Bump
github/codeql-action/analyzefrom v4.35.1 to v4.35.4 incodeql.yml - Bump
ad-m/github-push-actionfrom v1.0.0 to v1.1.0 inAuto.yml - Bump
pozil/auto-assign-issuefrom v2.2.0 to v3.0.0 inGitHub.yml - Bump
dependabot/fetch-metadatafrom v3.0.0 to v3.1.0 inInnerDependabot.yml
- Bump
- Added TypeScript declaration file for ESBuild configuration
(
Source/Configuration/ESBuild/Maintain.d.ts) - Added
Workflow/Version.ymlas a static version registry for GitHub Actions, read automatically bySource/Fetch.sh
- Updated homepage URL in
package.jsonfrom#readmeanchor to?tab=readme-ov-file - Updated dependencies:
- Bump
commanderfrom 14.0.2 to 14.0.3 - Bump
dotenvfrom 17.2.3 to 17.4.1 - Bump
zodfrom 4.3.5 to 4.3.6 - Bump
@playform/buildfrom 0.2.6 to 0.3.1 - Bump
@types/nodefrom 25.0.3 to 25.5.2
- Bump
- Fixed import path in
Source/Class/Maintain.tsfrom path alias@Variable/Command.jsto relative../Variable/Command.js - Refactored
Source/Fetch.shto extract action versions from local workflow YAML files viagrep/sedinstead of fetching from the GitHub API - Added
rootDir: "./Source"totsconfig.json - Updated GitHub Actions versions:
- Bump
actions/checkoutfrom v6.0.1 to v6.0.2 across all workflow files - Bump
actions/setup-nodefrom v6.1.0 to v6.3.0 incodeql.ymlandNPM.yml - Bump
github/codeql-action/initfrom v4.31.9 to v4.35.1 incodeql.yml - Bump
github/codeql-action/analyzefrom v4.31.9 to v4.35.1 incodeql.yml - Bump
pnpm/action-setupfrom v4.2.0 to v5.0.0 inNode.ymlandcodeql.yml - Bump
dependabot/fetch-metadatafrom v2.5.0 to v3.0.0 inInnerDependabot.yml
- Bump
- Added dynamic GitHub Actions version management using environment variables
- Added ESBuild configuration files (
Maintain.jsandMaintain.ts) for build process - Added shell scripts for fetching latest action versions (
Fetch.sh,Run.sh,prepublishOnly.sh) - Added
Update.shscript for automatically updating GitHub Actions versions in workflow files - Added support for dynamically injecting action versions via
process.envvariables
- Removed
.gitignorefile - Removed
Action.shutility script
- Updated URLs in
package.jsonto use lowercasehttps://scheme - Updated dependencies:
- Bump
@octokit/corefrom 6.1.5 to 7.0.6 - Bump
commanderfrom 13.1.0 to 14.0.2 - Bump
dotenvfrom 16.5.0 to 17.2.3 - Bump
zodfrom 3.24.4 to 4.3.5 - Bump
@octokit/typesfrom 14.0.0 to 16.0.0 - Bump
@playform/buildfrom 0.2.4 to 0.2.6 - Bump
@types/etagfrom 1.8.3 to 1.8.4 - Bump
@types/nodefrom 22.15.15 to 25.0.3
- Bump
- Updated build scripts in
package.json:- Changed
Runscript fromBuild 'Source/**/*.ts' --Watchtosh Source/Run.sh - Changed
prepublishOnlyscript fromBuild 'Source/**/*.ts'tosh Source/prepublishOnly.sh
- Changed
- Updated GitHub Actions versions:
- Bump
actions/checkoutfrom v4.2.2 to v6.0.1 across all workflow files - Bump
actions/setup-nodefrom v4.4.0 to v6.1.0 inNode.ts,NPM.yml, andcodeql.yml - Bump
actions/upload-artifactfrom v4.6.2 to v6.0.0 inNode.ts - Bump
actions/cachefrom v4.2.3 to dynamic version inRust.ts - Bump
actions-rs/cargofrom v1.0.3 to dynamic version inRust.ts - Bump
cloudflare/wrangler-actionfrom v3.14.1 to dynamic version inCloudflare.ts - Bump
github/codeql-action/initfrom v3.28.17 to v4.31.9 incodeql.yml - Bump
github/codeql-action/analyzefrom v3.28.17 to v4.31.9 incodeql.yml - Bump
pnpm/action-setupfrom v4.1.0 to v4.2.0 inNode.ymlandcodeql.yml - Bump
dependabot/fetch-metadatafrom v2.3.0 to v2.4.0 inInnerDependabot.yml - Bump
ad-m/github-push-actionfrommasterto v1.0.0 inAuto.yml
- Bump
- Replaced hardcoded action versions with dynamic environment variable references in workflow generation
- Changed variable declarations from
lettoconstinDispatch.tsfor improved immutability - Enhanced error handling and validation in version fetching scripts
- Bumped version from 0.1.6 to 0.1.7 in
package.json - Updated contact email from
Source/Open@PlayForm.LTDtoSource/Open@PlayForm.Cloud - Updated organization URL from
HTTPS://PlayForm.LTDtoHTTPS://PlayForm.Cloud - Updated dependencies:
- Bump
@octokit/corefrom 6.1.4 to 6.1.5 - Bump
dotenvfrom 16.4.7 to 16.5.0 - Bump
zodfrom 3.24.2 to 3.24.4 - Bump
@octokit/typesfrom 13.10.0 to 14.0.0 - Bump
@playform/buildfrom 0.2.2 to 0.2.4 - Bump
@types/nodefrom 22.14.0 to 22.15.15
- Bump
- Updated GitHub Actions:
- Bump
actions/setup-nodefrom v4.3.0 to v4.4.0 inNode.ts,NPM.yml, andcodeql.yml - Bump
github/codeql-action/initfrom v3.28.13 to v3.28.17 incodeql.yml - Bump
github/codeql-action/analyzefrom v3.28.13 to v3.28.17 incodeql.yml
- Bump
- Updated git config user email in
Auto.ymlfromauto@playform.cloudtoCommit@PlayForm.Cloud
- Added new Auto workflow for automated scheduled commits
- Added Dependabot ignore rule for
tailwindcss@^4.0.0in NPM environment
- Updated dependencies:
- Bump
@octokit/corefrom 6.1.3 to 6.1.4 - Bump
commanderfrom 13.0.0 to 13.1.0 - Bump
deepmerge-tsfrom 7.1.3 to 7.1.5 - Bump
zodfrom 3.24.1 to 3.24.2 - Bump
@octokit/typesfrom 13.6.2 to 13.10.0 - Bump
@playform/buildfrom 0.2.1 to 0.2.2 - Bump
@types/nodefrom 22.10.5 to 22.14.0
- Bump
- Updated GitHub Actions:
- Bump
cloudflare/wrangler-actionfrom v3.13.0 to v3.14.1 inCloudflare.ts - Bump
actions/setup-nodefrom v4.1.0 to v4.3.0 inNode.tsandNPM.yml - Bump
actions/upload-artifactfrom v4.5.0 to v4.6.2 inNode.ts - Bump
actions/cachefrom v4.2.0 to v4.2.3 inRust.ts - Bump
github/codeql-actionfrom v3.27.6 to v3.28.13 incodeql.yml - Bump
pozil/auto-assign-issuefrom v2.0.1 to v2.2.0 inGitHub.yml - Bump
dependabot/fetch-metadatafrom v2.2.0 to v2.3.0 inInnerDependabot.yml - Bump
pnpm/action-setupfrom v4.0.0 to v4.1.0 incodeql.ymlandNode.yml
- Bump
- Refactored imports to use Node.js core module protocol (
node:path,node:fs/promises) - Improved repository pagination handling in
Dispatchcommand - Renamed command parameters from
[repositories...]to[Repositories...] - Changed default branch reference from
maintoCurrentin workflow dispatches - Updated shebang in
Action.shto use/usr/bin/env bashfor better portability
- Update dependencies:
- Bump
@octokit/corefrom 6.1.2 to 6.1.3 - Bump
commanderfrom 12.1.0 to 13.0.0 - Bump
zodfrom 3.23.8 to 3.24.1 - Bump
@playform/buildfrom 0.1.9 to 0.2.0 - Bump
@types/nodefrom 22.10.1 to 22.10.5
- Bump
- Update GitHub actions:
- Bump
actions/upload-artifactfrom v4.4.3 to v4.5.0 inNode.ts - Bump
actions/cachefrom v4.1.2 to v4.2.0 inRust.ts
- Bump
- Updated package dependencies:
- Updated
dotenvto version 16.4.7 - Updated
@octokit/typesto version 13.6.2 - Updated
@types/nodeto version 22.10.1
- Updated
- Updated GitHub Actions:
- Updated
cloudflare/wrangler-actionto v3.13.0 inCloudflare.ts - Updated
github/codeql-actionto v3.27.6 incodeql.yml - Updated
pozil/auto-assign-issueto v2.0.1 inGitHub.yml
- Updated
- Reordered environment variables in multiple workflow files:
- Added
DO_NOT_TRACK: 1at the top inCloudflare.yml,codeql.yml,GitHub.yml,Node.yml,NPM.yml, andRust.yml
- Added
- Updated
cloudflare/wrangler-actionto v3.12.1 inCloudflare.ts. - Updated
actions/setup-nodeto v4.1.0 inNode.tsandNPM.yml. - Updated
actions/cacheto v4.1.2 inRust.ts. - Updated
actions/checkoutto v4.2.2 in multiple workflow files (Cloudflare.yml,codeql.yml,Node.yml,NPM.yml,Rust.yml). - Updated
github/codeql-actionto v3.27.4 incodeql.yml.
- Added
Action.shscript for managing GitHub Actions. - Added import statements for
Filestype in various command files.
- Updated
.npmignoreto replaceDocumentation/withdocs/andSummary.mdwithAction.sh. - Updated
package.json:- Bumped version from 0.1.1 to 0.1.2.
- Updated email to
Source/Open@PlayForm.Cloud. - Updated URL to
https://PlayForm.Cloud. - Updated
deepmerge-tsto version 7.1.3. - Updated
@octokit/typesto version 13.6.1. - Updated
@playform/buildto version 0.1.8. - Updated
@types/nodeto version 22.9.0.
- Updated various GitHub Actions and workflows:
- Updated
cloudflare/wrangler-actionto v3.9.0 inCloudflare.ts. - Updated
actions/setup-nodeto v4.0.4 inNode.tsandNPM.yml. - Updated
actions/upload-artifactto v4.4.3 inNode.ts. - Updated
actions/cacheto v4.1.1 inRust.ts. - Updated
actions/checkoutto v4.2.1 in multiple workflow files. - Updated
github/codeql-actionto v3.26.13 incodeql.yml.
- Updated
- Improved code formatting and consistency across various TypeScript files.
- Updated
@playform/buildto version 0.1.3 - Updated
@types/nodeto version 22.5.0 - Updated
zodto version 3.23.8 - Updated
actions/upload-artifactto v4.3.6 in Node.ts
- Updated
deepmerge-tsto version 7.1.0 - Updated
@playform/buildto version 0.1.2 - Updated
@types/nodeto version 20.14.12 - Updated
zodto the latest version - Updated
Runscript to useBuild 'Source/**/*.ts' --Watch - Added
provenance: truetopackage.json
- Updated version to 0.0.8
- Updated
deepmerge-tsto version 7.0.3 - Updated
@playform/buildto version 0.1.0 - Updated
@types/nodeto version 20.14.10 - Updated project description to "Maintain 🔧"
- Fixed evolving type errors by adding
// biome-ignore lint/nursery/noEvolvingTypes:annotations
- Updated version to 0.0.8
- Updated
deepmerge-tsto version 7.0.3 - Updated
@playform/buildto version 0.1.0 - Updated
@types/nodeto version 20.14.10 - Updated project description to "Maintain 🔧"
- Fixed evolving type errors by adding
// biome-ignore lint/nursery/noEvolvingTypes:annotations
- Updated version to 0.0.6
- Updated
@playform/buildto version 0.0.10
- Updated version to 0.0.5
- Added
@playform/buildas a peer dependency - Added
peerDependenciesMetato mark@playform/buildas optional
- Updated version to 0.0.4
- Updated project description to "Maintain 🔧"
- Updated homepage URL to use HTTPS
- Updated author information
- Updated dependencies:
@octokit/coreto version 6.1.2commanderto version 12.1.0deepmerge-tsto version 7.0.1zodto version 3.23.8@octokit/typesto version 13.5.0@playform/buildto version 0.0.9@playform/documentto version 0.0.7@types/nodeto version 20.12.12
- Improved code formatting and consistency
- Updated workflows to use newer versions of actions
- Removed
.envfrom.gitignore
- Updated version to 0.0.3
- Updated homepage to
https://github.com/Playform/Maintain#readme - Added
Documentscript
- Added
@playform/documentas a dependency
- Updated version to 0.0.2
- Initial Release