Skip to content

Claude/add comprehensive logging 5ca kj#326

Merged
Krilliac merged 5 commits into
Workingfrom
claude/add-comprehensive-logging-5caKJ
Mar 30, 2026
Merged

Claude/add comprehensive logging 5ca kj#326
Krilliac merged 5 commits into
Workingfrom
claude/add-comprehensive-logging-5caKJ

Conversation

@Krilliac

Copy link
Copy Markdown
Owner

No description provided.

claude added 2 commits March 30, 2026 09:29
Adds structured logging using the unified SPARK_LOG_* macro system across
every major engine subsystem that previously lacked instrumentation.
Coverage spans SparkEngine core, graphics, physics, networking, ECS,
animation, audio, scripting, streaming, gameplay, editor panels/subsystems,
all 7 game modules, and SparkConsole. Uses appropriate log levels (Trace
through Fatal) and categories for each subsystem, with rate-limited and
one-shot macros in hot paths to avoid performance impact.

https://claude.ai/code/session_017S5DmcNixsaLYJD9VDtqk5
@github-actions

github-actions Bot commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

❌ CI Error Report

Failed jobs: windows-vs2022-Release
Errors: 0 | Test failures: 3 | Warnings: 15

Test Failures

Test Jobs
1/1 Test #1: SparkEngineTests .................***Failed 8.93 sec windows-vs2022-Release
[ FAILED ] Monitor_TweenSustainedLoad (643us, 5 assertions) windows-vs2022-Release
0% tests passed, 1 tests failed out of 1 windows-vs2022-Release
Compiler Warnings (15)
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsShapeFactory.cpp(104,88): warning C5219: implicit conversion from 'const uint32_t' to 'const float', possible loss of data [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsShapeFactory.cpp(106,88): warning C5219: implicit conversion from 'const uint32_t' to 'const float', possible loss of data [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsShapeFactory.cpp(294,45): warning C5219: implicit conversion from 'int' to 'float', possible loss of data [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(549,50): warning C5219: implicit conversion from '_Rep' to 'float', possible loss of data [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(549,50): warning C5219:         with [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(549,50): warning C5219:         [ [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(549,50): warning C5219:             _Rep=__int64 [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(549,50): warning C5219:         ] [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(552,5): warning C5219: implicit conversion from '_Rep' to 'double', possible loss of data [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(552,5): warning C5219:         with [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(552,5): warning C5219:         [ [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(552,5): warning C5219:             _Rep=__int64 [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Physics\PhysicsSystem.cpp(552,5): warning C5219:         ] [D:\a\SparkEngine\SparkEngine\build\SparkEngineLib.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEngine\Source\Graphics\FogSystem.h(139): warning C4756: overflow in constant arithmetic [D:\a\SparkEngine\SparkEngine\build\Tests\SparkTests.vcxproj]
D:\a\SparkEngine\SparkEngine\SparkEditor\Source\Panels\InspectorComponentRenderers.cpp(130,17): warning C4477: 'snprintf' : format string '%u' requires an argument of type 'unsigned int', but variadic argument 1 has type 'SparkEditor::ObjectID' [D:\a\SparkEngine\SparkEngine\build\SparkEditor\SparkEditor.vcxproj]

Updated: 2026-03-30T20:38:13Z — this comment is updated in-place, not duplicated.

claude and others added 3 commits March 30, 2026 18:31
Two issues:
1. SparkConsole CMakeLists.txt was mangled by clang-format (it's CMake,
   not C++) — revert all SparkConsole logging changes since it's a
   standalone app that doesn't link SparkEngineLib
2. ComponentReflection.cpp: pass field.name.c_str() instead of
   field.name to snprintf %s (Clang -Wnon-pod-varargs error)

https://claude.ai/code/session_017S5DmcNixsaLYJD9VDtqk5
Same issue as line 128 — field.name is std::string, needs .c_str() for
snprintf %s format specifier.

https://claude.ai/code/session_017S5DmcNixsaLYJD9VDtqk5
@Krilliac
Krilliac merged commit 5f3072b into Working Mar 30, 2026
38 of 42 checks passed
@Krilliac
Krilliac deleted the claude/add-comprehensive-logging-5caKJ branch March 30, 2026 19:11
@github-actions

Copy link
Copy Markdown
Contributor

Code Coverage (GCC + lcov)

Utils/JsonUtils.h                         |    -      0|    -     0|    -      0
Utils/LocalFileCache.h                    |12.7%    157| 0.0%    20|    -      0
Utils/Logger.cpp                          |21.5%    130| 0.0%    16|    -      0
Utils/Logger.h                            |18.5%    124| 0.0%    21|    -      0
Utils/MathUtils.cpp                       |    -      0|    -     0|    -      0
Utils/MemoryDebugger.h                    |13.3%    150| 0.0%    20|    -      0
Utils/MemoryMonitor.cpp                   | 9.6%    229| 0.0%    19|    -      0
Utils/MemoryMonitor.h                     |85.7%     14| 0.0%    12|    -      0
Utils/OpaqueHandle.h                      | 209%     11| 0.0%    15|    -      0
Utils/Profiler.cpp                        |14.3%    112| 0.0%    15|    -      0
Utils/Profiler.h                          |40.0%     30| 0.0%    12|    -      0
Utils/RandomEngine.h                      |29.3%     41| 0.0%    12|    -      0
Utils/Result.h                            | 100%     29| 0.0%    28|    -      0
Utils/RingBuffer.h                        | 108%     59| 0.0%    64|    -      0
Utils/ScopeGuard.h                        | 142%     36| 0.0%    51|    -      0
Utils/ScopedTimer.h                       |25.0%     12| 0.0%     3|    -      0
Utils/Serializer.h                        | 100%     48| 0.0%    42|    -      0
Utils/SparkConsole.cpp                    | 125%     32| 0.0%     6|    -      0
Utils/SparkConsole.h                      | 100%      2| 0.0%     2|    -      0
Utils/SparkError.h                        |10.9%     55| 0.0%     6|    -      0
Utils/SplinePath.h                        |    -      0|    -     0|    -      0
Utils/StackTrace.h                        |11.0%     73| 0.0%     8|    -      0
Utils/StateMachine.h                      |54.0%     63| 0.0%    32|    -      0
Utils/StringUtils.h                       |18.8%    112| 0.0%    21|    -      0
Utils/ThreadDebugger.h                    |12.8%    148| 0.0%    19|    -      0
Utils/ThreadSafeQueue.h                   |27.5%     40| 0.0%    11|    -      0
Utils/UUID.h                              |43.2%     37| 0.0%    16|    -      0
Utils/Validate.h                          |    -      0|    -     0|    -      0

[/home/runner/work/SparkEngine/SparkEngine/SparkSDK/Include/Spark/]
IEngineContext.h                          |6700%      1| 0.0%     1|    -      0
Version.h                                 |    -      0|    -     0|    -      0
================================================================================
                                    Total:|34.5%  12061| 0.0%  2451|    -      0

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.

2 participants