diff --git a/AGENTS.md b/AGENTS.md index 044211f..d489f2e 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -193,5 +193,5 @@ Use these rules to avoid common automation mistakes: - Do not mix action tags in one workflow update. - Do not assume a release workflow will run from a tag push in all environments; reusable workflow call paths are supported. - Do not treat `VOCIFERATE_REPOSITORY_URL` as a full repository URL; it must be a base URL. -- Keep displayed URLs protocol-relative (`//`) when writing markdown/browser-facing outputs. +- Always use explicit `https://` protocol in displayed URLs; never use protocol-relative `//` prefixes. - If a workflow environment does not support `GITHUB_STEP_SUMMARY`, append markdown to a file and print it in a final `Summary` step. diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f391be..9d96069 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,8 +2,8 @@ All notable changes to this project will be documented in this file. -The format is based on [Keep a Changelog](//keepachangelog.com/en/1.1.0/), -and this project adheres to [Semantic Versioning](//semver.org/spec/v2.0.0.html). +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). A `### Breaking` section is used in addition to Keep a Changelog's standard sections to explicitly document changes that are backwards-incompatible but would otherwise appear under `### Changed`. Entries under `### Breaking` trigger a major version bump in automated release recommendation logic. @@ -54,7 +54,7 @@ A `### Breaking` section is used in addition to Keep a Changelog's standard sect ### Fixed -- Browser-facing URLs emitted in generated changelog links, workflow summaries, and markdown now use protocol-relative `//` forms. +- Browser-facing URLs emitted in generated changelog links, workflow summaries, and markdown now use explicit `https://` protocol. - Release workflows now collect summary markdown into portable temp files and print it in explicit `Summary` steps instead of relying on unsupported `GITHUB_STEP_SUMMARY` output. - Prepare now recreates the standard `Unreleased` section headers after promoting notes into a tagged release entry. - First-release recommendation remains `v1.0.0` when no prior releases exist in the changelog. @@ -96,7 +96,7 @@ A `### Breaking` section is used in addition to Keep a Changelog's standard sect - Project/automation rename from `releaseprep` to `vociferate` (entrypoint, package paths, outputs). - README guidance focused on primary cross-repository reuse workflows. -[Unreleased]: //git.hrafn.xyz/aether/vociferate/compare/v1.0.0...main -[1.0.0]: //git.hrafn.xyz/aether/vociferate/compare/v0.2.0...v1.0.0 -[0.2.0]: //git.hrafn.xyz/aether/vociferate/compare/v0.1.0...v0.2.0 -[0.1.0]: //git.hrafn.xyz/aether/vociferate/compare/2060af6...v0.1.0 +[Unreleased]: https://git.hrafn.xyz/aether/vociferate/compare/v1.0.0...main +[1.0.0]: https://git.hrafn.xyz/aether/vociferate/compare/v0.2.0...v1.0.0 +[0.2.0]: https://git.hrafn.xyz/aether/vociferate/compare/v0.1.0...v0.2.0 +[0.1.0]: https://git.hrafn.xyz/aether/vociferate/compare/2060af6...v0.1.0 diff --git a/README.md b/README.md index 484709e..9d2bab8 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@ # vociferate -[![Main Validation](//git.hrafn.xyz/aether/vociferate/actions/workflows/push-validation.yml/badge.svg?branch=main&event=push)](//git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=push-validation.yml&branch=main&event=push) -[![Prepare Release](//git.hrafn.xyz/aether/vociferate/actions/workflows/prepare-release.yml/badge.svg?event=workflow_dispatch)](//git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=prepare-release.yml) -[![Do Release](//git.hrafn.xyz/aether/vociferate/actions/workflows/do-release.yml/badge.svg?event=push)](//git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=do-release.yml) -[![Coverage](//s3.hrafn.xyz/aether-workflow-report-artefacts/vociferate/branch/main/coverage-badge.svg)](//s3.hrafn.xyz/aether-workflow-report-artefacts/vociferate/branch/main/coverage.html) +[![Main Validation](https://git.hrafn.xyz/aether/vociferate/actions/workflows/push-validation.yml/badge.svg?branch=main&event=push)](https://git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=push-validation.yml&branch=main&event=push) +[![Prepare Release](https://git.hrafn.xyz/aether/vociferate/actions/workflows/prepare-release.yml/badge.svg?event=workflow_dispatch)](https://git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=prepare-release.yml) +[![Do Release](https://git.hrafn.xyz/aether/vociferate/actions/workflows/do-release.yml/badge.svg?event=push)](https://git.hrafn.xyz/aether/vociferate/actions/runs/latest?workflow=do-release.yml) +[![Coverage](https://s3.hrafn.xyz/aether-workflow-report-artefacts/vociferate/branch/main/coverage-badge.svg)](https://s3.hrafn.xyz/aether-workflow-report-artefacts/vociferate/branch/main/coverage.html) `vociferate` is an `Æther` release orchestration tool written in Go for repositories that want changelog-driven versioning, automated release preparation, and repeatable diff --git a/coverage-badge/action.yml b/coverage-badge/action.yml index 68f6daa..1936fe9 100644 --- a/coverage-badge/action.yml +++ b/coverage-badge/action.yml @@ -138,8 +138,8 @@ runs: display_endpoint="${ARTEFACT_BUCKET_ENDPONT#https://}" display_endpoint="${display_endpoint#http://}" - report_url="//${display_endpoint%/}/${ARTEFACT_BUCKET_NAME}/${prefix}/coverage.html" - badge_url="//${display_endpoint%/}/${ARTEFACT_BUCKET_NAME}/${prefix}/coverage-badge.svg" + report_url="https://${display_endpoint%/}/${ARTEFACT_BUCKET_NAME}/${prefix}/coverage.html" + badge_url="https://${display_endpoint%/}/${ARTEFACT_BUCKET_NAME}/${prefix}/coverage-badge.svg" aws --endpoint-url "${ARTEFACT_BUCKET_ENDPONT}" s3 cp "$COVERAGE_HTML" "s3://${ARTEFACT_BUCKET_NAME}/${prefix}/coverage.html" --content-type text/html aws --endpoint-url "${ARTEFACT_BUCKET_ENDPONT}" s3 cp "$COVERAGE_BADGE" "s3://${ARTEFACT_BUCKET_NAME}/${prefix}/coverage-badge.svg" --content-type image/svg+xml diff --git a/internal/vociferate/vociferate.go b/internal/vociferate/vociferate.go index d9495fe..5f79b18 100644 --- a/internal/vociferate/vociferate.go +++ b/internal/vociferate/vociferate.go @@ -541,10 +541,10 @@ func addChangelogLinks(text, repoURL, rootDir string) string { func displayURL(url string) string { trimmed := strings.TrimSpace(url) if strings.HasPrefix(trimmed, "https://") { - return "//" + strings.TrimPrefix(trimmed, "https://") + return trimmed } if strings.HasPrefix(trimmed, "http://") { - return "//" + strings.TrimPrefix(trimmed, "http://") + return "https://" + strings.TrimPrefix(trimmed, "http://") } return trimmed }