Skip to content

enhancement: add lib_process.sh for process supervision - #418

Merged
codeforester merged 1 commit into
mainfrom
enhancement/417-20260904-add-lib-process-sh-for-reusable-process-supervision-primitiv
Sep 4, 2026
Merged

enhancement: add lib_process.sh for process supervision#418
codeforester merged 1 commit into
mainfrom
enhancement/417-20260904-add-lib-process-sh-for-reusable-process-supervision-primitiv

Conversation

@codeforester

@codeforester codeforester commented Sep 4, 2026

Copy link
Copy Markdown
Collaborator

Summary

Adds the new optional process library for reusable process-supervision primitives and moves the GitHub retry guardian lifecycle behind that module.

This follows the agreed boundary:

  • base_std_run and base_std_run_or_exit remain in lib_std.sh unchanged.
  • lib_process.sh depends on lib_std.sh; lib_std.sh does not depend on process.
  • The process module owns owner/guardian liveness, FIFO/readiness-channel lifecycle, and bounded guardian teardown.
  • GitHub keeps ownership of capture files and workspace cleanup through a small adapter.

API and documentation

  • Adds base_process_owner_alive <owner_pid> <guardian_pid> with documented 0/1/2 status semantics.
  • Registers process in base_api_manifest.yaml and regenerates docs/api-reference.md.
  • Documents the module boundary in the package, std, GitHub, architecture, and API-contract documentation.

Validation

  • env -u BASE_HOME BASE_CACHE_DIR=/private/tmp/base-bash-libs-process-417-final ./tests/validate.sh
  • Result: all 625 BATS tests and all validation stages passed.
  • Focused process, GitHub, and namespace suites passed (85/85).

Fixes #417
Fixes #395
Supersedes #412

@codeforester
codeforester merged commit a9a7e2b into main Sep 4, 2026
11 checks passed
@codeforester
codeforester deleted the enhancement/417-20260904-add-lib-process-sh-for-reusable-process-supervision-primitiv branch September 4, 2026 11:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant