← Back to brief

reference security posture

memory · reference_security_posture.md

TL;DR

SkyRun GC is a single-operator ambient automation system running on Joseph's Mac. It handles L3-Sensitive PII (~865 prospects) and L4-Restricted secrets (CF API tokens). As of the 2026-05-02 PM enterprise sweep, the posture is at "small-team SaaS" baseline:

This document is the catalog. Each control has its own dedicated doc — this just maps them.

Threat model

What we're protecting

Against whom

Threat actorLikelihoodImpactPrimary control
Opportunistic theft (Mac stolen)LOW-MEDHIGHFileVault (currently OFF), iCloud Find My + remote wipe
Phishing → credential compromiseMEDHIGH2FA on all accounts, Keychain, no plaintext secrets
SaaS vendor breach (HS, CF, Gmail)LOW per-vendorMED-HIGHVendor security register, rotation cadence, DPA tracking
Misdirected outbound (wrong recipient)MEDMEDDNC system, prior-decision check gate, current-customer gate
Schema corruption (silent data loss)LOWHIGHAtomic writes, schema_guards validation, gate-proof-runner
Skill regression (false-positive HS update)MEDMEDHS-live-query gate, verified-sent gate, gate-proof-runner
Insider threat (Joseph compromised)N/AN/ANot in scope (single-operator system)

Control catalog

Identity + access

Secrets management

Data at rest

Data in transit

Application integrity

Monitoring + alerting

Logical integrity gates (preventing the most expensive bugs)

GateCodified inPrevents
Gate 1: HS deal stage = LIVE APIfeedback_hs_stage_source_of_truth.mdFalse "Contract Sent" notifications (Hadank case)
Gate 2: Prior-decision check before draftingfeedback_check_prior_decisions_before_drafting.mdDrafting to vetoed prospects (Tim Beegle case)
Gate 3: Freshness before surfacing as overduefeedback_freshness_before_surface.mdFalse stalled-deal flags (Devine + Jamie case)
Gate 4: Heartbeat schema compliancereference_heartbeat_schema.mdInvisible-to-watchdog tasks (5/10 had nulls until 4/30 audit)
Gate 5: Heartbeat-as-truthnightly-consolidation Section FFalse "tasks ran today" claims
Gate 6: Verified-sentfeedback_email_status_verification.mdFalse "Joseph sent X" claims (Weber case)
Stay-green disciplinefeedback_stay_green_discipline.mdYELLOW dilution from non-actionable noise

Disaster recovery

See reference_disaster_recovery.md. RTO 24h; RPO ≤90d worst case (typical few days via Drive).

Incident response

See reference_incident_runbook.md. 8 documented scenarios with step-by-step procedures.

Vendor risk

See reference_vendor_security_posture.md. Tier-1/2/3 register with rotation cadences, DPA status, sub-processors.

Maturity assessment vs. enterprise frameworks

NIST CSF (Cybersecurity Framework) — informal alignment

FunctionMaturityNotes
Identify (asset inventory, risk assessment)🟡 MediumAsset inventory good (data_classification + vendor_register); formal risk reg pending
Protect (access control, data security, training)🟡 MediumGood for single-operator; FileVault OFF is the gap
Detect (continuous monitoring)🟢 Stronggate-proof + system-hygiene + heartbeats
Respond (incident response)🟢 StrongRunbook documented, 8 scenarios
Recover (recovery planning, improvements)🟢 StrongDR procedure documented, RTO/RPO defined

SOC 2 Trust Services Criteria — informal alignment

Conclusion

SkyRun GC is at small-team-SaaS-baseline-plus-disciplined-controls. It is NOT certified — certification (SOC 2 Type II, ISO 27001) would require external audits, formal management commitments, and overhead disproportionate to a single-operator system handling its own operator's customer prospects.

For a system at this scope, the posture is appropriate. The remaining gaps (FileVault OFF, browser-session auth for some vendors) are tracked operator actions, not architectural debt.

Operator actions outstanding

P0 — do this week

1. Enable FileVault. System Settings → Privacy & Security → FileVault → Turn On. Reboots required. Save recovery key to a safe place. Once on, all data on disk is encrypted with operator's login password.

P1 — do this month

2. Verify 2FA enabled on all accounts: HubSpot, Cloudflare, Google Workspace, Anthropic, SmartLead, BeenVerified. (Joseph's responsibility; check each vendor's security settings.)
3. Enable iCloud Advanced Data Protection for E2E iCloud encryption.
4. Enable iCloud Keychain if not already (so Keychain secrets sync to a recovery device).
5. Touch the iCloud backup flag: touch ~/Library/Application\ Support/SkyRun/.icloud_backup_enabled so quarterly backups mirror to iCloud.
6. Tabletop the DR procedure on a secondary Mac (or Time Machine restore test).

P2 — do this quarter

7. Migrate HS auth from cookie-CSRF to a Private App API token (currently chrome_bridge'd; cleaner with proper API token).
8. Run the first manual rotation of the CF token — proves the procedure works end-to-end.
9. Annual vendor register review — already scheduled.

Cross-references