Index Standards Feed Story Dashboard Subscriptions Author Editor Discord
Mockup Index
Stories Feed Story View Author Dashboard
Content Standards

Content Standards

How Hub organizes, classifies, and connects content across platforms. Every piece of NATCA communication — from a breaking legislative alert to a reference SOP — follows this taxonomy so members can find it now and 2 years from now.

The Four Axes

Every Hub story is classified on four independent axes. These are not interchangeable — each answers a different question. Authors set three when publishing; the system derives the fourth. Together they power display, filtering, Discord routing, and email delivery.

Axis Question it answers Who sets it? Values Where it's used
Content Type What kind of thing is this? Author picks Update, Document, Action Needed, Event Discord tags, Hub card styling, feed filters
Topic What domain does this belong to? Author picks Pay, Benefits, Working Conditions, Legislative, Safety, Union Discord channel routing, Hub topic filter, email lists
Area What specific subject within the topic? Author picks (from topic-filtered list) Predefined per topic (e.g., NCEPT, FEHB, ASRS — see below) Hub sub-filter within a topic, Discord embed chip, search facet
Lifecycle Where is this in its life? System derives Developing, Active, Action Needed, Resolved, Reference Discord tags, Hub status badges, auto-archive rules

Author picks 3 things, system handles 1. Content Type + Topic + Area = author decisions. Lifecycle = derived from content type + author actions (resolve, archive). This keeps the authoring experience to three dropdowns — and the Area dropdown filters based on the Topic selection.

Content Types

Axis 1 — what kind of thing is this? The content type determines how the story is displayed in Hub and how it's tagged in Discord. Each story gets exactly one content type. Authors pick the type; the lifecycle is derived automatically.

TypeWhen to useExampleDefault lifecycle
📰 Update The default — news, coverage, announcements, advisories, anything that isn't a document, event, or action item Pay raise, staffing numbers, ASRS changes, FAA shutdown coverage, election results Starts Developing (if rolling) or Active (if one-time). Author resolves when done.
📋 Document Official artifacts that link to DMS — SOPs, MOUs, contract interpretations, policies Long-Term Hold SOP, Slate Book Article 35 MOU Immediately Reference. Documents are evergreen from publish.
⚡ Action Needed Members must do something by a date TA vote, benefits enrollment, scholarship application Action Needed until deadline passes, then auto-Resolved.
📅 Event Has start/end dates CFS Conference, NATCA in Washington, regional training Active until event date passes, then auto-Resolved.

Why only 4 types? Earlier iterations had 6 (Coverage, Advisory, Announcement were separate). In practice, whether a post gets follow-up updates is a lifecycle question (Developing vs Resolved), not a content type question. An "advisory" that gets 3 updates IS coverage. An "announcement" is just an update that's already resolved. Update covers all of these — the lifecycle does the rest.

Example cards by content type

📋 Document
📋 Document 📌 Reference

Long-Term Hold (LTH) SOP

Updated NCEPT placement procedures. Off-the-boards reduced from 12 to 6 months. New LTH categories in SWB.

📎 LTH SOP (PDF) — DMS 📎 CRWG Recommendations — DMS
Working Conditions NCEPT / Employee Movement Apr 15, 2026
📰 Update (rolling)
📰 Update 🔄 Developing

FAA Shutdown 2026 — Rolling Coverage

Congress negotiating FY2026 CR. NATCA coordinating contingency ops. 12 updates from 4 contributors.

Pay 12 updates · 7m ago Started Apr 8
⚡ Action Needed
📅 Event ⚡ Action Needed

NIW 2026 — Register by April 25

Registration closes in 9 days. Contact your RVP office for scholarship information.

Legislative Deadline: Apr 25
📰 Update (one-time)
📰 Update ✅ Resolved

FY2026 Locality Pay Tables Released

All facilities: minimum 2.3% adjustment. Highest: SFO at 4.1%. Effective PP01 2026.

Pay Published Mar 28
📅 Event
📅 Event 🟢 Active

2026 Communicating For Safety Conference

Las Vegas, August 18-20. Early-bird pricing through May 31. Scholarships available.

Safety / Training Aug 18-20, 2026
Topics

Axis 2 — what domain does this belong to? Topics map 1:1 to Discord forum channels and email subscription lists. Each story belongs to exactly one topic. New topics can be added without code changes.

Pay
Pay raises, locality pay, compensation, premium pay, overtime
#pay
Benefits
Health insurance, retirement, TSP, mental health, member services
#benefits
Working Conditions
Staffing, NCEPT, equipment, facilities, scheduling, ABACUS
#working-conditions
Legislative
Bills, FAA reauthorization, political action, Hill visits, NATCA PAC
#legislative
Safety
Bulletins, ASRS, incident reporting, runway incursions, professional standards
#safety
Union
CFS, NIW, elections, convention, committees, membership, internal NATCA business
#union
Areas

Axis 3 — what specific subject within the topic? Each topic has a predefined list of areas. Authors pick from a filtered dropdown after selecting the topic. New areas can be added per topic without code changes.

Why areas aren't Discord tags. Discord limits channels to 20 tags and posts to 5 tags. We're already using 8 tags per channel (4 content types + 4 lifecycle stages). That leaves 12 slots — enough for most topics, but some topics (like Union with 10+ committees) would exceed the limit. Instead, areas render as chips in the embed body on Discord and as filter chips on the Hub topic page. No Discord tag limit applies.

Topic Areas (predefined, extensible)
Pay Base Pay / GS Scale Locality Pay Premium Pay Overtime
Benefits Health / FEHB Retirement / TSP Mental Health / MAP Leave / FMLA
Working Conditions NCEPT / Employee Movement Equipment / Technology Scheduling Facilities ABACUS
Legislative FAA Reauthorization Appropriations Political Action / PAC
Safety ASRS / Reporting Runway Safety Professional Standards CISM
Union ITC Conferences Political Action Elections CRWG Safety Committee Training Committee Membership + more committees as needed

How areas render on each platform

Platform How areas appear Filterable?
Hub — topic page Filter chips below the topic header. Click "NCEPT" to show only NCEPT stories within Working Conditions. Yes — client-side filter, instant
Hub — story card Small chip next to the topic badge: Working Conditions NCEPT
Hub — AI search Area is indexed as a structured facet. "Show me all NCEPT documents" works as a query. Yes — via pgvector + metadata filter
Discord — forum post Chip in the embed metadata fields (not a Discord tag). Shows as "Area: NCEPT / Employee Movement" in the embed. No — Discord search only (not tag filter). Members use Hub for area filtering.
Discord — announcement Same — area shown in the embed fields as a chip. Not a Discord tag. No
Email Not used for email routing (subscriptions are topic-level). Area appears in the email body for context. No

Example: Hub topic page with area filter

Working Conditions

24 stories
Filter by area: All NCEPT Equipment / Technology Scheduling Facilities ABACUS
📋 Document 📌 Reference NCEPT / Employee Movement
Long-Term Hold (LTH) SOP — Updated Procedures
Off-the-boards reduced from 12 to 6 months. New LTH categories in SWB.
📰 Update 🔄 Developing NCEPT / Employee Movement
Controller Staffing Crisis — 2026 Hiring Pipeline
~10,200 CPCs vs ~13,000 target. 1,800 FY2026 hiring goal.
📰 Update 🔄 Developing Equipment / Technology
ERAM 3.4 — Nationwide Deployment
15% fewer nuisance alerts, weather overlay improvements. Wave 1 complete.

Example: Discord embed with area chip

NATCA Hub · Working Conditions
Long-Term Hold (LTH) SOP — Updated Procedures
Off-the-boards reduced from 12 to 6 months. New LTH categories in SWB. Reference for current and future FacReps.
Type
📋 Document
Status
📌 Reference
Area
NCEPT / Employee Movement
MyNATCA Hub · hub.natca.org/updates/lth-sop-2026

👆 Area appears as an embed field, not a Discord tag — no tag limit applies

Lifecycle

Axis 3 — where is this in its life? Not all content goes through every stage. An SOP goes straight to Reference. A shutdown story goes Developing → Resolved. The lifecycle determines the Hub status badge and Discord tag.

🔄
Developing
Situation active, updates expected
🟢
Active
Current, members should know
Resolved
Done, outcome known
Action Needed
Has a deadline
📌
Reference
Evergreen — consult as needed

Key distinction: Reference ≠ Resolved. An MOU is Reference from the moment it's signed — it was never Developing. A shutdown story goes Developing → Resolved, and its associated SOPs remain Reference. These are different paths.

Typical lifecycle by content type

Content TypeTypical PathExample
📰 Update 🔄 Developing✅ Resolved (rolling)
or → ✅ Resolved immediately (one-time)
Shutdown coverage, pay raise, ASRS changes, election results
📋 Document 📌 Reference (immediate) LTH SOP, Slate Book MOU, NOTAM lessons learned
⚡ Action Needed ⚡ Action Needed✅ Resolved (at deadline) TA vote, benefits enrollment, scholarship application
📅 Event 🟢 Active✅ Resolved (after event) CFS Conference, NIW fly-in, regional training
The Bridge: Hub ↔ DMS

Hub explains and discusses. DMS stores and governs. They link to each other — neither contains the other. Every path leads to both the context (Hub story) and the artifact (DMS document).

📰 Hub Story

The communication and context layer:

  • What changed and why it matters
  • Timeline of updates
  • Member discussion
  • Distribution (Discord, email)
←→
Related
Documents
bidirectional link
by document ID

📎 DMS Document

The canonical artifact:

  • The actual SOP, MOU, or policy PDF
  • Versioned, has owner + review date
  • Citeable in grievances
  • Searchable in DMS

Finding things 18 months later

Search pathResult
Search DMS for "long-term hold SOP" → Finds the PDF directly. "Related Stories" links to the Hub story.
Search Hub for "long-term hold" → Finds the story. "Related Documents" links to the DMS PDF.
Browse Hub → Working Conditions → filter by 📋 Document → Shows all documents in that topic. Click through to the story + PDF.
Search Discord #working-conditions → Finds the forum post. Buttons link to Hub story and DMS.
AI search: "what's the rule about LTH at level 12 facilities?" → Surfaces both the Hub story and the DMS document via pgvector.
Cross-Platform Flow

Hub is the canonical source. Discord and email are distribution channels. DMS is the document archive. Here's how they connect.

PlatformRoleWhat lives hereLinks to
Hub Canonical source Stories + updates, Tiptap-authored, permanent URL DMS (related docs), Discord (forum post), Email (campaign)
Discord Discussion + notification Forum posts (by topic), announcement feed, member threads Hub (via buttons on every post)
DMS Document archive Official PDFs — SOPs, MOUs, contract interpretations Hub (related stories, computed)
Email Push delivery Campaigns per topic subscription, digests, alerts Hub (every email links to the Hub story)

Content Standards · MyNATCA Hub Updates System · Phase 0 Mockup

See docs/architecture/decisions/001-updates-system.md for the full ADR.