The Forge

A room in the Forge

The Commit Wall

Commit messages, read as sentences — because most of hers are.

3 098 commits across twelve repositories. This wall holds 57 of them: the ones that are a sentence rather than a label, scored for having a subject, a verb and a turn. The rest are real work and unremarkable prose, which is what most commits are and should be.

3 098

commits, measured

57

on the wall

12

repositories

43 MB

of source

Fifty-two weeks

Commits per week, summed across every repository. Read from the GitHub API on 2026-08-11 and committed as data — the site does not call GitHub while serving a page, so this cannot fail in production and cannot silently drift.

By language

  • TypeScript88.1%
  • JavaScript7.7%
  • PLpgSQL2.2%
  • CSS1.1%
  • HTML0.8%

every services price was real, and every one was in the wrong role

JarvisOS11 Aug 2026fix(marketing)0ff630d

the Aug 8 audit tail — a capture that indexed nothing, and an onboard that never ran

JarvisOS11 Aug 2026fix(marketing)e16a39e

the claim guard had never seen the assets, and the texture library was starved

JarvisOS11 Aug 2026feat(marketing)a69f89f

the re-render would have been a silent no-op that reported success

JarvisOS11 Aug 2026fix(marketing)8e15516

the content library is built for SA's smallest platform — and the Mirembe 13-week plan

JarvisOS11 Aug 2026docs02aa6ee

the K53 page understated the product by 2x, and both repos disagreed on signs

JarvisOS11 Aug 2026fix(marketing)b26e8f7

the case_study diagram was letterboxing to 44% and its labels went unreadable

JarvisOS11 Aug 2026fix(magazine)7acaec2

two workers were registered, built, and unreachable

JarvisOS09 Aug 2026fix(marketing)f81d030

dead mirembe.co.za survived in 10 client-facing paths — and broke delivery

JarvisOS09 Aug 2026fix(email)22acf91

soft delete for 6 collaborator tables — a team member could not undo

JarvisOS09 Aug 2026fix(studio)138b2f4

four brand domains were DEAD — cards were printing URLs that do not resolve

JarvisOS08 Aug 2026fix(brands)cd3a8ca

two invented claims were shipping — one as structured data on the live site

JarvisOS08 Aug 2026fix(marketing)168f333

9:16 title cards — from broken placeholder to premium

JarvisOS08 Aug 2026feat(magazine)1deee55

copy-quality heuristic was flagging good copy — 40 false positives

JarvisOS07 Aug 2026fix(magazine)f02e47b

stale shell key shadowed .env.local; lock copy detector with real fixtures

JarvisOS07 Aug 2026fix(env+copy)93055f4

contact-sheet critique tool — found the founder brands are swapped wholesale

JarvisOS07 Aug 2026feat(magazine)b8a597c

4 issues from whole-site review — anchor CTA, stale 75, misattribution, downsell

Mirembe Muse03 Aug 2026fix(review)3825b34

align recommendations to real Services tiers + repair broken handoffs

Mirembe Muse02 Aug 2026fix(start)a63e87e

site-wide review fixes — broken images, mobile overflow, hydration, cover

CreativelyNanda27 Jul 2026fix(frontend)01ed27e

remove the Sage Sync add-on (never wired)

AdminOS20 Jul 2026chore(billing)1cdd2bb

repair the broken create API — it 400'd on every call

AdminOS20 Jul 2026fix(invoices)0cbf0fe

EMP201 cast via unknown — unblocks the build (was red for 7 commits)

AdminOS19 Jul 2026fix(build)99e8556

read the real tables — both pages were always empty

AdminOS18 Jul 2026fix(expenses+stokvel)ca0cedc

read real columns + add schema-drift regression guard

AdminOS18 Jul 2026fix(contracts+kb)7f92772

BUILD_JOURNEY — Session 14 (DataTable + schema-drift sweep) + Session 15 (OS transformation)

AdminOS18 Jul 2026docs30a6703

all six domain cockpits shipped — every page is now a system

AdminOS18 Jul 2026docs81e446d

lowWellness score type is non-null (filtered) — build fix

AdminOS18 Jul 2026fix(people)d0dea2e

add audit_selects.mjs — exhaustive schema-drift checker

AdminOS18 Jul 2026chore(scripts)f78886b

Nova never renders blank; gate onboarding tour behind consent

VarsityOS12 Jul 2026fix(ux)903678a

never show a false "report submitted" on a failed incident save

VarsityOS12 Jul 2026fix(safety)74f2871

confirm() before destructive deletes; timeout stalled fetches

VarsityOS09 Jul 2026fix(ux+scale)98a729b

K53 freemium range Free–R199 (was stale Free–R149)

Mirembe Muse02 Jul 2026fix(content)86b36b9

live /status page — real reachability probes, never faked uptime (L2)

Mirembe Muse30 Jun 2026feat(status)7e11ac7

Anthropic is primary (K53=OpenAI, intentional) + real traction

Mirembe Muse30 Jun 2026docs(canonical)0895ca1

text never disappears + darker high-contrast header

Mirembe Muse29 Jun 2026fix(product-hero)129ecfc

soften 'every number is real' integrity line

Mirembe Muse28 Jun 2026content(about)b8f943e

Reset password: always render the input boxes, never a blocking spinner

The Selves of Us24 Jun 2026c1bef42

Reset password page: never hang, always reveal the form

The Selves of Us24 Jun 20262809f28

SARTSM dedup pass — remove 7 broken duplicate entries

K53 Drill Master23 Jun 2026fix(signs)25b6acb

SARTSM rebuild batch 2 — dedupe loose-stones & drift

K53 Drill Master23 Jun 2026fix(signs)5ea4926

Fix 'i.map is not a function' crash when editing a story

The Selves of Us22 Jun 202643e9cf3

sidebar offset broken on desktop — Tailwind can't resolve CSS vars

VarsityOS19 Jun 2026fix(layout)ba9fa9a

streak stays at 1 — stale Supabase overwriting local check-in

VarsityOS19 Jun 2026fix(habits)20763db

offline read enhancements — cache warmer, network banner, smart stale times

AdminOS14 Jun 2026feat(mobile)71219d4

data hygiene sweep — update all stale stats to June 2026 reality

CreativelyNanda13 Jun 2026chore49e82e4

production audit fixes — bucket name, dead code, wrong table

AdminOS12 Jun 2026fix3420aea

remove payment processing — platform is communication only

VarsityOS12 Jun 2026feat(tutoring)fd57d74

lazy-initialize Resend client to prevent build-time crash when RESEND_API_KEY is not set

Sanyu Botanicals24 May 2026fix6c2ede7

remove stale proxy.ts — conflicts with middleware.ts in Next.js 16

AdminOS08 May 2026fix826f3ac

replace upsert with check-then-write to fix silent save failure

VarsityOS25 Apr 2026fix(meals)6788a28

repair broken auth flows — login loop, password reset, missing logo

VarsityOS10 Apr 2026fixf919cbb

homepage navy — animated nebula blobs + grain drift

CreativelyNanda05 Apr 2026feat51c7d49

production bugs — PAYFAST_SANDBOX env var, stale fallback URL, sitemap

K53 Drill Master05 Apr 2026fix0cd980d

close broken loops — wellness, plan limits, language, realtime, PWA, error boundaries

AdminOS19 Mar 2026feat(phase1)9b25395

products page showing old data — images, cache, and stale DB rows

CreativelyNanda04 Mar 2026fix0ceebec

remove themeColor from metadata export — already in viewport export

CreativelyNanda04 Mar 2026fix7074bdd

hide broken gallery images on error instead of showing broken boxes

CreativelyNanda04 Mar 2026fix86e4ff8

How this wall was built

Nine of these repositories are private.

So every line above passed the same gate as the build journals before it reached this page. A credential shape drops the message entirely rather than redacting it — a subject line is one sentence and there is nothing left worth reading. A live security disclosure drops, because those applications are still running. A named individual drops. Ordinary engineering vocabulary does not: RLS, passphrase and token are what the work is made of, and an earlier version of this filter threw all of them away.

41 messages were withheld by a safety rule. The ingest can print every one of them with the rule that caught it, which is how the filter that was deleting the room was found — a regex that looked strict and was quietly discarding four out of every five good lines. A filter nobody can inspect is a filter nobody should trust.