🚨 DEPRECATION NOTICE - October 2025
This documentation update system has been DEPRECATED and is no longer in use.
New Approach: Edit documentation files directly in their repositories.
- Keep file headers (file path, version, guid) and bump versions on changes
- Follow
.github/instructions/general-coding.instructions.mdfor formatting rules- Use VS Code tasks for git operations (Git Add All, Git Commit, Git Push) - these tasks use
copilot-agent-utilfor enhanced logging and safety- See
AGENTS.mdandCLAUDE.mdin repository root for workflow detailsWhat was removed:
create-doc-update.shandcreate-issue-update.shscriptsdoc_update_manager.pyprocessor.github/doc-updates/directory and workflow system- JSON-based update file approach
Why it was deprecated: The indirect JSON-based update system added unnecessary complexity. Direct editing with version tracking in file headers provides better transparency and simpler workflows.
The content below is preserved for historical reference only.
A comprehensive, automated system for managing documentation updates across repositories using JSON-driven update files and workflows.
The Documentation Update System provides a structured approach to updating documentation files like
README.md, CHANGELOG.md, and TODO.md through automated workflows. Instead of directly editing
documentation files, users create JSON update files that are processed by workflows.
create-doc-update.sh: Enhanced script for creating documentation update filesdoc_update_manager.py: Python processor that applies updates to target filesreusable-docs-update.yml: Reusable GitHub Actions workflowdocs-update.yml: Repository-specific workflow that uses the reusable workflow
repository/
├── .github/
│ ├── doc-updates/ # Pending update files
│ │ ├── update-1.json
│ │ ├── update-2.json
│ │ └── processed/ # Archived processed files
│ │ ├── update-1.json
│ │ └── update-2.json
│ └── workflows/
│ └── docs-update.yml # Repository workflow
└── scripts/
└── create-doc-update.sh # Update creation script
The create-doc-update.sh script provides multiple ways to create updates:
# Basic append operation
./scripts/create-doc-update.sh README.md "## New Section\nContent here" append
# Using templates for common operations
./scripts/create-doc-update.sh --template changelog-feature "Added user authentication"
./scripts/create-doc-update.sh --template todo-task "Implement OAuth2 integration"
# Interactive mode
./scripts/create-doc-update.sh --interactive| Mode | Description | Example Use Case |
|---|---|---|
append |
Add content to end of file | Adding new sections |
prepend |
Add content to beginning of file | Adding urgent notices |
replace |
Replace entire file content | Complete rewrites |
replace-section |
Replace specific section | Updating installation instructions |
insert-after |
Insert after specific text | Adding content after a heading |
insert-before |
Insert before specific text | Adding prerequisites |
changelog-entry |
Add properly formatted changelog entry | Release notes |
task-add |
Add task to TODO list | Project planning |
task-complete |
Mark task as complete | Progress tracking |
update-badge |
Update README badge | Status updates |
Pre-built templates for common documentation patterns:
# Changelog templates
./scripts/create-doc-update.sh --template changelog-fix "Fixed authentication bug"
./scripts/create-doc-update.sh --template changelog-feature "Added user profiles"
./scripts/create-doc-update.sh --template changelog-breaking "Changed API response format"
# TODO templates
./scripts/create-doc-update.sh --template todo-task "Implement feature X" --priority HIGH
./scripts/create-doc-update.sh --template todo-epic "User Management System"
# README templates
./scripts/create-doc-update.sh --template readme-section "Installation"
./scripts/create-doc-update.sh --template readme-badge "build-status"# Section replacement
./scripts/create-doc-update.sh README.md "New content" replace-section --section "Installation"
# Task management
./scripts/create-doc-update.sh TODO.md "Feature complete" task-complete --task-id "AUTH-001"
# Priority and categorization
./scripts/create-doc-update.sh TODO.md "Critical bug fix" task-add --priority HIGH --category "Bugs"
# Dry run mode
./scripts/create-doc-update.sh README.md "Test content" append --dry-runAI agents and Copilot should ALWAYS use this system instead of directly editing documentation files.
# Creating changelog entries during development
./scripts/create-doc-update.sh --template changelog-feature "Implemented user authentication system"
# Adding TODO items for future work
./scripts/create-doc-update.sh --template todo-task "Add integration tests" --priority MED
# Updating README with new features
./scripts/create-doc-update.sh README.md "## Authentication\n\nUsers can now sign in with..." append# Interactive updates for complex changes
./scripts/create-doc-update.sh --interactive
# Batch operations via templates
for feature in auth profiles admin; do
./scripts/create-doc-update.sh --template todo-task "Implement $feature module" --category "Features"
done
# Section updates during refactoring
./scripts/create-doc-update.sh README.md "Updated API documentation" replace-section --section "API Reference"# Marking tasks complete
./scripts/create-doc-update.sh TODO.md "Authentication implementation" task-complete
# Adding milestones
./scripts/create-doc-update.sh --template todo-epic "Phase 2: Advanced Features"
# Release notes
./scripts/create-doc-update.sh --template changelog-breaking "API endpoints now require authentication"- Always use the script instead of direct file edits
- Choose appropriate modes for the type of update
- Include context in update content
- Use GUID system to prevent duplicate operations
- Use templates for consistent formatting
- Test with dry-run before creating updates
- Group related changes in single updates when possible
- Use descriptive content that explains the change context