Skip to content

Merge develop: Volunteer onboarding infrastructure & CI fixes#521

Merged
PipFoweraker merged 9 commits intomainfrom
develop
Feb 3, 2026
Merged

Merge develop: Volunteer onboarding infrastructure & CI fixes#521
PipFoweraker merged 9 commits intomainfrom
develop

Conversation

@PipFoweraker
Copy link
Owner

Summary

Brings develop up to main with volunteer onboarding infrastructure and maintenance fixes.

Volunteer Onboarding

CI/CD Fixes

  • Delete 5 broken/duplicate workflows (test.yml, tests.yml, release.yml, etc.)
  • Fix auto-copilot-prs.yml (add GH_TOKEN, disable schedule until implemented)
  • Fix enhanced-cicd-pipeline.yml (expose health-score output)

Maintenance

  • Archive 6 one-time migration scripts to scripts/archive/
  • Add Godot 4 .uid files for asset tracking
  • Add event integration planning doc

WIP

  • Risk pool system (in progress) - core implementation with game_state/turn_manager integration

Test plan

  • CI workflows pass on develop
  • Good first issues created and accessible
  • CONTRIBUTING.md renders correctly

🤖 Generated with Claude Code

PipFoweraker and others added 9 commits February 3, 2026 12:17
Risk pool core implementation, game_state/turn_manager/debug_overlay
integration points, and design documentation. Not yet complete.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
These .uid files are used by Godot 4's resource system for stable
references. Consistent with prior commit 90f27ad.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Delete test.yml: skeleton placeholder, superseded by godot-tests.yml
- Delete tests.yml: duplicate skeleton, also superseded
- Delete auto-pr-from-issue.yml: incomplete stub, duplicate of auto-copilot-prs.yml
- Delete deploy-dreamhost.yml: empty/corrupted file
- Delete release.yml: uses deprecated actions, superseded by enhanced-release.yml
- Fix auto-copilot-prs.yml: add GH_TOKEN env, disable daily schedule until
  Copilot agent integration is implemented
- Fix enhanced-cicd-pipeline.yml: expose health-score as job output,
  handle missing health-score gracefully in integration-testing gate

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Add CONTRIBUTING.md with setup guide, branch workflow, testing
  instructions, debug overlay usage, and QA process
- Add QA bug report issue template with severity, debug state fields
- Commit QA_CHECKLIST.md to repository

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Documents the plan for integrating 1,194 historical AI safety events
from pdoom-data, including phase breakdown and schema mappings.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Moved to scripts/archive/:
- nuclear_unicode_killer.py: One-time aggressive Unicode stripper
- ascii_cleanup_remnants.py: One-time ASCII cleanup companion
- fix_unicode_damage.py: One-time recovery from unicode killer
- close_ui_issues.py: One-time GitHub issue closure batch
- archive_completed_issues.py: One-time issue file archival
- fix_deterministic_rng.py: One-time RNG import refactoring

These scripts served their purpose during earlier migration phases and
are no longer needed for ongoing development.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Provides simple commands:
- make run: Launch the game
- make test: Run GUT unit tests
- make lint: Check GDScript syntax
- make validate: Validate historical data
- make health: Run project health check
- make clean: Clean cache files
- make install: Install Python dependencies

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Merged content from docs/developer/CONTRIBUTING.md into root CONTRIBUTING.md
- Added Makefile commands, debug overlay section, QA testing process
- Fixed branch workflow (PRs target develop, not main)
- Updated README to point to root CONTRIBUTING.md
- Left redirect at docs/developer/CONTRIBUTING.md for old links

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: db88ee27f9

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +210 to +214
if Engine.has_singleton("VerificationTracker"):
var tracker = Engine.get_singleton("VerificationTracker")
if tracker.has_method("record_rng_outcome"):
var turn = state.turn if state and state.has("turn") else -1
tracker.record_rng_outcome("risk_%s" % pool_name, roll, turn)

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Avoid Dictionary-only has() on GameState

The new _record_trigger path calls state.has("turn"), but state is a GameState object (a Node), not a Dictionary. In Godot this will raise an invalid method error when a risk event triggers, which interrupts turn processing right after process_turn starts emitting events. Because state.turn is always present on GameState, you can safely use state.turn (or state.get("turn")) and only guard on state != null.

Useful? React with 👍 / 👎.

@PipFoweraker PipFoweraker merged commit ab57188 into main Feb 3, 2026
17 of 24 checks passed
@PipFoweraker PipFoweraker deleted the develop branch February 3, 2026 22:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant