#!/usr/bin/env bash
# models v9's shape: CLEANUP_ENTERED guard, cleanup called from on_signal, exit 130
CLEANUP_ENTERED=0; ABORT=0
log() { echo "$(date +%S.%N | cut -c1-5) $1" >> actions.log; }
cleanup() {
  [ "$CLEANUP_ENTERED" -eq 1 ] && { log "cleanup RE-ENTRY SUPPRESSED"; return 0; }
  CLEANUP_ENTERED=1
  log "step2 BEGIN bounded wait"
  local w=0; while [ $w -lt 12 ]; do sleep 1; w=$((w+1)); done   # stands in for handoff_await cleanup
  log "step2 END"
  log "step3 daemon stop"; log "step4 pool release"; log "step5 secret removed"; log "step6 final guard_assert"
  log "CLEANUP_END"
}
on_signal() { ABORT=1; log "SIGNAL $1"; cleanup; log "exit 130 from on_signal $1"; exit 130; }
trap 'on_signal TERM' TERM
trap cleanup EXIT
log "running"; sleep 30
