← back to Tk11438 Postgres Migration

next-batch.json

70 lines

{
  "ticket": "TK-11438",
  "status": "APPLIED_VERIFIED_WITH_DOCUMENTED_LIMITS",
  "scope": "Ken application and its two known explicit-TCP scheduled consumers only",
  "file_changes": [
    {
      "path": "/Users/macstudio3/Projects/Ken/kalshi-dash/follow-the-winners-check.sh",
      "sha256": "04a512566936f561c7c37d623e26ec8bb0e2ec507607dbd5db5c8f5e19d5b5b9",
      "old": "KEN_DATABASE_URL=\"postgresql://localhost:5432/ken\"",
      "new": "KEN_DATABASE_URL=\"postgresql://localhost:5432/ken?host=/tmp\"",
      "occurrences": 1
    }
  ],
  "environment_changes": [
    {
      "path": "/Users/macstudio3/Projects/Ken/kalshi-dash/.env",
      "sha256": "07e8091a1cc0d968cef79612ba91a4d4a177975d666967e6054c5ef8199203b1",
      "keys": [
        "DATABASE_URL",
        "KEN_DATABASE_URL"
      ],
      "operation": "Set URI query parameter host=/tmp, preserving database, role, credentials, port, and other options",
      "precedence": "sourced by start.sh overrides inherited PM2 environment"
    },
    {
      "path": "/Users/macstudio3/Library/LaunchAgents/com.steve.ken-reconcile-canary.plist",
      "sha256": "5bae8a547e6680e2ac071a95ad0e57c74aa89449c4aaffc2540f40d0934f18f5",
      "keys": [
        "EnvironmentVariables.KEN_DATABASE_URL"
      ],
      "operation": "Set URI query parameter host=/tmp, preserving database, role, credentials, port, and other options",
      "precedence": "launchd supplies independent environment"
    },
    {
      "path": "existing PM2 ken entry and ~/.pm2/dump.pm2 ken entry only",
      "keys": [
        "DATABASE_URL",
        "KEN_DATABASE_URL",
        "env.DATABASE_URL",
        "env.KEN_DATABASE_URL"
      ],
      "operation": "Match .env socket URLs; require unique cwd/script/name and hash guard; preserve every other field and service"
    }
  ],
  "gates": [
    "Ken service restart may resume autonomous market work and existing configured external activity; needs explicit approval",
    "reconcile-canary launchd reload is gated",
    "Do not invoke follow-the-winners wrapper during verification: can send email on signal transition",
    "TCP shutdown excluded",
    "No Gracie restart: mounted vendor module calls canonical CREATE TABLE IF NOT EXISTS on startup"
  ],
  "result": {
    "ticket": "TK-11438",
    "timestamp": "2026-09-11T17:46:09.886710+00:00",
    "verdict": "KEN_BATCH_PASS_FULL_FLEET_INCOMPLETE",
    "source_commit": "d840eb666dbe5986eb48925ef9e694c3c3d450d3",
    "approval": "Steve -> codex-run-11340/TK-11478 -> current session, 2026-09-11; described current Ken batch only; all email sends excluded",
    "parent_acceptance": "Independent 26 PASS assertions inspected against parent baseline, after, stability proofs and exact d840eb6 diff. Accepted.",
    "email_sends_invoked": 0,
    "wrapper_invoked": false,
    "private_backup": "verification/ken-rollout/private/ (0700; files0600; gitignored)",
    "rollback": "node verification/ken-rollout/rollout.cjs rollback (only on actual regression, guarded file fields and job restore; live rollback not executed)",
    "limits": [
      "Only captured operational switches and Ken config hashes proved unchanged; full risk_state hash changed consistently with automatic weather_cache, exclusive cause unproven.",
      "Email-capable hourly wrapper not executed. Exact wrapper URL used with underlying SELECT-only module; normal schedule definition preserved.",
      "No reboot or full-fleet TCP shutdown. Original/expanded inventory remains incomplete."
    ]
  }
}