Skip to content

[Copilot Dreams] Match verification guidance to actual prerequisites and coverage - #251

Open
Copilot wants to merge 1 commit into
mainfrom
copilot/dream-curate-memories-20261029121122
Open

Copilot wants to merge 1 commit into
mainfrom
copilot/dream-curate-memories-20261029121122

Conversation

@Copilot

Copilot AI commented Oct 29, 2026

Copy link
Copy Markdown

🧠 How this helps Copilot

Copilot could skip useful offline checks or assume verification runs when it does not. This guidance separates real prerequisites and verification coverage from guarantees the tools do not make, and gives a recovery route when the Ruby test runner cannot start.

Automated details

Source: curate-memories Dream, analyzing main at 113f91d.

…and coverage

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@Copilot
Copilot AI requested a review from a team as a code owner October 29, 2026 12:11
Comment thread AGENTS.md
There are two test layers with different guarantees. Put a test in the
cheapest layer that can actually prove the thing, and don't restate the same
claim in both.
Put a test in the cheapest layer that can actually prove the thing, and don't

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Keep the testing choices clear: The old two-layer description could make Copilot treat the list as only two choices. The three existing test choices remain available, with the cheapest-sufficient placement and nonduplication duties applying across them.

Comment thread AGENTS.md
- **Go command test** (`cmd/**/*_test.go` with `httpmock`) — full CLI wiring
end to end, but with a stubbed resolver so it stays deterministic. Runs in
the blocking `test` CI job with no token. Reach for this to prove the
the blocking `go-test` CI job with no token. Reach for this to prove the

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Find the command-test gate: The old name directs Copilot to a job identifier that is not present. The workflow's Go job is go-test; it still runs the Go tests without a supplied API token.

Comment thread CONTRIBUTING.md

1. Install Go [through download](https://go.dev/doc/install) | [through Homebrew](https://formulae.brew.sh/formula/go). The required version is pinned in [`go.mod`](go.mod).
1. Some integration tests use Ruby; install it [through download](https://www.ruby-lang.org/en/documentation/installation/) | [through Homebrew](https://formulae.brew.sh/formula/ruby) if you plan to run them.
To recover from Ruby integration-harness load errors for `reline` or `webrick`, use Ruby providing `reline` and install `webrick` in that Ruby's gem environment if missing.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Recover missing test libraries: Installing Ruby alone does not establish that the libraries loaded by the test runner are available. For those load errors, this directs Copilot to the Ruby environment actually running the tests, installing WEBrick only when missing.

## Setup

Requires an authenticated GitHub CLI. github.com and GitHub Enterprise Cloud with data residency
github.com and GitHub Enterprise Cloud with data residency

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Allow offline verification: The unconditional login prerequisite could stop Copilot from using the offline path, which runs before network setup. Online operations can still require authentication; removing the blanket prerequisite does not change those requirements.


Run every command from the repository checkout. The host comes from `--hostname`, then `GH_HOST`,
then the repository remote, then github.com.
then the current repository (`GH_REPO` or a remote), then github.com.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Choose the intended host: Remote-only wording could make Copilot predict the wrong host when GH_REPO is set. Current-repository resolution follows the explicit overrides, and a host-qualified GH_REPO supplies that repository host.

JSON goes to stdout and progress to stderr; parse only stdout. `--json` alone selects
`valid,findings,workflows`. Pass a list to choose from `valid`, `findings`, `workflows`,
`dependencies`, and `pins`. Each finding has:
`dependencies`, and `pins`. Finding fields include:

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Accept valid findings: Requiring every listed key would reject valid findings with omitted optional fields. The list describes possible fields, not keys guaranteed in every finding.

into the repository, then run `gh actions-lock` once so the new workflow is locked too. It runs
`gh actions-lock --verify` on pull requests, pushes to `main`, and a weekly schedule that catches
re-pointed tags. The job's `GITHUB_TOKEN` reads public actions and the repository itself; actions
`gh actions-lock --verify` on pull requests and pushes to `main`.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Avoid assuming scheduled coverage: The weekly-run claim could make Copilot assume the copied workflow checks tag changes without new repository activity. Its triggers are pull requests and pushes to main; those checks remain, but the template provides no weekly run.


`gh actions-lock --help` is authoritative for flags. Failed runs print the path of a saved run
log; attach it to bug reports. Start from these, plus each finding's `doc_url`:
`gh actions-lock --help` is authoritative for flags. Attach saved run logs to bug reports.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🛠️ Handle failures without a log path: The old promise could make Copilot treat a missing path as a separate defect. Offline and JSON failures do not print that path, and saving a log is best-effort; available saved logs should still accompany bug reports.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants