Skip to content

Release: 2 features, 4 fixes, 1 refactor, 2 chores → Main#9786

Merged
h0lybyte merged 9 commits intomainfrom
dev
Apr 8, 2026
Merged

Release: 2 features, 4 fixes, 1 refactor, 2 chores → Main#9786
h0lybyte merged 9 commits intomainfrom
dev

Conversation

@github-actions
Copy link
Copy Markdown
Contributor

@github-actions github-actions Bot commented Apr 8, 2026

Release: Dev → Main

9 atomic commits ready for main

Features

Bug Fixes

Refactoring

Chores


This PR is automatically maintained by CI — KBVE Studio

ArgoCD PostSync Job that purges the Cloudflare cache after each
successful sync of the kbve app. Waits 30s for rollout to stabilize,
then calls the purge_cache API with purge_everything.

API token is pulled from the existing cert-manager SealedSecret via
ExternalSecret + cross-namespace RBAC. Zone ID is hardcoded (public).
The mc edge function was removed but homeService still included it
in the health check list, causing a 500 error on every dashboard load.
@github-actions
Copy link
Copy Markdown
Contributor Author

github-actions Bot commented Apr 8, 2026

Dependency Review

The following issues were found:
  • ✅ 0 vulnerable package(s)
  • ✅ 0 package(s) with incompatible licenses
  • ✅ 0 package(s) with invalid SPDX license definitions
  • ⚠️ 2 package(s) with unknown licenses.
See the Details below.

Snapshot Warnings

⚠️: No snapshots were found for the head SHA caf7996.
Ensure that dependencies are being submitted on PR branches and consider enabling retry-on-snapshot-warnings. See the documentation for more information and troubleshooting advice.

License Issues

apps/kbve/axum-kbve/Cargo.toml

PackageVersionLicenseIssue Type
rand>= 0.10.0, < 0.11.0NullUnknown License

packages/rust/bevy/bevy_battle/Cargo.toml

PackageVersionLicenseIssue Type
rand>= 0.10.0, < 0.11.0NullUnknown License

OpenSSF Scorecard

PackageVersionScoreDetails
cargo/toml_edit 0.25.11+spec-1.1.0 🟢 7.3
Details
CheckScoreReason
Code-Review🟢 3Found 6/19 approved changesets -- score normalized to 3
Maintained🟢 1030 commit(s) and 13 issue activity found in the last 90 days -- score normalized to 10
Dangerous-Workflow🟢 10no dangerous workflow patterns detected
Packaging⚠️ -1packaging workflow not detected
Token-Permissions🟢 10GitHub workflow tokens follow principle of least privilege
CII-Best-Practices⚠️ 0no effort to earn an OpenSSF best practices badge detected
Security-Policy⚠️ 0security policy file not detected
Binary-Artifacts🟢 10no binaries found in the repo
Pinned-Dependencies⚠️ 0dependency not pinned by hash detected -- score normalized to 0
Fuzzing🟢 10project is fuzzed
License🟢 10license file detected
Signed-Releases⚠️ -1no releases found
Branch-Protection⚠️ -1internal error: error during branchesHandler.setup: internal error: some github tokens can't read classic branch protection rules: https://github.com/ossf/scorecard-action/blob/main/docs/authentication/fine-grained-auth-token.md
SAST🟢 10SAST tool is run on all commits
cargo/rand >= 0.10.0, < 0.11.0 UnknownUnknown
cargo/rand >= 0.10.0, < 0.11.0 UnknownUnknown
cargo/rand >= 0.10.0, < 0.11.0 UnknownUnknown

Scanned Files

  • Cargo.lock
  • apps/kbve/axum-kbve/Cargo.toml
  • packages/rust/bevy/bevy_battle/Cargo.toml
  • packages/rust/holy/Cargo.toml

@github-actions github-actions Bot changed the title Release: 1 feature → Main Release: 1 feature, 1 fix → Main Apr 8, 2026
Resolves #9692. Migrates all rand API usage to 0.10:
- Rng trait → RngExt (bevy_battle systems, holy fuzz macro)
- StdRng::from_os_rng() → rand::make_rng()
- gen_range/gen_bool/gen → random_range/random_bool/random (holy macro codegen)
@github-actions github-actions Bot changed the title Release: 1 feature, 1 fix → Main Release: 1 feature, 1 fix, 1 chore → Main Apr 8, 2026
@github-actions github-actions Bot changed the title Release: 1 feature, 1 fix, 1 chore → Main Release: 1 feature, 1 fix, 2 chores → Main Apr 8, 2026
…#9787 (#9790)

* fix(dashboard): fetch edge function list from health manifest

Replace hardcoded function list with a dynamic fetch from the
/functions/v1/health endpoint manifest. The health endpoint returns
all registered functions — this is the same source of truth the edge
dashboard page uses. Removes stale mc entry and ensures new functions
are automatically included without code changes.

* fix(dashboard): use non-admin Forgejo API endpoints for users and orgs

/api/v1/admin/users and /api/v1/admin/orgs require site admin
privileges. The deploy token only has repo access, so both returned
empty arrays (403). Switch to /api/v1/users/search and /api/v1/orgs
which work with any authenticated token.

* fix(dashboard): fetch Forgejo users from repo collaborators

The deploy token lacks read:user and read:organization scopes, so
/admin/users, /users/search, and /orgs/*/members all return 403.
Instead, pull unique users from each accessible repo's collaborators
endpoint (which works with repo scope) plus repo owners.
Also switch orgs from /admin/orgs to /orgs (public listing).
@github-actions github-actions Bot changed the title Release: 1 feature, 1 fix, 2 chores → Main Release: 1 feature, 2 fixes, 2 chores → Main Apr 8, 2026
Guacamole Docker image requires GUACAMOLE_HOME to discover
user-mapping.xml. Without it, the container exits with
"FATAL: No authentication configured" despite the ConfigMap
being mounted at /etc/guacamole/user-mapping.xml.
@github-actions github-actions Bot changed the title Release: 1 feature, 2 fixes, 2 chores → Main Release: 1 feature, 3 fixes, 2 chores → Main Apr 8, 2026
h0lybyte added 3 commits April 8, 2026 04:04
Add embedded KASM viewer at /dashboard/vm/kasm/?workspace={name}
that wraps the KASM proxy in an iframe within the dashboard layout.
Replaces the broken target=_blank link that pointed to a non-existent
route (/dashboard/vm/kasm/{name}).

- New AstroKasmDashboard.astro wrapper with auth gate
- New ReactKasmViewer.tsx with workspace status, back nav, iframe embed
- Updated ReactKasmCards Open button to use query param URL
…ap (#9793)

Three fixes to make Firecracker VM code execution work end-to-end:

1. Add init=/init to boot_args so kernel runs our init script instead
   of Alpine's /sbin/init (which requires OpenRC and hangs).

2. Move VM init script to a ConfigMap (firecracker-vm-init) mounted
   into the rootfs builder job. Eliminates printf/heredoc escape issues
   and makes the init script easy to maintain.

3. Init script mounts tmpfs on /tmp (rootfs is read-only), parses
   fc_entrypoint from /proc/cmdline, reads code from /dev/vdb via
   dd + tr to strip null padding, and execs the entrypoint.

Verified in-cluster: Python code runs and prints output correctly.
Version bumped to 0.1.25 to trigger new Docker build.
…ls (#9794)

Replace 6 duplicate enum definitions (EffectKind, EffectInstance, Intent,
ClassType, Personality, UseEffect) in discordsh-bot with re-exports from
bevy_battle. This eliminates ~250 lines of bidirectional type conversion
boilerplate in battle_bridge.rs.

Add bevy_skills integration:
- SkillProfile on PlayerState (combat, exploration, foraging)
- XP grant helpers with level-scaled rewards
- Persist skills as JSONB in DungeonProfile
- Public grant_xp_direct/set_level_direct on SkillProfile for non-ECS use

All 701 tests pass.
@github-actions github-actions Bot changed the title Release: 1 feature, 3 fixes, 2 chores → Main Release: 2 features, 4 fixes, 1 refactor, 2 chores → Main Apr 8, 2026
@h0lybyte h0lybyte merged commit c045f73 into main Apr 8, 2026
8 checks passed
@github-project-automation github-project-automation Bot moved this from Review to Done in KBVE Apr 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

1 participant