Consistency pass ahead of the 1.0.0 release. `mkdocs build --strict`
now completes with no warnings; it previously failed.
- mkdocs.yml: the nav referenced `feeds.md` but the file is `FEEDS.md`.
This resolved on case-insensitive macOS and broke on the Linux CI
runner, so the live site shipped a dead Feed Management link.
- mkdocs.yml: add eight pages that existed and were linked from
docs/index.md but were absent from the nav, so they were unreachable
by site navigation: World Cup, Earthquake, Telegram Bridge, Repeater
Prefix Collision, Repeater Commands, and the custom command website.
Exclude docs/integration/, which is an internal development log.
- faq.md: the recovery snippets pointed at
/opt/meshcore-bot/meshcore_bot.db. Since the service-layout hardening
the database lives in /var/lib/meshcore-bot, and /opt is root-owned,
so `sudo -u meshcore` could not write there. sqlite3.connect() would
have created an empty database and failed with a confusing
"no such table" instead of a clear permissions error.
- repeater-commands.md: section headings containing "&" generated
different anchors under GitHub and MkDocs, so the table of contents
worked in one renderer and broke in the other. Use "and" so both
produce the same slug. Point the Auto-Purge entry at the subsection
that exists; it previously matched no heading in either renderer.
- command-reference.md: document the `webviewer` command, the only one
of 44 command modules with no entry.
- checkin-api.md: link the reference receiver on GitHub rather than by
a relative path that escapes the docs tree.
- index.md: add the upgrade guide, FAQ, data retention, local plugins,
check-in API, and custom command website.
- Updated `.gitignore` to include local configuration and plugin directories, allowing users to add custom commands and services without modifying core code.
- Enhanced `config.ini.example` with instructions for using local plugins and added sections for local service configurations.
- Refactored `PluginLoader` and `ServicePluginLoader` to support loading local commands and services from specified directories, improving extensibility.
- Updated `mkdocs.yml` to include documentation for local plugins and the check-in API.
- Added tests to verify the discovery and loading of local plugins, ensuring functionality and preventing name collisions with built-in plugins.
- Introduced a new `[Data_Retention]` section in `config.ini.example` to manage retention periods for various database tables, including packet stream, daily stats, and observed paths.
- Updated `mkdocs.yml` and `configuration.md` to include documentation for the new data retention settings.
- Implemented data retention cleanup methods in `mesh_graph.py`, `repeater_manager.py`, and `scheduler.py` to enforce retention policies automatically.
- Enhanced the web viewer's data cleanup logic to utilize the new retention settings, ensuring efficient database management.
- Added an overview link to the installation section in mkdocs.yml for better accessibility.
- Renamed the Command Reference documentation file from `commands.md` to `command-reference.md` for consistency.
- Updated all references to the Command Reference in README.md, getting-started.md, and index.md to reflect the new file name.
- Introduced a new section on config validation in configuration.md, detailing how to validate section names and path writability before starting the bot.
- Updated mkdocs.yml to include a link to the new config validation documentation.
- Added a reference to config validation in index.md for improved navigation.
- Renamed various documentation files to use lowercase for improved consistency, including `WEB_VIEWER.md`, `DOCKER.md`, and `PATH_COMMAND_CONFIG.md`.
- Updated references in `config.ini.example`, `docker-setup.sh`, `README.md`, and multiple documentation files to reflect the new file names.
- Removed obsolete documentation files related to the Discord Bridge, Map Uploader, Packet Capture, and Weather Service, streamlining the documentation structure.
- Renamed the service installation documentation file from `SERVICE_INSTALLATION.md` to `SERVICE-INSTALLATION.md` for consistency.
- Updated links in `README.md`, `getting-started.md`, and `index.md` to reflect the new file name and improve clarity in navigation.
- Removed the now obsolete `SERVICE-INSTALLATION.md` file, consolidating service installation instructions under the updated naming convention.
- Updated the navigation in mkdocs.yml by renaming the "Getting Started" section to "Quick Start" and reorganizing the "Docker" section under a new "Installation" category, which now also includes "Service" installation documentation.
- Reorganized the navigation in mkdocs.yml by moving the Command Reference section up and restoring the FAQ and Upgrade sections.
- Removed the Guides section for a cleaner navigation experience while maintaining essential documentation links.
- Added new pages to the documentation navigation, including Docker, Upgrade, and Guides sections.
- Updated mkdocs.yml to include the mkdocs-exclude plugin for better content management.
- Modified pyproject.toml to include mkdocs-exclude as a dependency.
- Adjusted GitHub Actions workflow to install the new dependency.
- Removed outdated link from the index.md documentation page.
- Deleted COMMANDS.md, DOCKER.md, WEB_VIEWER.md, and other related documentation files to streamline the project structure.
- Updated README.md and other documentation references to point to the new locations of the command and Docker instructions.
- Added optional dependencies for documentation generation in pyproject.toml.