Auto-sync docs on stacklok-enterprise-platform release
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- おおむね明確
- 活発さ
- 静か
- 技術スタック
- github-actions, javascript, typescript, yaml
- 領域
- ci-cd, documentation, tooling
調査の方向性
.github/workflows/upstream-release-docs.yml、.github/upstream-projects.yaml、および scripts/upstream-release/ 配下の既存のヘルパーから始めて、現在のプロジェクトフローを理解します。次に、未解決の疑問を解消する前に、既存の upstream-release-docs skill とドキュメントの規約を確認します。完了とは、SEP 構成、マニフェストの同期、enterprise タグ付けのガイダンス、SEP 対応の skill 動作、レビュアーの割り当て、およびバックフィルした dry run の成功が実現していることを意味します。
索引モデルが issue の本文から書いたものです。
説明
Context
When `toolhive` releases, this repo's `upstream-release-docs.yml` auto-syncs:
- Renovate watches `.github/upstream-projects.yaml` → opens a version-bump PR on a new toolhive tag
- The workflow fires on PR open, shallow-clones toolhive at the new tag, extracts release assets, runs the `upstream-release-docs` Claude skill to write narrative changes, then a `docs-review` pass for polish
We want the same flow for `stacklok-enterprise-platform` (SEP) releases, with one twist: enterprise docs are intermixed with OSS docs. The "enterprise manager" gets its own enterprise-only section, but most enterprise content is inline on OSS pages using an enterprise tag/admonition. The skill needs to know when to inline-tag vs. when to add a standalone enterprise-only page.
The companion SEP-side work (publishing release manifests) is tracked in stacklok/stacklok-enterprise-platform#1294.
Design choice: extend, don't fork
`upstream-release-docs.yml` should become project-aware rather than being cloned into `enterprise-release-docs.yml`. Reasons:
- Enterprise content lives in the same files as OSS content — two workflows touching the same paths would race
- 80% of the workflow (asset sync, skill invocation, reviewer assignment, PR augmentation) is identical
- Project-specific logic (CRD extraction for toolhive, manifest parsing for SEP) is already factored into helper scripts under `scripts/upstream-release/`
Proposed work
1. Onboard SEP into `.github/upstream-projects.yaml`
Add an entry pointing at `stacklok/stacklok-enterprise-platform` with:
- The release assets to sync (`component-versions.yaml`, `enterprise-features.yaml`, `vex.json` — see stacklok/stacklok-enterprise-platform#1294)
- `docs_paths` hints scoped to enterprise pages and the enterprise-only section
- A `depends_on: toolhive` constraint so SEP's PR refuses to merge until the matching toolhive version bump has landed (avoids overwriting freshly-tagged inline content)
2. New helper script: `scripts/upstream-release/sync-sep-manifests.mjs`
- Reads `component-versions.yaml` and `enterprise-features.yaml` from the cloned SEP release
- Updates the compatibility matrix data file (path TBD — `data/compatibility.yaml`?)
- Materializes the features list into a structured input the skill will consume (e.g. `/tmp/sep-features.json`)
- Optionally renders `vex.json` into the CVE transparency page
3. Enterprise-tagging convention doc
Author a doc the skill can read (e.g. `.claude/conventions/enterprise-tagging.md`) covering:
- The exact tag/admonition syntax (`:::enterprise`? MDX component? — pick one and document it)
- When to use inline tagging (`surface: inline-overlay`) vs. a standalone enterprise-only page (`surface: standalone`)
- Voice/style rules for enterprise content
- Examples of well-formed inline-tagged pages
Without this doc, the skill is guessing — this is the single biggest quality lever.
4. SEP-aware skill prompt
Either:
- (A) Extend the existing `upstream-release-docs` skill with project-conditional branches that read `enterprise-features.yaml` and produce inline-tagged content, OR
- (B) Add a sibling `sep-release-docs` skill that the workflow picks based on the project key
Recommend (A) since the docs-review pass is already shared and the asset-sync phase is identical — having one skill that handles both projects keeps the editorial voice consistent.
The skill needs to:
- Map each `enterprise-features.yaml` entry to a content surface (inline edit vs. new page)
- Reference the toolhive version pinned in `component-versions.yaml` when writing inline content (so feature docs stay version-accurate)
- Emit `NO_CHANGES.md` when SEP ships a pure version-bump release with no narrative changes (common case — most SEP releases just re-roll the umbrella chart)
5. Reviewer-assignment tweak
The existing reviewer logic pulls contributors from the upstream release. For SEP, prefer contributors from the SEP repo + anyone tagged on `enterprise-features.yaml` entries.
Acceptance criteria
- SEP entry in `.github/upstream-projects.yaml` with asset declarations + `depends_on` constraint
- `sync-sep-manifests.mjs` script reading the two manifests
- `.claude/conventions/enterprise-tagging.md` authored and linked from the skill prompt
- Skill (or skill-pair) handles SEP releases end-to-end
- Dry-run against a backfilled SEP release (see SEP issue) produces a sane PR
- Reviewer assignment pulls from SEP contributors
Open questions
- Tag/admonition syntax for inline enterprise content — does one already exist in this repo, or do we pick now?
- Where does the compatibility matrix live and how is it currently rendered?
- Should the SEP sync be gated behind a feature flag for the first few releases so a bad run doesn't pollute live docs?
- 主要言語
- TypeScript
- スター
- 4
- フォーク
- 4
- 平均マージ
- 1日 17分
- マージ済み PR(30日)
- 63
環境構築
このプロジェクトの開発コンテナを、あなたの GitHub アカウントでブラウザ上に起動します。
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
stacklok/docs-website のほかの issue
-
bug documentation needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
stacklok/docs-website#1149 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
-
needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
stacklok/docs-website#1143 ·
メンテナーはふだん 1 日以内に返信
-
needs-triage
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
stacklok/docs-website#564 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation enhancement needs-triage
難易度 4/5 3〜5日 初心者へのやさしさ 55/100
stacklok/docs-website#1159 · コメント 1 件 ·
メンテナーはふだん 1 日以内に返信
-
documentation enhancement needs-triage
難易度 3/5 1〜2日 初心者へのやさしさ 48/100
stacklok/docs-website#1148 · コメント 2 件 ·
メンテナーはふだん 1 日以内に返信
stacklok/docs-website の issue をすべて見る
似ている issue
-
afk-ok area:data-quality importer size:S
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
enorm-labs/event-junkie#3301 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
one-zero-eight/apply-bot#39 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
bigbluebutton/bbb-ui-components-react#108 ·
メンテナーはふだん 2 日以内に返信
-
area: app type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
ExpidetGames/code-reviewer#308 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
メンテナーはふだん 1 日以内に返信