Skip to content

Feature: Robust Placeholder System and Output Formatting Engine #226

@miroslavpojer

Description

@miroslavpojer

Feature Description

Implement a configurable, extensible placeholder system for generated release notes, supporting advanced formatting capabilities such as:

  • New placeholder types (e.g., {closed-sub-issues-ratio}, custom contributors, etc.)
  • User-defined prefix/postfix support and row formatting controls
  • Contributor and user replacement mapping
  • Chapter line formatting

Problem / Opportunity

Current formatting via placeholders is inflexible for complex workflows: users are limited in the formatting of entries, cannot always add missing context or structure, and business requirements (such as custom contributor display or new rules for entry presence/ratio) are not easily satisfied by the template system. A robust system will improve output control for a range of documentation and compliance needs.

Acceptance Criteria

  • Users can add and use new placeholders in configuration.
  • Formatting supports prefix, postfix, and row-level control.
  • Contributors and co-authors are accessible via placeholders.
  • Placeholder parsing is fully unit-tested (edge cases).
  • Documentation includes usage and migration guides.
  • User replacement mapping is supported in configuration.

Proposed Solution

Build a flexible parsing engine for placeholders using a config-driven grammar. Enhance documentation and provide test cases for new features. Investigate backward compatibility layer or a migration guide for breaking changes.

Dependencies / Related

#205, #189, #80, #78, #76, #56, #97

Additional Context

This feature supports a wide range of release documentation requirements and is foundational for many governance and compliance use cases.

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions