Feature Sets¶
Each subfolder is one Feature Set — a themed goal, elaborated once at Inception, then fanned out into Features that repeat through Construction and Release.
A single Feature is a legitimate Feature Set on its own — the wrapper
earns its place when it needs the schema-first gate, has its own business
justification, and stands alone as a customer-announceable thing. If a
proposed entry has no schema impact (or a trivial one) and no broader
theme, it belongs in ../improvements/ instead, regardless of how it was
initially framed — don't let "it's only one Feature" pull it into
feature-sets/ on its own.
A Feature Set folder holds only what that set adds or changes relative to
root — it is not a full copy of current state. Root (../schema/,
../adrs/, ../product/) is the single source of truth for "what's true
now"; a Feature Set is a diff against it.
Index¶
| Feature Set | Status | Notes |
|---|---|---|
| critical-core-hr-transactions | Draft | Business case complete; one combined Feature (core-hr-transaction-bundle) indexed, spec.md not yet drafted. Covers 6 of #316's 8 sub-issues — Cost Center Change and Org Restructuring deferred (no source material yet). |
| guest-console-preboarding | Draft | From issue #317 + Preboarding Guest Console PRD v0.5. Two Features drafted: new-hire-preboarding-console (#322) and hr-admin-deterministic-transactions (#321). Manager/HRBP readiness and insight capabilities from the two related PRDs excluded — not in scope this quarter. Pre-boarding/onboarding work carried here despite naming-and-references.md's stated Core HR scope exclusion — see concept.md Open Question 1. |
| compliance-filings | Reverse-engineered, no PM review yet | Seeded from GitHub issue #448 + 7 sub-issues and a source PRD (kept under reference/) — verbatim content only, no PM elaboration. |
| employee-offboarding | [AI-DLC TEST] | Sample created to test the nova-feature-set skill — not real product work. |
| worker-document-management | [AI-DLC TEST] | Sample created to test the nova-feature-set skill — not real product work. |
Status here reflects each Feature Set's own doc header, not the status:
frontmatter field (which tracks delta-file lifecycle — see below — and
currently reads draft for all Feature Sets regardless of how far along
they are). Update this table when a Feature Set's status changes.
feature-sets/<feature-set-slug>/
concept.md # business case, justification (Inception) — owner, product-manager, issue-url
schema-changes.md # proposed delta to ../schema/ — status in frontmatter
software-design/ # this set's overall design: design.md (main design file), adr-*.md (design decisions), plus supporting files
<feature-slug>/
spec.md # scope, value, acceptance — owner, product-manager, issue-url
test-plan.md
implementation-plan.md # Nova Architect's output from the Feature Spec → implementation handoff
There is no checklist.md. The Feature Closure Checklist is enforced on
the GitHub Issue itself via signed-off.dev, not a
markdown file in this repo — see
github-private/docs/ai-dlc/project-plan.md's "Discussion — Feature
Closure Checklist convention" for the full mechanism.
Frontmatter¶
Every tracked file carries owner: <name> (@<github-username>) at
minimum (always an engineer). concept.md and spec.md additionally
carry product-manager: <name> (@<github-username>) and
issue-url: <GitHub issue URL> — the Commitment Meeting issue for that
Feature Set/Feature. The @handle keeps the field matchable against an
issue's actual GitHub assignee (the source of truth on conflict); omit
it only if the person has no GitHub account in the org.
schema-changes.md and files under software-design/ (e.g. adr-*.md)
additionally carry the delta-file lifecycle block:
---
owner: <name> (@<github-username>)
feature_set: <slug>
status: proposed | applied | superseded
applied_date: <date or null>
supersedes: [<file>, ...] # optional, if this delta revises an earlier one
---
These files are a permanent record — never deleted or moved once applied.
proposed means not yet true; applied means it has been merged into root
and is safe to treat as historical confirmation of current state; superseded
means a later delta replaced it.
Starting skeletons live with the skills that generate them, not in this repo:
skills-product/.claude/skills/nova-feature-set/templates/ (concept.md,
schema-changes.md, software-design/adr-example.md) and
skills-product/.claude/skills/nova-feature/templates/ (spec.md,
test-plan.md). See github-private/docs/ai-dlc/repo-convention.md for the
full convention this layout follows — check there before scaffolding, since
decisions made there may run ahead of this file.