commit c46a8031f8870e5cc443f4a059c2f6d426008e31 Author: mpmedia Date: Mon Jun 15 10:03:00 2026 -0500 docs: initial README for tsb-mpm v1.1.0 diff --git a/README.md b/README.md new file mode 100644 index 0000000..1aef855 --- /dev/null +++ b/README.md @@ -0,0 +1,97 @@ +# tsb-mpm + +Creates, manages, and publishes MPM Technical Services Bulletins (TSBs) for Transit Resellers and Customers. + +**Version:** 1.1.0 +**Author:** Bryan Gilliom / MPM +**CoWork Project:** CW-021 — TSB MPM Skill + +--- + +## Overview + +The tsb-mpm skill is the authoritative workflow for creating, managing, and publishing MPM Technical Services Bulletins — the primary communication channel for configuration, firmware, field service, known-issue, advisory, and security information sent to MPM's Transit Reseller and Customer networks. The skill handles the complete TSB lifecycle: classification, DOCX creation with full MPM brand formatting, Scribe screenshot ingestion with image re-hosting, Drive organization, registry management, short URL generation, PDF export, and branded Gmail draft creation. + +Output format is branded DOCX (Word document) built with the Node.js `docx` library, matching MPM's Dark Shade/Middle Gold/Dark Gold visual identity. All documents are self-contained — images are embedded, no live external dependencies. + +Covers 7 platform codes (HARDWARE, RDMC, CMS, INTEGRATION, NETWORK, SERVICE, SECURITY) and 6 type codes (CONFIG, FIRMWARE, FIELD, KNOWN-ISSUE, ADVISORY, SECURITY). + +--- + +## Skills + +| Skill | What It Does | +|---|---| +| `tsb-mpm` | Full TSB lifecycle — create from scratch, convert from notes/tickets/transcripts, publish with short URL + PDF + Gmail draft, supersede old bulletins, query registry. Triggers: "create a TSB", "new technical bulletin", "write up a TSB for", "document this issue as a TSB", "publish TSB-2026-CMS-001", "send out the TSB", "release the bulletin", "what TSBs are in draft", "what's the next CMS number", "show me the TSB registry", "update TSB-2026-CONFIG-001", "supersede the old TSB", "turn this ticket into a TSB", "make a TSB from these notes", "draft a TSB from this transcript", "use this Scribe". | + +--- + +## Invocation Modes + +| Mode | Trigger | What Happens | +|---|---|---| +| **Mode 1 — New from Scratch** | "Create a TSB for [topic]" | Classifies, assigns ID, optionally ingests Scribe, builds branded DOCX, uploads to Drive, adds registry row | +| **Mode 2 — From Existing Content** | "Turn this into a TSB" + notes/ticket/transcript | Extracts content, proposes classification, flags gaps, builds DOCX, uploads, adds registry row | +| **Mode 3 — Publish** | "Publish TSB-2026-CMS-001" | Completeness check → header update → short URL → PDF → registry update → Gmail draft | +| **Mode 4 — Registry Query** | "What TSBs are in draft?" / "Next RDMC number?" | Reads registry sheet, reports — no doc operations | +| **Mode 5 — Supersede** | "Supersede TSB-2026-CONFIG-001 with this" | Creates new TSB, links to old, adds deprecation banner to old doc, updates registry | + +--- + +## DOCX Brand Format + +| Element | Spec | +|---|---| +| Font | Arial throughout (no Montserrat/Calibri) | +| Page size | US Letter, 1" margins, 9360 DXA content width | +| Header banner fill | Dark Shade `#232022` | +| Company name / dividers | Middle Gold `#DCBB4F` | +| Section header text | Dark Gold `#998643` | +| Doc type text in banner | Light Shade `#F5F1EC` | +| Footnote / muted text | Light Accent `#849698` | + +--- + +## Setup + +1. Install via CoWork Settings → Capabilities → Install Skill → upload `tsb-mpm-v1.1.0.skill` +2. Verify Google Workspace MCP (CW-004) is connected +3. Verify MPM URL Shortener (CW-013) is connected +4. Run: `npm install -g docx` +5. Verify LibreOffice in bash sandbox: `which soffice` +6. Confirm `references/system-config.md` Drive/Sheet IDs are correct + +--- + +## Connection Details + +| Field | Value | +|---|---| +| TSB Registry Sheet | `1cFdJp6CKiTVfMBmV-JmbkHkAU709tnzvsYsabEnDnAE`, tab: `TSB Registry` | +| TSB Drive Root | `1lsNr7L-t4WFUYEJoynGNMY0ugynFPqr0` | +| 2026 Year Folder | `19kY44n0pZ7i3VcKauA3W06uWpY9r38ws` | +| Short URL | MPM URL Shortener plugin (CW-013) | +| PDF conversion | LibreOffice in bash sandbox | + +--- + +## Requirements + +- Google Workspace MCP (CW-004) +- MPM URL Shortener plugin (CW-013) +- `npm install -g docx` +- LibreOffice in bash sandbox +- `mpm-brand-voice` plugin (CW-001) + +--- + +## Troubleshooting + +| Symptom | Fix | +|---|---| +| Registry sheet unreadable | Stop; verify Google Workspace MCP auth; never guess sequence numbers | +| Drive folder creation fails | Stop; check Drive permissions | +| `docx build fails` | Check `npm install -g docx`; Node ≥ 18 required | +| Scribe image download fails | Note failed step numbers; continue; flag at end | +| Short URL creation fails | Log warning; continue publish; create manually via mpm.to admin | +| PDF conversion fails | Verify: `which soffice` |