Architecture · LikeC4

Authored gascity packs

Slack intake family + PR-discipline family, distributed as gascity packs and supervised / slung by gc

built evolving planned research risk

The whole picture

System landscape

The system in context, then opened up into its containers.

Authored gascity packs — system landscape

Authored gascity packs — system landscape

index
Authored packs — the five containers

Authored packs — the five containers

packsSystem

Slack intake family + PR-discipline family, distributed as gascity packs and supervised / slung by gc

Risks & open questions

Risks & open questions

risks
Planned & stubbed work

Planned & stubbed work

planned

Inside each box

Containers & components

Each part decomposed into the components that implement it. Every box links to its source in the interactive explorer.

slack-pack — the rich Slack provider (components)

slack-pack — the rich Slack provider (components)

slackPackView

Full Slack provider for gc oversight: webhook adapter + OAuth + rig/room dispatch + CLI + extmsg scripts. Feature-by-feature port of the discord pack

slack-channel — Tier-2 channel bridge (components)

slack-channel — Tier-2 channel bridge (components)

slackChannelView

Tier-2 Slack channel bridge: bind a channel/DM to one-or-many sessions, per-session identity overrides, @handle addressing. Stdlib-only Go adapter, three on-disk registries

slack-mini — Tier-1 minimal bridge (components)

slack-mini — Tier-1 minimal bridge (components)

slackMiniView

Tier-1 minimal Slack bridge: @-mention the bot from any channel and it bridges to your gc mayor; one outbound verb (post-message). Single-file, stateless

pr-pipeline — author-side PR discipline (components)

pr-pipeline — author-side PR discipline (components)

prPipelineView

Author-side PR discipline as gc formulas + CLI commands: issue → plan → blast-radius → self-review → pre-push ship gate, plus issue triage

pr-review — maintainer-side PR discipline (components)

pr-review — maintainer-side PR discipline (components)

prReviewView

Maintainer-side PR discipline: adopt an incoming PR → multi-model review → resolve a merge path, as gc formulas + a /review-pr skill overlay

How it runs

Walkthrough flows

Dynamic views — the narrative spine of the system, step by step.

Walkthrough — Slack inbound to a gc session

Walkthrough — Slack inbound to a gc session

slackInbound

Every inbound is HMAC-verified against the per-app signing secret before any dispatch; the adapter normalises and hands off to the extmsg bridge, which routes to the bound session.

Walkthrough — rig slash-command to a spawned bead

Walkthrough — rig slash-command to a spawned bead

slackRigDispatch

Slash commands answer within Slack 3-second budget: the modal captures summary + context, then dispatch spawns a bead and slings it to the rig target.

Walkthrough — author-side PR pipeline (plan to ship gate)

Walkthrough — author-side PR pipeline (plan to ship gate)

prShipFlow

The ship gate is the firewall: simplify, iterate against the reviewer panel, run mechanical gates, then STOP at a readiness report — the formula never pushes or opens a PR.

Walkthrough — maintainer-side incoming-PR adoption

Walkthrough — maintainer-side incoming-PR adoption

prAdoptFlow

The /review-pr skill fans out three independent models and synthesises adversarially; the maintainer human-gate decides which of the four merge paths runs.

Where it runs

Deployment

What runs where, and the process & data boundaries between the pieces.

Deployment — where each pack runs

Deployment — where each pack runs

deployment

Explore it live

The figures above are static exports. The interactive explorer lets you pan, zoom, follow relationships, and jump from any box to the source.