# Slack Rebuild Guide — Cold Bore Ballistics, LLC

**Classification:** Confidential
**Last updated:** 2026-06-06
**Companion docs:** `Slack_Architecture_Reference.md`, `Slack_Operating_Runbook.md`

This guide documents how to fully rebuild the CBB Slack workspace from scratch. Use it if the workspace is lost, corrupted, or needs to be re-created under a new account. Assume the reader has no prior Slack administration experience.

---

## Prerequisites

Before starting, have the following available:

- Admin access to `jschwefel@coldboreballisticsllc.com` (primary M365 account)
- Admin access to the `ColdBoreBallistics` GitHub organization
- The channel directory and subscription matrix from `Slack_Architecture_Reference.md`

---

## Step 1 — Create the Workspace

1. Open a browser and navigate to `https://slack.com/get-started`.
2. Click **Create a new workspace**.
3. Enter the email address `jschwefel@coldboreballisticsllc.com` and complete email verification.
4. When prompted for a workspace name, enter: `Cold Bore Ballistics LLC`
5. When prompted for the workspace URL, enter: `coldboreballisticsllc`
   - This sets the workspace URL to `coldboreballisticsllc.slack.com`.
6. Complete the setup wizard. Skip the "invite teammates" step for now.

---

## Step 2 — Upgrade to Business Standard

The free Slack plan has a 90-day message retention limit and lacks essential features (message history export, guest accounts, SAML SSO). Upgrade immediately.

1. In the workspace, click the workspace name in the top-left corner.
2. Select **Settings & administration** → **Workspace settings**.
3. In the admin console, click **Plan** in the left sidebar.
4. Select **Business Standard** and complete billing.

---

## Step 3 — Create All Channels

Create channels in this order. For each channel:
1. Click **+** next to **Channels** in the left sidebar.
2. Select **Create a channel**.
3. Enter the channel name (all lowercase, hyphens only).
4. Set visibility to **Public**.
5. Click **Create channel**.
6. After creation, set the channel description (see `Slack_Operating_Runbook.md` — Setting or Updating a Channel Description).

### Channels to create

**Company-wide (Slack auto-creates `#general` and `#random` — rename or repurpose as needed):**

| Channel name | Description |
|---|---|
| `#all-cold-bore-ballistics-llc` | Company-wide announcements and updates. All staff. High-signal only — releases, policy, major decisions. |
| `#social` | Off-topic and social. Not for work. |

Note: Slack may auto-create `#general` and `#random`. Rename `#general` to `#all-cold-bore-ballistics-llc` and `#random` to `#social`, or create the above and archive the defaults.

**Product and project channels:**

| Channel name | Description |
|---|---|
| `#scopedope-general` | General discussion for the ScopeDOPE Ballistic Computer app. Feature ideas, design decisions, cross-platform coordination. Not for GitHub notifications — use the repo channels. |
| `#github-activity` | Release and deployment broadcasts only. No repo-level GitHub subscriptions. |

**Repository channels:**

| Channel name | Description |
|---|---|
| `#scopedope-android` | GitHub notifications and discussion for `scopedope-android` (Kotlin/Jetpack Compose). |
| `#scopedope-shared` | GitHub notifications and discussion for `scopedope-shared` — KMP ballistics engine and shared assets. |
| `#scopedope-ios` | GitHub notifications and discussion for `scopedope-ios`. |
| `#dope-format` | GitHub notifications and discussion for `dope-format` — the public `.dope` file format spec. Also receives issue notifications. |
| `#www-scope-dope-com` | GitHub notifications and discussion for `www.scope-dope.com` — ScopeDOPE marketing site. |
| `#www-coldboreballisticsllc-com` | GitHub notifications and discussion for `www.coldboreballisticsllc.com` — CBB company website. |
| `#cbb-utils` | GitHub notifications and discussion for `cbb-utils` — internal scripts and utilities. |
| `#cbb-infra` | GitHub notifications and discussion for `cbb-infra` — Terraform infrastructure for Azure production. |
| `#ble-bridge-server` | GitHub notifications and discussion for `ble-bridge-server` — TCP server for BLE hardware testing. |
| `#ble-bridge-android` | GitHub notifications and discussion for `ble-bridge-android` — Android BLE bridge app for hardware testing. |
| `#ble-bridge-ios` | GitHub notifications and discussion for `ble-bridge-ios` — iOS BLE bridge app for hardware testing. |
| `#repo-feedback-service` | GitHub notifications and discussion for `feedback-service` — hosted feedback intake service (Flask). Deferred; channel created in advance. |

---

## Step 4 — Install the GitHub App

1. In any Slack channel, type `/github` and press Enter.
2. Slack will prompt you to install the GitHub app. Click **Install GitHub app**.
3. You will be redirected to GitHub. Sign in with the account that has admin access to the `ColdBoreBallistics` organization.
4. On the authorization page, select **ColdBoreBallistics** as the organization to connect.
5. Click **Install** to complete the connection.
6. Return to Slack. The GitHub app is now installed.

---

## Step 5 — Subscribe Each Repository Channel

For each repository channel, open the channel and run the subscription command. Do **not** subscribe anything to `#github-activity`.

**All repos except `dope-format`** — open the channel and run:
```
/github subscribe ColdBoreBallistics/<repo-name> pulls reviews commits releases deployments workflows
```

Run this in each of: `#scopedope-android`, `#scopedope-shared`, `#scopedope-ios`, `#www-scope-dope-com`, `#www-coldboreballisticsllc-com`, `#cbb-utils`, `#cbb-infra`, `#ble-bridge-server`, `#ble-bridge-android`, `#ble-bridge-ios`

**`#dope-format` only** (public repo with community issue tracker):
```
/github subscribe ColdBoreBallistics/dope-format pulls reviews commits releases deployments workflows issues
```

**`#repo-feedback-service`** — subscribe only when the `feedback-service` repo is active:
```
/github subscribe ColdBoreBallistics/feedback-service pulls reviews commits releases deployments workflows
```

---

## Step 6 — Pin the Data-Classification Reminder

1. In `#all-cold-bore-ballistics-llc`, post the following message:

> :shield: **Data Classification Reminder**
>
> Slack is a **General** tier communication surface. Do not post Confidential or Highly Confidential material here — that includes SPEC content, engine internals, DOPE-Blend methodology, financial records, or legal documents.
>
> OneDrive is the correct location for sensitive documents. When in doubt, don't paste it — share the OneDrive link instead.

2. Hover over the message, click the three-dot menu, and select **Pin to channel**.

---

## Step 7 — Update the Architecture Reference

After the rebuild is complete, update `Slack_Architecture_Reference.md`:
- Update the workspace ID if it changed
- Update the channel ID table (all IDs will be new)
- Update the change log with the rebuild date

---

## Document Control

| Field | Value |
|---|---|
| **Document owner** | `jschwefel@coldboreballisticsllc.com` |
| **Classification** | Confidential (03_-_Confidential/) |
| **Location** | `OneDrive/CBB_Corporate/03_-_Confidential/Infrastructure/Slack/Slack_Rebuild_Guide.md` |
| **Cross-references** | `Slack_Architecture_Reference.md`; `Slack_Operating_Runbook.md` |
| **Created** | 2026-06-06 |
| **Last updated** | 2026-06-06 |
| **Next full review due** | 2027-06-06 |

---

## Revision Control Block

| Rev | Date | Changed By | Reviewed By | Approved By | Summary |
|-----|------|------------|-------------|-------------|---------|
| 0.9 | 2026-06-06 | jschwefel | — | — | Initial release |
