Skip to content

Keep picks in the page address and add a copyable release post - #13

Merged
lesnik512 merged 1 commit into
mainfrom
share-picks
Oct 9, 2026
Merged

lesnik512 merged 1 commit into
mainfrom
share-picks

Conversation

@lesnik512

Copy link
Copy Markdown
Member

What

  • The site keeps the picked tags in the address after #, as team/api=2.4.0&team/web=5.12.0. A reload or a shared link restores them. Editing the hash in an open tab applies it too.
  • Release gets a Release post box with a copy button. It holds one Markdown text: a line per picked tag with its compare link and pipeline, then the deduplicated Jira tasks with summaries.

Decisions

  • When the hash is present, it holds the whole selection. A service it does not name has no pick, even if the report has a release tag for it, so a shared link shows the same picks to everyone who opens it.
  • Picks that are no longer in the report, such as a tag dropped by a later scheduled run or an unknown service, are skipped. A warning names them.
  • history.replaceState writes the hash, so picking adds no history entries and fires no hashchange.
  • Clearing every pick empties the hash. A plain # can't be told apart from no hash, so on reload the page falls back to the release tags. I accepted this edge case rather than add a sentinel value.
  • / stays readable in the hash; everything else in project paths and tag names is percent-encoded.
  • The post reuses the data behind the existing lists. Summaries are not Markdown-escaped, same as the task list.

Checks

  • just lint and just test-ci pass: 109 tests, 100% coverage. The page has no automated tests.
  • Checked by hand in a browser against sample and --jira reports:
    • a link with a valid pick, a stale tag, and an unknown service;
    • clicking pick updates the hash and closes the line;
    • hashchange in an open tab;
    • the /index.html path;
    • clearing every pick;
    • the --jira default pick written into the hash;
    • the release post output.

@lesnik512
lesnik512 merged commit 8666e9c into main Oct 9, 2026
12 checks passed
@lesnik512
lesnik512 deleted the share-picks branch October 9, 2026 14:27
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