Skip to main content
Glama
boecht

BitSight Community MCP Server

by boecht
edit-changelog.instructions.md6.94 kB
--- name: Changelog-Instructions description: This is the authoritative guidance for editing CHANGELOG.md applyTo: 'CHANGELOG.md' --- # CHANGELOG Standards for BiRRe (Authoring Instructions) This is the authoritative guidance for creating or editing `CHANGELOG.md`. ## ⚠️ Critical Rules (Most Commonly Violated) **These rules are NON-NEGOTIABLE. Entries violating these will be rejected:** 1. **Comprehensive Coverage**: The changelog entry MUST cover ALL commits on the current branch since the lastrelease/merge to main, not just the most recent commit. - ✅ Correct: Analyze all 51 commits and extract user-facing changes from each - ❌ Wrong: Only look at the last commit and write 5 lines 2. **Category Order**: Use categories in this EXACT order (omit empty ones): 1. Changed 2. Added 3. Deprecated 4. Removed 5. Fixed 6. Security 3. **Imperative Mood**: ALL bullets must use imperative verbs: - ✅ Correct: "Add feature", "Fix bug", "Remove deprecated API", "Enhance performance" - ❌ Wrong: "Added feature", "Fixed bug", "New feature", "Performance enhanced" - ❌ Wrong: "Feature addition", "Bug fix", "Deprecated API removal" 4. **User Benefits Over Implementation**: Describe WHAT users get, not HOW you built it: - ✅ Correct: "Improve startup time by 50%" - ❌ Wrong: "Refactor config loader to use lazy loading" ## Core Principles 1. Changelogs are for humans, not machines — write clearly and concisely. 2. Focus on user benefits, not technical implementation — describe impact, not code changes. 3. Highlight up to three changes with biggest functional or user impact with `**TOP:**` prefix. 4. Breaking changes are normal — make them highly visible with `**Breaking:**` prefix. 5. Quality over backwards compatibility — don’t sugarcoat necessary changes. ## Format Standards ### File Structure ```markdown # Changelog All notable changes to BiRRe (BitSight Rating Retriever) will be documented in this file. See [Changelog Instructions](.github/instructions/edit-changelog.instructions.md) for updating guidelines. ## [X.Y.Z] - YYYY-MM-DD ### Changed - ### Added - ### Deprecated - ### Removed - ### Fixed - ### Security - ``` ### Required Elements - File name: `CHANGELOG.md` in project root - Date format: ISO 8601 (YYYY-MM-DD) - Version headings: H2 (`## [version] - date`) - Category headings: H3 (exactly the six below) - Chronological order: newest versions first - Clean version numbers: no `v` prefix ## Categories (use in this exact order) 1. Changed — Changes to existing functionality 2. Added — New features or capabilities 3. Deprecated — Features scheduled for removal (include timeline) 4. Removed — Deleted features or functionality 5. Fixed — Bug fixes and corrections 6. Security — Security improvements, vulnerability patches, dependency updates ### When to Use Each Category | Category | Use For | Don’t Use For | |---|---|---| | Changed | Modified behavior, improved performance | Internal code changes | | Added | New tools, commands, options, capabilities | Internal utilities | | Deprecated | Features marked for removal (with timeline) | Removed features | | Removed | Deleted features, dropped support, removed APIs | Code cleanup | | Fixed | Bug fixes, error corrections, improved messages | Quality improvements | | Security | Vulnerability patches, dependency updates | General improvements | ## Writing Style ### Imperative Mood (Required) **Every single bullet point MUST start with an imperative verb. No exceptions.** Examples of imperative verbs to use: - Add, Remove, Fix, Update, Change, Improve, Enhance, Reduce, Increase - Support, Enable, Disable, Provide, Include, Exclude - Resolve, Correct, Prevent, Detect, Monitor, Track ✅ **Correct Examples**: - "Add health check endpoint" - "Remove deprecated sync mode" - "Fix memory leak in API client" - "Improve startup time by 50%" - "Enhance error messages for authentication failures" ❌ **Wrong Examples** (and why): - "Added health check endpoint" — past tense verb - "Removed deprecated sync mode" — past tense verb - "New health check endpoint" — noun phrase, not imperative - "Health check endpoint added" — passive voice - "Comprehensive property-based testing" — noun phrase only **Test**: If the bullet doesn't start with a command verb, it's wrong. ### User Benefits (Required) - Good: “Enhance startup reliability and reduce memory usage” - Bad: “Refactor sync_bridge.py to remove global state” ### Self-Describing (Required) - Good: “Resolve authentication failures when API key contains special characters” - Bad: “Fix issue #123” or “Implement TD-003” ### Changes with biggest functional or user impact (Required Format) Prefix with `**TOP:**` and place first under Added or Changed. ### Breaking Changes (Required Format) Prefix with `**Breaking:**` and place first under Changed or Removed. ## Examples ### Good CHANGELOG Entry ```markdown ## [4.0.0] - 2024-01-15 ### Changed - **Breaking:** Simplify configuration format — now uses single TOML file instead of multiple JSON files - Faster startup time through optimized dependency loading - More informative error messages for API authentication failures ### Added - Health check command (`birre health`) for service monitoring - `--dry-run` flag for testing commands without making changes - Security: API request signing for enhanced authentication ### Deprecated - Legacy synchronous mode (use async mode instead; sync removed in 5.0.0) ### Removed - **Breaking:** Drop support for Python 3.8 and 3.9 (minimum Python 3.10) - **Breaking:** Remove `--legacy-api` flag (API v2 is now default) ### Fixed - Resolve memory leak in long-running API polling - Correct timeout handling for slow network connections - Fix crash when API key contains special characters ### Security - Update dependencies to patch CVE-2024-XXXXX in httpx ``` ### Bad CHANGELOG Entry ```markdown ## [4.0.0] - 2024-01-15 ### Changed - Completed TD-003: Async/sync bridge simplification - Refactored sync_bridge.py from ~100 to ~50 lines - Replaced complex reusable event loop with Python 3.xx+ asyncio.run() - Achieved zero radon complexity violations ### Added - Implemented health check (see issue #45) ### Removed - Dropped old Python versions per deprecation policy ``` ## Version Numbers Follow Semantic Versioning: Major (breaking), Minor (features), Patch (fixes). ## Workflow Integration (authoring-relevant) 1. Before release: Update `CHANGELOG.md` with all user-facing changes. 2. On release: Ensure the entry matches the tag/version. 3. After release: No “Unreleased” section. ## Tools and Automation - Manual only: hand-written for quality and user focus. - No generators like conventional-changelog or git-cliff. - Commit messages capture technical detail; changelog captures user impact.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/boecht/bitsight-community-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server