taskill 0.1.4__tar.gz → 0.1.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. {taskill-0.1.4 → taskill-0.1.5}/CHANGELOG.md +19 -0
  2. {taskill-0.1.4 → taskill-0.1.5}/PKG-INFO +6 -25
  3. {taskill-0.1.4 → taskill-0.1.5}/README.md +5 -24
  4. {taskill-0.1.4 → taskill-0.1.5}/SUMD.md +14 -14
  5. {taskill-0.1.4 → taskill-0.1.5}/SUMR.md +28 -28
  6. {taskill-0.1.4 → taskill-0.1.5}/TODO.md +1 -1
  7. taskill-0.1.5/VERSION +1 -0
  8. {taskill-0.1.4 → taskill-0.1.5}/app.doql.less +1 -1
  9. {taskill-0.1.4 → taskill-0.1.5}/project/analysis.toon.yaml +4 -4
  10. taskill-0.1.5/project/calls.png +0 -0
  11. {taskill-0.1.4 → taskill-0.1.5}/project/calls.toon.yaml +10 -10
  12. {taskill-0.1.4 → taskill-0.1.5}/project/duplication.toon.yaml +1 -1
  13. {taskill-0.1.4 → taskill-0.1.5}/project/index.html +1 -1
  14. {taskill-0.1.4 → taskill-0.1.5}/project/project.toon.yaml +5 -5
  15. {taskill-0.1.4 → taskill-0.1.5}/project.sh +1 -1
  16. {taskill-0.1.4 → taskill-0.1.5}/pyproject.toml +1 -1
  17. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/__init__.py +1 -1
  18. taskill-0.1.4/VERSION +0 -1
  19. taskill-0.1.4/project/calls.png +0 -0
  20. {taskill-0.1.4 → taskill-0.1.5}/.gitignore +0 -0
  21. {taskill-0.1.4 → taskill-0.1.5}/.windsurf/workflows/daily-docs-update.md +0 -0
  22. {taskill-0.1.4 → taskill-0.1.5}/LICENSE +0 -0
  23. {taskill-0.1.4 → taskill-0.1.5}/ROADMAP.md +0 -0
  24. {taskill-0.1.4 → taskill-0.1.5}/daily_update.sh +0 -0
  25. {taskill-0.1.4 → taskill-0.1.5}/examples/ansible-playbook.yml +0 -0
  26. {taskill-0.1.4 → taskill-0.1.5}/examples/github-action.yml +0 -0
  27. {taskill-0.1.4 → taskill-0.1.5}/examples/gitlab-ci.yml +0 -0
  28. {taskill-0.1.4 → taskill-0.1.5}/examples/systemd-timer/taskill.service +0 -0
  29. {taskill-0.1.4 → taskill-0.1.5}/examples/systemd-timer/taskill.timer +0 -0
  30. {taskill-0.1.4 → taskill-0.1.5}/goal.yaml +0 -0
  31. {taskill-0.1.4 → taskill-0.1.5}/planfile.yaml +0 -0
  32. {taskill-0.1.4 → taskill-0.1.5}/prefact.yaml +0 -0
  33. {taskill-0.1.4 → taskill-0.1.5}/project/README.md +0 -0
  34. {taskill-0.1.4 → taskill-0.1.5}/project/calls.mmd +29 -29
  35. {taskill-0.1.4 → taskill-0.1.5}/project/calls.yaml +191 -191
  36. {taskill-0.1.4 → taskill-0.1.5}/project/compact_flow.mmd +0 -0
  37. {taskill-0.1.4 → taskill-0.1.5}/project/compact_flow.png +0 -0
  38. {taskill-0.1.4 → taskill-0.1.5}/project/context.md +0 -0
  39. {taskill-0.1.4 → taskill-0.1.5}/project/evolution.toon.yaml +0 -0
  40. {taskill-0.1.4 → taskill-0.1.5}/project/flow.mmd +0 -0
  41. {taskill-0.1.4 → taskill-0.1.5}/project/flow.png +0 -0
  42. {taskill-0.1.4 → taskill-0.1.5}/project/map.toon.yaml +0 -0
  43. {taskill-0.1.4 → taskill-0.1.5}/project/mermaid.export +0 -0
  44. {taskill-0.1.4 → taskill-0.1.5}/project/prompt.txt +0 -0
  45. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/bulk.py +0 -0
  46. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/cli.py +0 -0
  47. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/config.py +0 -0
  48. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/core.py +0 -0
  49. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/git_state.py +0 -0
  50. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/providers/__init__.py +0 -0
  51. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/providers/algorithmic.py +0 -0
  52. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/providers/base.py +0 -0
  53. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/providers/openrouter.py +0 -0
  54. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/providers/windsurf_mcp.py +0 -0
  55. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/state.py +0 -0
  56. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/triggers.py +0 -0
  57. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/updaters/__init__.py +0 -0
  58. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/updaters/base.py +0 -0
  59. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/updaters/changelog.py +0 -0
  60. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/updaters/readme.py +0 -0
  61. {taskill-0.1.4 → taskill-0.1.5}/src/taskill/updaters/todo.py +0 -0
  62. {taskill-0.1.4 → taskill-0.1.5}/taskill.yaml +0 -0
  63. {taskill-0.1.4 → taskill-0.1.5}/testql-scenarios/generated-cli-tests.testql.toon.yaml +0 -0
  64. {taskill-0.1.4 → taskill-0.1.5}/tests/__init__.py +0 -0
  65. {taskill-0.1.4 → taskill-0.1.5}/tests/test_algorithmic.py +0 -0
  66. {taskill-0.1.4 → taskill-0.1.5}/tests/test_bulk.py +0 -0
  67. {taskill-0.1.4 → taskill-0.1.5}/tests/test_config.py +0 -0
  68. {taskill-0.1.4 → taskill-0.1.5}/tests/test_providers.py +0 -0
  69. {taskill-0.1.4 → taskill-0.1.5}/tests/test_triggers.py +0 -0
  70. {taskill-0.1.4 → taskill-0.1.5}/tests/test_updaters.py +0 -0
  71. {taskill-0.1.4 → taskill-0.1.5}/tree.sh +0 -0
  72. {taskill-0.1.4 → taskill-0.1.5}/tree.txt +0 -0
@@ -81,6 +81,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
81
81
  - README: new "Bulk / fleet-wide runs" and "Extending taskill" sections
82
82
  - ROADMAP: marked v0.2.1, v0.2.3, and v0.5 baseline as shipped
83
83
 
84
+ ## [0.1.5] - 2026-04-25
85
+
86
+ ### Docs
87
+ - Update README.md
88
+ - Update SUMD.md
89
+ - Update SUMR.md
90
+ - Update TODO.md
91
+
92
+ ### Other
93
+ - Update app.doql.less
94
+ - Update project/analysis.toon.yaml
95
+ - Update project/calls.mmd
96
+ - Update project/calls.png
97
+ - Update project/calls.toon.yaml
98
+ - Update project/calls.yaml
99
+ - Update project/duplication.toon.yaml
100
+ - Update project/index.html
101
+ - Update project/project.toon.yaml
102
+
84
103
  ## [0.1.4] - 2026-04-25
85
104
 
86
105
  ### Docs
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: taskill
3
- Version: 0.1.4
3
+ Version: 0.1.5
4
4
  Summary: Daily project hygiene: keep README / CHANGELOG / TODO in sync with reality. LLM-first, algorithmic fallback.
5
5
  Project-URL: Homepage, https://github.com/oqlos/taskill
6
6
  Project-URL: Issues, https://github.com/oqlos/taskill/issues
@@ -37,11 +37,11 @@ Description-Content-Type: text/markdown
37
37
 
38
38
  ## AI Cost Tracking
39
39
 
40
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.1.4-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
41
- ![AI Cost](https://img.shields.io/badge/AI%20Cost-$0.45-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-3.3h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
40
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.1.5-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
41
+ ![AI Cost](https://img.shields.io/badge/AI%20Cost-$0.60-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-3.4h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
42
42
 
43
- - 🤖 **LLM usage:** $0.4500 (3 commits)
44
- - 👤 **Human dev:** ~$333 (3.3h @ $100/h, 30min dedup)
43
+ - 🤖 **LLM usage:** $0.6000 (4 commits)
44
+ - 👤 **Human dev:** ~$339 (3.4h @ $100/h, 30min dedup)
45
45
 
46
46
  Generated on 2026-04-25 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
47
47
 
@@ -81,22 +81,7 @@ Every run produces three (idempotent) edits:
81
81
 
82
82
  1. **`CHANGELOG.md`** — appends new entries under `## [Unreleased]`, grouped by Conventional Commit type (`### Added`, `### Fixed`, `### Performance`, etc.). Uses [Keep a Changelog](https://keepachangelog.com/) layout. Existing entries are deduplicated.
83
83
  2. **`TODO.md`** — moves completed items to a `## Done (moved to CHANGELOG)` section, and appends `TODO:` / `FIXME:` markers found in new commit bodies under `## Discovered`.
84
- 3. **`README.md`** — refreshes only the block between `<!-- taskill:status:start -->
85
-
86
- ## Status
87
-
88
- _Last updated by [taskill](https://github.com/oqlos/taskill) at 2026-04-25 09:23 UTC_
89
-
90
- | Metric | Value |
91
- |---|---|
92
- | HEAD | `4618c29` |
93
- | Coverage | — |
94
- | Failing tests | — |
95
- | Commits in last cycle | 0 |
96
-
97
- > No changes were made to the project since the last taskill run.
98
-
99
- <!-- taskill:status:end -->` markers (HEAD, coverage, failing tests, summary). Never touches the rest of the file.
84
+ 3. **`README.md`** — refreshes only the block between `<!-- taskill:status:start -->` and `<!-- taskill:status:end -->` markers (HEAD, coverage, failing tests, summary). Never touches the rest of the file.
100
85
 
101
86
  ## Provider chain
102
87
 
@@ -342,10 +327,6 @@ SUMR (state) ───────┘
342
327
  Licensed under Apache-2.0.
343
328
  ## Status
344
329
 
345
- <!-- taskill:status:start -->
346
-
347
- ## Status
348
-
349
330
  _Last updated by [taskill](https://github.com/oqlos/taskill) at 2026-04-25 09:23 UTC_
350
331
 
351
332
  | Metric | Value |
@@ -3,11 +3,11 @@
3
3
 
4
4
  ## AI Cost Tracking
5
5
 
6
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.1.4-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
7
- ![AI Cost](https://img.shields.io/badge/AI%20Cost-$0.45-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-3.3h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
6
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.1.5-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
7
+ ![AI Cost](https://img.shields.io/badge/AI%20Cost-$0.60-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-3.4h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
8
8
 
9
- - 🤖 **LLM usage:** $0.4500 (3 commits)
10
- - 👤 **Human dev:** ~$333 (3.3h @ $100/h, 30min dedup)
9
+ - 🤖 **LLM usage:** $0.6000 (4 commits)
10
+ - 👤 **Human dev:** ~$339 (3.4h @ $100/h, 30min dedup)
11
11
 
12
12
  Generated on 2026-04-25 using [openrouter/qwen/qwen3-coder-next](https://openrouter.ai/qwen/qwen3-coder-next)
13
13
 
@@ -47,22 +47,7 @@ Every run produces three (idempotent) edits:
47
47
 
48
48
  1. **`CHANGELOG.md`** — appends new entries under `## [Unreleased]`, grouped by Conventional Commit type (`### Added`, `### Fixed`, `### Performance`, etc.). Uses [Keep a Changelog](https://keepachangelog.com/) layout. Existing entries are deduplicated.
49
49
  2. **`TODO.md`** — moves completed items to a `## Done (moved to CHANGELOG)` section, and appends `TODO:` / `FIXME:` markers found in new commit bodies under `## Discovered`.
50
- 3. **`README.md`** — refreshes only the block between `<!-- taskill:status:start -->
51
-
52
- ## Status
53
-
54
- _Last updated by [taskill](https://github.com/oqlos/taskill) at 2026-04-25 09:23 UTC_
55
-
56
- | Metric | Value |
57
- |---|---|
58
- | HEAD | `4618c29` |
59
- | Coverage | — |
60
- | Failing tests | — |
61
- | Commits in last cycle | 0 |
62
-
63
- > No changes were made to the project since the last taskill run.
64
-
65
- <!-- taskill:status:end -->` markers (HEAD, coverage, failing tests, summary). Never touches the rest of the file.
50
+ 3. **`README.md`** — refreshes only the block between `<!-- taskill:status:start -->` and `<!-- taskill:status:end -->` markers (HEAD, coverage, failing tests, summary). Never touches the rest of the file.
66
51
 
67
52
  ## Provider chain
68
53
 
@@ -308,10 +293,6 @@ SUMR (state) ───────┘
308
293
  Licensed under Apache-2.0.
309
294
  ## Status
310
295
 
311
- <!-- taskill:status:start -->
312
-
313
- ## Status
314
-
315
296
  _Last updated by [taskill](https://github.com/oqlos/taskill) at 2026-04-25 09:23 UTC_
316
297
 
317
298
  | Metric | Value |
@@ -20,7 +20,7 @@ Daily project hygiene: keep README / CHANGELOG / TODO in sync with reality. LLM-
20
20
  ## Metadata
21
21
 
22
22
  - **name**: `taskill`
23
- - **version**: `0.1.3`
23
+ - **version**: `0.1.4`
24
24
  - **python_requires**: `>=3.10`
25
25
  - **license**: Apache-2.0
26
26
  - **ai_model**: `openrouter/qwen/qwen3-coder-next`
@@ -40,7 +40,7 @@ SUMD (description) → DOQL/source (code) → taskfile (automation) → testql (
40
40
 
41
41
  app {
42
42
  name: taskill;
43
- version: 0.1.3;
43
+ version: 0.1.4;
44
44
  }
45
45
 
46
46
  dependencies {
@@ -100,7 +100,7 @@ LOG[3]{message}:
100
100
  ```yaml
101
101
  project:
102
102
  name: taskill
103
- version: 0.1.3
103
+ version: 0.1.4
104
104
  env: local
105
105
  ```
106
106
 
@@ -391,8 +391,8 @@ D:
391
391
  | `generate` *(in src.taskill.providers.windsurf_mcp.WindsurfMcpProvider)* | 7 | 0 | 32 | **32** |
392
392
  | `generate` *(in src.taskill.providers.openrouter.OpenRouterProvider)* | 6 | 0 | 27 | **27** |
393
393
  | `bulk_run` *(in src.taskill.bulk)* | 17 ⚠ | 1 | 26 | **27** |
394
- | `evaluate` *(in src.taskill.triggers)* | 21 ⚠ | 2 | 23 | **25** |
395
394
  | `status` *(in src.taskill.cli)* | 11 ⚠ | 0 | 25 | **25** |
395
+ | `evaluate` *(in src.taskill.triggers)* | 21 ⚠ | 2 | 23 | **25** |
396
396
 
397
397
  ```toon markpact:analysis path=project/calls.toon.yaml
398
398
  # code2llm call graph | /home/tom/github/semcod/taskill
@@ -412,34 +412,34 @@ HUBS[20]:
412
412
  CC=6 in:0 out:27 total:27
413
413
  src.taskill.bulk.bulk_run
414
414
  CC=17 in:1 out:26 total:27
415
- src.taskill.triggers.evaluate
416
- CC=21 in:2 out:23 total:25
417
415
  src.taskill.cli.status
418
416
  CC=11 in:0 out:25 total:25
417
+ src.taskill.triggers.evaluate
418
+ CC=21 in:2 out:23 total:25
419
419
  src.taskill.core.Taskill.run
420
420
  CC=11 in:0 out:20 total:20
421
421
  src.taskill.git_state.collect_snapshot
422
422
  CC=3 in:1 out:13 total:14
423
- src.taskill.core.Taskill._apply
424
- CC=4 in:0 out:12 total:12
425
423
  src.taskill.git_state.read_coverage
426
424
  CC=7 in:1 out:11 total:12
425
+ src.taskill.core.Taskill._apply
426
+ CC=4 in:0 out:12 total:12
427
427
  src.taskill.updaters.readme.ReadmeUpdater._update_readme
428
428
  CC=6 in:0 out:11 total:11
429
- src.taskill.providers.windsurf_mcp._candidate_endpoints
430
- CC=5 in:2 out:7 total:9
431
- src.taskill.bulk._scan
432
- CC=9 in:2 out:7 total:9
433
429
  src.taskill.git_state.commits_since
434
430
  CC=7 in:1 out:8 total:9
435
431
  src.taskill.git_state.read_failed_tests
436
432
  CC=5 in:1 out:8 total:9
433
+ src.taskill.bulk._scan
434
+ CC=9 in:2 out:7 total:9
435
+ src.taskill.providers.windsurf_mcp._candidate_endpoints
436
+ CC=5 in:2 out:7 total:9
437
437
  src.taskill.cli.release
438
438
  CC=2 in:0 out:8 total:8
439
439
  src.taskill.providers.discover_providers
440
440
  CC=6 in:1 out:7 total:8
441
- src.taskill.state.load_state
442
- CC=3 in:1 out:6 total:7
441
+ src.taskill.updaters.changelog.release_unreleased
442
+ CC=4 in:1 out:6 total:7
443
443
 
444
444
  MODULES:
445
445
  src.taskill.bulk [5 funcs]
@@ -15,7 +15,7 @@ SUMD - Structured Unified Markdown Descriptor for AI-aware project refactorizati
15
15
  ## Metadata
16
16
 
17
17
  - **name**: `taskill`
18
- - **version**: `0.1.3`
18
+ - **version**: `0.1.4`
19
19
  - **python_requires**: `>=3.10`
20
20
  - **license**: Apache-2.0
21
21
  - **ai_model**: `openrouter/qwen/qwen3-coder-next`
@@ -35,7 +35,7 @@ SUMD (description) → DOQL/source (code) → taskfile (automation) → testql (
35
35
 
36
36
  app {
37
37
  name: taskill;
38
- version: 0.1.3;
38
+ version: 0.1.4;
39
39
  }
40
40
 
41
41
  dependencies {
@@ -106,8 +106,8 @@ pfix>=0.1.60
106
106
  | `generate` *(in src.taskill.providers.windsurf_mcp.WindsurfMcpProvider)* | 7 | 0 | 32 | **32** |
107
107
  | `generate` *(in src.taskill.providers.openrouter.OpenRouterProvider)* | 6 | 0 | 27 | **27** |
108
108
  | `bulk_run` *(in src.taskill.bulk)* | 17 ⚠ | 1 | 26 | **27** |
109
- | `evaluate` *(in src.taskill.triggers)* | 21 ⚠ | 2 | 23 | **25** |
110
109
  | `status` *(in src.taskill.cli)* | 11 ⚠ | 0 | 25 | **25** |
110
+ | `evaluate` *(in src.taskill.triggers)* | 21 ⚠ | 2 | 23 | **25** |
111
111
 
112
112
  ```toon markpact:analysis path=project/calls.toon.yaml
113
113
  # code2llm call graph | /home/tom/github/semcod/taskill
@@ -127,34 +127,34 @@ HUBS[20]:
127
127
  CC=6 in:0 out:27 total:27
128
128
  src.taskill.bulk.bulk_run
129
129
  CC=17 in:1 out:26 total:27
130
- src.taskill.triggers.evaluate
131
- CC=21 in:2 out:23 total:25
132
130
  src.taskill.cli.status
133
131
  CC=11 in:0 out:25 total:25
132
+ src.taskill.triggers.evaluate
133
+ CC=21 in:2 out:23 total:25
134
134
  src.taskill.core.Taskill.run
135
135
  CC=11 in:0 out:20 total:20
136
136
  src.taskill.git_state.collect_snapshot
137
137
  CC=3 in:1 out:13 total:14
138
- src.taskill.core.Taskill._apply
139
- CC=4 in:0 out:12 total:12
140
138
  src.taskill.git_state.read_coverage
141
139
  CC=7 in:1 out:11 total:12
140
+ src.taskill.core.Taskill._apply
141
+ CC=4 in:0 out:12 total:12
142
142
  src.taskill.updaters.readme.ReadmeUpdater._update_readme
143
143
  CC=6 in:0 out:11 total:11
144
- src.taskill.providers.windsurf_mcp._candidate_endpoints
145
- CC=5 in:2 out:7 total:9
146
- src.taskill.bulk._scan
147
- CC=9 in:2 out:7 total:9
148
144
  src.taskill.git_state.commits_since
149
145
  CC=7 in:1 out:8 total:9
150
146
  src.taskill.git_state.read_failed_tests
151
147
  CC=5 in:1 out:8 total:9
148
+ src.taskill.bulk._scan
149
+ CC=9 in:2 out:7 total:9
150
+ src.taskill.providers.windsurf_mcp._candidate_endpoints
151
+ CC=5 in:2 out:7 total:9
152
152
  src.taskill.cli.release
153
153
  CC=2 in:0 out:8 total:8
154
154
  src.taskill.providers.discover_providers
155
155
  CC=6 in:1 out:7 total:8
156
- src.taskill.state.load_state
157
- CC=3 in:1 out:6 total:7
156
+ src.taskill.updaters.changelog.release_unreleased
157
+ CC=4 in:1 out:6 total:7
158
158
 
159
159
  MODULES:
160
160
  src.taskill.bulk [5 funcs]
@@ -284,34 +284,34 @@ HUBS[20]:
284
284
  CC=6 in:0 out:27 total:27
285
285
  src.taskill.bulk.bulk_run
286
286
  CC=17 in:1 out:26 total:27
287
- src.taskill.triggers.evaluate
288
- CC=21 in:2 out:23 total:25
289
287
  src.taskill.cli.status
290
288
  CC=11 in:0 out:25 total:25
289
+ src.taskill.triggers.evaluate
290
+ CC=21 in:2 out:23 total:25
291
291
  src.taskill.core.Taskill.run
292
292
  CC=11 in:0 out:20 total:20
293
293
  src.taskill.git_state.collect_snapshot
294
294
  CC=3 in:1 out:13 total:14
295
- src.taskill.core.Taskill._apply
296
- CC=4 in:0 out:12 total:12
297
295
  src.taskill.git_state.read_coverage
298
296
  CC=7 in:1 out:11 total:12
297
+ src.taskill.core.Taskill._apply
298
+ CC=4 in:0 out:12 total:12
299
299
  src.taskill.updaters.readme.ReadmeUpdater._update_readme
300
300
  CC=6 in:0 out:11 total:11
301
- src.taskill.providers.windsurf_mcp._candidate_endpoints
302
- CC=5 in:2 out:7 total:9
303
- src.taskill.bulk._scan
304
- CC=9 in:2 out:7 total:9
305
301
  src.taskill.git_state.commits_since
306
302
  CC=7 in:1 out:8 total:9
307
303
  src.taskill.git_state.read_failed_tests
308
304
  CC=5 in:1 out:8 total:9
305
+ src.taskill.bulk._scan
306
+ CC=9 in:2 out:7 total:9
307
+ src.taskill.providers.windsurf_mcp._candidate_endpoints
308
+ CC=5 in:2 out:7 total:9
309
309
  src.taskill.cli.release
310
310
  CC=2 in:0 out:8 total:8
311
311
  src.taskill.providers.discover_providers
312
312
  CC=6 in:1 out:7 total:8
313
- src.taskill.state.load_state
314
- CC=3 in:1 out:6 total:7
313
+ src.taskill.updaters.changelog.release_unreleased
314
+ CC=4 in:1 out:6 total:7
315
315
 
316
316
  MODULES:
317
317
  src.taskill.bulk [5 funcs]
@@ -412,7 +412,7 @@ EDGES:
412
412
  ### Code Analysis (`project/analysis.toon.yaml`)
413
413
 
414
414
  ```toon markpact:analysis path=project/analysis.toon.yaml
415
- # code2llm | 38f 5318L | python:18,yaml:12,yml:3,txt:2,shell:2,toml:1 | 2026-04-25
415
+ # code2llm | 38f 5304L | python:18,yaml:12,yml:3,txt:2,shell:2,toml:1 | 2026-04-25
416
416
  # CC̄=2.0 | critical:5/172 | dups:0 | cycles:1
417
417
 
418
418
  HEALTH[5]:
@@ -460,10 +460,10 @@ LAYERS:
460
460
  │ __init__ 30L 0C 0m CC=0.0 ←0
461
461
 
462
462
  project/ CC̄=0.0 ←in:0 →out:0
463
- │ !! calls.yaml 622L 0C 0m CC=0.0 ←0
463
+ │ !! calls.yaml 614L 0C 0m CC=0.0 ←0
464
464
  │ map.toon.yaml 209L 0C 99m CC=0.0 ←0
465
- │ calls.toon.yaml 142L 0C 0m CC=0.0 ←0
466
- │ analysis.toon.yaml 85L 0C 0m CC=0.0 ←0
465
+ │ calls.toon.yaml 140L 0C 0m CC=0.0 ←0
466
+ │ analysis.toon.yaml 81L 0C 0m CC=0.0 ←0
467
467
  │ evolution.toon.yaml 59L 0C 0m CC=0.0 ←0
468
468
  │ project.toon.yaml 56L 0C 0m CC=0.0 ←0
469
469
  │ prompt.txt 47L 0C 0m CC=0.0 ←0
@@ -506,7 +506,7 @@ SUMMARY:
506
506
  dup_groups: 1
507
507
  dup_fragments: 2
508
508
  saved_lines: 29
509
- scan_ms: 4828
509
+ scan_ms: 6585
510
510
 
511
511
  HOTSPOTS[2] (files with most duplication):
512
512
  src/taskill/providers/__init__.py dup=29L groups=1 frags=1 (1.3%)
@@ -1,7 +1,7 @@
1
1
  # TODO
2
2
 
3
3
  **Generated by:** prefact v0.1.48
4
- **Generated on:** 2026-04-25T12:53:43.987234
4
+ **Generated on:** 2026-04-25T13:48:45.580758
5
5
  **Total issues:** 76 active, 0 completed
6
6
 
7
7
  ---
taskill-0.1.5/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.5
@@ -2,7 +2,7 @@
2
2
 
3
3
  app {
4
4
  name: taskill;
5
- version: 0.1.3;
5
+ version: 0.1.4;
6
6
  }
7
7
 
8
8
  dependencies {
@@ -1,4 +1,4 @@
1
- # code2llm | 38f 5318L | python:18,yaml:12,yml:3,txt:2,shell:2,toml:1 | 2026-04-25
1
+ # code2llm | 38f 5304L | python:18,yaml:12,yml:3,txt:2,shell:2,toml:1 | 2026-04-25
2
2
  # CC̄=2.0 | critical:5/172 | dups:0 | cycles:1
3
3
 
4
4
  HEALTH[5]:
@@ -46,10 +46,10 @@ LAYERS:
46
46
  │ __init__ 30L 0C 0m CC=0.0 ←0
47
47
 
48
48
  project/ CC̄=0.0 ←in:0 →out:0
49
- │ !! calls.yaml 622L 0C 0m CC=0.0 ←0
49
+ │ !! calls.yaml 614L 0C 0m CC=0.0 ←0
50
50
  │ map.toon.yaml 209L 0C 99m CC=0.0 ←0
51
- │ calls.toon.yaml 142L 0C 0m CC=0.0 ←0
52
- │ analysis.toon.yaml 85L 0C 0m CC=0.0 ←0
51
+ │ calls.toon.yaml 140L 0C 0m CC=0.0 ←0
52
+ │ analysis.toon.yaml 81L 0C 0m CC=0.0 ←0
53
53
  │ evolution.toon.yaml 59L 0C 0m CC=0.0 ←0
54
54
  │ project.toon.yaml 56L 0C 0m CC=0.0 ←0
55
55
  │ prompt.txt 47L 0C 0m CC=0.0 ←0
Binary file
@@ -15,34 +15,34 @@ HUBS[20]:
15
15
  CC=6 in:0 out:27 total:27
16
16
  src.taskill.bulk.bulk_run
17
17
  CC=17 in:1 out:26 total:27
18
- src.taskill.triggers.evaluate
19
- CC=21 in:2 out:23 total:25
20
18
  src.taskill.cli.status
21
19
  CC=11 in:0 out:25 total:25
20
+ src.taskill.triggers.evaluate
21
+ CC=21 in:2 out:23 total:25
22
22
  src.taskill.core.Taskill.run
23
23
  CC=11 in:0 out:20 total:20
24
24
  src.taskill.git_state.collect_snapshot
25
25
  CC=3 in:1 out:13 total:14
26
- src.taskill.core.Taskill._apply
27
- CC=4 in:0 out:12 total:12
28
26
  src.taskill.git_state.read_coverage
29
27
  CC=7 in:1 out:11 total:12
28
+ src.taskill.core.Taskill._apply
29
+ CC=4 in:0 out:12 total:12
30
30
  src.taskill.updaters.readme.ReadmeUpdater._update_readme
31
31
  CC=6 in:0 out:11 total:11
32
- src.taskill.providers.windsurf_mcp._candidate_endpoints
33
- CC=5 in:2 out:7 total:9
34
- src.taskill.bulk._scan
35
- CC=9 in:2 out:7 total:9
36
32
  src.taskill.git_state.commits_since
37
33
  CC=7 in:1 out:8 total:9
38
34
  src.taskill.git_state.read_failed_tests
39
35
  CC=5 in:1 out:8 total:9
36
+ src.taskill.bulk._scan
37
+ CC=9 in:2 out:7 total:9
38
+ src.taskill.providers.windsurf_mcp._candidate_endpoints
39
+ CC=5 in:2 out:7 total:9
40
40
  src.taskill.cli.release
41
41
  CC=2 in:0 out:8 total:8
42
42
  src.taskill.providers.discover_providers
43
43
  CC=6 in:1 out:7 total:8
44
- src.taskill.state.load_state
45
- CC=3 in:1 out:6 total:7
44
+ src.taskill.updaters.changelog.release_unreleased
45
+ CC=4 in:1 out:6 total:7
46
46
 
47
47
  MODULES:
48
48
  src.taskill.bulk [5 funcs]
@@ -6,7 +6,7 @@ SUMMARY:
6
6
  dup_groups: 1
7
7
  dup_fragments: 2
8
8
  saved_lines: 29
9
- scan_ms: 4828
9
+ scan_ms: 6585
10
10
 
11
11
  HOTSPOTS[2] (files with most duplication):
12
12
  src/taskill/providers/__init__.py dup=29L groups=1 frags=1 (1.3%)