#!/bin/bash
set -euo pipefail

LOG_DIR="$(dirname "$0")"
OUTPUT_FILE="${1:-audit-trail.json}"

# Aggregate all logs into structured JSON
{
    echo '{'
    echo '  "task_id": "'$(jq -r .task_id "$LOG_DIR/logging-config.json")'",';
    echo '  "started_at": "'$(jq -r .started_at "$LOG_DIR/logging-config.json")'",';
    echo '  "exported_at": "'$(date -Iseconds)'",';
    echo '  "container_exits": '
    cat "$LOG_DIR/containers"/*.exit.json 2>/dev/null | jq -s '.' || echo '[]'
    echo '  ,'
    echo '  "redis_events": '
    cat "$LOG_DIR/coordination/redis-events.log" 2>/dev/null | jq -s '.' || echo '[]'
    echo '  ,'
    echo '  "lifecycle_events": '
    cat "$LOG_DIR/coordination/lifecycle-events.log" 2>/dev/null | jq -s '.' || echo '[]'
    echo '}'
} | jq '.' > "$OUTPUT_FILE"

echo "Audit trail exported to: $OUTPUT_FILE"
