playbook/antigravity-awesome-skills/docs/maintainers/date-tracking-implementatio...

67 lines
2.0 KiB
Markdown

# Date Tracking Implementation Summary
This note explains how `date_added` support fits into the current repository structure after the `apps/` and `tools/` refactor.
## What Exists Today
### Frontmatter support
New skills can include a `date_added` field in `SKILL.md` frontmatter:
```yaml
---
name: skill-name
description: "Description"
date_added: "2026-03-06"
---
```
### Validator support
The active validators understand `date_added`:
- `tools/scripts/validate_skills.py` checks the `YYYY-MM-DD` format.
- Supporting JS validation/test helpers are aware of the field where relevant.
### Index and web app support
- `tools/scripts/generate_index.py` exports `date_added` into `skills_index.json`.
- `npm run app:setup` copies the generated index to `apps/web-app/public/skills.json`.
- The web app can render the field anywhere the UI surfaces it.
### Maintenance scripts
- `tools/scripts/manage_skill_dates.py` manages skill dates.
- `tools/scripts/generate_skills_report.py` produces JSON reports from current skill metadata.
## Canonical Documentation
The canonical docs for date tracking now live here:
- [`skills-date-tracking.md`](skills-date-tracking.md)
- [`../contributors/skill-template.md`](../contributors/skill-template.md)
- [`../contributors/skill-anatomy.md`](../contributors/skill-anatomy.md)
Use those files as the source of truth instead of older root-level doc names.
## Common Commands
```bash
# View current date coverage
python tools/scripts/manage_skill_dates.py list
# Add missing dates
python tools/scripts/manage_skill_dates.py add-missing
# Update one skill
python tools/scripts/manage_skill_dates.py update skill-name 2026-03-06
# Generate a report
python tools/scripts/generate_skills_report.py --output reports/skills_report.json
```
## Notes
- Repository-wide coverage can change over time as new community skills are added, so this document avoids hardcoding counts.
- `date_added` is useful metadata, but the operational contributor gate remains `npm run validate`; strict validation is a separate hardening target for legacy cleanup.