Repository navigation
Conversation
Events that objectives wait on start (or end) from the objective instead of mission start, so late players are never stranded. Command objectives fail when their window closes instead of deadlocking. window.advanceClock burns objective countdowns, and the specs it exposed no longer make jumps a player cannot. Quiz manager hands the pending indicator to another objective's open quiz. Restore test for the one affected production checkpoint (ham-sdr S5).
…19.1) test/reference compares the engine to published values: ITU-R P.838-3, P.618-13 and P.676-13 (ITU validation examples), FSPL, the CPI 9.0 m and Prodelin 1244 datasheets, the S.580-6 envelope, DVB-S2 QEF thresholds (EN 302 307 Table 13), uncoded BER, Vallado's SGP4 vectors and the Doppler range-rate identity. A case the engine is known to fail names its ID in docs/known-deviations.md and runs as it.fails, so fixing a model forces the doc and the test to change together (REFERENCE_STRICT=1 shows the gaps). docs/simulation-models.md maps each quantity to its function, standard, reference case and deviation. 27 cases pass, 21 are known deviations, including two the audit missed: 2.4 m Ku gain 1 dB under its datasheet and a Doppler factor up to 0.22 km/s off the geometric range rate. Receiver.requiredCnDb extracts the per-modulation threshold so it can be tested; behaviour is unchanged.
…phase 19.1) scripts/calibration/snapshot.calibration.ts flies all 74 scenarios with their own stations and satellites (program-track at 60 Hz; each LEO's first pass above 5 deg, GEO settled) and writes test/calibration/<id>.json: per carrier IF power, noise floor, C/N and lock; gain, G/T and Tsys at the peak elevation; the LNB noise temperature; and the scenario's authored physical thresholds. diff.mjs compares a fresh run with a committed ledger and lists thresholds a model change leaves unmet (best-case, clear sky). Run with npx vitest run --config vitest.calibration.config.mts (about 3 minutes). Baseline: no covered threshold is short; 15 are not covered (scripted interferers and stations that start without a carrier by design).
The 2026-09-26 production deploy failed: wrangler-action installs wrangler with the repo's packageManager (pnpm) and the deploy job had no pnpm on PATH. UAT is retired: its deploy jobs, the /deploy-uat comment workflow, the uat wrangler environment and the README section are gone.
pnpm run author checks a collaborator's setup and opens the editor; pnpm run author:intake <PR#> moves a PR's staged clip audio to R2. The author-audio-guard workflow blocks merging a PR that still carries audio in incoming-audio/.
A checkpoint supplied from memory (private-edition dev tooling only): loadCheckpoint serves it for its scenario, the scenario page restores it without a sign-in, and UserDataService refuses every backend write while it is active, so a replay never touches the developer's own saves.
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.OpenSSF Scorecard
Scanned Files
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request makes significant changes to the deployment workflows and documentation for the project, with the main focus on simplifying and restricting the deployment process. The UAT (User Acceptance Testing) deployment pipeline and its associated GitHub Actions have been removed, leaving only production deployments via pushes to
main. Additionally, a new workflow has been added to prevent merging of audio files that haven't been properly processed. The documentation has also been updated to reflect these changes.The most important changes are:
Deployment workflow simplification:
.github/workflows/deploy-pipeline.ymland deleted.github/workflows/deploy-uat-comment.yml. Now, only production deployments through pushes tomainare supported. [1] [2] [3]deploy-production) and removed permissions and configuration related to UAT and PR deployments.pnpmin the production deployment job to ensure compatibility with the Cloudflare Wrangler action.Audio file merge protection:
.github/workflows/author-audio-guard.ymlthat blocks merging of pull requests containing unprocessed audio files in theincoming-audio/folder, ensuring maintainers process audio before merging.Documentation updates:
README.mdto remove references to UAT deployments and clarify that deployments are now only to production via pushes tomain.## DescriptionTesting
npm test)npm run test:e2e)