mirror of
https://github.com/Heretek-AI/GDevelop-Heretek.git
synced 2026-10-12 02:02:42 +00:00
4.1 KiB
4.1 KiB
Scripts files for GDevelop
Repository-wide tooling. Per-package scripts live in each package's own
package.json, not here.
Fork maintenance
See MAINTENANCE.md for how these fit together.
- check-fork-divergence.js: keeps the fork's divergence from upstream
4ian/GDevelopbounded. Compares this tree against the baseline commit recorded infork-divergence.json(falling back togit merge-base HEAD upstream/master) and checks the result against the checked-in allowlist; exits 1 on a path that diverges without being listed or a listed path that no longer diverges. Measuring against a fixed baseline rather than liveupstream/masteris what keeps upstream's own pushes from reading as fork divergence.--updaterewrites the allowlist and records the baseline,--listprints the divergence set. Runs inci.yml(fork-divergencejob) and, informationally, inupstream-sync.yml. - sonarcloud-drift.js: compares the project's open SonarCloud issue count
against
.sonarcloud-drift-baselineand fails when growth exceeds the threshold. Self-seeds the baseline when it is missing and writescount/baseline/seededto$GITHUB_OUTPUT.--update-baselinerecords the current count;--max-growth-pct=<n>overrides the 10% default. Runs weekly in.github/workflows/fallow.yml. - security/check-lockfiles.js: asserts no manifest in the repo pins a
known-malicious or critically vulnerable version of the packages listed in
the script. Runs in
ci.yml(lockfile-guardjob).
Development harness
- dev/mock-ai-provider.js: a dependency-free OpenAI-compatible mock
provider (
node scripts/dev/mock-ai-provider.js, default:11435) so the editor's BYOK / multi-agent path can be exercised end-to-end without credentials. It streams SSE, answers non-streamed requests, and emitsx-omniroute-*telemetry headers. It sets permissive CORS andAccess-Control-Expose-Headers, because a browser client cannot read custom response headers from a cross-origin endpoint without the latter — the same requirement applies to any real telemetry proxy. Point the editor's custom AI base URL athttp://localhost:11435/v1to use it. SetMOCK_SCRIPT=<file>to serve a fixed sequence of turns (content and/ortoolCalls) from a JSON array, one per request — seedev/mock-script.example.json(plan -> spawn_agent -> report) ordev/mock-script-multi.json(a 3-task plan with dependencies and three sequential spawns) — to drive a deterministic multi-step studio run offline. The script applies to PARENT requests only; a sub-agent request (its system prompt names a studio role) gets a plain reply, so the interleaved parent/child request order cannot consume the script out of sequence. SetMOCK_CHILD_SCRIPTS=<file>to script each SPECIALIST separately: a JSON object{ "designer": [turns], "developer": [...], "tester": [...] }keyed by the role named in the sub-agent's system prompt, consumed per role - seedev/mock-child-scripts.example.json. This lets a deterministic run script what each role does (e.g. a tool call) instead of one shared sequence.dev/mock-script-specialists.jsonpairs with it: a 2-task plan (design -> build) that spawns the designer then the developer; with a project open it drives a full per-role specialist run offline (verified end-to-end, cycle 236).
Documentation and translations
- GenerateAllDocs.[bat|sh]: Calls doxygen to generate all documentation into docs folder.
- ExtractTranslations.[bat|sh]: Creates the source.pot file containing the strings to be translated using Crowdin.
Upstream scripts removed in this fork
ReleaseProcedure.bat, ReleaseProcedure.sh and
CopyWindowsToLinuxReleaseFiles.sh are referenced by older upstream docs but do
not exist in this checkout — packaging happens through
.github/workflows/build-release.yml and newIDE/electron-app. Do not add them
back from an upstream sync.