Skip to main content

metadata.json

The metadata.json file tracks increment status, timestamps, and external tool integration within each increment folder.

Location

.specweave/increments/0007-feature-name/
├── spec.md
├── plan.md
├── tasks.md
└── metadata.json ← Status tracking

Structure

{
"id": "0007-user-authentication",
"type": "feature",
"status": "active",
"created": "2025-11-01T10:00:00Z",
"lastActivity": "2025-11-15T14:30:00Z",
"featureId": "FS-001",
"github": {
"issueNumber": 123,
"issueUrl": "https://github.com/org/repo/issues/123",
"lastSync": "2025-11-15T14:30:00Z"
}
}

Fields

FieldTypeDescription
idstringIncrement identifier (e.g., 0007-user-authentication)
typestringIncrement type (feature, hotfix, bug, refactor, experiment)
statusstringCurrent status (active, paused, completed, abandoned)
createdISO dateCreation timestamp
lastActivityISO dateLast modification time
featureIdstringLink to living docs feature (e.g., FS-001)
pausedReasonstringReason if paused
abandonedReasonstringReason if abandoned
githubobjectGitHub integration data
jiraobjectJIRA integration data
adoobjectAzure DevOps integration data

Status Values

StatusMeaningWIP Limit
activeCurrently being worked onCounts
pausedTemporarily blockedDoes not count
completedAll tasks doneDoes not count
abandonedWork cancelledDoes not count

External Tool Integration

GitHub

{
"github": {
"issueNumber": 123,
"issueUrl": "https://github.com/org/repo/issues/123",
"labels": ["feature", "in-progress"],
"milestone": "v1.0",
"lastSync": "2025-11-15T14:30:00Z"
}
}

JIRA

{
"jira": {
"epicKey": "PROJ-123",
"epicUrl": "https://company.atlassian.net/browse/PROJ-123",
"lastSync": "2025-11-15T14:30:00Z"
}
}