Conversation
…e-state-representation-metric-aggregation docs: update DCC doc
Integrates richer GORNA support across control and agent crates. Adds a HeuristicEngine with thermal, battery, phase, frame-time, variance/trend and CPU/GPU pressure checks (including death‑spiral detection) and unit tests; extends Context with a global_budget_multiplier and helper to refresh it. Refactors the GORNA arbitrator to consume analysis reports and prepare for two‑pass negotiation/allocation. Enhances RenderAgent negotiation/apply_budget/report_status: realistic time/VRAM estimates, preserved lanes on strategy changes, device/lane lifecycle handling, per-frame metrics (frame time, draws, triangles), triangle counting, and additional logging. Includes comprehensive integration tests for RenderAgent GORNA flows. Miscellaneous logging and warning improvements throughout.
Introduce a high-level GameWorld facade in khora-sdk for safe ECS and asset access and update the Application API to use &mut GameWorld. Wire a telemetry Sender into RenderAgent to emit GpuReport events and add a builder helper (.with_telemetry_sender) and emit_telemetry() logic; add crossbeam-channel as a dependency and tests verifying telemetry wiring. Improve DCC (DccService) behavior by running an initial GORNA negotiation on first tick, introduce a SharedAgentList alias, add Drop to stop the service, and add an integration test ensuring initial negotiation applies budgets. Misc: add defaults and small simplifications to MetricStore/RingBuffer, expose additional lighting constants and struct fields in renderer/common, fix GPU monitor types, simplify map_err closures across render lanes, and update docs/examples to reflect these changes.
…vice 72 feature implement dcc core service
Add GORNA negotiation, budget application and telemetry plumbing to multiple agents and subsystems. Implement Agent trait hooks and strategy-aware behavior for AssetAgent, PhysicsAgent, and GarbageCollectorAgent (negotiation responses, apply_budget, update/report_status, telemetry emission); enhance RenderAgent to integrate with a RenderSystem, cache device/system from services, prepare/extract frames differently, and expose render/inspection helpers. Refactor mesh preparation and asset loading paths (fix GPU mesh caching/upload), update tests to match new APIs, and add utility improvements in control context and arbitrator (ExecutionPhase helpers, timed mutex lock helper, GornaArbitrator enhancements). Misc: small API/type adjustments and telemetry/metrics wiring across crates.
Add a generic Lane system (khora-core::lane) with LaneContext, Slot, LaneRegistry and domain context keys, and refactor agents to use it. RenderAgent and PhysicsAgent now register/get lanes via LaneRegistry and build LaneContext for initialization and execution; render path was updated to run shadow lanes first and then the selected render lane. Mesh preparation and several renderer API imports were adjusted to new module paths/types; tests and docs were updated to match the new lane-based flow. This centralizes swappable strategies (render/physics/audio/etc.), avoids cyclic dependencies, and enables more flexible, domain-agnostic lane execution.
|
🎉 This PR is included in version 0.5.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
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.
v0.5