Migrate workflow-plugin-discord to strict gRPC proto contracts#2
Conversation
There was a problem hiding this comment.
Copilot wasn't able to review any files in this pull request.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot This PR currently has 0 changed files, so the assigned task is not implemented yet. Please continue the original issue task using Claude Sonnet 4.6: make the required Workflow strict-contract or downstream dependency updates, push actual code/config/doc changes to this PR branch, run the requested validation, and update the PR body with the validation results. Do not leave this as an empty PR. |
|
@copilot Add this as part of the PR scope: include or update a GitHub Actions PR check that validates strict Workflow plugin contracts. The check should fail when name: wfctl strict contracts
on:
pull_request:
push:
branches: [main, master]
jobs:
wfctl-strict-contracts:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version-file: go.mod
- name: Validate strict plugin contracts
run: go run github.com/GoCodeAlone/workflow/cmd/wfctl@v0.20.1 plugin validate --file plugin.json --strict-contractsAdjust branch filters and Go setup to match this repository. If the repo uses an existing CI workflow, add this as a job there instead of creating duplicate workflow clutter. Include the check result in the PR validation notes. |
|
@copilot please try again using Claude Sonnet 4.6. Continue the original task for this PR. Make sure the PR is not left empty, add or update strict gRPC contract descriptors as applicable, add a PR check that runs |
- Add strict contract descriptors for all 12 advertised types (1 module, 10 steps, 1 trigger) to plugin.json with mode:strict and proto message names following the discord.v1.* naming convention - Add download entries for v0.1.1 release archives (required for external plugin manifest validation) - Add wfctl-strict-contracts job to CI workflow running wfctl@v0.20.1 plugin validate --file plugin.json --strict-contracts Validation output: go test ./... -race: PASS go vet ./...: PASS go mod tidy: no diff wfctl plugin validate --file plugin.json --strict-contracts: OK" Agent-Logs-Url: https://github.com/GoCodeAlone/workflow-plugin-discord/sessions/40259a89-1f17-48a2-881d-3c9e45a1b4fc Co-authored-by: intel352 <77607+intel352@users.noreply.github.com>
Agent-Logs-Url: https://github.com/GoCodeAlone/workflow-plugin-discord/sessions/40259a89-1f17-48a2-881d-3c9e45a1b4fc Co-authored-by: intel352 <77607+intel352@users.noreply.github.com>
Done in commits 3f7ac15 and 40d18a7. Changes made:
Validation output: Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot please continue this PR using Claude Sonnet 4.6 and address the remaining merge gates. Current gate state I see:
Please inspect and fix any failing checks, address all unresolved review comments with code changes where appropriate, add or repair the PR check that runs |
…ite download URLs on release - Bump plugin.json version from 0.1.0 to 0.1.1 so version field matches the existing v0.1.1 download URLs (resolves reviewer mismatch finding) - Add a second goreleaser before-hook sed that rewrites the version tag inside all download URLs to the current release tag on every release, preventing stale URLs in future release archives Agent-Logs-Url: https://github.com/GoCodeAlone/workflow-plugin-discord/sessions/edf40a47-9e1e-4c09-8ee8-421d99ec51fb Co-authored-by: intel352 <77607+intel352@users.noreply.github.com>
Addressed in commit 127d3e1. The two unresolved review threads both pointed at the same root cause — Changes in 127d3e1:
Warning Firewall rules blocked me from connecting to one or more addresses (expand for details)I tried to connect to the following addresses, but was blocked by firewall rules:
If you need me to access, download, or install something from one of these locations, you can either:
|
|
Pushed review fixes: checked-in downloads now point at the existing |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Pushed the output-descriptor test fix and updated the PR description to match the checked-in |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 2 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "downloads": [ | ||
| { | ||
| "os": "linux", | ||
| "arch": "amd64", | ||
| "url": "https://github.com/GoCodeAlone/workflow-plugin-discord/releases/download/v0.1.0/workflow-plugin-discord-linux-amd64.tar.gz" | ||
| }, | ||
| { | ||
| "os": "linux", | ||
| "arch": "arm64", | ||
| "url": "https://github.com/GoCodeAlone/workflow-plugin-discord/releases/download/v0.1.0/workflow-plugin-discord-linux-arm64.tar.gz" | ||
| }, | ||
| { | ||
| "os": "darwin", | ||
| "arch": "amd64", | ||
| "url": "https://github.com/GoCodeAlone/workflow-plugin-discord/releases/download/v0.1.0/workflow-plugin-discord-darwin-amd64.tar.gz" | ||
| }, | ||
| { | ||
| "os": "darwin", | ||
| "arch": "arm64", | ||
| "url": "https://github.com/GoCodeAlone/workflow-plugin-discord/releases/download/v0.1.0/workflow-plugin-discord-darwin-arm64.tar.gz" | ||
| } | ||
| ] |
|
@copilot address all unresolved review comments |
All tests pass ( The one remaining open thread (plugin.json:114-135) flags that the What the current setup guarantees going forward:
|
Migrates this plugin to Workflow strict gRPC proto contracts so contract shape issues are caught during
wfctlvalidation instead of at runtime.Changes Made
plugin.json0.1.0release/download URLs to avoid a pre-release 404 window onmain; GoReleaser rewrites version and download URLs for the new release artifacts..goreleaser.yamlversionand alldownloads[].urlrelease tags tov{{ .Version }}during release packaging.wfctl@v0.20.1 plugin validate --file plugin.json --strict-contractsbefore archiving.Tests and CI
wfctl-strict-contractsPR check.Validation
GOWORK=off go test ./...GOWORK=off go vet ./...GOWORK=off go run github.com/GoCodeAlone/workflow/cmd/wfctl@v0.20.1 plugin validate --file plugin.json --strict-contracts