Repository navigation
fix: JSON round-trip fidelity, concurrency starvation, and lifecycle fixes - #96
Merged
Merged
Conversation
…d-safety, and app uninstall - Fix escaped backslash handling in Builder and Builders JSON parsing and unescape array string elements - Release lock between poll attempts in DistributedMessageQueue.take() to prevent starving background copy() workers, and guard against unregistered sessions - Replace SimpleDateFormat with thread-safe DateTimeFormatter in LogFormatter - Remove all matching actions in ApplicationManager.uninstall() and ensure initialized flag is set regardless of default.import.applications - Undeprecate Application.setAction(String, String) for dynamic route registration - Add unit tests covering each fix
…round trips - Builder: escape object keys on output; keep String values quoted even when they look like numbers/booleans/null; add null-literal single value - Builders: parse true/false/null array elements as Boolean/null (was String) - Tests: add BuilderRoundTripTest; BuilderCharSequenceViewTest now expects Boolean.TRUE
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.
Summary
This PR merges autonomous maintenance and stability fixes from
agent/maintenanceintomaster:1. JSON Round-Trip Fidelity & Escaping (
Builder/Builders)appendKeyValueto pair with parser unescaping.booleanandnullliterals into corresponding typedBuildervalues.Stringvalues quoted even when they look like numbers, booleans, or nulls so parse/toString()cycles preserve types."\\\\").BuilderRoundTripTestand updateBuildersTest,BuilderTest, andBuilderCharSequenceViewTestto verify round-trip fidelity.2. Concurrency & Performance (
DistributedMessageQueue)DistributedMessageQueue.take()by scoping lock acquisition strictly aroundpollMessage(...), releasing the lock before sleeping.3. Application Lifecycle (
ApplicationManager)uninstall(Application)to remove all actions registered by the target application rather than returning on the first match.4. Logging Thread Safety (
LogFormatter)SimpleDateFormatwith thread-safeDateTimeFormatter.5. API Cleanup (
Application/AbstractApplication)@Deprecatedannotations onsetAction(String, String)to support dynamic runtime action mapping without compiler warnings.Verification
Builder&Builderssuites: 84/84 tests passed (BuilderTest,BuildersTest,BuilderCharSequenceViewTest,BuilderRoundTripTest).DistributedMessageQueueTest,ApplicationManagerTest,LoggerTestpassed.