Skip to content

Commit 6753e87

Browse files
committed
docs: clarify core vs optional workflows and add MCP-server variations to ci-cd.md
Signed-off-by: fOuttaMyPaint <154358121+TMHSDigital@users.noreply.github.com>
1 parent 063ae7a commit 6753e87

1 file changed

Lines changed: 20 additions & 36 deletions

File tree

standards/ci-cd.md

Lines changed: 20 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -55,49 +55,22 @@ Automatic version bump, tagging, and GitHub Release creation.
5555
- `permissions: contents: write`
5656
- `fetch-depth: 0` on checkout for full git history
5757

58-
### 3. `pages.yml`
58+
### 3. `drift-check.yml`
5959

60-
**Triggers:** `push` to `main` (paths: `docs/**`, `assets/**`), `workflow_dispatch`
60+
**Triggers:** `push` to `main`, `pull_request` to `main`, `workflow_dispatch`
6161

62-
Deploys the `docs/` directory to GitHub Pages.
62+
Runs the ecosystem drift checker against the repo's own agent files to detect version-signal drift and missing or broken required references.
6363

64-
**Static HTML approach (default):**
64+
**Required configuration:**
6565

6666
```yaml
67-
steps:
68-
- uses: actions/checkout@v4
69-
- name: Copy assets into docs
70-
run: cp -r assets docs/assets
71-
- uses: actions/configure-pages@v5
72-
- uses: actions/upload-pages-artifact@v4
73-
with:
74-
path: docs
75-
- uses: actions/deploy-pages@v5
67+
- uses: TMHSDigital/Developer-Tools-Directory/.github/actions/drift-check@v1.9
68+
with:
69+
mode: self
70+
format: gh-summary
7671
```
7772
78-
**MkDocs approach (for repos with extensive docs):**
79-
80-
```yaml
81-
steps:
82-
- uses: actions/checkout@v4
83-
- uses: actions/setup-python@v5
84-
with:
85-
python-version: "3.12"
86-
- run: pip install mkdocs-material
87-
- run: mkdocs build --strict
88-
- uses: actions/upload-pages-artifact@v3
89-
with:
90-
path: site/
91-
- uses: actions/deploy-pages@v4
92-
```
93-
94-
**Required permissions:**
95-
96-
```yaml
97-
permissions:
98-
pages: write
99-
id-token: write
100-
```
73+
`mode: self` checks only the calling repo's checkout; no cross-repo token is needed. Findings at `info` severity are advisory. Findings at `error` or `warn` severity indicate real drift that should be addressed.
10174

10275
### 4. `stale.yml`
10376

@@ -109,12 +82,23 @@ Marks issues and PRs as stale after inactivity and closes them after further ina
10982

11083
| Workflow | Purpose | When to include |
11184
| --- | --- | --- |
85+
| `pages.yml` | GitHub Pages deployment | Repos with a `docs/` site; generated by scaffold by default |
86+
| `label-sync.yml` | Auto-label PRs by changed file paths | Any repo; generated by scaffold but not required |
11287
| `codeql.yml` | Security scanning via GitHub CodeQL | Repos with substantial code (MCP servers, TypeScript packages) |
11388
| `dependency-review.yml` | PR dependency audit | Repos with external dependencies |
11489
| `release-drafter.yml` | Draft release notes automatically | Repos with frequent PRs |
11590
| `ci.yml` | Extended test/lint/build pipeline | Repos with complex test suites |
11691
| Domain-specific update | Auto-fetch external data (e.g., native DBs, API schemas) | Repos that consume external data |
11792

93+
## MCP-server Variations
94+
95+
MCP-server repos follow the same core requirement as cursor-plugin repos, with these adjustments:
96+
97+
- **`publish.yml` replaces `release.yml`**. MCP servers release via npm publish (OIDC provenance recommended; see [versioning.md](versioning.md)). A conventional-commit `release.yml` that reads `plugin.json` does not apply.
98+
- **`pages.yml` is optional**. Include it if the repo has a `docs/` site; omit it otherwise.
99+
- **Plugin-manifest checks in `validate.yml` may be omitted**. The JSON-validity, manifest-fields, skill-file-existence, and rule-file-existence checks all assume a `plugin.json`. Remove or skip those checks if no `plugin.json` is present. Credential scanning still applies.
100+
- **`drift-check.yml` and `stale.yml` are required**, same as cursor-plugin repos.
101+
118102
## Workflow Naming
119103

120104
- Use lowercase with hyphens: `validate.yml`, `release.yml`, `pages.yml`

0 commit comments

Comments
 (0)