fix(boot): rename opax-logg-slutt() til opax_logg_slutt() — bindestrek i funksjonsnavn ugyldig i -bash (Cloud Shell)

This commit is contained in:
chrischristiansen-glitch 2026-05-25 11:43:06 +02:00
parent c4c3d72b3e
commit 1cea31d50c

View File

@ -2,7 +2,7 @@
# =============================================================================
# osvauco-opax-boot.sh — OSVauco OPAX session-starter
# Bruk: source ~/OSVauco/scripts/osvauco-opax-boot.sh
# NB: Må sources (ikke bash) for PROMPT_COMMAND + opax-logg-slutt.
# NB: Må sources (ikke bash) for PROMPT_COMMAND + opax_logg_slutt.
# Standalone avslutt: bash ~/OSVauco/scripts/opax-logg-slutt.sh
# =============================================================================
@ -49,7 +49,7 @@ fi
# Last aliases inn i nåværende shell uansett
alias opax='source ~/OSVauco/scripts/osvauco-opax-boot.sh'
alias opax-logg-slutt='bash ~/OSVauco/scripts/opax-logg-slutt.sh'
alias opax-logg-slutt='opax_logg_slutt' # peker på intern funksjon (bindestrek ugyldig i bash-funksjonsnavn)
alias mirror-sync='bash ~/OSVauco/scripts/sync-gdrive-mirror.sh'
alias cost-audit='bash ~/OSVauco/scripts/cost-audit.sh'
alias roadmap='cat ~/OSVauco/docs/VAUCO_OS_ROADMAP.md'
@ -57,40 +57,27 @@ alias session-log='cat ~/OSVauco/docs/OSVAUCO_OPAX_SESSION_LOG.md'
# =============================================================================
# PROMPT_COMMAND — logger hver terminal-kommando med tidsstempel til session-log
# Aktiv så lenge dette shellet lever (ikke persistent — starter på nytt ved ny session)
# =============================================================================
export OSVAUCO_SESSION_LOG="$SESSION_LOG"
export OSVAUCO_SESSION_ID="$SESSION_ID"
_opax_last_cmd=''
# trap DEBUG fanger kommandoen FØR den kjøres
trap '_opax_last_cmd=$(history 1 | sed "s/^[ ]*[0-9]*[ ]*//")' DEBUG
# PROMPT_COMMAND kjøres etter hver kommando (ved neste prompt)
_opax_log_cmd() {
local exit_code=$?
local cmd="$_opax_last_cmd"
# Filtrer ut interne/støy-kommandoer
[[ -z "$cmd" ]] && return
[[ "$cmd" == _opax_* ]] && return
[[ "$cmd" == "trap "* ]] && return
local ts
ts=$(date '+%H:%M:%S')
local status_marker
if [[ $exit_code -eq 0 ]]; then
status_marker="✔"
else
status_marker="✘[$exit_code]"
fi
# Append til session-log (stille)
[[ $exit_code -eq 0 ]] && status_marker="✔" || status_marker="✘[$exit_code]"
printf ' %s %s %s\n' "$ts" "$status_marker" "$cmd" >> "${OSVAUCO_SESSION_LOG}" 2>/dev/null || true
_opax_last_cmd=''
}
# Legg til i PROMPT_COMMAND (idempotent)
if [[ "${PROMPT_COMMAND}" != *"_opax_log_cmd"* ]]; then
PROMPT_COMMAND="_opax_log_cmd${PROMPT_COMMAND:+; $PROMPT_COMMAND}"
fi
@ -166,7 +153,6 @@ else
fi
printf " $OK Terminal-logging ${DIM}PROMPT_COMMAND aktiv — loggfører alle kommandoer${NC}\n"
printf "\n"
@ -304,9 +290,10 @@ printf "${DIM} ---------------------------------------------------${NC}\n\n"
# =============================================================================
# AVSLUTT-FUNKSJON
# Navn: opax_logg_slutt (understrek, ikke bindestrek — POSIX-kompatibelt)
# Bruk: opax-logg-slutt (via alias over)
# =============================================================================
opax-logg-slutt() {
# Deaktiver PROMPT_COMMAND-logging for denne sesjonen
opax_logg_slutt() {
PROMPT_COMMAND="${PROMPT_COMMAND//_opax_log_cmd; /}"
PROMPT_COMMAND="${PROMPT_COMMAND//_opax_log_cmd/}"
@ -326,7 +313,9 @@ opax-logg-slutt() {
EOF
printf " ${GREEN}[OK]${NC} Logg oppdatert → docs/OSVAUCO_OPAX_SESSION_LOG.md\n\n"
}
export -f opax-logg-slutt 2>/dev/null || true
export -f opax_logg_slutt 2>/dev/null || true
# Alias så brukeren skriver opax-logg-slutt som før
alias opax-logg-slutt='opax_logg_slutt'
printf " ${DIM}Avslutt session → ${NC}${BOLD}opax-logg-slutt${NC}\n\n"