feat: Phase 4 — 9 new features (v1.1)
Some checks failed
CI / Build & test backend (push) Failing after 14m56s
Some checks failed
CI / Build & test backend (push) Failing after 14m56s
REQ-MOB-010: BarcodeScreen.tsx — barcode scanner via react-native-camera REQ-VIZ-001: WeeklyCalorieChart.tsx — 7-day bar chart on History screen REQ-VIZ-002: Streak tracker — GET /meals/streak + HomeScreen badge REQ-UX-001: Quick-add calories — POST /meals/quick-add + QuickAddScreen REQ-UX-002: Food favourites — UserFoodMemory.favourite + toggle endpoint + FoodRow star REQ-UX-003: GoalBanner.tsx — in-app slide-in when daily target hit REQ-EXP-001: ExportController — GET /export/meals CSV download REQ-WTR-001: Water tracking — WaterEntry entity + POST/GET /water + DailyDetails widget REQ-UX-004: Daily logging reminder — HomeScreen after-18:00 banner Also: Flyway V2 (favourite), V3 (water_entries), V4 (source constraints) Traceability, CHANGELOG, PLAN updated after each feature
This commit is contained in:
@@ -0,0 +1,207 @@
|
||||
Skills use SKILL.md format with YAML frontmatter. One skill per folder. Test before deploy.
|
||||
|
||||
# Skills Standards - Native Agent Skills
|
||||
|
||||
**Module**: Skills Standards
|
||||
**Component**: Native VS Code Agent Skills (Layer 4)
|
||||
**Load**: When creating/editing skills in .github/skills/
|
||||
**Version**: 3.0.0
|
||||
**Updated**: 2026-04-20
|
||||
|
||||
---
|
||||
|
||||
## Machine Policy
|
||||
|
||||
```
|
||||
[SKILL_FORMAT]
|
||||
FORMAT=SKILL.md
|
||||
STRUCTURE=YAML_frontmatter + Markdown_body
|
||||
LOCATION=.github/skills/skill-name/SKILL.md
|
||||
TOKEN_TARGET=<5000_per_skill
|
||||
DESCRIPTION_LENGTH=~100_tokens
|
||||
VS_CODE_VERSION=1.109+
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## SKILL.md Format
|
||||
|
||||
### File Structure
|
||||
|
||||
```markdown
|
||||
---
|
||||
name: lowercase-hyphens-only
|
||||
description: what + when + keywords (1-1024 chars)
|
||||
license: MIT
|
||||
compatibility: VS Code 1.109+, Node.js 18+
|
||||
metadata:
|
||||
tier: TIER-0 | TIER-1 | TIER-2 | TIER-3
|
||||
category: governance | security | quality | language | testing
|
||||
framework-version: "3.0.0"
|
||||
author: virsaitis
|
||||
version: "1.0.0"
|
||||
---
|
||||
|
||||
# Skill Title
|
||||
|
||||
## Overview
|
||||
## When to Activate
|
||||
## Standards & Rules
|
||||
## Consequences
|
||||
## Procedures
|
||||
## Examples
|
||||
## Validation & Testing
|
||||
## Quick Reference
|
||||
```
|
||||
|
||||
### Frontmatter Requirements (TIER-1)
|
||||
|
||||
| Field | Required | Format | Example |
|
||||
|-------|----------|--------|---------|
|
||||
| `name` | Yes | lowercase-hyphens, 1-64 chars | `python-development` |
|
||||
| `description` | Yes | plain text, 1-1024 chars | What + When + Keywords |
|
||||
| `license` | No | SPDX identifier | `MIT` |
|
||||
| `compatibility` | No | version requirements | `VS Code 1.109+` |
|
||||
| `metadata.tier` | Yes (Virsaitis) | TIER-0 through TIER-3 | `TIER-1` |
|
||||
| `metadata.category` | Yes (Virsaitis) | governance/security/quality/language/testing | `governance` |
|
||||
|
||||
**Name MUST match directory name exactly.**
|
||||
|
||||
**Description MUST include**: what the skill does, when to activate, discovery keywords.
|
||||
|
||||
---
|
||||
|
||||
## Required Sections
|
||||
|
||||
### Overview
|
||||
What this skill does and why. Use atomic sentences. 2-3 paragraphs.
|
||||
|
||||
### When to Activate
|
||||
Keywords and scenarios for VS Code skill activation. Include keyword list for discovery.
|
||||
|
||||
### Standards & Rules
|
||||
Specific rules grouped by TIER level. Each rule: Name, TIER, Enforcement, Rationale.
|
||||
|
||||
### Consequences (Virsaitis Extension)
|
||||
Impact chains per TIER violation. Five dimensions: Operation, User, Technical, Business, Remediation.
|
||||
|
||||
```markdown
|
||||
### TIER-0 Violations
|
||||
**Rule**: [Rule Name]
|
||||
**If Violated**:
|
||||
- **Operation**: BLOCKED immediately
|
||||
- **User Impact**: [effect on user]
|
||||
- **Technical Impact**: [what breaks]
|
||||
- **Business Impact**: [why it matters]
|
||||
- **Remediation**: [how to fix]
|
||||
```
|
||||
|
||||
### Procedures
|
||||
Step-by-step workflows with commands and expected outcomes.
|
||||
|
||||
### Examples
|
||||
Good vs Bad code snippets with compliance explanations.
|
||||
|
||||
### Validation & Testing
|
||||
Commands to verify compliance, expected output, error interpretation.
|
||||
|
||||
### Quick Reference
|
||||
Summary table for rapid lookup.
|
||||
|
||||
---
|
||||
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
.github/skills/
|
||||
├── skill-name/
|
||||
│ ├── SKILL.md (required - main skill file)
|
||||
│ ├── scripts/ (optional - helper scripts)
|
||||
│ ├── references/ (optional - reference docs)
|
||||
│ └── assets/ (optional - images, examples)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Validation (TIER-1)
|
||||
|
||||
```bash
|
||||
# Validate skill structure
|
||||
skills-ref validate .github/skills/skill-name/
|
||||
|
||||
# Expected output:
|
||||
# ✓ Skill name matches directory
|
||||
# ✓ Description within 1-1024 chars
|
||||
# ✓ Frontmatter valid YAML
|
||||
# ✓ SKILL.md found
|
||||
```
|
||||
|
||||
Fix all errors before committing.
|
||||
|
||||
---
|
||||
|
||||
## Token Efficiency (TIER-2)
|
||||
|
||||
**Targets**:
|
||||
- Description: ~100 tokens (efficient discovery)
|
||||
- Full skill body: <5000 tokens (~500 lines)
|
||||
- Total loaded: <1% of 200K context window
|
||||
|
||||
**VS Code loads skills in 3 levels**:
|
||||
1. **Metadata** (~100 tokens): Always loaded for discovery
|
||||
2. **Instructions** (<5000 tokens): Loaded when skill activated
|
||||
3. **Resources** (on-demand): Loaded only when referenced
|
||||
|
||||
Keep SKILL.md lean. Put large examples in `references/`.
|
||||
|
||||
---
|
||||
|
||||
## Skill Development Workflow
|
||||
|
||||
### Create New Skill
|
||||
|
||||
1. Choose skill name (lowercase-hyphens)
|
||||
2. Create directory: `.github/skills/skill-name/`
|
||||
3. Fill frontmatter (name must match directory)
|
||||
4. Write sections: Overview → Rules → Consequences → Procedures
|
||||
5. Add good/bad examples
|
||||
6. Validate: `skills-ref validate`
|
||||
7. Test activation in VS Code 1.109+
|
||||
8. Update CHANGELOG and commit
|
||||
|
||||
### Modify Existing Skill
|
||||
|
||||
1. Read current SKILL.md fully
|
||||
2. Maintain atomic sentence structure
|
||||
3. Update version in frontmatter
|
||||
4. Validate and test before commit
|
||||
|
||||
---
|
||||
|
||||
## Quick Reference
|
||||
|
||||
| Aspect | Standard | Tool |
|
||||
|--------|----------|------|
|
||||
| **Format** | SKILL.md | VS Code markdown |
|
||||
| **Location** | .github/skills/ | Repository root |
|
||||
| **Frontmatter** | YAML | `---` delimiters |
|
||||
| **Tokens** | <5000 body | Word count estimate |
|
||||
| **Validation** | skills-ref | `skills-ref validate` |
|
||||
| **VS Code** | 1.109+ | Check release |
|
||||
|
||||
---
|
||||
|
||||
*Skills Standards Module v3.0.0*
|
||||
*Native VS Code Agent Skills for Virsaitis governance*
|
||||
|
||||
---
|
||||
|
||||
## Key Rules From This Module
|
||||
|
||||
- SKILL.md is the entry point. YAML frontmatter with description is required.
|
||||
- One skill per folder. Folder name matches skill purpose.
|
||||
- Test every skill before deployment. Manual validation required.
|
||||
- Skills in `.github/skills/` are the one exception to .github write restrictions.
|
||||
- Definitions: `.github/virsaitis-definition-library.md`
|
||||
|
||||
Return to hub: `.github/copilot-instructions.md`
|
||||
Reference in New Issue
Block a user