Skip to content

docs(skills): add E2E CI architecture, queue dashboard, and skill INDEX#394

Open
castrojo wants to merge 1 commit into
mainfrom
docs/session-e2e-queue-knowledge
Open

docs(skills): add E2E CI architecture, queue dashboard, and skill INDEX#394
castrojo wants to merge 1 commit into
mainfrom
docs/session-e2e-queue-knowledge

Conversation

@castrojo
Copy link
Copy Markdown
Contributor

@castrojo castrojo commented Jun 2, 2026

What

Captures session knowledge as skill docs for future agents.

docs/skills/e2e-ci.md

Common suite E2E CI architecture:

  • How behave runs directly on GHA runner (not in pre-built container)
  • Why brew tools (eza/fd/rg/bat/fzf/starship) are not available in CI (brew-setup.service masked via kernel args)
  • Why zsh/fish fail under bash -lc SSH commands (PATH mystery, tracked in testsuite#210)
  • Dakota MOTD root cause + fix (testsuite PR Feat/toggle testing #208)
  • SSH command execution model (bash -lc + login shell side effects)

docs/skills/queue-dashboard.md

  • How queue.projectbluefin.io PR tiers work (review:approved / review:required / review:none)
  • Common merge ruleset: 2 approvals required, only Build+push is a required check
  • Smoke test failures are non-blocking
  • Refresh cadence (hourly, :20 offset for common)

docs/skills/INDEX.md

Top-level index so agents can discover available skill docs at a glance.

Why

These were the primary knowledge gaps that caused wasted diagnostic time during
the 2026-06-02 review session. Future agents should be able to triage nightly
E2E failures and PR merge state without re-deriving this information.

Summary by CodeRabbit

  • Documentation
    • Added skills documentation index with links to key reference guides
    • Added documentation for the E2E CI suite covering test execution and configuration
    • Added documentation for the queue dashboard explaining GitHub Actions workflow status

Documents knowledge captured during 2026-06-02 review session:

- e2e-ci.md: common suite SSH model, brew tools masked in CI, MOTD fix
  (testsuite PR #208), quarantined scenarios (zsh/fish/brew-tools, issue #210)
- queue-dashboard.md: queue.projectbluefin.io PR tiers, common merge ruleset
  (2 approvals required, only Build+push is a required check)
- INDEX.md: skill docs index

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Assisted-by: Claude Sonnet 4.6 via GitHub Copilot
@dosubot dosubot Bot added size:L This PR changes 100-499 lines, ignoring generated files. area/testing Testing and QA kind/documentation Improvements or additions to documentation labels Jun 2, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Jun 2, 2026

Review Change Stack

📝 Walkthrough

Walkthrough

This pull request adds three new skill documentation files to establish a knowledge base for the projectbluefin/common repository. An index page provides entry-point navigation. Detailed documentation covers the E2E CI suite workflow, kernel configuration, test failures, and SSH execution model. A queue dashboard reference explains PR triage, merge requirements, and refresh behavior.

Changes

Skills Documentation

Layer / File(s) Summary
Skills documentation index
docs/skills/INDEX.md
New index page introducing the skills directory and linking to three skill documents: hive-review, queue-dashboard, and e2e-ci with brief coverage descriptions.
E2E CI suite documentation
docs/skills/e2e-ci.md
Comprehensive guide to the common post-merge E2E suite, documenting reusable workflow invocation, SSH setup on GHA runner, kernel configuration masking Homebrew setup, quarantined test failures (Homebrew CLI tools, zsh/fish PATH issues), Dakota MOTD resolution, SSH execution model with bash -lc and brew shellenv, and container image coverage for Bluefin LTS/Stable and Dakota.
Queue dashboard documentation
docs/skills/queue-dashboard.md
Reference document for the queue.projectbluefin.io dashboard, covering PR tier mapping via GitHub search filters, review:approved vs review:required semantics, projectbluefin/common merge ruleset (required approvals, status checks, Renovate bypass), refresh cadence, tracked repositories, and generator source link.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 A warren of wisdom, now written with care,
Three skills for the builders who labor out there—
E2E tales and dashboards so bright,
Our docs bloom like clover, guiding you right! 🌱✨

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes all three main changes: adding E2E CI documentation, queue dashboard documentation, and a skills INDEX file.
Description check ✅ Passed The description provides clear context for all three documentation files added, explaining what knowledge each captures and why it was needed, meeting the informational requirements.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch docs/session-e2e-queue-knowledge

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@docs/skills/e2e-ci.md`:
- Around line 27-29: The fenced code block containing
"systemd.mask=brew-setup.service" is missing a language hint (MD040); update
that markdown block in docs/skills/e2e-ci.md by adding a fence language (e.g.,
use "text") so the block becomes ```text ... ``` and satisfies the markdown
linter while preserving the exact inner content.

In `@docs/skills/INDEX.md`:
- Line 7: The INDEX entry in docs/skills/INDEX.md points to hive-review.md which
doesn't exist; fix by either adding the missing docs/skills/hive-review.md file
with the intended content or updating the link in docs/skills/INDEX.md to the
correct existing document path/title (ensure the target filename
`hive-review.md` or its replacement is present in docs/ so the link is not dead
and docs build/links pass).

In `@docs/skills/queue-dashboard.md`:
- Around line 18-22: The code fence in docs/skills/queue-dashboard.md is missing
a language tag which triggers MD040; update the triple-backtick fence that
contains the PR query examples so it starts with ```text (i.e., change the
opening ``` to ```text) to explicitly mark the block as plain text and satisfy
the linter while keeping the content unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 31568ca5-5fea-4ad9-92be-87997f052ee8

📥 Commits

Reviewing files that changed from the base of the PR and between 3284cfe and 2047bb0.

📒 Files selected for processing (3)
  • docs/skills/INDEX.md
  • docs/skills/e2e-ci.md
  • docs/skills/queue-dashboard.md

Comment thread docs/skills/e2e-ci.md
Comment on lines +27 to +29
```
systemd.mask=brew-setup.service
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Add a language hint to the fenced code block.

This block is missing a fence language (MD040). Use text (or another appropriate lexer) to satisfy markdown linting.

Suggested fix
-```
+```text
 systemd.mask=brew-setup.service
</details>

<!-- suggestion_start -->

<details>
<summary>📝 Committable suggestion</summary>

> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

```suggestion

🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 27-27: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/skills/e2e-ci.md` around lines 27 - 29, The fenced code block containing
"systemd.mask=brew-setup.service" is missing a language hint (MD040); update
that markdown block in docs/skills/e2e-ci.md by adding a fence language (e.g.,
use "text") so the block becomes ```text ... ``` and satisfies the markdown
linter while preserving the exact inner content.

Comment thread docs/skills/INDEX.md

| File | What it covers |
|---|---|
| [hive-review.md](hive-review.md) | `~/src/hive-status` — session start, P0/P1 triage, hive label taxonomy |
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify whether the linked docs file exists in the repository.
fd -i '^hive-review\.md$' docs

Repository: projectbluefin/common

Length of output: 47


Fix dead docs link: hive-review.md is missing under docs/

The docs/skills/INDEX.md entry links to hive-review.md, but no hive-review.md file is present anywhere in docs/ (the link target appears to be a dead reference).

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/skills/INDEX.md` at line 7, The INDEX entry in docs/skills/INDEX.md
points to hive-review.md which doesn't exist; fix by either adding the missing
docs/skills/hive-review.md file with the intended content or updating the link
in docs/skills/INDEX.md to the correct existing document path/title (ensure the
target filename `hive-review.md` or its replacement is present in docs/ so the
link is not dead and docs build/links pass).

Comment on lines +18 to +22
```
is:pr is:open -is:draft status:success review:approved → ✅ Approved (ready to merge)
is:pr is:open -is:draft status:success review:required → ⚠️ Needs reviews
is:pr is:open -is:draft status:success review:none → 🔵 No reviews yet
```
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Specify a language for the query filter code fence.

This fence triggers MD040 because it has no language. text is sufficient here.

Suggested fix
-```
+```text
 is:pr is:open -is:draft status:success review:approved   → ✅ Approved (ready to merge)
 is:pr is:open -is:draft status:success review:required   → ⚠️  Needs reviews
 is:pr is:open -is:draft status:success review:none       → 🔵  No reviews yet
</details>

<!-- suggestion_start -->

<details>
<summary>📝 Committable suggestion</summary>

> ‼️ **IMPORTANT**
> Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

```suggestion

🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 18-18: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@docs/skills/queue-dashboard.md` around lines 18 - 22, The code fence in
docs/skills/queue-dashboard.md is missing a language tag which triggers MD040;
update the triple-backtick fence that contains the PR query examples so it
starts with ```text (i.e., change the opening ``` to ```text) to explicitly mark
the block as plain text and satisfy the linter while keeping the content
unchanged.

Copy link
Copy Markdown
Member

@hanthor hanthor left a comment

Choose a reason for hiding this comment

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

queue-dashboard.md names the sync workflow as hive-progress-sync.yml, but the workflow being added by the related hive PRs is hive-status-sync.yml. Since these docs are intended as agent-facing reference, the wrong filename will cause lookup failures. Please correct the workflow name.

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

Labels

area/testing Testing and QA kind/documentation Improvements or additions to documentation size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants