Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
## 4.8.10-webui-action-pid-guard-hotfix

- Pin shared WebUI Core 0.7.1.
- Fix Android/Magisk Action PID identity checks that could hang in a NUL-translation pipeline.
- Preserve the 4.8.9 standardized ntfy lifecycle integration and remote-retention options unchanged.
- Keep stable update.json unchanged pending exact-device acceptance.

## 4.8.9-notifications-retention-options

- Adopt shared WebUI Core 0.7.0 standardized ntfy status/test capability.
Expand Down
12 changes: 12 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,15 @@
Candidate 4.8.10 fixes the Android/Magisk Action PID identity hang through shared WebUI Core 0.7.1. The ntfy/retention feature set from 4.8.9 is unchanged; Stable update.json remains unchanged until exact-device acceptance passes.

<!-- SORTIFY_DISPATCH_V4810_PID_GUARD_README_START -->
## vNext: Sortify Dispatch 4.8.10

Candidate `4.8.10-webui-action-pid-guard-hotfix` / `versionCode=37` pins shared WebUI Core 0.7.1. The Action launcher now checks `/proc/<pid>/cmdline` directly instead of the Android-hanging NUL-translation pipeline.

Notifications remain standardized through Core 0.7.x, use the existing private SDD ntfy configuration, and keep `start/success/fail` delivery non-fatal. Remote protected release remains `marker_only` by default with opt-in `marker_or_age`.

Stable `update.json` remains unchanged until exact-device Action, Notifications and retention acceptance passes.
<!-- SORTIFY_DISPATCH_V4810_PID_GUARD_README_END -->

Candidate 4.8.9 adds standardized ntfy lifecycle notifications through shared WebUI Core 0.7.0 and an explicit optional remote protected age fallback. `marker_only` remains the safe default; `marker_or_age` can be selected separately with its own retention days. ntfy reuses the private SSH Drop Dispatcher configuration without exposing endpoint/topic/token values in Sortify or the browser.

<!-- SORTIFY_DISPATCH_V489_NTFY_RETENTION_README_START -->
Expand Down
9 changes: 9 additions & 0 deletions RELEASE_NOTES_v4.8.10-webui-action-pid-guard-hotfix.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Sortify Dispatch 4.8.10 WebUI Action PID guard hotfix

Candidate release for exact-device acceptance.

- Pins shared WebUI Core 0.7.1.
- Replaces the Android-hanging Action PID identity NUL-translation pipeline with direct procfs fixed-string matching.
- Keeps Core 0.7.0 standardized ntfy status/test and Sortify start/success/fail lifecycle behavior.
- Keeps remote protected `marker_only|marker_or_age` policy and separate retention days unchanged.
- Stable `update.json` is intentionally not promoted by this candidate.
4 changes: 2 additions & 2 deletions module/module.prop
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
id=sortify
name=Sortify Dispatch
version=4.8.9-notifications-retention-options
versionCode=36
version=4.8.10-webui-action-pid-guard-hotfix
versionCode=37
author=xCaptaiN09 + Lycidias93
description=Sortify Dispatch with standardized ntfy lifecycle notifications, optional remote protected TTL fallback, single-pass sorting and SDD policy v4115.
updateJson=https://raw.githubusercontent.com/Lycidias93/Sortify-Dispatch/main/update.json
Expand Down
4 changes: 2 additions & 2 deletions tools/build-release.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ set -euo pipefail

ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)
CORE="$ROOT/.webui-core"
CORE_COMMIT=53fcb3f25b08d6cdfe056ac2c9500fd0755436bd
CORE_VERSION=0.7.0
CORE_COMMIT=3f49704701d8ab665139cf3551aa9197610cbaaa
CORE_VERSION=0.7.1
MODULE_SRC="$ROOT/module"
DIST="$ROOT/dist"

Expand Down
4 changes: 2 additions & 2 deletions tools/test-vnext.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ set -euo pipefail

ROOT=$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)
CORE="$ROOT/.webui-core"
CORE_COMMIT=53fcb3f25b08d6cdfe056ac2c9500fd0755436bd
CORE_VERSION=0.7.0
CORE_COMMIT=3f49704701d8ab665139cf3551aa9197610cbaaa
CORE_VERSION=0.7.1
MODE=${1:-all}

required=(
Expand Down
4 changes: 3 additions & 1 deletion tools/test-webui-actions-hotfix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,12 @@ assert 'guard_status=timeout' in payload.get('message', ''), payload
PY
echo 'guard_status_timeout_semantic_transport=PASS'

[[ "$(tr -d '\r\n' < "$ROOT/.webui-core/CORE_VERSION")" == "0.7.0" ]]
[[ "$(tr -d '\r\n' < "$ROOT/.webui-core/CORE_VERSION")" == "0.7.1" ]]
grep -Fq 'server_detach=hup_safe' "$ROOT/.webui-core/module/action.sh"
grep -Fq 'nohup "$@" </dev/null >> "$LOG_FILE" 2>&1 &' "$ROOT/.webui-core/module/action.sh"
grep -Fq "trap '' HUP" "$ROOT/.webui-core/module/action.sh"
grep -Fq 'grep -Fq "$SERVER" "/proc/$pid/cmdline" 2>/dev/null' "$ROOT/.webui-core/module/action.sh"
echo "webui_action_pid_identity_portability=PASS"
echo 'webui_action_launcher_detach_contract=PASS'

grep -Fq '"apply_job":"sort-now"' "$ROOT/module/bin/module-control-base"
Expand Down
4 changes: 2 additions & 2 deletions webui.lock
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
schema=sortify-dispatch-webui-core-lock-v1
template_repository=Lycidias93/android-root-module-webui-template
template_commit=53fcb3f25b08d6cdfe056ac2c9500fd0755436bd
core_version=0.7.0
template_commit=3f49704701d8ab665139cf3551aa9197610cbaaa
core_version=0.7.1
core_manifest_sha256=8481e70eb893722e4b002072939280bb0e467ccc9ee0584eabd2e3d440d8e117
consumption_model=pinned_gitlink_build_stage_sync
browser_transport=loopback_only
Expand Down
Loading