Skip to content

Reformat roadmap - #210

Merged
leynos merged 9 commits into
mainfrom
reformat-roadmap
Feb 18, 2026
Merged

Reformat roadmap#210
leynos merged 9 commits into
mainfrom
reformat-roadmap

Conversation

@leynos

@leynos leynos commented Feb 18, 2026

Copy link
Copy Markdown
Owner

Summary by Sourcery

Reformat and expand project documentation around the roadmap and documentation standards without changing code or behaviour.

Documentation:

  • Restructure the roadmap into numbered phases, steps, and checkbox tasks with explicit cross-references to design documents and acceptance criteria.
  • Update the documentation style guide to reflect the current organisation, refine spelling and punctuation rules, and adjust guidance on Rust examples in docs.
  • Introduce detailed conventions and examples for roadmap formatting and add comprehensive guidelines and a template for Architectural Decision Records (ADRs).

Chores:

  • Tighten wording and terminology in roadmap and style-guide docs to improve consistency and maintainability.

Rewrite the roadmap to follow the documentation style guide for phases, steps, and dotted task numbering.

Preserve all existing roadmap tasks while regrouping work into balanced steps, splitting overburdened sections, and removing single-task steps.

Add explicit per-task citations to relevant design documents and parser specifications, and annotate cross-step dependencies with dotted task references where needed.
@coderabbitai

coderabbitai Bot commented Feb 18, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • Documentation

    • Major style-guide overhaul: updated branding, spelling/lexicon, punctuation and markdown tooling; added ADR templates, roadmap formatting conventions and examples; clarified public vs private documentation guidance and example placement.
    • Rewrote roadmap into a numbered, hierarchical plan with measurable tasks, subitems, cross-references and acceptance-style criteria.
  • Chores

    • Added a new project ignore pattern (".grepai/").

Walkthrough

Summarise changes: add .grepai/ to .gitignore; rename project references to "df12 Productions" in the documentation-style-guide; expand spelling, punctuation, Roadmap and ADR guidance; and restructure docs/roadmap.md into a numbered, hierarchical plan with explicit tasks and acceptance criteria.

Changes

Cohort / File(s) Summary
Configuration
/.gitignore
Add new ignore pattern .grepai/.
Documentation: Style Guide
docs/documentation-style-guide.md
Rename project references to "df12 Productions"; update spelling and punctuation guidance; switch markdownlint recommendation to markdownlint-cli2; revise public vs private documentation examples and example placement rules; add Roadmap formatting conventions and an ADR section with template.
Documentation: Roadmap
docs/roadmap.md
Replace Phase 1–6 bullets with a numbered, hierarchical structure (1, 1.1, 1.2…); convert items into enumerated tasks with nested subitems, acceptance criteria, tests/documentation links and design‑doc citations; reorganise phrasing and structure throughout.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~22 minutes

Poem

From Concordat reborn as df12's name,
The roadmap numbers march and stake their claim,
ADRs align with checklists neat and clear,
Spelling and style refine each line you peer,
Docs set the course — organised and game.

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title 'Reformat roadmap' directly reflects the main change: restructuring the roadmap into a numbered, hierarchical format with new formatting conventions.
Description check ✅ Passed The description comprehensively relates to all changeset components: roadmap restructuring, documentation style guide updates, and .gitignore additions.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch reformat-roadmap

Comment @coderabbitai help to get the list of available commands and usage tips.

@sourcery-ai

sourcery-ai Bot commented Feb 18, 2026

Copy link
Copy Markdown
Contributor

Reviewer's Guide

Reformats the project roadmap into a structured, numbered task hierarchy with cross-references to design docs, and extends the documentation style guide with roadmap conventions and ADR standards, plus some minor wording and punctuation updates.

Entity relationship diagram for numbered roadmap structure

erDiagram
    PHASE {
        int id
        string title
        string description
        bool complete
    }

    STEP {
        int id
        int phase_id
        string title
        string description
        bool complete
    }

    TASK {
        int id
        int step_id
        string title
        string description
        bool complete
        string dotted_number
        string success_criteria
    }

    DESIGN_DOC_SECTION {
        string path
        string section_reference
    }

    DEPENDENCY {
        int from_task_id
        int to_task_id
        string dotted_reference
    }

    PHASE ||--o{ STEP : contains
    STEP ||--o{ TASK : contains
    TASK }o--o{ DESIGN_DOC_SECTION : cites
    TASK ||--o{ DEPENDENCY : depends_on
Loading

Flow diagram for ADR authoring and lifecycle

flowchart TD
    A["Author identifies significant architectural decision"] --> B["Create new ADR file adr_NNN_short_description in docs directory"]
    B --> C["Fill mandatory sections: Status, Date, Context_and_problem_statement"]
    C --> D["Add conditional sections: Decision_drivers, Options_considered, Decision_outcome, Risks, etc."]
    D --> E["Review ADR with team and update Status to Accepted or keep as Proposed"]
    E --> F["If superseded, create new ADR and mark original as Superseded"]
    F --> G["Reference ADR from roadmap tasks and design documents"]
Loading

File-Level Changes

Change Details Files
Restructure roadmap into a numbered, task-oriented hierarchy with explicit dependencies and design-doc citations.
  • Replace informal phase-based roadmap narrative with numbered phases, steps, and tasks using dotted notation (e.g. 1, 1.1, 1.1.1) and GitHub checkbox lists.
  • Make each task more atomic and measurable, often splitting former bullets into multiple line items and adding inline acceptance criteria where needed.
  • Add explicit references to relevant design/spec documents and sections for most tasks to clarify provenance and intended behaviour.
  • Reorganise parser-related work into clearer subsections (lexing, CST, AST, grammar expansion, semantic analysis, linter engine, CLI, IDE integration) while preserving existing scope and completion status.
docs/roadmap.md
Tighten and generalise the documentation style guide, and introduce conventions for roadmaps and architectural decision records (ADRs).
  • Retarget the style guide from the previous project name to df12 software and clarify spelling guidance (OED reference, acceptable words, external API spelling, LICENSE naming) with typographic quote usage.
  • Adjust Rust doc-comment guidance for examples to distinguish between public and private functions and how to mark code blocks for tests.
  • Add a new "Roadmap formatting conventions" section that standardises dotted numbering, checkbox usage, dependency notation, success-criteria guidance, and design-doc citations, plus a concrete roadmap example.
  • Add a comprehensive ADR section specifying naming conventions, required/optional sections, formatting rules, and an ADR template for future architectural decisions.
docs/documentation-style-guide.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey - I've found 2 issues, and left some high level feedback:

  • In the ADR template, consider replacing the hard-coded Proposed. status with a placeholder (e.g. <Proposed | Accepted | Superseded | Deprecated>) so authors are nudged to choose the correct value instead of copy-pasting Proposed.
  • The ADR guidance section refers to Decision Drivers in the narrative but the template heading is ## Decision Drivers while the earlier list of "Required/Conditional sections" uses slightly different casing; aligning names and casing across those lists and the template will make the prescribed structure easier to follow.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- In the ADR template, consider replacing the hard-coded `Proposed.` status with a placeholder (e.g. `<Proposed | Accepted | Superseded | Deprecated>`) so authors are nudged to choose the correct value instead of copy-pasting `Proposed`.
- The ADR guidance section refers to **Decision Drivers** in the narrative but the template heading is `## Decision Drivers` while the earlier list of "Required/Conditional sections" uses slightly different casing; aligning names and casing across those lists and the template will make the prescribed structure easier to follow.

## Individual Comments

### Comment 1
<location> `docs/documentation-style-guide.md:173-174` </location>
<code_context>
+  - Phases: 1, 2, 3, …
+  - Steps: 1.1, 1.2, 1.3, …
+  - Headline tasks: 1.1.1, 1.1.2, 1.1.3, …
+- **Checkboxes:** Precede task and sub-task items with a GitHub-Flavoured
+  Markdown (GFM) checkbox (`[ ]`) to track completion status.
+- **Dependencies:** Note non-linear dependencies explicitly. Where a task
</code_context>

<issue_to_address>
**suggestion (typo):** Use the official product name “GitHub Flavored Markdown (GFM)”

Please update this reference to the official name: “GitHub Flavored Markdown (GFM)” (no hyphen, US spelling of “Flavored”), even if the rest of the guide uses British English.

```suggestion
- **Checkboxes:** Precede task and sub-task items with a GitHub Flavored
  Markdown (GFM) checkbox (`[ ]`) to track completion status.
```
</issue_to_address>

### Comment 2
<location> `docs/documentation-style-guide.md:305` </location>
<code_context>
+
+## Decision outcome / proposed direction
+
+<State the chosen or recommended approach and summarise the rationale.>
+
+## Known risks and limitations
</code_context>

<issue_to_address>
**suggestion (review_instructions):** “summarise” uses an -ise ending; en-GB-oxendict prefers the -ize form here.

To follow the en-GB-oxendict guidance specified earlier in this document, change “summarise” to “summarize” in this sentence.

<details>
<summary>Review instructions:</summary>

**Path patterns:** `**/*.md`

**Instructions:**
Use en-GB-oxendic (-ize / -yse / -our) spelling and grammar.

</details>
</issue_to_address>

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Comment thread docs/documentation-style-guide.md Outdated
Comment thread docs/documentation-style-guide.md Outdated

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/documentation-style-guide.md`:
- Around line 200-202: Replace the first occurrence of the acronym "RBAC" with
its expanded form by updating the checklist entry "1.2.1. Implement role-based
access control. Requires 1.1.1." so it reads "Implement role-based access
control (RBAC)" and ensure any subsequent uses remain as "RBAC"; target the
checklist item labeled "1.2.1." and the acronym "RBAC" in the surrounding items
(e.g., the bullet "Add RBAC middleware to API endpoints.") to keep the first-use
expansion consistent.

Comment thread docs/documentation-style-guide.md Outdated
Apply all current PR review comment requirements to the roadmap and ADR guidance sections.

Update product naming to "GitHub Flavored Markdown (GFM)", expand role-based access control (RBAC) on first use in the roadmap example, and correct the "summarize" spelling.

Normalize ADR template section heading casing and replace the hard-coded status value with a status placeholder so authors must choose the correct state.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
docs/documentation-style-guide.md (1)

140-152: ⚠️ Potential issue | 🟡 Minor

Wrap bullets and paragraphs at 80 columns.

Reflow the long bullet lines and ADR naming line to comply with the 80‑column limit for Markdown prose.

Proposed diff
-- Define outcomes, not intentions: Phrase tasks in terms of the capability
-  delivered (e.g. “Implement role-based access control for API endpoints”), not
-  aspirations like “Improve security”.
+- Define outcomes, not intentions: Phrase tasks in terms of the capability
+  delivered (e.g. “Implement role-based access control for API endpoints”),
+  not aspirations like “Improve security”.
-- Quantify completion criteria: Attach measurable finish lines (e.g. “90%
-  test coverage for new modules”, “response times under 200ms”, “all endpoints
-  migrated”).
+- Quantify completion criteria: Attach measurable finish lines (e.g. “90%
+  test coverage for new modules”, “response times under 200ms”, “all
+  endpoints migrated”).
-- Tie to dependencies and sequencing: Document prerequisites, so tasks can be
-  scheduled realistically (e.g. “Introduce central logging service” before “Add
-  error dashboards”).
+- Tie to dependencies and sequencing: Document prerequisites, so tasks can be
+  scheduled realistically (e.g. “Introduce central logging service” before
+  “Add error dashboards”).
-- Bound scope explicitly: Note both in-scope and out-of-scope elements (e.g.
-  “Build analytics dashboard (excluding churn prediction)”).
+- Bound scope explicitly: Note both in-scope and out-of-scope elements (e.g.
+  “Build analytics dashboard (excluding churn prediction)”).
-Name ADR files using the pattern `adr-NNN-short-description.md`, where `NNN` is
+Name ADR files using the pattern `adr-NNN-short-description.md`, where `NNN`
+is

Also applies to: 214-214

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@docs/documentation-style-guide.md` around lines 140 - 152, Reflow the long
Markdown bullets and the ADR naming line so no line exceeds 80 characters: edit
the listed bullets ("Define outcomes, not intentions:", "Quantify completion
criteria:", "Break into atomic increments:", "Tie to dependencies and
sequencing:", "Bound scope explicitly:") and the ADR naming line to wrap prose
at 80 columns while preserving wording and Markdown list structure; ensure
wrapped lines maintain sentence integrity (prefer breaking at clause boundaries)
and keep the same bullet markers and punctuation.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/documentation-style-guide.md`:
- Line 206: Change the heading "Architectural Decision Records (ADRs)" to
sentence case by rewriting it as "Architectural decision records (ADRs)" so it
conforms to the documentation-style rules; locate the heading text and replace
it with the new sentence-case heading exactly as shown.

---

Outside diff comments:
In `@docs/documentation-style-guide.md`:
- Around line 140-152: Reflow the long Markdown bullets and the ADR naming line
so no line exceeds 80 characters: edit the listed bullets ("Define outcomes, not
intentions:", "Quantify completion criteria:", "Break into atomic increments:",
"Tie to dependencies and sequencing:", "Bound scope explicitly:") and the ADR
naming line to wrap prose at 80 columns while preserving wording and Markdown
list structure; ensure wrapped lines maintain sentence integrity (prefer
breaking at clause boundaries) and keep the same bullet markers and punctuation.

Comment thread docs/documentation-style-guide.md Outdated
Update the documentation style guide heading to comply with the sentence-case rule.

Change "Architectural Decision Records (ADRs)" to "Architectural decision records (ADRs)" exactly as requested.
Replace "df12 software" with "software by df12 Productions" in the documentation style guide introduction to match the requested project wording.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/documentation-style-guide.md`:
- Around line 254-264: The three consecutive bullet lines under the "Formatting
guidance" heading all start with "Use", which triggers the style warning; edit
the bullets (e.g., the items that begin "Use second-level headings", "Use
third-level headings", and "Use tables to compare options") to vary sentence
structure—rewrite one or two to start with a phrase like "Prefer", "Adopt", or
reframe as an instruction starting with the object (e.g., "Second-level headings
(`##`) should be used for major sections")—keeping the same guidance and
examples (heading markers, table caption suggestion, code snippet advice) but
changing sentence openings to avoid repetition.

Comment thread docs/documentation-style-guide.md
Address PR feedback about repeated sentence starts in the ADR formatting guidance section.

Vary sentence openings across consecutive bullets while preserving the same guidance and meaning.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@docs/documentation-style-guide.md`:
- Around line 305-307: In the ADR template header "## Decision outcome /
proposed direction" update the placeholder text that currently reads "<State the
chosen or recommended approach and summarise the rationale.>" to use American
-ize spelling by replacing "summarise" with "summarize"; ensure only that token
is changed (keep surrounding punctuation and capitalization identical) so the
template now reads "<State the chosen or recommended approach and summarize the
rationale.>".

---

Duplicate comments:
In `@docs/documentation-style-guide.md`:
- Around line 255-263: The three bullets under the "Formatting guidance" heading
repeat the word "Use" and should be reworded for variety and flow: edit the
bullets beneath the "Formatting guidance" section so each starts differently
(e.g., "Prefer", "Apply", "Present", "Include") while preserving the same rules
and examples (second-level headings, third-level headings, tables with captions,
code snippets with language identifiers and no_run for Rust); update the four
existing bullet lines (the ones referencing headings, subsections, tables, and
code snippets) to distinct verbs/phrases so the guidance reads less repetitive
and keeps the original guidance intact.

Comment thread docs/documentation-style-guide.md Outdated
@leynos
leynos merged commit 87b1639 into main Feb 18, 2026
3 of 4 checks passed
@leynos
leynos deleted the reformat-roadmap branch February 18, 2026 20:08

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@docs/documentation-style-guide.md`:
- Around line 257-259: Reword the three consecutive bullet items that begin
"Use" (the lines "Use second-level headings (`##`) for major sections.", "Use
third-level headings (`###`) for subsections (e.g. phases, option names).", and
"Use tables to compare options when multiple dimensions are relevant. Include")
to vary sentence openings while preserving the guidance and examples; e.g.,
change one to "Second-level headings (`##`) should be used for major sections.",
another to "Format subsections with third-level headings (`###`) (e.g. phases,
option names).", and the third to "When multiple dimensions are relevant,
compare options using tables and include…" so the meaning and examples remain
identical but the repeated "Use" start is removed.

leynos added a commit that referenced this pull request Feb 18, 2026
* Update documentation style guide

* Ignore grepai index

* Restructure roadmap into phased task hierarchy

Rewrite the roadmap to follow the documentation style guide for phases, steps, and dotted task numbering.

Preserve all existing roadmap tasks while regrouping work into balanced steps, splitting overburdened sections, and removing single-task steps.

Add explicit per-task citations to relevant design documents and parser specifications, and annotate cross-step dependencies with dotted task references where needed.

* Align style guide with PR review feedback

Apply all current PR review comment requirements to the roadmap and ADR guidance sections.

Update product naming to "GitHub Flavored Markdown (GFM)", expand role-based access control (RBAC) on first use in the roadmap example, and correct the "summarize" spelling.

Normalize ADR template section heading casing and replace the hard-coded status value with a status placeholder so authors must choose the correct state.

* Use sentence case for ADR heading

Update the documentation style guide heading to comply with the sentence-case rule.

Change "Architectural Decision Records (ADRs)" to "Architectural decision records (ADRs)" exactly as requested.

* Use preferred df12 wording in style guide

Replace "df12 software" with "software by df12 Productions" in the documentation style guide introduction to match the requested project wording.

* Improve ADR formatting guidance readability

Address PR feedback about repeated sentence starts in the ADR formatting guidance section.

Vary sentence openings across consecutive bullets while preserving the same guidance and meaning.

* Additional documentation style guide improvements

* Fix missing -ize
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant