torben and Claude Opus 5.5
fba263af68
feat: raw fetch - a sanctioned intake for a URL into incoming/, HTML as received plus derived text ( #120 )
...
CI / verify (push) Successful in 5m21s
CI / pwsh (push) Successful in 2m6s
Release / release (push) Successful in 34s
Files changed:
- CHANGES.md
- README.md
- VERSION
- instructions/wiki-ingest/SKILL.md
- raw/CONTRACT.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/raw_cmd.py
- tools/chemenu/tests/test_cli.py
- tools/chemenu/tests/test_portability.py
- tools/chemenu/tests/test_raw_fetch.py
- tools/chemenu/web_capture.py
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
2026-10-02 22:26:06 +02:00
torben and Claude Opus 5.5
c0f324ff96
docs: model-and-effort-selection keeps the work-package record sentence dev-only ( #168 )
...
CI / verify (push) Successful in 5m10s
CI / pwsh (push) Successful in 1m59s
Files changed:
- docs/model-and-effort-selection.md
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
2026-10-02 20:46:04 +02:00
torben and Claude Opus 5.5
d8224ee2ab
feat: stack development in three phases - stack-dev (design), stack-build, stack-close, handed over through tracker states ( #168 )
...
CI / verify (push) Successful in 5m15s
CI / pwsh (push) Successful in 2m2s
Release / release (push) Successful in 34s
stack-build and stack-close carry disable-model-invocation, so each phase change is
the operator's slash command; no skill offers a mid-session /model or /effort switch.
Mode rules and the phase table move to instructions/dev/stack-mode.md, publish and CI
waiting to instructions/dev/publish-and-ci.md, the ready definition to issue-tracking.md.
Files changed:
- AGENTS.md
- CHANGES.md
- DEVELOPMENT.md
- README.md
- VERSION
- docs/model-and-effort-selection.md
- instructions/CONTRACT.md
- instructions/dev/commonplace-kb.md
- instructions/dev/dev-setup.md
- instructions/dev/doc-pull-through.md
- instructions/dev/issue-tracking.md
- instructions/dev/publish-and-ci.md
- instructions/dev/stack-build/SKILL.md
- instructions/dev/stack-close/SKILL.md
- instructions/dev/stack-dev/SKILL.md
- instructions/dev/stack-mode.md
- instructions/dev/testing-conventions.md
- instructions/dev/version-parts.md
- tools/chemenu/commands/git_publish.py
- tools/chemenu/tests/test_git_publish.py
- tools/chemenu/tests/test_instructions_cmd.py
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
2026-10-02 20:33:07 +02:00
torben and Claude Opus 5.5
80488bee38
fix: publish keeps a closing trailer block of --message last, so git reads Co-Authored-By again ( #149 )
...
CI / verify (push) Successful in 5m17s
CI / pwsh (push) Successful in 2m4s
Release / release (push) Successful in 36s
Files changed:
- CHANGES.md
- VERSION
- tools/CONTRACT.md
- tools/chemenu/commands/git_publish.py
- tools/chemenu/tests/test_git_publish.py
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
2026-10-02 16:39:08 +02:00
torben
c65d559690
ci: run the bugreport launcher tests in the pwsh job too ( #166 )
...
CI / verify (push) Successful in 5m12s
CI / pwsh (push) Successful in 2m7s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- .gitea/workflows/ci.yml
2026-10-02 13:58:05 +02:00
torben
5d937233b1
fix: tools/bugreport launcher finds a Python 3.8+ itself and never starts a Store alias ( #166 )
...
CI / verify (push) Successful in 5m20s
CI / pwsh (push) Successful in 1m53s
Release / release (push) Successful in 36s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- .gitea/workflows/ci.yml
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/bug-report.md
- tools/README.md
- tools/bugreport
- tools/bugreport.ps1
- tools/bugreport.py
- tools/chemenu/tests/test_bugreport_launcher.py
- tools/chemenu/tests/test_instructions_shell.py
- tools/chemenu/tests/test_portability.py
2026-10-02 13:12:19 +02:00
torben
c77bda2004
feat: INSTALL.md held to the installation instructions - prerequisites lists generated from the manifest, setup questions checked by docs verify ( #154 )
...
CI / verify (push) Successful in 5m20s
CI / pwsh (push) Successful in 1m53s
Release / release (push) Successful in 37s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/dev/doc-pull-through.md
- instructions/dev/stack-close/SKILL.md
- instructions/setup-instance.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/install_doc.py
- tools/chemenu/tests/test_install_doc.py
2026-10-02 07:47:39 +02:00
torben
b33088f64e
docs: ownership-and-templates names the release update, not a dist export merge, as what hands a stack file back ( #153 )
...
CI / verify (push) Successful in 5m17s
CI / pwsh (push) Successful in 1m54s
Files changed:
- docs/ownership-and-templates.md
2026-10-01 22:20:19 +02:00
torben
a6d07f97c4
feat!: installation only from a release, into an empty folder; upstream merge/verify and private-instance.md removed, dist adopt, shell-neutral instructions ( #153 )
...
CI / verify (push) Successful in 5m19s
CI / pwsh (push) Successful in 1m55s
Release / release (push) Successful in 36s
Files changed:
- .gitea/workflows/ci.yml
- .gitea/workflows/release.yml
- AGENTS.md
- CHANGES.md
- DEVELOPMENT.md
- EVALS.md
- INSTALL.md
- README.md
- VERSION
- docs/ownership-and-templates.md
- instructions/CONTRACT.md
- instructions/bootstrap.md
- instructions/dev/dev-setup.md
- instructions/dev/stack-dev/SKILL.md
- instructions/gates.md
- instructions/ingest-large-tree.md
- instructions/kb-profiles.md
- instructions/mcp-read-server.md
- instructions/migrations/3.0.0-authoring-conventions.md
- instructions/preflight.md
- instructions/private-instance.md
- instructions/session-setup.md
- instructions/setup-instance.md
- instructions/upgrade-instance.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/cli.py
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/dist_cmd.py
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/commands/doctor.py
- tools/chemenu/commands/git_publish.py
- tools/chemenu/commands/upstream_cmd.py
- tools/chemenu/commands/work_cmd.py
- tools/chemenu/config.py
- tools/chemenu/ownership.py
- tools/chemenu/tests/test_cli.py
- tools/chemenu/tests/test_dist_cmd.py
- tools/chemenu/tests/test_instructions_shell.py
- tools/chemenu/tests/test_preflight.py
- tools/chemenu/tests/test_preflight_pwsh.py
- tools/chemenu/tests/test_run_budget.py
- tools/chemenu/tests/test_upstream_cmd.py
- tools/chemenu/toc.py
- tools/preflight.ps1
- tools/preflight.sh
2026-10-01 22:12:09 +02:00
torben
d0f08d1fba
feat: Windows portability - path separators, LF line endings, UTF-8 decoding and output, msvcrt lock fallback ( #152 )
...
CI / verify (push) Successful in 2m42s
CI / pwsh (push) Successful in 1m55s
Release / release (push) Successful in 36s
Files changed:
- .gitattributes
- CHANGES.md
- VERSION
- raw/CONTRACT.md
- tools/README.md
- tools/chemenu/commands/_util.py
- tools/chemenu/commands/dist_cmd.py
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/commands/doctor.py
- tools/chemenu/commands/eval_cmd.py
- tools/chemenu/commands/git_publish.py
- tools/chemenu/commands/index_build.py
- tools/chemenu/commands/lint.py
- tools/chemenu/commands/log_append.py
- tools/chemenu/commands/migrate_cmd.py
- tools/chemenu/commands/provenance_cmd.py
- tools/chemenu/commands/raw_cmd.py
- tools/chemenu/commands/run_budget.py
- tools/chemenu/commands/upstream_cmd.py
- tools/chemenu/commands/version_cmd.py
- tools/chemenu/commands/work_cmd.py
- tools/chemenu/config.py
- tools/chemenu/corpus_cache.py
- tools/chemenu/filelock.py
- tools/chemenu/frontmatter_io.py
- tools/chemenu/kb_scan.py
- tools/chemenu/kb_state.py
- tools/chemenu/lint_core.py
- tools/chemenu/prerequisites.py
- tools/chemenu/provenance.py
- tools/chemenu/search/base.py
- tools/chemenu/search/ripgrep.py
- tools/chemenu/telemetry/writer.py
- tools/chemenu/tests/test_dist_cmd.py
- tools/chemenu/tests/test_portability.py
- tools/chemenu/tests/test_search.py
- tools/chemenu/tests/test_trace_ingest.py
- tools/chemenu/type_resolver.py
- tools/chemenu/upload.py
- tools/chemenu/version.py
- tools/run_wikitool.py
- tools/trace_ingest.py
2026-10-01 21:15:03 +02:00
torben
9d06050338
fix: trace-hook.ps1 - Copilot hooks under PowerShell on Windows no longer open the choose-an-app dialog ( #164 )
...
CI / verify (push) Successful in 2m26s
CI / pwsh (push) Successful in 1m53s
Release / release (push) Successful in 35s
Files changed:
- CHANGES.md
- EVALS.md
- VERSION
- tools/README.md
- tools/chemenu/tests/test_preflight.py
- tools/chemenu/tests/test_preflight_pwsh.py
- tools/trace-hook
- tools/trace-hook.ps1
2026-10-01 16:50:13 +02:00
torben
d6e973c3ce
fix: preflight.ps1 asset-mode helper renamed to Exit-Asset so PSScriptAnalyzer passes ( #151 , C)
...
CI / verify (push) Successful in 2m20s
CI / pwsh (push) Successful in 1m45s
Release / release (push) Successful in 34s
Files changed:
- CHANGES.md
- VERSION
- tools/preflight.ps1
2026-10-01 13:46:51 +02:00
torben
c33e8cdfb1
feat: preflight as a release asset - download, verify, unpack, then run the tree preflight ( #151 , C)
...
CI / verify (push) Successful in 2m26s
CI / pwsh (push) Failing after 11s
Release / release (push) Successful in 37s
Files changed:
- .gitea/workflows/release.yml
- CHANGES.md
- INSTALL.md
- README.md
- VERSION
- instructions/dev/testing-conventions.md
- instructions/preflight.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/tests/test_preflight.py
- tools/chemenu/tests/test_preflight_pwsh.py
- tools/preflight.ps1
- tools/preflight.sh
2026-10-01 13:39:56 +02:00
torben
210e0c8286
feat: PowerShell 7 preflight and launcher - preflight.ps1, wikitool.ps1, doctor policy and Mark of the Web checks, pwsh CI job ( #151 , B)
...
CI / verify (push) Successful in 2m16s
CI / pwsh (push) Successful in 1m24s
Release / release (push) Successful in 37s
Files changed:
- .gitea/workflows/ci.yml
- CHANGES.md
- INSTALL.md
- README.md
- VERSION
- docs/why-gates-are-code.md
- instructions/bootstrap.md
- instructions/bug-report.md
- instructions/preflight.md
- instructions/setup-instance.md
- instructions/upgrade-instance.md
- tools/CONTRACT.md
- tools/README.md
- tools/bugreport.py
- tools/chemenu/cli.py
- tools/chemenu/commands/dist_cmd.py
- tools/chemenu/commands/doctor.py
- tools/chemenu/prerequisites.py
- tools/chemenu/tests/conftest.py
- tools/chemenu/tests/test_bugreport.py
- tools/chemenu/tests/test_doctor.py
- tools/chemenu/tests/test_preflight.py
- tools/chemenu/tests/test_preflight_pwsh.py
- tools/chemenu/toolpaths.py
- tools/preflight.ps1
- tools/wikitool
- tools/wikitool.ps1
2026-10-01 09:52:05 +02:00
torben
4035b1ba12
ci: chemenu-ci-pwsh image - PowerShell 7 and PSScriptAnalyzer for the pwsh job ( #151 )
...
CI / verify (push) Successful in 2m10s
pwsh CI image / build-and-push (push) Successful in 1m47s
Files changed:
- .gitea/pwsh-ci/Dockerfile
- .gitea/workflows/pwsh-ci-image.yml
2026-10-01 08:17:44 +02:00
torben
8dae8a1790
docs: why-gates-are-code names the preflight as the second exit-42 case outside the gates ( #151 )
...
CI / verify (push) Successful in 2m12s
Files changed:
- docs/why-gates-are-code.md
2026-10-01 07:30:02 +02:00
torben
e4b2b6d9b1
feat: preflight - prerequisites checked and tool paths recorded before wikitool runs; launcher refuses without it ( #151 , POSIX half)
...
CI / verify (push) Successful in 2m18s
Release / release (push) Successful in 36s
Files changed:
- .claude/settings.json
- .gitea/workflows/ci.yml
- .gitea/workflows/nightly.yml
- .gitea/workflows/release.yml
- .gitea/workflows/tracker-live.yml
- .github/hooks/wiki-trace.json
- .gitignore
- .vibe/hooks.toml
- AGENTS.md
- CHANGES.md
- EVALS.md
- INSTALL.md
- README.md
- VERSION
- instructions/bootstrap.md
- instructions/preflight.md
- instructions/setup-instance.md
- instructions/upgrade-instance.md
- tools/CONTRACT.md
- tools/README.md
- tools/chemenu/cli.py
- tools/chemenu/commands/dist_cmd.py
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/commands/doctor.py
- tools/chemenu/commands/git_publish.py
- tools/chemenu/commands/migrate_cmd.py
- tools/chemenu/config.py
- tools/chemenu/corpus_cache.py
- tools/chemenu/prerequisites.py
- tools/chemenu/search/ripgrep.py
- tools/chemenu/tests/conftest.py
- tools/chemenu/tests/test_dist_upgrade.py
- tools/chemenu/tests/test_doctor.py
- tools/chemenu/tests/test_preflight.py
- tools/chemenu/toolpaths.py
- tools/preflight.sh
- tools/prerequisites.txt
- tools/run_wikitool.py
- tools/trace-hook
- tools/wikitool
2026-10-01 05:52:55 +02:00
torben
5a731729f6
docs: raw/CONTRACT.md points at the path budget for a name accepted from incoming/ ( #163 )
...
CI / verify (push) Successful in 2m12s
Release / release (push) Successful in 39s
Files changed:
- CHANGES.md
- VERSION
- raw/CONTRACT.md
2026-09-30 23:10:04 +02:00
torben
04aebdeccf
feat: path budget - a file's path stays at 160 characters or fewer; new, rename, move and raw accept refuse more, lint reports Long Paths ( #163 )
...
CI / verify (push) Successful in 2m9s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- README.md
- VERSION
- instructions/page-lifecycle.md
- kb/CONTRACT.md
- tools/CONTRACT.md
- tools/chemenu/commands/_util.py
- tools/chemenu/commands/lint.py
- tools/chemenu/commands/new_page.py
- tools/chemenu/commands/page_ops.py
- tools/chemenu/commands/raw_cmd.py
- tools/chemenu/lint_core.py
- tools/chemenu/tests/test_lint.py
- tools/chemenu/tests/test_new_page.py
- tools/chemenu/tests/test_page_ops.py
- tools/chemenu/tests/test_raw_cmd.py
- tools/chemenu/tests/test_titles.py
- tools/chemenu/titles.py
2026-09-30 23:08:36 +02:00
torben
03743ebbc0
docs: setup-instance step 15 names --no-push for a local-only first publish; gates.md and a docstring follow #159
...
CI / verify (push) Successful in 2m5s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- VERSION
- instructions/gates.md
- instructions/setup-instance.md
- tools/chemenu/commands/git_publish.py
2026-09-30 21:10:04 +02:00
torben
61130ce55d
docs: README names the publish stop on a missing or unreachable remote ( #159 )
...
CI / verify (push) Successful in 2m6s
Files changed:
- README.md
2026-09-30 20:51:38 +02:00
torben
eadc052f6c
feat: publish gate lists the staged state; a missing or unreachable remote stops before the commit ( #159 )
...
CI / verify (push) Successful in 2m11s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/publish-cycle.md
- instructions/setup-instance.md
- tools/CONTRACT.md
- tools/chemenu/commands/git_publish.py
- tools/chemenu/tests/test_git_publish.py
2026-09-30 20:51:10 +02:00
torben
08dde007dd
docs: bug-report instruction step 1 no longer calls every bundle unpseudonymised ( #158 )
...
CI / verify (push) Successful in 2m13s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- VERSION
- instructions/bug-report.md
2026-09-30 20:16:53 +02:00
torben
76d67e45ba
feat: bug-report collector pseudonymises identities in two stages, opt-in via --pseudonymise ( #158 )
...
CI / verify (push) Successful in 2m5s
Release / release (push) Successful in 39s
Files changed:
- .gitea/workflows/ci.yml
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/bug-report.md
- reports/CONTRACT.md
- tools/README.md
- tools/bugreport.py
- tools/chemenu/tests/test_bugreport.py
2026-09-30 19:03:59 +02:00
torben
0899c670fe
docs: reports contract names only the collector's two counting calls under its session id; INSTALL.md qualifies the title claim ( #157 )
...
CI / verify (push) Successful in 2m1s
Release / release (push) Successful in 37s
Files changed:
- CHANGES.md
- INSTALL.md
- VERSION
- reports/CONTRACT.md
2026-09-30 17:43:13 +02:00
torben
4f0622dfa4
docs: bug-report instruction offers WIKI_TRACE=1 for a reproduction ( #157 )
...
CI / verify (push) Successful in 2m1s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- VERSION
- instructions/bug-report.md
2026-09-30 17:30:11 +02:00
torben
f9c047bd2e
feat: bug-report collector tools/bugreport.py and instructions/bug-report.md ( #157 )
...
CI / verify (push) Successful in 2m11s
Release / release (push) Successful in 38s
Files changed:
- .gitea/workflows/ci.yml
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/bug-report.md
- instructions/gates.md
- instructions/setup-instance.md
- instructions/upgrade-instance.md
- reports/CONTRACT.md
- tools/README.md
- tools/bugreport.py
- tools/chemenu/tests/test_bugreport.py
2026-09-30 17:29:39 +02:00
torben
40413f966d
fix: demo corpus follows the decided project pages - three states, seed with their items, fixtures re-recorded ( #156 )
...
CI / verify (push) Successful in 1m53s
Release / release (push) Successful in 36s
Files changed:
- CHANGES.md
- VERSION
- instructions/dev/tracker-testing.md
- kb/gtd/INDEX.md
- kb/gtd/technik/Aufgabenverwaltung mit Tracker-Anbindung.md
- kb/gtd/technik/Chemenu 8.0.0 - Installation und Windows.md
- kb/gtd/technik/Chemenu 8.0.0 freigeben.md
- kb/gtd/technik/Reproduktionslauf des Korpus.md
- kb/gtd/technik/Windows nativ unterstützen.md
- kb/index.md
- kb/log.md
- tools/chemenu/tests/fixtures/sp/MANIFEST.json
- tools/chemenu/tests/fixtures/sp/api/projects.json
- tools/chemenu/tests/fixtures/sp/api/tags.json
- tools/chemenu/tests/fixtures/sp/api/tasks.json
- tools/chemenu/tests/fixtures/sp/seed-backup.json
- tools/chemenu/tests/test_sp_recorded.py
2026-09-30 14:39:32 +02:00
torben
dea98d4bc0
docs(ci): tracker-live records that act_runner force-pulls the job image anonymously ( #156 )
...
CI / verify (push) Successful in 1m54s
Files changed:
- .gitea/workflows/tracker-live.yml
2026-09-30 13:53:51 +02:00
torben
5a4c5182b7
fix(ci): start Radicale in its own step - GITHUB_ENV reaches only later steps ( #156 )
...
CI / verify (push) Successful in 1m56s
Files changed:
- .gitea/scripts/start-radicale.sh
- .gitea/workflows/ci.yml
2026-09-30 13:37:25 +02:00
torben
6554791699
fix(ci): sp-live-image installs unzip - 1password/load-secrets-action needs it ( #156 )
...
CI / verify (push) Failing after 1m32s
Files changed:
- .gitea/workflows/sp-live-image.yml
2026-09-30 13:32:24 +02:00
torben
a12673452d
fix(ci): start-radicale.sh probes readiness with Python - the CI job image has no curl ( #156 )
...
CI / verify (push) Failing after 1m31s
Files changed:
- .gitea/scripts/start-radicale.sh
2026-09-30 13:31:20 +02:00
torben
b0c64772cc
feat: live tracker suite - WIKITOOL_TASKS_CONFIG override, real-tracker tests for Super Productivity and CalDAV, nightly workflow and test image ( #156 )
...
CI / verify (push) Failing after 2m1s
Release / release (push) Successful in 38s
Files changed:
- .gitea/scripts/start-radicale.sh
- .gitea/sp-live/Dockerfile
- .gitea/sp-live/resolve-version.sh
- .gitea/workflows/ci.yml
- .gitea/workflows/sp-live-image.yml
- .gitea/workflows/tracker-live.yml
- .gitignore
- CHANGES.md
- DEVELOPMENT.md
- INSTALL.md
- VERSION
- instructions/dev/doc-pull-through.md
- instructions/dev/stack-dev/SKILL.md
- instructions/dev/testing-conventions.md
- instructions/dev/tracker-testing.md
- kb/gtd/INDEX.md
- kb/gtd/technik/Chemenu 8.0.0 freigeben.md
- kb/gtd/technik/Windows nativ unterstützen.md
- kb/index.md
- tools/CONTRACT.md
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/commands/doctor.py
- tools/chemenu/commands/review_cmd.py
- tools/chemenu/commands/task_cmd.py
- tools/chemenu/config.py
- tools/chemenu/tasks/config.py
- tools/chemenu/tests/conftest.py
- tools/chemenu/tests/fixtures/sp/MANIFEST.json
- tools/chemenu/tests/fixtures/sp/api/health.json
- tools/chemenu/tests/fixtures/sp/api/projects.json
- tools/chemenu/tests/fixtures/sp/api/tags.json
- tools/chemenu/tests/fixtures/sp/api/tasks.json
- tools/chemenu/tests/fixtures/sp/seed-backup.json
- tools/chemenu/tests/record_sp_fixtures.py
- tools/chemenu/tests/sp_headless.py
- tools/chemenu/tests/test_doctor.py
- tools/chemenu/tests/test_review.py
- tools/chemenu/tests/test_sp_recorded.py
- tools/chemenu/tests/test_task_cmd.py
- tools/chemenu/tests/test_tasks_config.py
- tools/chemenu/tests/test_tracker_live.py
- tools/chemenu/tests/tracker_live.py
- tools/pytest.ini
2026-09-30 13:23:24 +02:00
torben
529793b255
fix: Super Productivity API path unwraps the {ok, data} envelope, drops the inbox project, health waits for the renderer ( #162 )
...
CI / verify (push) Successful in 1m40s
Release / release (push) Successful in 37s
Files changed:
- CHANGES.md
- VERSION
- tools/CONTRACT.md
- tools/chemenu/commands/doctor.py
- tools/chemenu/tasks/superproductivity.py
- tools/chemenu/tests/test_new_page.py
- tools/chemenu/tests/test_superproductivity.py
- tools/chemenu/tests/test_task_cmd.py
2026-09-30 12:17:39 +02:00
torben
8be5e6e5f3
feat: page titles must be valid, unique file names on Windows and macOS - new/rename/move refuse, lint reports Unportable Titles, new never overwrites ( #155 )
...
CI / verify (push) Successful in 1m37s
Release / release (push) Successful in 37s
Files changed:
- CHANGES.md
- README.md
- VERSION
- instructions/page-lifecycle.md
- instructions/wiki-lint/SKILL.md
- kb/CONTRACT.md
- kb/CONVENTIONS.md
- kb/CONVENTIONS.md.template
- tools/CONTRACT.md
- tools/chemenu/commands/_util.py
- tools/chemenu/commands/lint.py
- tools/chemenu/commands/new_page.py
- tools/chemenu/commands/page_ops.py
- tools/chemenu/lint_core.py
- tools/chemenu/tests/test_lint.py
- tools/chemenu/tests/test_new_page.py
- tools/chemenu/tests/test_page_ops.py
- tools/chemenu/tests/test_titles.py
- tools/chemenu/titles.py
2026-09-30 06:29:28 +02:00
torben
94deccb18d
docs: EVALS coverage note - version.py's urllib lines are now exercised against a local http.server ( #161 )
...
CI / verify (push) Successful in 1m46s
Files changed:
- EVALS.md
2026-09-29 22:09:43 +02:00
torben
cf892315e6
feat: dist upgrade --latest downloads and verifies the release from the feed, --expect pins the version ( #161 )
...
CI / verify (push) Successful in 1m42s
Release / release (push) Successful in 38s
Files changed:
- CHANGES.md
- INSTALL.md
- VERSION
- instructions/upgrade-instance.md
- tools/CONTRACT.md
- tools/chemenu/commands/dist_cmd.py
- tools/chemenu/commands/version_cmd.py
- tools/chemenu/tests/test_cli.py
- tools/chemenu/tests/test_dist_upgrade.py
- tools/chemenu/version.py
2026-09-29 22:08:00 +02:00
torben
dd885db625
docs: layout comments name all four shipped layout types; #150 changelog pointer and test docstring corrected
...
CI / verify (push) Successful in 1m39s
Release / release (push) Successful in 37s
Files changed:
- CHANGES.md
- VERSION
- tools/chemenu/commands/new_page.py
- tools/chemenu/tests/test_new_page.py
- tools/chemenu/type_resolver.py
2026-09-26 23:05:47 +02:00
torben and Claude Sonnet 5
6c0ebcc4f0
fix: cli.py help-patch NameError under a future typer, new record's kb/ paths ( #148 , #150 )
...
CI / verify (push) Successful in 1m46s
Release / release (push) Successful in 38s
cli.py's typer._click.core.format_help patch was applied a second time
outside the try/except that exists to let a future typer without
typer._click degrade to plain Click help instead of crashing on import.
That second, unconditional line referenced two names the failed import
never defines, so the exact case the fallback exists for raised
NameError on every invocation instead. Removed; a subprocess test with
a targeted import hook (not sys.modules poisoning, which breaks typer
itself, and not importlib.reload, which would stay green against the
bug) pins that the fallback now actually falls back.
The new command's cli_contract record promised kb/concepts/<Name>.md
and kb/sources/Source - <Name>.md - both types have since grown a
layout: that files a page under a subtype-computed subdirectory, the
same rule an entity or a project already follows. Notes for concept
and source now name the subdirectory and where it comes from;
comparison was checked against its type-spec and left alone. Also
found and fixed: new source's example line omitted source_type,
fidelity and authority, so it could never succeed as written. A new
test reads each variant's note out of the record and checks the
written path against the pattern it promises, instead of against a
path re-typed into the test - which is what let the existing per-type
path tests stay green through this exact drift.
tools/CONTRACT.md regenerated via `wikitool docs contract --apply`;
pytest (1550), docs verify and instructions verify all green.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
2026-09-26 23:02:11 +02:00
torben
b8ed8bd610
fix: kb page references by title, not by moved path; Iteration and Cost Limits cites existing sections ( #147 follow-up)
...
CI / verify (push) Successful in 1m46s
Release / release (push) Successful in 37s
gates.md named kb/concepts/<Title>.md for two pages that live under
kb/concepts/workflows/; run_budget.py carried the same stale path. The
concept page pointed at AGENTS.md sections that do not exist, the same
defect #147 fixed in the refusal messages.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- CHANGES.md
- VERSION
- instructions/gates.md
- kb/concepts/INDEX.md
- kb/concepts/workflows/Iteration and Cost Limits.md
- kb/index.md
- kb/log.md
- tools/chemenu/commands/run_budget.py
2026-09-26 22:31:18 +02:00
torben
bc314e5c8c
fix: budget gate and loop-breaker refusals exit without a traceback (Gitea #147 )
...
CI / verify (push) Successful in 1m47s
Release / release (push) Successful in 39s
Files changed:
- CHANGES.md
- VERSION
- tools/chemenu/cli.py
- tools/chemenu/commands/run_budget.py
- tools/chemenu/tests/test_run_budget.py
2026-09-26 20:27:05 +02:00
torben
8f61209b6b
test: docs contract merged-stream test pins its own ON FAILURE line ( #146 )
...
CI / verify (push) Successful in 1m10s
Release / release (push) Successful in 35s
The comparison against render_failure_hint() alone passed unchanged if the
record lost its exit-1 cause, since both sides fell back to the same see: line.
CHANGES prose for 8d5fc6e corrected: three mismatches plus one #142 correction.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- CHANGES.md
- VERSION
- tools/chemenu/tests/test_cli.py
2026-09-26 18:50:01 +02:00
torben
8d5fc6e941
fix: three more #142 command-record mismatches aligned to code ( #146 )
...
CI / verify (push) Successful in 1m10s
Release / release (push) Successful in 36s
Files changed:
- CHANGES.md
- VERSION
- kb/CONTRACT.md
- tools/CONTRACT.md
- tools/chemenu/commands/docs_verify.py
- tools/chemenu/commands/git_publish.py
- tools/chemenu/commands/lint.py
- tools/chemenu/commands/xref.py
- tools/chemenu/tests/test_cli.py
2026-09-26 18:06:34 +02:00
torben
20745399c0
docs: CHANGES entry for #145 in English, like the rest of the candidate
...
CI / verify (push) Successful in 1m14s
Files changed:
- CHANGES.md
2026-09-26 16:24:50 +02:00
torben
a70d904274
fix: log append reports an unreadable --body-file as ERROR, not a traceback ( #145 )
...
CI / verify (push) Successful in 1m10s
Release / release (push) Successful in 35s
Files changed:
- CHANGES.md
- VERSION
- tools/CONTRACT.md
- tools/chemenu/commands/log_append.py
- tools/chemenu/tests/test_log_append.py
2026-09-26 16:03:44 +02:00
torben
685fc2e15e
docs: CHANGES entry for #144 in English, heading matches its bump title
...
CI / verify (push) Successful in 1m13s
Files changed:
- CHANGES.md
2026-09-26 15:49:23 +02:00
torben
906d63fae2
fix: network property means any network reach, not only HTTP ( #144 )
...
CI / verify (push) Successful in 1m13s
Release / release (push) Successful in 35s
Files changed:
- CHANGES.md
- VERSION
- tools/CONTRACT.md
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/git_publish.py
- tools/chemenu/commands/upstream_cmd.py
- tools/chemenu/commands/version_cmd.py
- tools/chemenu/tests/test_cli.py
- tools/chemenu/version.py
2026-09-26 15:19:58 +02:00
torben
16c911fca5
docs: README names the ON FAILURE lines under an ERROR ( #143 )
...
CI / verify (push) Successful in 1m13s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- README.md
2026-09-26 15:01:16 +02:00
torben
63f566ff05
tools: fail() prints ON FAILURE lines on stderr after ERROR ( #143 )
...
CI / verify (push) Successful in 1m15s
Release / release (push) Successful in 37s
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
Files changed:
- AGENTS.md
- CHANGES.md
- VERSION
- tools/CONTRACT.md
- tools/chemenu/cli.py
- tools/chemenu/cli_contract.py
- tools/chemenu/commands/_util.py
- tools/chemenu/tests/test_cli.py
- tools/chemenu/tests/test_cli_contract.py
- tools/chemenu/tests/test_util.py
2026-09-26 14:53:51 +02:00
torben
5fe6003929
docs: README names examples, exit causes and prohibitions in the command record ( #142 )
...
CI / verify (push) Successful in 1m9s
Files changed:
- README.md
2026-09-26 09:34:22 +02:00