docs: fix non docs/ links
This commit is contained in:
parent
cd411494d1
commit
e4869e0061
4 changed files with 40 additions and 2 deletions
35
.github/scripts/prepare_docs.py
vendored
Normal file
35
.github/scripts/prepare_docs.py
vendored
Normal file
|
|
@ -0,0 +1,35 @@
|
||||||
|
import os
|
||||||
|
import glob
|
||||||
|
import re
|
||||||
|
import shutil
|
||||||
|
|
||||||
|
folders_to_copy = ['src', 'scripts']
|
||||||
|
for folder in folders_to_copy:
|
||||||
|
if os.path.exists(folder):
|
||||||
|
shutil.copytree(folder, f'docs/{folder}', dirs_exist_ok=True)
|
||||||
|
|
||||||
|
for filepath in glob.glob('docs/**/*.md', recursive=True):
|
||||||
|
with open(filepath, 'r', encoding='utf-8') as f:
|
||||||
|
content = f.read()
|
||||||
|
|
||||||
|
# RULE A: Fix links pointing OUT to src/ or scripts/
|
||||||
|
# Logic: Because the folders were moved one level deeper, we remove exactly ONE '../'
|
||||||
|
content = re.sub(
|
||||||
|
r'\]\(\.\./((?:\.\./)*)(src|scripts)/([^)]*)\)',
|
||||||
|
r'](\1\2/\3)',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
|
||||||
|
# RULE B: Fix links pointing FROM the copied files back TO the original docs/ folder
|
||||||
|
# Logic: Since these files are now inside docs/, the 'docs/' segment in the path is redundant.
|
||||||
|
content = re.sub(
|
||||||
|
r'\]\(((?:\.\./)+)docs/([^)]*)\)',
|
||||||
|
r'](\1\2)',
|
||||||
|
content
|
||||||
|
)
|
||||||
|
|
||||||
|
with open(filepath, 'w', encoding='utf-8') as f:
|
||||||
|
f.write(content)
|
||||||
|
|
||||||
|
print("Successfully imported external files and adjusted markdown links.")
|
||||||
|
|
||||||
3
.github/workflows/publish-docs.yml
vendored
3
.github/workflows/publish-docs.yml
vendored
|
|
@ -26,6 +26,9 @@ jobs:
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: pip install mkdocs-material
|
run: pip install mkdocs-material
|
||||||
|
|
||||||
|
- name: Prepare external docs
|
||||||
|
run: python .github/scripts/prepare_docs.py
|
||||||
|
|
||||||
- name: Configure Git identity
|
- name: Configure Git identity
|
||||||
run: |
|
run: |
|
||||||
git config --global user.name "github-actions[bot]"
|
git config --global user.name "github-actions[bot]"
|
||||||
|
|
|
||||||
|
|
@ -24,7 +24,7 @@ Code readability is paramount, as code is read far more frequently than it is wr
|
||||||
|
|
||||||
* **Git Practices:** Commits must be frequent and small. Each commit should relate to exactly one piece of functionality.
|
* **Git Practices:** Commits must be frequent and small. Each commit should relate to exactly one piece of functionality.
|
||||||
* **Branching Strategy:** The `dev` branch serves as the integration branch for pushing and merging code. Only stable releases may be pushed to the `main` branch.
|
* **Branching Strategy:** The `dev` branch serves as the integration branch for pushing and merging code. Only stable releases may be pushed to the `main` branch.
|
||||||
* **Artifact Management:** Data files, trained models, and large datasets must never be committed directly to Git. Git Large File Storage (LFS) must be used for tracking large files. **All developers must have `git-lfs` installed locally** (see `DEVELOPMENT.md` for setup).
|
* **Artifact Management:** Data files, trained models, and large datasets must never be committed directly to Git. Git Large File Storage (LFS) must be used for tracking large files. **All developers must have `git-lfs` installed locally** (see [DEVELOPMENT.md](./DEVELOPMENT.md) for setup).
|
||||||
* **Repository Layout:** The repository must maintain the following core directories: `src/` for algorithms, `env/` for MuJoCo wrappers, `config/` for experiment configurations, `experiments/` for scripts, `docs/` for Doxygen or ReadTheDocs documentation, and `tests/` for unit tests.
|
* **Repository Layout:** The repository must maintain the following core directories: `src/` for algorithms, `env/` for MuJoCo wrappers, `config/` for experiment configurations, `experiments/` for scripts, `docs/` for Doxygen or ReadTheDocs documentation, and `tests/` for unit tests.
|
||||||
|
|
||||||
## 4. Architecture & Tooling
|
## 4. Architecture & Tooling
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ If you are interested in the "why did you do it like this?"
|
||||||
- [Controllers](./design/controllers.md): Macroscopig brain toplogy, centralized, arm-level, segment-level.
|
- [Controllers](./design/controllers.md): Macroscopig brain toplogy, centralized, arm-level, segment-level.
|
||||||
- [Input/output](./design/input_action_spaces.md): Description of the model's input and output.
|
- [Input/output](./design/input_action_spaces.md): Description of the model's input and output.
|
||||||
- [Learning algorithm](./design/learning_algorithm.md): RL techniques, i.e. PPO.
|
- [Learning algorithm](./design/learning_algorithm.md): RL techniques, i.e. PPO.
|
||||||
- [Reward function](./design/learning_algorithm.md): Goals, fitness tracking, and reward structures.
|
- [Reward function](./design/reward_function.md): Goals, fitness tracking, and reward structures.
|
||||||
|
|
||||||
## API reference (`/api`)
|
## API reference (`/api`)
|
||||||
|
|
||||||
|
|
|
||||||
Reference in a new issue