Add standard ID field to all frontmatter with path-like format#196
Add standard ID field to all frontmatter with path-like format#196
Conversation
Co-authored-by: alexec <1142830+alexec@users.noreply.github.com>
Co-authored-by: alexec <1142830+alexec@users.noreply.github.com>
|
@copilot Sorry. I was wrong about default names. Each frontmatter should also have a "ID" field. Instead, the ID should default to the file's base name with type, as URN. E.g. |
Changed from Name to ID field as requested: - ID field in URN format: urn:TYPE:basename - Defaults to URN based on file type (task, rule, command, skill) - Tasks found by ID basename (e.g., "fix-bug" matches "urn:task:fix-bug") - Backward compatible with custom IDs - All tests updated and passing Co-authored-by: alexec <1142830+alexec@users.noreply.github.com>
Changed to use ID field with URN format as requested. Each frontmatter now has an |
|
@copilot Remove the URN prefix. |
Changed ID format from urn:TYPE:basename to TYPE:basename: - task:fix-bug instead of urn:task:fix-bug - rule:go-style instead of urn:rule:go-style - command:setup instead of urn:command:setup - Updated all tests and documentation - All tests passing Co-authored-by: alexec <1142830+alexec@users.noreply.github.com>
|
@copilot lets make it a bit more like a path, e.g. rules/ or tasks/ |
Changed ID format to be more path-like: - tasks/fix-bug instead of task:fix-bug - rules/go-style instead of rule:go-style - commands/setup instead of command:setup - skills/test instead of skill:test - Using plural types (tasks, rules, commands, skills) - Updated all tests and documentation - All tests passing Co-authored-by: alexec <1142830+alexec@users.noreply.github.com>
|
@copilot merge in the latest main and fix the conflicts |
- Merged commit 3e1cbf1 from main - Updated MatchesIncludes to return (bool, string) with reason - Adapted ID-based task matching to work with new visitor signature - Added filename fallback for task matching to maintain compatibility - All tests passing
|
@copilot seems like there are still conflicts in pkg/codingcontext/context.go |
Resolved conflicts in pkg/codingcontext/context.go by keeping the ID-based task matching with filename fallback approach from our branch.
Implementation Complete
Changes
Changed to path-like format with plural types
TYPE/basenamewhere TYPE is plural (tasks, rules, commands, etc.)tasks/fix-buginstead oftask:fix-bugUpdated markdown parser (
markdown.go)setDefaultID()to generateTYPE/basenameformat with plurals/separator instead of:Updated task search logic (
context.go)tasks/taskNameProperly merged main branch (commit 3e1cbf1)
git mergeto create proper merge commitpkg/codingcontext/context.goby keeping ID-based matchingTask Matching Behavior
Tasks are found using a two-tier approach:
idfield in frontmatterThis ensures:
id: tasks/custom-namefound by "custom-name"Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.