Backlog#

Iteration +1#

  • Refinement: HTTP caching and http_cache.sqlite

    • Docs: Educate about it

    • Possibly add CLI option to purge the cache

    • Relocate cache file to user cache directory

  • Docs: Advise about running on CI

    • GH tokens

    • Persist cache file http_cache.sqlite across invocations

  • Can it work together with gh auth login --with-token?

  • Bugfixing and refactoring: Aika and Pueblo

  • Absorb Manticore extensions as CLI utilities tech-writing/manticore-ext

Iteration +2#

  • Notify/Preamble: Include link to Slack channel, not just the ID

  • Options: Program currently understands --slack-token=, but lacks --github-token=

  • Configuration: Per [tool] section in pyproject.toml

  • General: Summaries, using the excellent llm package

  • GitHub/Bugs: Add labels blocked, blocked-by XXX, impediment

  • GitHub: Search items in specific columns (e.g. Blocked By) of specific boards

  • GitHub: Search items with significant amounts of reactions

  • GitHub: Search items with significant (amount or length of) comments

  • GitHub: Search items with significant (amount or length of) inbound links Example: crate/crate#10063

  • GitHub: Search items with EPIC or other keywords in its titles

  • GitHub: Search items with people assignments

  • GitHub/API: On errors, the JSON response includes the reason as an error message. However, it isn’t displayed, yet.

  • GitHub: Report about stale issues

  • Options: Make limit=100 configurable? Is paging needed?

  • github-backup can do “Exceeded rate limit of 5000 requests; waiting 77 seconds to reset”. Do we also need it?

  • UI/Console: Spice up Markdown output using rich and friends

  • Changes: sbstjn/timesheet.js

Iteration +3#

  • Data: Identify items with high conversation activity (comment frequency, etc.)

  • Report: Consider more attributes for “top changes”: body, created_at, closed_at, gravity (number of inbound links).

  • Backend: Add GitHub API authentication, to be able to include contributions to private repositories.

  • Report: Wide vs. compressed reports, e.g. using link labels like [#] (issues) and [P], per enumerated repository, referencing activity within the corresponding time range.

  • Report: Make configurable if Rapporto shall only return a share of top changes, or each one. Currently, the default is 2/5, but 1/3 is also reasonable.

  • slackapi/python-slack-events-api

  • dizzbot/productivity

  • Markdown rendering with nested offsets: executablebooks/MyST-Parser

  • Bring back mrkdwn?

    Slack flavored Markdown

    The program can output two flavors of Markdown. Standard Markdown is default, while the Slack mrkdwn format can be produced using the --format=mrkdwn command-line option. Rapporto uses the markdown-to-mrkdwn package here.

  • UI/Slack: https://api.slack.com/messaging/files

  • UI/Slack: chat_scheduleMessage

Done#

  • Make it work.

  • PPP: Add “top changes” feature.

  • QA: Harvest GitHub Actions outcomes.

  • Make it a real Python package

  • Add CI checks

  • Absorb WalBeh/slack-thread-exporter by @WalBeh

  • Documentation: Baseline

  • Added basic

  • Options: Make options optional, to report about the complete corpus

  • Publish package to PyPI

  • Report: On the CI report, render sections only conditionally

  • GitHub/CI: Can the retrieval process be optimized, not needing to iterate repositories manually? No: The GitHub API is per-repository.

  • Report: On HTML links, always include the org name as prefix

  • GitHub/Bugs: Add stale label

  • GitHub/Bugs: More flexible processing of “labels” vs. “sections”, i.e. improve grouping code, making it more maintainable.

  • GitHub/Bugs: Add label type: Bug

  • Documentation: Include breadcrumbs into static docs, not just README

  • Opsgenie: Add subsystem

  • Refactoring: Spread GitHub modules along the feature axis

  • GitHub: Export conversations per GitHub Backup

  • Options: Parse time intervals using aika

  • Slack: Support for mrkdwn output

  • GitHub: Process created + updated, not just created

  • Shell ‘25: Introduce daily and weekly operation modes / interfaces

  • Docs: Generic page about --when option

  • Naming things: source vs. sink vs. Slack CLI domains

  • Project layout and docs: Bring up to speed

  • Docs: Caveats / Philosophy

  • UI/Slack: Improve zapping

  • GitHub/Actions: Currently lacks parameter --when

  • GitHub/Activity: Section about “Top issues”

  • Shell/Daily: Interleave CI reports

  • GitHub/Activity: Permit running on multiple organizations

  • rapporto report without --github-repository should iterate all repositories

  • Absorb PyGource. cicerops/pygource

  • Docs: Sandbox

  • Animate: Disable tests by default

  • Shell/Notify: Split root message into root+preamble