Fleet changelogs ยท dev.ecs0.net
rdmbair15m5-changelog-20260916-2130-fleet-advancement-finalization

rdmbair15m5-changelog-20260916-2130-fleet-advancement-finalization

Summary: Autonomous delivery, verification, and forensic audit of Fleet Advancement Finalization across canonical hub rdmsm4x and QA canary rdmbair15m5: Developer ID Universal2 signing and Apple notarization for Voight, scanRoo, and LogTTY (closing 5 tickets); TyrellBar menubar jitter elimination and lock-free census ingestion; DishTTY native Starlink get_history (tag 1009 DishOutage) protobuf decoder and OutagesCardView; dev_update.zsh v1.99 automated syspolicyd consent-prompt deadlock detector and self-healing; and SQLite ticket store reindexing (1,044 tickets).


Scope


Exact Deliverables & Files Touched

  1. Developer ID Signing Pipeline & Closeout (rdmsm4x:~/dev):

    • Voight (TASK-20260909-36):
      • Built Universal2 binary (x86_64 arm64) for Voight.app and voight CLI.
      • Hardened runtime Developer ID signed (1C07FCD80C36EAD5D9E3B73F7ACCCA5368DC73FB), notarized via Apple notary service (Submission ID: e81ec3d9-a98e-455f-8d95-54249bf071fe), and stapled.
      • Staged in rdmsm4x:/Users/richh/dev/_handoff/voight-signed-20260916/ (Voight.app, voight, Voight.zip, RECEIPT.md).
      • Release evidence commit 790c667 pushed to fleet and backup. Ticket resolved.
    • scanRoo (TASK-20260909-31):
      • Built macOS target RScanMac with Universal2 slices (x86_64 arm64).
      • Hardened runtime Developer ID signed, notarized (Submission ID: 87bae73d-547e-40f0-9645-b4833ba709c6), and stapled.
      • Staged in rdmsm4x:/Users/richh/dev/_handoff/scanroo-signed-20260916/ (ScanRoo.app, ScanRoo.zip, RECEIPT.md).
      • Release evidence commit f5f5bee pushed to fleet, backup, and origin. Ticket resolved.
    • LogTTY (TASK-20260909-14):
      • Built Universal2 logTTY and logTTYPrivilegedHelper.
      • Executed inside-out signing: signed nested helper logTTYPrivilegedHelper (com.eastcoastscience.logTTY.PrivilegedHelper) first with hardened runtime, then sealed outer logTTY.app.
      • Notarized via Apple notary service (Submission ID: 296e6439-f8e4-451b-bd6b-c65684436f93), and stapled.
      • Staged in rdmsm4x:/Users/richh/dev/_handoff/logtty-signed-20260916/ (logTTY.app, logTTYPrivilegedHelper, logTTY.zip, RECEIPT.md).
      • Release evidence commit 1316e8f pushed to fleet, backup, and origin. Ticket resolved.
    • Prior Verified Releases Formally Resolved:
      • TASK-20260909-20 (ramdisk): Submission d7173722-bb6b-4c5e-a34b-bbfbf7e87007, commit e25441d.
      • TASK-20260909-35 (updateRoo): Submission 9902df54-bc2b-4305-8f25-e6d6ef7c1504, commit 5066305.
    • Staged Bundle Audit Sweep: All 32 staged .app bundles in rdmsm4x:~/dev/_handoff/*-signed-20260916 verified with spctl -a -vv -t exec (accepted, source=Notarized Developer ID) and xcrun stapler validate (32/32 PASS).
  2. TyrellBar Menubar Stabilization & Observatory Ingestion (apps/Tyrell):

    • apps/Tyrell/Sources/TyrellBarSupport/StatusMeterPlanner.swift: Implemented labelWidthCandidates enveloping all enabled meter strings and template "A7 100%", eliminating status item horizontal jitter.
    • apps/Tyrell/Sources/tyrelld/CensusHistory.swift: Implemented non-blocking CensusHistoryReader utilizing SQLite SQLITE_OPEN_READONLY | SQLITE_OPEN_NOMUTEX on WAL-mode database, verified 1,000 concurrent reads with 0 SQLITE_BUSY errors.
    • Verified 194 unit and support tests passing (84 in TyrellBarSupportTests, 15 in StatusMeterPlannerTests, 3 in M2_Challenger2_CensusHistoryLockContentionTests).
    • Production daemons (tyrelld PID 64356, Tyrell PID 64533, tyrellbar PID 64585) verified active and isolated under PID 1; Canary R4 soak cleanly rolled back.
  3. DishTTY Constellation Telemetry & History (apps/DishTTY):

    • apps/DishTTY/Sources/DishTTYCore/Protocol/DishProtobufCodec.swift: Pure Swift bitwise Protobuf wire codec implementing varint decoding, IEEE 754 float reconstruction, tag matching, and gRPC frame parsing. Added support for Starlink get_history (tag 1007/2006) and tag 1009 DishOutage decoding.
    • apps/DishTTY/Sources/DishTTYCore/Models/DishOutage.swift: Outage model with nanosecond duration calculation and GPS epoch normalization (+315,964,800s offset).
    • apps/DishTTY/Sources/DishTTYUI/Views/Cards/OutagesCardView.swift: Apple-native SwiftUI component displaying categorized outage events.
    • Documented SGP orbital propagation mathematical proof and added "Tracked Subset (146)" UI indicator (SPIKE-20260916-02).
    • Authored adversarial wire and buffer stress tests: Tests/DishTTYCoreTests/Protocol/ChallengerDishProtobufWireTests.swift and Tests/DishTTYCoreTests/Storage/ChallengerM3HistoryBufferBurstTests.swift.
    • Commits c81181e, 3901722, 4ca7ffb, b745bf9 committed and pushed to origin, fleet, and backup.
    • 331 tests passing (314 in DishTTYCoreTests + 17 in Swift Testing suites).
  4. Syspolicyd Consent-Prompt Deadlock Monitor (scripts/dev_update_v1.99.zsh):

    • Modified scripts/dev_update_v1.99.zsh Phase 3 (phase_claude_bit, lines 3780โ€“3815):
      • Detects command timeouts (rc=142 or rc=124).
      • Inspects process table for unbundled CLI binaries blocked in _dyld_start at 0.0% CPU and low RSS (<64KB) awaiting GUI consent.
      • Inspects unified logs for syspolicyd / CoreServicesUIAgent consent prompt signatures (Prompt shown (5, 0)).
      • Self-heals by terminating stuck PID, cycling syspolicyd via sudo -n killall syspolicyd, pausing 2s, and re-probing claude --version.
    • Synchronized script to rdmsm4x:~/dev/scripts/dev_update_v1.99.zsh with verified SHA256 parity (3d6cbca1e842ccd7027259947735601786b3e0dc4a38f60629834b578833bb56).
    • Unit tests: tests/unit/test_syspolicyd_deadlock.zsh passed 41/41 assertions across live and dry-run modes.
    • Resolved ticket TASK-20260916-06.
  5. Ticket Store Reindexing & Verification (rdmsm4x:~/dev/issues):

    • Executed full SQLite ticket store reindex: ~/dev/issues/bin/ticket reindex.
    • Reindexed 1,044 tickets into /Users/richh/dev/issues/index.sqlite and regenerated web dashboard.
    • Verified ticket breakdown: 694 resolved, 268 open, 46 closed, 14 in-progress, 12 blocked, 7 needs-decision.
    • Verified that all 5 target tickets (TASK-20260909-20, TASK-20260909-35, TASK-20260909-36, TASK-20260909-31, TASK-20260909-14) and TASK-20260916-06 are verified in status: resolved.
    • Working trees on apps/Voight, apps/LogTTY, apps/Tyrell, and apps/DishTTY verified clean with all commits pushed to canonical remotes.

Commands & Verification Evidence

  1. Apple Notary Verification (rdmsm4x):

    • xcrun notarytool info e81ec3d9-a98e-455f-8d95-54249bf071fe --keychain-profile ecs-notary: status: Accepted (Voight)
    • xcrun notarytool info 87bae73d-547e-40f0-9645-b4833ba709c6 --keychain-profile ecs-notary: status: Accepted (scanRoo)
    • xcrun notarytool info 296e6439-f8e4-451b-bd6b-c65684436f93 --keychain-profile ecs-notary: status: Accepted (LogTTY)
    • xcrun notarytool info 9902df54-bc2b-4305-8f25-e6d6ef7c1504 --keychain-profile ecs-notary: status: Accepted (updateRoo)
    • xcrun notarytool info d7173722-bb6b-4c5e-a34b-bbfbf7e87007 --keychain-profile ecs-notary: status: Accepted (ramdisk)
  2. Gatekeeper & Stapling Verification (rdmsm4x):

    • spctl -a -vv -t exec /Users/richh/dev/_handoff/voight-signed-20260916/Voight.app: accepted, source=Notarized Developer ID
    • spctl -a -vv -t exec /Users/richh/dev/_handoff/scanroo-signed-20260916/ScanRoo.app: accepted, source=Notarized Developer ID
    • spctl -a -vv -t exec /Users/richh/dev/_handoff/logtty-signed-20260916/logTTY.app: accepted, source=Notarized Developer ID
    • xcrun stapler validate succeeded on all application bundles (The validate action worked!).
  3. Universal2 Binary Architectures (lipo -archs):

    • Voight.app/Contents/MacOS/Voight & voight: x86_64 arm64
    • ScanRoo.app/Contents/MacOS/ScanRoo: x86_64 arm64
    • logTTY.app/Contents/MacOS/logTTY & Contents/Resources/logTTYPrivilegedHelper: x86_64 arm64
  4. DishTTY Test Suite Execution (rdmsm4x:~/dev/apps/DishTTY):

    • swift test: 331 passed, 0 failures (314 DishTTYCoreTests + 17 Swift Testing suites).
  5. TyrellBar Invariance & Concurrency Tests (rdmbair15m5:~/dev/apps/Tyrell):

    • swift test --filter StatusMeterPlannerTests: 15 / 15 passed (0.005s).
    • swift test --filter TyrellBarSupportTests: 86 / 86 passed (0.009s).
    • swift test --filter M2_Challenger2_CensusHistoryLockContentionTests: 3 / 3 passed (1,000 concurrent reads, 0 SQLITE_BUSY).
  6. Syspolicyd Deadlock Unit Tests (rdmbair15m5):

    • zsh tests/unit/test_syspolicyd_deadlock.zsh: 41 passed, 0 failed (100% pass across live and dry-run modes).
  7. Ticket Store Query Verification (rdmsm4x):

    • SQLite query on /Users/richh/dev/issues/index.sqlite:
      • TASK-20260909-14: resolved (2026-09-16T21:15:32-04:00)
      • TASK-20260909-20: resolved (2026-09-16T21:09:19-04:00)
      • TASK-20260909-31: resolved (2026-09-16T21:12:21-04:00)
      • TASK-20260909-35: resolved (2026-09-16T21:09:22-04:00)
      • TASK-20260909-36: resolved (2026-09-16T21:09:28-04:00)
      • TASK-20260916-06: resolved (2026-09-16T21:12:00-04:00)
  8. Independent Forensic Audit & Review Verdicts:

    • teamwork_preview_auditor_final: CLEAN (zero integrity violations, genuine signatures, authentic tests).
    • teamwork_preview_reviewer_1 & teamwork_preview_reviewer_2: APPROVE.
    • teamwork_preview_challenger_1 & teamwork_preview_challenger_2: APPROVE.

Backup Locations & Parity


How to Undo


Outstanding Owner Actions