#661 exit-code foundation: @cli resolve_exit + error() auto-trip (inert) + @seedgo output_routing checker + devpulse reference adoption

- @cli: process failure-flag + resolve_exit(handled)->0/1/2; error() auto-trips the flag; inert until a branch adopts it; 10 tests, seedgo 100%
- @seedgo: new output_routing standard (39th checker) flags user-facing status output bypassing cli helpers; 254-site per-branch migration checklist; precise (0 FP, dogfooded on devpulse); 1178 tests
- devpulse: first adopter — main()->reset_command_state()+resolve_exit(); feedback module+handlers migrated raw-red/logger.error->error(); exit 2/0/1 verified; 380 tests green; seedgo 100%
- CHANGELOG updated. Fleet migration (remaining 13 branches) to follow. Tracked in DPLAN-0236.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HeaAmr3oj2ZexB6ng311Vj
This commit is contained in:
AIOSAI
2026-07-09 19:38:17 -07:00
co-authored by Claude Opus 4.8
parent 1edea552bf
commit d2d1adca0a
13 changed files with 978 additions and 14 deletions
+3 -2
View File
@@ -35,7 +35,7 @@ if sys.platform == "win32":
_reconfigure(encoding="utf-8", errors="replace")
from aipass.prax import logger
from aipass.cli.apps.modules import err_console
from aipass.cli.apps.modules import err_console, resolve_exit, reset_command_state
console = err_console
@@ -161,13 +161,14 @@ def _handle_command(command: str, args: list) -> bool:
def main():
"""Main entry point - routes commands or shows help."""
reset_command_state()
args = sys.argv[1:]
if len(args) == 0:
print_introspection()
return 0
return 0 if _handle_command(args[0], args[1:]) else 1
return resolve_exit(_handle_command(args[0], args[1:]))
if __name__ == "__main__":