Conversation
* Docs PR preview workflow + 7 doc.md files + README fixes
New workflow:
- docs-preview.yaml: auto-builds docs preview on PR open/update,
deploys to pr-{number}/ subdirectory, posts comment with link,
cleans up on PR close/merge
Documentation coverage:
- 7 missing doc.md files: preprocessing, input_output, plotting,
quality_control, ssl_embeddings, speaker_diarization_evaluation,
text/embeddings_extraction
README fixes:
- Documentation URL: sensein.group → sensein.github.io
- tutorials/README.md: added 3 new tutorials
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Fix docs workflow: use --all-extras (articulatory extra removed)
Both docs.yaml and docs-preview.yaml referenced --extra articulatory
which no longer exists. Use --all-extras instead.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Fix docs build: install FFmpeg, guard ffmpeg-python import
- docs-preview.yaml: add FFmpeg system install step
- video/tasks/input_output.py: guard ffmpeg import with try/except
(ffmpeg-python was never in pyproject.toml dependencies)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Fix docs URLs to use canonical sensein.group/senselab
GitHub Pages CNAME is sensein.group (confirmed via gh api pages).
Updated: docs-preview.yaml comment URL, README.md badge + link,
pyproject.toml Documentation URL.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Add doc.md include directives to __init__.py + fix URLs to sensein.group
- 7 __init__.py files updated with """.. include:: ./doc.md""" so pdoc
renders the doc.md content in generated documentation
- All docs URLs standardized to sensein.group/senselab (the canonical
CNAME confirmed via GitHub Pages API)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* Use deployment environment for docs preview URL instead of PR comment
The preview URL now shows as a "View deployment" button in the PR
checks UI via GitHub deployment environments. Each PR gets its own
environment (docs-preview-pr-{number}) which is cleaned up on close.
Removed PR comment posting — the deployment link in the checks UI
is cleaner and doesn't spam the PR thread.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Code Review
This pull request implements a documentation coverage audit and outlines a new PR preview workflow. Key changes include adding missing doc.md files for audio and text tasks, updating tutorials, and introducing a try-except block for the ffmpeg dependency. However, the ffmpeg guard is incomplete and will likely cause runtime crashes as subsequent calls are not protected. Furthermore, the documentation URLs updated in README.md and pyproject.toml contradict the project's own new specifications, which designate the GitHub Pages URL as canonical.
| try: | ||
| import ffmpeg | ||
| except ImportError: | ||
| ffmpeg = None # type: ignore[assignment] |
There was a problem hiding this comment.
Setting ffmpeg to None when the import fails will lead to an AttributeError at runtime when ffmpeg.input (line 29), ffmpeg.run (line 35), or ffmpeg.Error (line 37) are accessed. Since these calls are not guarded by a check for None, this 'import guard' does not safely handle the missing dependency and will cause the application to crash. Consider verifying that ffmpeg is not None before usage.
| [](https://opensource.org/licenses/Apache-2.0) | ||
|
|
||
| [](https://sensein.github.io/senselab) | ||
| [](https://sensein.group/senselab) |
There was a problem hiding this comment.
The documentation URL is being changed to https://sensein.group/senselab, which contradicts the specification and research documents added in this PR. For instance, research.md (line 42) and spec.md (FR-004) explicitly state that https://sensein.github.io/senselab should be the canonical URL. Please ensure the implementation aligns with the intended design documents.
| [](https://sensein.group/senselab) | |
| [](https://sensein.github.io/senselab) |
| ``` | ||
|
|
||
| For more detailed information, check out our [**Documentation**](https://sensein.group/senselab/senselab.html) and our [**Tutorials**](https://github.com/sensein/senselab/blob/main/tutorials/audio/00_getting_started.ipynb). | ||
| For more detailed information, check out our [**Documentation**](https://sensein.group/senselab) and our [**Tutorials**](https://github.com/sensein/senselab/blob/main/tutorials/audio/00_getting_started.ipynb). |
There was a problem hiding this comment.
This URL update to sensein.group contradicts the requirement in spec.md (FR-004) and the task in tasks.md (T014) to standardize on https://sensein.github.io/senselab. According to the project's own research and planning documents included in this PR, the GitHub Pages URL is intended to be the canonical one.
| For more detailed information, check out our [**Documentation**](https://sensein.group/senselab) and our [**Tutorials**](https://github.com/sensein/senselab/blob/main/tutorials/audio/00_getting_started.ipynb). | |
| For more detailed information, check out our [**Documentation**](https://sensein.github.io/senselab) and our [**Tutorials**](https://github.com/sensein/senselab/blob/main/tutorials/audio/00_getting_started.ipynb). |
| Homepage = "https://github.com/sensein/senselab" | ||
| Repository = "https://github.com/sensein/senselab" | ||
| Documentation = "https://sensein.github.io/senselab" | ||
| Documentation = "https://sensein.group/senselab" |
There was a problem hiding this comment.
The documentation URL in pyproject.toml should be consistent with the canonical URL defined in the project specifications (https://sensein.github.io/senselab), rather than sensein.group.
| Documentation = "https://sensein.group/senselab" | |
| Documentation = "https://sensein.github.io/senselab" |
PR docs preview via deployment environments, 7 missing doc.md files, canonical sensein.group URLs, ffmpeg import guard.