M MemberIntel KB
Activity Decisions

standup

Standup — 2026-07-26

**Pro price dropped to $19.95.** [#659](https://github.com/caseproof/memberintel/pull/659) swept 13 display spots across the app, marketing site, and transactio

▶ Watch the 41s summary — Daily standup — Standup 2026-07-26

Daily standup for 2026-07-26. What shipped:

Pro price dropped to $19.95. #659 swept 13 display spots across the app, marketing site, and transactional emails in lockstep with a new Stripe price object. KB docs updated separately in #116, with the unit-economics margin guardrails deliberately preserved — “profitable at $29/mo” is a profitability threshold, not a display price, and asserting the same at $19.95 needs a real re-derivation.

Paid Memberships Pro connector shipped. #670 adds PMPro_Module — all four entities (member, membership, transaction, subscription) via in-process $wpdb reads against wp_pmpro_* tables, 408 lines of tests, and the pmpro slug registered across ADR-0036, taxonomy.py, and platform_vocab.py. Pre-3.0 sites get three entities; subscriptions require the 3.0+ table.

LearnDash engagement module shipped. #651 adds the second (and final, per ADR-0036) V1 engagement platform. Three namespaced learndash_* fields, all batched IN() queries — no per-user N+1. Backend allowlist and per-platform engagement clear landed in #648, fixing a silent cross-platform wipe that would have wiped BuddyPress keys whenever LearnDash dropped transiently.

Public help center live. #663 builds the /help route from a new Astro content collection — TechArticle/FAQPage JSON-LD, sitemap, /llms.txt, per-page .md endpoints. #674 adds 11 authored articles. #661 grounds the advisor’s self-knowledge in a system-prompt capability card so it stops guessing what it is.

hive_docs promotion pipeline shipped. #693 delivers scripts/promote_hive_docs.py + a workflow_dispatch-only workflow to copy the global-brain corpus from staging to production or sandbox — transactional purge/insert with row-count and null-embedding validation, rollback on failure. Replaces the manual one-off that was the only option before.

Plugin release pipeline hardened. Several fixes landed in sequence:

  • Reproducible zip build ([#638](https://github.com/caseproof/memberintel/pull/638)) — mtime normalization so two builds of identical source produce identical bytes
  • MD5 defense-in-depth ([#639](https://github.com/caseproof/memberintel/pull/639), [#642](https://github.com/caseproof/memberintel/pull/642)) — CI posts the local build’s md5; backend rejects a mismatch at publish time
  • WP native auto-update with signature verification ([#655](https://github.com/caseproof/memberintel/pull/655)) — plugin now intercepts WordPress’s own update path and verifies the KMS signature before handing WP the zip
  • Public GET /latest-download endpoint ([#654](https://github.com/caseproof/memberintel/pull/654)) and wired download links ([#658](https://github.com/caseproof/memberintel/pull/658)) — new installs no longer get a stale static zip

Infrastructure. #694 fixes the nightly terraform-drift check, which had been reporting a destructive revert (1 add / 1 change / 1 destroy) because ci.tfvars.production never set use_direct_vpc_egress=true to match live prod. The plan was valid — just never applied.

Notable. The terraform-drift false positive was a genuine trap: a blind terraform apply against those plan outputs would have destroyed the Direct VPC Egress subnet and attempted to recreate the serverless connector that failed provisioning in the first place.


Window: 2026-07-23T13:37

→ 2026-07-26T14:04
.179Z · Sources: memberintel @ cdc3e4b, memberpress-intel @ 74108c7

For: S Seth Shoultes