Loading...
Loading...
Update an existing work item with status changes, effort tracking, test results, and related commits. Use when progressing work, recording test results, or adjusting estimates. Supports: (1) Status transitions (not_started → in_progress → testing → completed), (2) Feature branch creation and sync, (3) Automatic PR creation on testing transition, (4) Effort tracking (estimated_hours → actual_hours), (5) Test and commit tracking, (6) Dependency updates and notes
npx skill4agent add squirrel289/pax update-work-itemin_progresstestingcreate-work-itemfinalize-work-itemstatus: not_started | in_progress | testing | completed
state_reason: null | success | obsolete | redundant | superseded | cancelled| Status | state_reason | Meaning | When to Use |
|---|---|---|---|
| (none) | Ready to begin | Initial creation |
| (none) | Active development | Actively working |
| (none) | Impl done, awaiting results | Tests running, review pending |
| | Finished successfully | All criteria met, merged |
| | No longer relevant | Market changed, approach outdated |
| | Duplicate item | Same work in another item |
| | Made moot by other item | Different item solves it better |
| | Work stopped | Stopped, won't implement |
estimated_hours: 20 # Set when created
actual_hours: 18 # Update as work progresses, finalize when complete
completed_date: null # Set when status = completed (YYYY-MM-DD)estimated_hoursactual_hoursnullcompleted_daterelated_commit:
- 6d8c044 # Short hash or fully qualified ref
- f00459b # Add commits as they're implementedtest_results: null | "URL to CI run" | "Local test results summary"test_results: "https://github.com/squirrel289/temple/actions/runs/12345678"
test_results: "All 47 tests pass, coverage 89%"
test_results: "3 test failures in test_renderer.py (see notes)"dependencies:
- "[[54_complete_temple_native.md]]"
- "[[43_implement_template_syntax_validation.md]]"not_startedin_progressfeature-branch-management# Triggered automatically when status: in_progress
feature-branch-management create feature/60-filter-adapterfeature/<id>-<slug>feature/60-filter-adapterfeature_branch: feature/60-filter-adapter---
title: "Implement FilterAdapter"
id: 60
status: in_progress # Changed from not_started
priority: high
estimated_hours: 20
actual_hours: null
completed_date: null
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Started implementation of FilterAdapter in temple/sdk/.
Initial focus: selectattr and map filters.
---actual_hoursactual_hours: 2 # Increment as work progressesactual_hoursestimated_hours: 20
actual_hours: 6 # 2 hours initial + 4 more hoursrelated_commit:
- 6d8c044 # feat(sdk): initial FilterAdapter interface
- f00459b # feat(filters): implement selectattr and map
- a1b2c3d # docs: add filter usage examplesgit log --oneline <short_hash> -n 1 --pretty=format:" - %h # %srelated_commit<short_hash>feature-branch-management# Triggered automatically when status: testing
feature-branch-management sync --base=maincreate-pr# Triggered automatically when status: testing
create-pr work_item=60status: testing
actual_hours: 18 # Finalize effort
state_reason: null # Not set yet
pr_number: 247 # Auto-populated by create-pr
pr_url: "https://github.com/squirrel289/pax/pull/247"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Implementation complete. All filters implemented with type signatures.
PR submitted for review: #247
Awaiting code review and approval.completed_datestate_reasonstatus: testing
test_results: "https://github.com/squirrel289/temple/actions/runs/98765432"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
CI results:
- 98 tests pass
- 2 tests fail in test_filter_edge_cases.py (filter_args validation)
- Coverage 87% (target 85%)
Known issues:
- Filter arg validation too strict for varargs
- Will fix in follow-up PRin_progressstatus: in_progress
actual_hours: 19 # Add time spent debugging
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: Tests exposed issue with varargs handling. Working on fix in branch feature/varargs-fix.status: completed
state_reason: success # Set based on completion type
actual_hours: 22 # Final tally
completed_date: 2026-02-12
test_results: "https://github.com/squirrel289/temple/actions/runs/98765432"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
All acceptance criteria met:
- FilterAdapter interface implemented and documented
- Core filters (selectattr, map, join, default) working
- 95% test coverage
- Code reviewed and approved
- Merged to main in commit a1b2c3dstate_reasonsuccessobsoleteredundantsupersededcancelled/backlog/finalize-work-itemestimated_hours: 20 # Original
actual_hours: 12 # Current progress, which may exceed estimate
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Revised scope: only implementing selectattr, map, and join
(default and custom filters deferred to #61).
New estimated_hours would be ~16, but keeping original to track
scope reduction.estimated_hours: 28 # Increased from 20 due to schema validation layer
actual_hours: 14
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: "Scope expanded: discovered need for JSON Schema validation in filter arguments. Adjusted estimate by +8 hours."dependencies:
- "[[54_complete_temple_native.md]]"
- "[[44_implement_semantic_validation.md]]" # Added: type checking needed---
title: "Implement FilterAdapter"
id: 60
status: not_started
state_reason: null
priority: high
estimated_hours: 20
actual_hours: null
dependencies:
- "[[54_complete_temple_native.md]]"
---status: in_progress
actual_hours: 2
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Started with interface design and type signatures.
SelectAttr filter drafted.status: testing
state_reason: null
actual_hours: 18
related_commit:
- 6d8c044 # feat(sdk): FilterAdapter interface
- f00459b # feat(filters): selectattr, map, join, default
test_results: "https://github.com/.../runs/12345678"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: All tests pass. 95% coverage. Awaiting code review.status: completed
state_reason: success
actual_hours: 20
completed_date: 2026-02-15
test_results: "https://github.com/.../runs/12345678"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: Merged to main. All acceptance criteria met.---
title: "Fix elif parsing edge case"
id: 59
status: in_progress
state_reason: null
estimated_hours: 4
actual_hours: 1
---status: in_progress
state_reason: null
actual_hours: 3
test_results: "Local: 1 test fails in test_parser.py::test_consecutive_elif"
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Found deeper issue: elif blocks interfere when nested.
Need to refactor block termination logic.
Revising approach—effort may exceed estimate.status: testing
state_reason: null
actual_hours: 7
estimated_hours: 4
test_results: "https://github.com/.../runs/87654321"
related_commit:
- abc1234 # fix(parser): elif block termination logic
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: Fixed by refactoring block_ends() logic. Took longer due to edge cases, but all tests now pass including new consecutive_elif tests.---
title: "Evaluate expression engines"
id: 61
status: in_progress
state_reason: null
estimated_hours: 16
actual_hours: 8
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Evaluation candidates:
1. JMESPath - mature, good for JSON, limited type support
2. Custom recursive descent - flexible, small footprint
3. meval - lightweight Python evaluator
Progress:
- JMESPath prototype working (2h)
- Custom parser WIP (6h) - complexity clear now, drafting comparison doc
Leaning toward option 2 (custom) due to control of type system.
---status: in_progress
actual_hours: 12 # Update from 10
notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Week of Feb 10: 2 hours progress (mid-week catchup).
Current blockers: Decision on filter signature format—waiting for architecture review.
Expected completion: Feb 17notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
BLOCKED: Waiting for ADR-006 decision on expression language.
Cannot finalize filter syntax without it.
Unblocked when: ADR merged and decision published
Impact: Pushed completion target to 2026-02-20notes:
- timestamp: 2024-06-01T12:00:00Z
user: @john
note: |
Original estimate: 12 hours (selectattr, map, join)
Current scope: +default filter + type validation = ~18 hours likely
Recommendation: Create follow-up item #62 for advanced filters, limit this to core 3.notesfeat(filters): implement selectattr and map
Implements core filtering operations for FilterAdapter.
Supports filtering sequences by attribute value and projection.
Closes #60
See backlog/60_implement_filter_adapter.mdcreate-work-itemfeature-branch-managementcreate-prhandle-pr-feedbackresolve-pr-commentsfinalize-work-itemgit-commitrelated_commitrelated_commitrelated_commitsMISSING-COMMIT.agents/skills/update-work-item/scripts/normalize-related-commits.sh --dry-run.agents/skills/update-work-item/scripts/normalize-related-commits.sh --dry-run --include-archived.agents/skills/update-work-item/scripts/normalize-related-commits.sh.agents/skills/update-work-item/scripts/normalize-related-commits.sh --include-archived