Skip to main content

FP&A Platform Artifact Naming Convention Standard

Document ID: STD-NCS-001
Version: 3.0
Effective Date: 2026-02-03
Owner: CODITECT Platform Engineering
TRACK Task Type: STANDARD


1. Purpose & Scope

This standard establishes the authoritative naming convention for all artifacts in the AI-First Open-Source FP&A Platform project. Adherence is mandatory for all team members, automated systems, and TRACK task assignments.

Benefits

BenefitImpact
DiscoverabilityFind any artifact in <10 seconds
AutomationTRACK task assignment by prefix
Audit TrailClear ownership and version history
ScalabilitySupports 1000+ artifacts without confusion
CI/CD IntegrationAutomated validation enforcement

2. Master Naming Pattern

2.1 Standard Format

[PREFIX]-[CATEGORY]-[SEQUENCE]-[descriptor].[extension]

2.2 Component Specification

ComponentFormatConstraintExample
PREFIX2-4 uppercase lettersRequired, from approved listSPEC, ADR, MOD
CATEGORY2-4 uppercase lettersRequired, from approved listFPA, SEC, GL
SEQUENCE3-digit zero-paddedRequired, unique per PREFIX-CATEGORY001, 042, 000
descriptorkebab-case lowercaseRequired, 2-50 chars, alphanumeric + hyphensproduct-requirements
extensionlowercaseRequired, standard extension.md, .xlsx, .yaml

2.3 Regex Validation Pattern

^[A-Z]{2,4}-[A-Z]{2,4}-[0-9]{3}-[a-z0-9]+(-[a-z0-9]+)*\.(md|xlsx|yaml|json|sql|py|pptx|pdf|docx|html|mermaid)$

2.4 Examples

✅ SPEC-FPA-001-product-requirements.md
✅ ADR-SEC-001-openfga-authorization.md
✅ FIN-ROI-001-customer-calculator.xlsx
✅ SQL-DB-001-complete-schema.sql
✅ CFG-INT-001-airbyte-connectors.yaml

❌ FPA-PRD.md # Missing PREFIX-CATEGORY-SEQ pattern
❌ 01-ROI-Calculator.xlsx # Invalid prefix format
❌ SPEC_FPA_001_product.md # Uses underscores instead of hyphens
❌ spec-fpa-001-product.md # Lowercase prefix

3. Document Type Prefixes (Complete Reference)

3.1 Specifications & Architecture

PrefixNameDescriptionExtensionTRACK Type
SPECSpecificationPRD, SDD, TDD, Test Strategy.mdSPECIFICATION
ADRArchitecture Decision RecordTechnology decisions with rationale.mdARCHITECTURE
REQRequirementsFunctional/non-functional requirements.mdSPECIFICATION
ARCArchitectureArchitecture overview documentation.mdARCHITECTURE
C4C4 DiagramContext, Container, Component, Code.mdARCHITECTURE
EVTEvent CatalogDomain events, schemas, flows.mdARCHITECTURE
SEQSequence DiagramProcess flows, API interactions.mdARCHITECTURE
ERDEntity RelationshipDatabase diagrams, data models.mdDATABASE

3.2 Research & Analysis

PrefixNameDescriptionExtensionTRACK Type
ANLAnalysisStrategic analysis, assessments, gap analysis.mdANALYSIS
RESResearchDeep research outputs, market research.mdRESEARCH
PRMPromptResearch prompts for AI execution.mdRESEARCH
MODModuleModule-level research and design prompts.mdRESEARCH
MKTMarketMarket analysis, competitive intelligence.mdANALYSIS

3.3 Technical Artifacts

PrefixNameDescriptionExtensionTRACK Type
SQLSQL SchemaDatabase schemas, migrations.sqlDATABASE
CFGConfigurationInfrastructure, pipeline, service configs.yaml, .jsonINFRASTRUCTURE
WFLWorkflowLangGraph, Dagster, Airflow definitions.yaml, .pyDEVELOPMENT
APIAPI SpecificationOpenAPI, GraphQL schemas.yaml, .jsonDEVELOPMENT
SCRScriptUtility scripts, automation.py, .sh, .tsDEVELOPMENT

3.4 Compliance & Governance

PrefixNameDescriptionExtensionTRACK Type
CMPComplianceRegulatory compliance requirements.mdCOMPLIANCE
RGURegulatory UpdateRegulatory change documentation.mdCOMPLIANCE
GOVGovernancePolicies, standards, procedures.mdCOMPLIANCE
AUDAuditAudit evidence, reports, findings.md, .xlsxCOMPLIANCE
CTLControlControl matrices, testing evidence.xlsxCOMPLIANCE

3.5 Security & Operations

PrefixNameDescriptionExtensionTRACK Type
SECSecuritySecurity specifications, assessments.mdSECURITY
THRThreatThreat models, risk assessments.mdSECURITY
DRPDisaster RecoveryDR plans, runbooks.mdOPERATIONS
MONMonitoringMonitoring specs, alerting.mdOPERATIONS
OPSOperationsOperational procedures.mdOPERATIONS

3.6 Business & Financial

PrefixNameDescriptionExtensionTRACK Type
FINFinancial ModelExcel financial models, calculators.xlsxFINANCIAL
BUSBusiness CaseROI analysis, TCO comparison.xlsx, .mdFINANCIAL
PRCPricingPricing models, rate cards.xlsxFINANCIAL

3.7 Documentation

PrefixNameDescriptionExtensionTRACK Type
DOCDocumentationGeneral documentation.mdDOCUMENTATION
GDEGuideUser guides, admin guides.mdDOCUMENTATION
REFReferenceAPI reference, technical reference.mdDOCUMENTATION
PLBPlaybookOperational playbooks, runbooks.mdDOCUMENTATION

3.8 Templates & Training

PrefixNameDescriptionExtensionTRACK Type
TPLTemplateReusable templates, forms.xlsx, .mdTEMPLATE
TRNTrainingTraining materials.pptx, .mdTRAINING

3.9 Project Management

PrefixNameDescriptionExtensionTRACK Type
PRJProjectProject plans, status reports.mdPROJECT
INVInventoryArtifact inventories, registries.mdPROJECT
MSTMasterMaster prompts, orchestration.mdPROJECT
STDStandardStandards, conventions.mdSTANDARD
TRKTrackTRACK assignments, sprints.yamlPROJECT
RPTReportValidation reports, status reports.json, .yamlPROJECT

4. Category Codes

4.1 Domain Categories

CodeDomainExample
FPAFP&A Platform (general)SPEC-FPA-001
GLGeneral LedgerMOD-GL-001
COAChart of AccountsMOD-COA-001
JRNJournal EntryMOD-JRN-001
TRBTrial BalanceMOD-TRB-001
FNSFinancial StatementsMOD-FNS-001
BUDBudgetMOD-BUD-001
FCTForecastMOD-FCT-001
VARVariance AnalysisMOD-VAR-001
RECReconciliationMOD-REC-001
CONConsolidationMOD-CON-001
KPIKPI DashboardMOD-KPI-001
AGTAI AgentMOD-AGT-001
NLGNatural LanguageMOD-NLG-001

4.2 Technical Categories

CodeDomainExample
DBDatabaseSQL-DB-001
INTIntegrationCFG-INT-001
INFInfrastructureCFG-INF-001
SECSecurityCFG-SEC-001
AIAI/MLWFL-AI-001
ARCArchitectureADR-ARC-001
SYSSystemSEC-SYS-001
OBSObservabilityMON-OBS-001

4.3 Compliance & Geographic Categories

CodeDomainExample
USUnited StatesCMP-US-001
BRBrazilCMP-BR-001
SOXSOX ComplianceTPL-SOX-001
LGPLGPDCMP-LGP-001
HIPHIPAACMP-HIP-001
FDAFDA 21 CFR 11CMP-FDA-001
BCNBACENCMP-BCN-001

4.4 Project Categories

CodeDomainExample
PRJProject ManagementINV-PRJ-000
NCSNaming Convention StandardSTD-NCS-001
VALValidationRPT-VAL-001

5. Sequence Number Ranges

RangePurposeExample
000Index/Master documentsINV-PRJ-000, PRM-MOD-000
001-099Core/FoundationSPEC-FPA-001, ADR-SEC-001
100-199Primary FeaturesMOD-GL-100
200-299Secondary FeaturesMOD-FCT-200
300-399Advanced FeaturesMOD-AGT-300
400-499ComplianceCMP-US-401
500-599IntegrationINT-ERP-501
600-699Reporting/AnalyticsREP-KPI-601
700-799DocumentationDOC-USR-701
800-899TemplatesTPL-SOX-801
900-999Project ManagementTRK-PRJ-901

6. Directory Structure

fpa-platform/
├── 00-project/ # Project management, inventory, standards
├── 01-specs/ # Specifications (PRD, SDD, TDD)
├── 02-architecture/ # Architecture (ADRs, C4, events)
│ ├── adrs/
│ ├── c4/
│ ├── events/
│ └── data/
├── 03-modules/ # Module research prompts
│ ├── core/
│ ├── planning/
│ ├── operations/
│ ├── reporting/
│ └── ai/
├── 04-compliance/ # Compliance documentation
│ ├── us/
│ └── br/
├── 05-integration/ # Integration prompts
│ ├── erp/
│ ├── banking/
│ └── platform/
├── 06-technical/ # Technical artifacts
│ ├── sql/
│ ├── config/
│ ├── workflows/
│ └── scripts/
├── 07-financial/ # Financial models
├── 08-security/ # Security artifacts
├── 09-operations/ # Operations artifacts
├── 10-documentation/ # Documentation
├── 11-templates/ # Templates
└── 12-training/ # Training materials

7. Migration Mapping (Legacy → STD-NCS-001)

7.1 Analysis Outputs

Legacy NameStandard Name
01-EXECUTIVE-ANALYSIS.mdANL-PRJ-001-executive-analysis.md
02-CODITECT-IMPACT-ANALYSIS.mdANL-PRJ-002-coditect-impact.md
03-RESEARCH-PROMPTS-TIER1.mdPRM-PRJ-003-research-tier1.md
04-RESEARCH-PROMPTS-TIER2.mdPRM-PRJ-004-research-tier2.md
05-CODITECT-PRODUCT-IDEAS.mdANL-PRJ-005-product-ideas.md
06-STRATEGIC-RECOMMENDATION.mdANL-PRJ-006-strategic-recommendation.md

7.2 Specifications

Legacy NameStandard Name
FPA-PRD.mdSPEC-FPA-001-product-requirements.md
FPA-SDD.mdSPEC-FPA-002-software-design.md
FPA-TDD.mdSPEC-FPA-003-technical-design.md
FPA-TEST-STRATEGY.mdSPEC-FPA-004-test-strategy.md

7.3 Architecture

Legacy NameStandard Name
ARCHITECTURE-DECISIONS.mdADR-ARC-000-decisions-index.md
C4-ARCHITECTURE-DIAGRAMS.mdC4-ARC-001-architecture-diagrams.md
EVENT-CATALOG.mdEVT-ARC-001-event-catalog.md

7.4 Research Prompts

Legacy NameStandard Name
MODULE-RESEARCH-PROMPTS.mdPRM-MOD-000-module-prompts-index.md
US-COMPLIANCE-PROMPTS.mdPRM-CMP-001-us-compliance.md
BR-COMPLIANCE-PROMPTS.mdPRM-CMP-002-br-compliance.md
INTEGRATION-RESEARCH-PROMPTS.mdPRM-INT-000-integration-prompts-index.md
MISSING-ARTIFACT-PROMPTS.mdPRM-PRJ-001-missing-artifacts.md

7.5 Compliance

Legacy NameStandard Name
BR-REGULATORY-UPDATES-2025-2026.mdRGU-BR-001-regulatory-updates-2026.md

7.6 Technical

Legacy NameStandard Name
FPA-COMPLETE-SCHEMA.sqlSQL-DB-001-complete-schema.sql
airbyte-connectors.yamlCFG-INT-001-airbyte-connectors.yaml
dagster-pipelines.yamlCFG-INT-002-dagster-pipelines.yaml
openfga-authorization.yamlCFG-SEC-001-openfga-authorization.yaml
langgraph-workflows.yamlWFL-AI-001-langgraph-workflows.yaml
terraform-infrastructure.yamlCFG-INF-001-terraform-infrastructure.yaml

7.7 Financial Models

Legacy NameStandard Name
01-ROI-Calculator.xlsxFIN-ROI-001-customer-calculator.xlsx
02-Month-End-Close-Savings.xlsxFIN-OPS-001-close-savings.xlsx
03-13-Week-Cash-Flow.xlsxFIN-FCT-001-cash-flow-13week.xlsx
04-Budget-vs-Actual.xlsxFIN-VAR-001-budget-vs-actual.xlsx
05-Platform-Pricing.xlsxFIN-PRC-001-platform-pricing.xlsx
06-Implementation-Cost-Model.xlsxFIN-PRJ-001-implementation-cost.xlsx

7.8 Security & Operations

Legacy NameStandard Name
SECURITY-SPECIFICATION.mdSEC-SYS-001-security-specification.md
DATA-CLASSIFICATION-MATRIX.mdGOV-SEC-001-data-classification.md
DISASTER-RECOVERY-PLAN.mdDRP-OPS-001-disaster-recovery.md
MONITORING-ALERTING-SPEC.mdMON-OBS-001-monitoring-alerting.md

7.9 Documentation

Legacy NameStandard Name
DATA-DICTIONARY.mdDOC-DB-001-data-dictionary.md
AI-MODEL-CARDS.mdDOC-AI-001-model-cards.md
PROMPT-ENGINEERING-PLAYBOOK.mdPLB-AI-001-prompt-engineering.md

7.10 Inventory & Standards

Legacy NameStandard Name
00-DOCUMENT-INVENTORY-v2.mdINV-PRJ-000-artifact-inventory.md
ARTIFACT-GAP-ANALYSIS-v2.mdANL-PRJ-002-artifact-gap-analysis.md

8. TRACK Task Type Mapping

Each PREFIX maps to a TRACK Task Type for automated assignment:

track_task_mapping:
# Specifications
SPEC: SPECIFICATION
ADR: ARCHITECTURE
REQ: SPECIFICATION

# Research
ANL: ANALYSIS
RES: RESEARCH
PRM: RESEARCH
MOD: RESEARCH
MKT: ANALYSIS

# Architecture
ARC: ARCHITECTURE
C4: ARCHITECTURE
EVT: ARCHITECTURE
SEQ: ARCHITECTURE
ERD: DATABASE

# Technical
SQL: DATABASE
CFG: INFRASTRUCTURE
WFL: DEVELOPMENT
API: DEVELOPMENT
SCR: DEVELOPMENT

# Compliance
CMP: COMPLIANCE
RGU: COMPLIANCE
GOV: COMPLIANCE
AUD: COMPLIANCE
CTL: COMPLIANCE

# Security & Operations
SEC: SECURITY
THR: SECURITY
DRP: OPERATIONS
MON: OPERATIONS
OPS: OPERATIONS

# Financial
FIN: FINANCIAL
BUS: FINANCIAL
PRC: FINANCIAL

# Documentation
DOC: DOCUMENTATION
GDE: DOCUMENTATION
REF: DOCUMENTATION
PLB: DOCUMENTATION

# Templates & Training
TPL: TEMPLATE
TRN: TRAINING

# Project
PRJ: PROJECT
INV: PROJECT
MST: PROJECT
STD: STANDARD
TRK: PROJECT
RPT: PROJECT

9. Validation Tools

9.1 Python Validation Script

#!/usr/bin/env python3
"""STD-NCS-001 Naming Convention Validator"""

import re
import sys
from pathlib import Path

NAMING_PATTERN = re.compile(
r'^[A-Z]{2,4}-[A-Z]{2,4}-[0-9]{3}-[a-z0-9]+(-[a-z0-9]+)*\.'
r'(md|xlsx|yaml|json|sql|py|pptx|pdf|docx|html|mermaid)$'
)

VALID_PREFIXES = {
'SPEC', 'ADR', 'REQ', 'ARC', 'C4', 'EVT', 'SEQ', 'ERD',
'ANL', 'RES', 'PRM', 'MOD', 'MKT',
'SQL', 'CFG', 'WFL', 'API', 'SCR',
'CMP', 'RGU', 'GOV', 'AUD', 'CTL',
'SEC', 'THR', 'DRP', 'MON', 'OPS',
'FIN', 'BUS', 'PRC',
'DOC', 'GDE', 'REF', 'PLB',
'TPL', 'TRN',
'PRJ', 'INV', 'MST', 'STD', 'TRK', 'RPT'
}

def validate_file(filepath: Path) -> tuple[bool, str]:
"""Validate a single file against STD-NCS-001."""
name = filepath.name

# Skip hidden files
if name.startswith('.'):
return True, "Skipped (hidden)"

# Check pattern match
if not NAMING_PATTERN.match(name):
return False, "Pattern mismatch"

# Extract and validate prefix
prefix = name.split('-')[0]
if prefix not in VALID_PREFIXES:
return False, f"Invalid prefix: {prefix}"

return True, "Valid"

def validate_directory(directory: Path, recursive: bool = True) -> dict:
"""Validate all files in a directory."""
results = {
'valid': [],
'invalid': [],
'skipped': []
}

files = directory.rglob('*') if recursive else directory.glob('*')

for f in files:
if f.is_file():
is_valid, reason = validate_file(f)
if reason == "Skipped (hidden)":
results['skipped'].append(str(f))
elif is_valid:
results['valid'].append(str(f))
else:
results['invalid'].append((str(f), reason))

return results

if __name__ == '__main__':
target = Path(sys.argv[1]) if len(sys.argv) > 1 else Path('.')
results = validate_directory(target)

print(f"✅ Valid: {len(results['valid'])}")
print(f"❌ Invalid: {len(results['invalid'])}")
print(f"⏭️ Skipped: {len(results['skipped'])}")

if results['invalid']:
print("\n❌ Invalid files:")
for f, reason in results['invalid']:
print(f" - {f}: {reason}")
sys.exit(1)

9.2 Bash Validation One-Liner

find . -type f -name '*.md' -o -name '*.xlsx' -o -name '*.yaml' | \
xargs -I {} basename {} | \
grep -vE '^[A-Z]{2,4}-[A-Z]{2,4}-[0-9]{3}-[a-z0-9]+(-[a-z0-9]+)*\.(md|xlsx|yaml)$'

10. Quick Reference Card

┌─────────────────────────────────────────────────────────────────────┐
│ STD-NCS-001 v3.0 — FP&A PLATFORM NAMING CONVENTION │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ PATTERN: [PREFIX]-[CATEGORY]-[SEQ]-[descriptor].[ext] │
│ EXAMPLE: SPEC-FPA-001-product-requirements.md │
│ │
│ ───────────────────────────────────────────────────────────────── │
│ TOP 20 PREFIXES │
│ ───────────────────────────────────────────────────────────────── │
│ SPEC = Specification ADR = Architecture Decision │
│ MOD = Module Prompt PRM = Research Prompt │
│ CFG = Configuration SQL = Database Schema │
│ FIN = Financial Model CMP = Compliance │
│ DOC = Documentation TPL = Template │
│ TRN = Training MST = Master Prompt │
│ INV = Inventory TRK = TRACK Assignment │
│ STD = Standard RGU = Regulatory Update │
│ SEC = Security WFL = Workflow │
│ ANL = Analysis PLB = Playbook │
│ │
│ ───────────────────────────────────────────────────────────────── │
│ TOP 15 CATEGORIES │
│ ───────────────────────────────────────────────────────────────── │
│ FPA = Platform PRJ = Project │
│ GL = General Ledger REC = Reconciliation │
│ FCT = Forecast BUD = Budget │
│ INT = Integration SEC = Security │
│ INF = Infrastructure DB = Database │
│ AI = AI/ML OBS = Observability │
│ US = United States BR = Brazil │
│ ARC = Architecture │
│ │
│ ───────────────────────────────────────────────────────────────── │
│ SEQUENCE RANGES │
│ ───────────────────────────────────────────────────────────────── │
│ 000 = Index/Master 500-599 = Integration │
│ 001-099 = Core/Foundation 700-799 = Documentation │
│ 100-199 = Primary Features 800-899 = Templates │
│ 200-299 = Secondary Features 900-999 = Project Mgmt │
│ 400-499 = Compliance │
│ │
└─────────────────────────────────────────────────────────────────────┘

11. Governance

11.1 Enforcement

PhaseTimelineRequirement
AwarenessWeek 1All team members trained
Soft EnforcementWeeks 2-4Warnings for non-compliance
Hard EnforcementWeek 5+CI/CD blocks non-compliant PRs
Legacy Migration30 daysAll existing artifacts migrated

11.2 Change Process

Submit changes via GitHub Issue with label naming-convention. Changes require:

  • Technical Lead approval for prefix/category changes
  • Platform Lead approval for pattern changes

11.3 Version History

VersionDateChanges
3.02026-02-03Standalone artifact, complete migration mapping, TRACK integration
2.02026-02-03Complete rewrite with validation tools
1.02026-02-03Initial release

STD-NCS-001 v3.0 — FP&A Platform Artifact Naming Convention Standard
CODITECT Platform Engineering
Effective: 2026-02-03