#21123: Docs/CI/MSTeams: close low-hanging parity gaps and add guardrails
docs
channel: msteams
scripts
size: M
## Summary
This PR batches three low-risk repo hygiene improvements:
1. Labeler parity for extension plugins
- Add missing labeler mapping:
- `extensions: thread-ownership` -> `extensions/thread-ownership/**`
2. Docs navigation parity for channel pages
- Add existing channel docs to Mintlify sidebar (`docs/docs.json`):
- `channels/bluebubbles`
- `channels/nextcloud-talk`
- `channels/nostr`
- `channels/tlon`
- `channels/twitch`
3. Drift guardrail check (docs + labeler)
- Add `scripts/docs-consistency-check.mjs` to enforce:
- every `docs/channels/*.md` page (except `index`) exists in `docs/docs.json` navigation
- every plugin extension (`extensions/*/openclaw.plugin.json`) has a `.github/labeler.yml` mapping for `extensions/<name>/**`
- Wire into docs checks via:
- `package.json` -> `docs:check-consistency`
- `package.json` -> `check:docs` now includes `pnpm docs:check-consistency`
4. MS Teams quick safety fix for OneDrive simple upload
- Add explicit guard for files larger than 4MB in `uploadToOneDrive` (`extensions/msteams/src/graph-upload.ts`)
- Add targeted unit tests in `extensions/msteams/src/graph-upload.test.ts`
## Why
- Improves triage labeling accuracy.
- Restores docs discoverability for existing channel pages.
- Prevents future nav/labeler drift with an automated check.
- Fails fast and clearly for a known OneDrive upload size limitation.
## Validation
- `node scripts/docs-consistency-check.mjs` -> passes (`consistency_failures=0`)
- `pnpm exec vitest run extensions/msteams/src/graph-upload.test.ts` -> 2 tests passed
## AI Transparency
AI-assisted: yes
Testing: lightly tested (targeted checks above)
<!-- greptile_comment -->
<h3>Greptile Summary</h3>
Batches low-risk hygiene improvements: adds missing labeler mapping for `extensions/thread-ownership`, adds 5 channel docs to Mintlify nav (`bluebubbles`, `nextcloud-talk`, `nostr`, `tlon`, `twitch`), introduces `scripts/docs-consistency-check.mjs` to prevent future nav/labeler drift, and adds a 4MB size guard to OneDrive uploads.
Key changes:
- `.github/labeler.yml`: adds `extensions: thread-ownership` mapping
- `docs/docs.json`: adds 5 missing channel pages to navigation
- `scripts/docs-consistency-check.mjs`: enforces consistency between channel docs and nav, and between plugin extensions and labeler mappings
- `package.json`: wires consistency check into `check:docs`
- `extensions/msteams/src/graph-upload.ts`: adds 4MB size validation for `uploadToOneDrive`
- `extensions/msteams/src/graph-upload.test.ts`: adds unit tests for size guard
Issues found:
- `uploadToSharePoint` uses the same simple upload API but lacks the 4MB size guard that was added to `uploadToOneDrive`
<h3>Confidence Score: 4/5</h3>
- Safe to merge with one fix recommended for SharePoint upload consistency
- The PR makes simple, low-risk improvements (labeler/docs parity, automated consistency checks, size validation). All changes are well-tested and defensive. The missing size guard for `uploadToSharePoint` should be addressed but doesn't introduce new risk since it's an existing gap.
- Fix the missing 4MB size guard in `extensions/msteams/src/graph-upload.ts` for the `uploadToSharePoint` function
<sub>Last reviewed commit: 979a916</sub>
<!-- greptile_other_comments_section -->
<!-- /greptile_comment -->
Most Similar PRs
#22442: test(ci): unbreak baseline tui metadata + msteams local-file assert...
by SmithLabsLLC · 2026-02-21
77.3%
#22383: Chore: apply oxfmt baseline for CI check
by bmendonca3 · 2026-02-21
75.4%
#11048: fix: address repository issues (env, author, CI comments, security ...
by cavula · 2026-02-07
75.4%
#22884: feat(msteams): add resumable upload sessions with retry and range-a...
by chansuke · 2026-02-21
75.0%
#23629: fix(msteams): sanitize error messages sent to users (CWE-209)
by lewiswigmore · 2026-02-22
74.8%
#22469: fix(gateway): avoid stale whatsapp labels on direct sessions
by loganprit · 2026-02-21
74.6%
#22070: docs: add minimal public safety checklist for template sharing
by MinwooKim1990 · 2026-02-20
74.5%
#23770: docs: fix broken URL, inconsistent casing, and hyphenation
by jainilDesai · 2026-02-22
74.3%
#10902: fix(msteams): fix inline pasted image downloads
by jlian · 2026-02-07
74.2%
#23762: docs: fix markdown formatting and structure issues
by jainilDesai · 2026-02-22
73.9%