Skip to content

Fix Python 3.8 compat, journal path, BACKLOG status - #1

Merged
sukria merged 5 commits into
mainfrom
koan/housekeeping
Feb 1, 2026
Merged

sukria merged 5 commits into
mainfrom
koan/housekeeping

Conversation

@sukria

@sukria sukria commented Feb 1, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Fix Python 3.10+ syntax in awake.py (str | NoneOptional[str] via typing imports)
  • Fix journal path in handle_chat (flat → nested per-project structure)
  • Update BACKLOG.md checkboxes to reflect completed work

Test plan

  • Verify make awake starts without syntax errors on Python 3.8+
  • Verify chat messages write journal to correct nested path

🤖 Generated with Claude Code

Alexis Sukrieh and others added 5 commits February 1, 2026 08:44
- Add "Console verbosity" section: Kōan must announce actions with echo
- Make journal→outbox messages CRITICAL and NON-OPTIONAL
- Ensure every journal entry generates an outbox message
- Fixes: console visibility during make run, missing kōan notifications

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Enforces two critical improvements to Kōan's behavior:
1. Console verbosity: announces actions via echo for real-time visibility
2. Mandatory outbox messages: every journal entry must generate an outbox notification

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Display first 150 chars of sent messages instead of just "Outbox flushed."
Helps track what messages are being sent to Telegram in real-time.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Improves visibility by showing message previews when awake flushes outbox.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Replace Python 3.10+ syntax (str | None) with typing imports for 3.8+ compat
- Fix handle_chat journal loading: support nested journal/YYYY-MM-DD/*.md structure
- Mark US 2.1 and 2.2 as done in BACKLOG.md (multi-project support completed)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@sukria
sukria merged commit a0788c5 into main Feb 1, 2026
@sukria
sukria deleted the koan/housekeeping branch February 1, 2026 14:58
Koan-Bot pushed a commit that referenced this pull request Sep 9, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 9, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Master-Koan pushed a commit that referenced this pull request Sep 9, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Master-Koan pushed a commit that referenced this pull request Sep 9, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 10, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 10, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 10, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 10, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Master-Koan pushed a commit that referenced this pull request Sep 11, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Master-Koan pushed a commit that referenced this pull request Sep 11, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 12, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 12, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 13, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 13, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 15, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 15, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Koan-Bot pushed a commit that referenced this pull request Sep 17, 2026
flatten_github_markdown_for_jira rewrote <details>/<summary> on every
line, so a plan posting that markup *as* a code example had it mangled
into **x**body before markdown_to_adf saw the fence — corrupting the
content on the path this branch is meant to make reliable.

Track fenced-code state the way _flatten_github_alerts already does, and
only flatten the wrapper outside fences (review #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 93e7b5c)
Koan-Bot pushed a commit that referenced this pull request Sep 17, 2026
fetch_jira_issue treated a failed comment page as the end of the list,
so a transient API error returned a truncated set that looks complete.
/implement locates the plan in those comments — including the multipart
parts this branch introduces — so a short read sends it back to stale
issue-body content while believing it saw everything.

Raise the way a failed issue GET already does (review, silent-failure
analysis #1).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
(cherry picked from commit 6542d64)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant