Skip to content

Dev to release - #35

Merged
Zacgoose merged 3 commits into
mainfrom
dev
Aug 17, 2026
Merged

Dev to release#35
Zacgoose merged 3 commits into
mainfrom
dev

Conversation

@Zacgoose

Copy link
Copy Markdown
Contributor

No description provided.

JohnDuprey and others added 3 commits August 16, 2026 17:06
Binary bodies were pushed through the JSON serializer and reached clients as integer arrays. String bodies with non-JSON content types were also incorrectly JSON-quoted.

Adds BodyBytes to ScriptResult and a content-type-aware branch in ExtractResponse: byte[] bypasses serialization (octet-stream fallback when no type declared), non-JSON strings pass through raw, and JSON paths keep existing behaviour. Endpoint writers prefer BodyBytes when present.

Covers all branches with BinaryResponseTests.
A run re-queued from inside its own context had itself recorded as its own child, causing finalization to deadlock — the run waited on itself to leave _activeRuns, which only happens at finalization. Observed as runs stuck 'Running' for days with every task terminal and Remaining=0.

Fixes applied at three layers:
- Strip self-parent on run start (CreateOrUpdateRun)
- Refuse self-links in TryRegisterChildRun
- Skip self-entries in AllChildRunsComplete (guards stale rows from before this fix)
- Skip self-links when reattaching child runs on service recovery

Adds unit tests covering all three guard layers.
Set `VerbosePreference` and `DebugPreference` to `ActionPreference.Continue` instead of string values in both ISS builders. This preserves the expected typed built-in variables and prevents parameter binding failures when module code forwards values like `-Verbose:$VerbosePreference`.
@Zacgoose
Zacgoose merged commit f2a39bd into main Aug 17, 2026
7 checks passed
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