fix(version): replace hardcoded v3.0.0 with dynamic _skill_version()
render.py, ui.py, and last30days.py had hardcoded "v3.0.0" in titles and headers while plugin.json was at 3.1.1. Use _skill_version() (reads from plugin.json at runtime) so version strings stay in sync. Fixes #284
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# ruff: noqa: E402
|
# ruff: noqa: E402
|
||||||
"""last30days v3.0.0 CLI."""
|
"""last30days CLI."""
|
||||||
|
|
||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ def render_compact(report: schema.Report, cluster_limit: int = 8, fun_level: str
|
|||||||
non_empty = [s for s, items in sorted(report.items_by_source.items()) if items]
|
non_empty = [s for s, items in sorted(report.items_by_source.items()) if items]
|
||||||
lines = [
|
lines = [
|
||||||
*_render_badge(),
|
*_render_badge(),
|
||||||
f"# last30days v3.0.0: {report.topic}",
|
f"# last30days v{_skill_version()}: {report.topic}",
|
||||||
"",
|
"",
|
||||||
*_assistant_safety_lines(),
|
*_assistant_safety_lines(),
|
||||||
f"- Date range: {report.range_from} to {report.range_to}",
|
f"- Date range: {report.range_from} to {report.range_to}",
|
||||||
@@ -602,7 +602,7 @@ def render_comparison_multi(
|
|||||||
|
|
||||||
lines: list[str] = [
|
lines: list[str] = [
|
||||||
*_render_badge(),
|
*_render_badge(),
|
||||||
f"# last30days v3.0.0: {synthesized_topic}",
|
f"# last30days v{_skill_version()}: {synthesized_topic}",
|
||||||
"",
|
"",
|
||||||
*_assistant_safety_lines(),
|
*_assistant_safety_lines(),
|
||||||
f"- Comparison mode: {len(entities)} entities ({', '.join(entities)})",
|
f"- Comparison mode: {len(entities)} entities ({', '.join(entities)})",
|
||||||
@@ -790,7 +790,7 @@ def render_full(report: schema.Report) -> str:
|
|||||||
# Start with the same header as compact
|
# Start with the same header as compact
|
||||||
non_empty = [s for s, items in sorted(report.items_by_source.items()) if items]
|
non_empty = [s for s, items in sorted(report.items_by_source.items()) if items]
|
||||||
lines = [
|
lines = [
|
||||||
f"# last30days v3.0.0: {report.topic}",
|
f"# last30days v{_skill_version()}: {report.topic}",
|
||||||
"",
|
"",
|
||||||
*_assistant_safety_lines(),
|
*_assistant_safety_lines(),
|
||||||
f"- Date range: {report.range_from} to {report.range_to}",
|
f"- Date range: {report.range_from} to {report.range_to}",
|
||||||
|
|||||||
@@ -6,6 +6,8 @@ import threading
|
|||||||
import random
|
import random
|
||||||
from typing import Optional
|
from typing import Optional
|
||||||
|
|
||||||
|
from .render import _skill_version
|
||||||
|
|
||||||
# Check if we're in a real terminal (not captured by Claude Code)
|
# Check if we're in a real terminal (not captured by Claude Code)
|
||||||
IS_TTY = sys.stderr.isatty()
|
IS_TTY = sys.stderr.isatty()
|
||||||
|
|
||||||
@@ -509,7 +511,8 @@ def show_diagnostic_banner(diag: dict):
|
|||||||
|
|
||||||
if IS_TTY:
|
if IS_TTY:
|
||||||
lines.append(f"{Colors.DIM}┌─────────────────────────────────────────────────────┐{Colors.RESET}")
|
lines.append(f"{Colors.DIM}┌─────────────────────────────────────────────────────┐{Colors.RESET}")
|
||||||
lines.append(f"{Colors.DIM}│{Colors.RESET} {Colors.BOLD}/last30days v3.0.0 - Source Status{Colors.RESET} {Colors.DIM}│{Colors.RESET}")
|
_header = f"/last30days v{_skill_version()} - Source Status"
|
||||||
|
lines.append(f"{Colors.DIM}│{Colors.RESET} {Colors.BOLD}{_header}{Colors.RESET}{' ' * (52 - len(_header))}{Colors.DIM}│{Colors.RESET}")
|
||||||
lines.append(f"{Colors.DIM}│{Colors.RESET} {Colors.DIM}│{Colors.RESET}")
|
lines.append(f"{Colors.DIM}│{Colors.RESET} {Colors.DIM}│{Colors.RESET}")
|
||||||
|
|
||||||
# Reddit
|
# Reddit
|
||||||
@@ -556,7 +559,8 @@ def show_diagnostic_banner(diag: dict):
|
|||||||
else:
|
else:
|
||||||
# Plain text for non-TTY (Claude Code / Codex)
|
# Plain text for non-TTY (Claude Code / Codex)
|
||||||
lines.append("┌─────────────────────────────────────────────────────┐")
|
lines.append("┌─────────────────────────────────────────────────────┐")
|
||||||
lines.append("│ /last30days v3.0.0 - Source Status │")
|
_header_plain = f"/last30days v{_skill_version()} - Source Status"
|
||||||
|
lines.append(f"│ {_header_plain}{' ' * (52 - len(_header_plain))}│")
|
||||||
lines.append("│ │")
|
lines.append("│ │")
|
||||||
|
|
||||||
if has_reddit and has_scrapecreators:
|
if has_reddit and has_scrapecreators:
|
||||||
|
|||||||
Reference in New Issue
Block a user