You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs: update README to reflect main branch syncing strategy
- Document that all content syncs from main branch
- Explain that version tags are only for Latest Release page display
- Update 'Testing from feature branch' instructions
- Update 'Adding New Components' example
- Add Latest Release page to documentation types list
- Release version, date, and URLs shown on the Components page
97
-
- Component descriptions and version tags
98
-
-**Components** sync from their individual release tags
99
-
-**Guides** sync from the llm-d/llm-d release tag
100
-
-**Architecture docs** sync from the llm-d/llm-d release tag
101
-
-**Community docs** always sync from `main` branch (latest)
98
+
- Release version, date, and URLs shown on the **Latest Release** page
99
+
- Component descriptions and version tags displayed in the component table
100
+
-**Note:** All documentation content (architecture, guides, components, community) syncs from the `main` branch
101
+
- The version tags in YAML are only used to render the Latest Release page showing what versions are in the release
102
102
103
-
### Understanding Versioned vs. Always-Current Content
103
+
### Content Syncing Strategy
104
104
105
-
The remote content system supports two sync strategies:
105
+
**All documentation syncs from the `main` branch** of source repositories. This ensures documentation always reflects the latest development state.
106
106
107
-
**Versioned Content** (syncs from release tags):
108
-
-**Guides** (`docs/guide/`) - Uses `RELEASE_INFO.version` from `components-data.yaml`
109
-
-**Architecture** (`docs/architecture/`) - Uses `RELEASE_INFO.version` from `components-data.yaml`
110
-
-**Components** (`docs/architecture/Components/`) - Each component uses its own `version` field from `components-data.yaml`
111
-
-**Infrastructure Providers** (`docs/guide/InfraProviders/`) - Uses `RELEASE_INFO.version` from `components-data.yaml`
112
-
113
-
These docs are pinned to specific release tags (e.g., `v0.3.1`) to ensure documentation matches the released code. When you update `release.version` in `components-data.yaml`, all versioned content automatically syncs from the new tag.
114
-
115
-
**Always-Current Content** (syncs from `main` branch):
107
+
**Content synced from `main`:**
108
+
-**Architecture** (`docs/architecture/architecture.mdx`) - Main llm-d README
Community documentation stays current with the latest policies and processes, independent of releases. The `branch` field in `COMMON_REPO_CONFIGS` controls this behavior.
115
+
**Generated from YAML (not synced):**
116
+
-**Latest Release page** (`docs/architecture/latest-release.md`) - Generated from `components-data.yaml`
117
+
- Shows release version, date, and link to GitHub release
118
+
- Displays component version table with links to specific release tags
119
+
- This is the only place version tags from YAML are used
120
120
121
121
**How it works:**
122
-
-`generateRepoUrls()` in `component-configs.js` prefers `version` over `branch` when both exist
123
-
- Versioned content sources call `findRepoConfig('llm-d')` and use `RELEASE_INFO.version`
124
-
- Community sources call `findRepoConfig('llm-d')` and use `repoConfig.branch` (which is `'main'`)
125
-
- This separation lets you cut releases without worrying about stale community policies
122
+
-`generateRepoUrls()` in `component-configs.js` always returns `main` as the branch for content syncing
123
+
- Version tags in `components-data.yaml` are used by `components-generator.js` to render the Latest Release page
124
+
- The `sync-release.mjs` script updates YAML with release metadata from GitHub, but this doesn't affect which branch content syncs from
126
125
127
126
### Testing content from a feature branch
128
127
129
-
To preview remote docs from a work-in-progress branch (for example `liu-cong-debug`), temporarily set `release.version` in `remote-content/remote-sources/components-data.yaml` to that branch name. Run `npm start` or `npm run build` to pull the branch content into the site. When testing is done, change `release.version` back to the released tag so production remains on the official docs.
128
+
Since all content syncs from `main`, to test content from a different branch you need to temporarily modify the `generateRepoUrls()` function in `remote-content/remote-sources/component-configs.js`:
129
+
130
+
```javascript
131
+
// Change this line temporarily:
132
+
constref='main';
133
+
// To your feature branch:
134
+
constref='your-feature-branch';
135
+
```
136
+
137
+
Run `npm start` or `npm run build` to pull the branch content. **Remember to change it back to `'main'` before committing.**
130
138
131
139
### Supporting remote guides from nested directories
132
140
@@ -158,13 +166,13 @@ components:
158
166
# ... existing components
159
167
- name: llm-d-your-component
160
168
org: llm-d
161
-
branch: main
169
+
sidebarLabel: Your Component # Display name in sidebar
162
170
description: Description of your component
163
-
category: Core Infrastructure
164
171
sidebarPosition: 8
172
+
version: v1.0.0 # Version tag shown on Latest Release page
165
173
```
166
174
167
-
The component will automatically appear under`/docs/architecture/Components/` on the next build.
175
+
The component README will be synced from `main` branch and appear at `/docs/architecture/Components/your-component.md` on the next build. The version tag is only used for display on the Latest Release page.
0 commit comments