Skip to content

Migrate behavioural tests to rstest-bdd v0.5.0: code + docs + ExecPlan#263

Open
leynos wants to merge 6 commits intomainfrom
adopt-rstest-bdd-v0-5-0
Open

Migrate behavioural tests to rstest-bdd v0.5.0: code + docs + ExecPlan#263
leynos wants to merge 6 commits intomainfrom
adopt-rstest-bdd-v0-5-0

Conversation

@leynos
Copy link
Owner

@leynos leynos commented Feb 8, 2026

## Summary - This patch migrates Netsuke's behavioural tests to rstest-bdd v0.5.0, including code changes in the test suite, dependency upgrades, and updated documentation. It also adds a concrete ExecPlan and migration guidance to accompany the v0.5.0 changes.

Changes

  • Update development dependencies to the v0.5.0 family:
    • rstest-bdd = "0.5.0"
    • rstest-bdd-macros = { version = "0.5.0", features = ["strict-compile-time-validation"] }
    • Refresh Cargo.lock accordingly
  • Test suite updates to align with v0.5.0:
    • tests/bdd/steps/cli.rs: refine parse_cli to accept typed CliArgs instead of &str
    • tests/bdd/steps/manifest_command.rs: adopt PathString, CliArgs, and related typed wrappers
    • tests/bdd/types.rs: extend typed wrappers with From<&str> and FromStr impls
  • Documentation and guidance enhancements:
    • Add docs/developers-guide.md
    • Add docs/execplans/rstest-bdd-v0-5-0-behavioural-suite-migration.md
    • Add docs/rstest-bdd-v0-5-0-migration-guide.md
    • Update docs/rstest-bdd-users-guide.md to reflect v0.5.0 toolchain changes

This patch includes code changes to the behavioural test suite and accompanying documentation and ExecPlan updates to reflect the v0.5.0 migration.

Migration plan at a glance

  • Stage A: Baseline inventory and validation of the current behaviour-driven tests
    • Ensure baseline gates pass (fmt, lint, tests) and inventory is up to date
  • Stage B: Dependency upgrade to rstest-bdd 0.5.0 and rstest-bdd-macros 0.5.0
    • Regenerate lockfiles and resolve breaking changes
  • Stage C: Refactor for v0.5.0 ergonomics
    • Adopt inferred step patterns, async wrappers, and typed parameter wrappers
    • Narrow fixture shapes and enforce per-scenario isolation
  • Stage D: Expand coverage where v0.5.0 enables it
    • Add async-capable paths where beneficial; refine skip/isolation guidance
  • Stage E: docs hardening and final validation
    • Update developer/docs to reflect final strategy and run quality gates

The plan emphasizes behavioural parity, reduced boilerplate, and clear per-scenario isolation using v0.5.0 features.

Documentation highlights

  • docs/developers-guide.md: Defines testing workflow, quality gates, and behavioural testing strategy.
  • docs/execplans/rstest-bdd-v0-5-0-behavioural-suite-migration.md: Detailed ExecPlan with constraints, tolerances, risks, progress, decisions, and concrete steps for the behavioural migration.
  • docs/rstest-bdd-v0-5-0-migration-guide.md: Migration guide outlining breaking changes, patterns, and concrete migration notes.
  • docs/rstest-bdd-users-guide.md: Updated toolchain requirements, async pattern guidance, and migration considerations for v0.5.0.

Validation and testing plan

  • Validate baseline gates: make check-fmt, make lint, make test
  • Upgrade dependencies to rstest-bdd 0.5.0 and rstest-bdd-macros 0.5.0; refresh Cargo.lock
  • Run targeted tests (cargo test --test bdd_tests) and full test suite
  • Validate documentation updates and Markdown tooling (markdownlint, nixie, etc.)

Rationale

  • Providing centralized ExecPlan and updated developer/user guidance helps contributors understand the scope and strategy of migrating the behavioural tests to v0.5.0, ensuring alignment between code changes and documentation.

How to review

  • Review the migration plan for completeness and realism given the current repo layout
  • Check that the new docs reflect proposed v0.5.0 usage and branching points
  • Verify that the updated user guide captures Rust toolchain requirements and async patterns as described in the migration narrative
  • Confirm there are code changes in the test suite and that the changes are coherent with the v0.5.0 contract

Acceptance criteria

  • All new docs are present and coherent with the migration narrative
  • The v0.5.0 migration guide aligns with the executor plan and user expectations
  • Toolchain guidance in the user guide reflects the intended minimums and constraints
  • No regressions expected in existing codebase; baseline gates pass when executed in a subsequent PR implementing the migration

Related artifacts

  • 4 docs added/updated to reflect the migration plan and usage
  • Reference materials for contributors detailing how to approach Stage A–E moves

◳ Generated by DevBoxer ◰


Task: https://www.devboxer.com/task/5c3168d1-f2f1-46f2-955a-0d00e67f9d7a

Summary by Sourcery

Migrate the behavioural test suite and documentation to rstest-bdd v0.5.0, updating dependencies, step definitions, and guidance for async execution, state isolation, and language server diagnostics.

New Features:

  • Document async scenario execution, fixture-based state management, language-server navigation, and diagnostics in the rstest-bdd users guide.
  • Add a dedicated v0.5.0 migration guide and an ExecPlan describing the behavioural test migration, workflow, and validation steps.
  • Introduce a central developers guide that codifies Netsuke’s testing workflow, quality gates, and behavioural testing strategy.

Enhancements:

  • Update behavioural step definitions to use typed parameter wrappers and inferred step patterns, reducing boilerplate and clarifying domain semantics.
  • Extend test parameter wrapper types with From<&str> and FromStr implementations to integrate with rstest-bdd v0.5.0’s parsing model.
  • Clarify and expand documentation on runtime requirements, async patterns, fixture lifetimes, and language server capabilities in the rstest-bdd users guide.

Build:

  • Bump rstest-bdd and rstest-bdd-macros dev-dependencies to v0.5.0 with strict compile-time validation enabled and refresh Cargo.lock accordingly.

Documentation:

  • Lower the documented minimum Rust toolchain version and update toolchain guidance for rstest-bdd users.
  • Add detailed guidance for migrating from cucumber-rs patterns to rstest-bdd, including async usage and scenario isolation.
  • Document language server go-to-implementation behaviour and on-save diagnostics for steps, tables, docstrings, and scenario outlines.
  • Record the concrete execution plan and acceptance criteria for the behavioural test migration in an ExecPlan document.
  • Introduce a central developers guide that describes test layout, behavioural strategy, and rstest-bdd v0.5.0 usage rules.

Tests:

  • Align behavioural CLI and manifest command steps with v0.5.0 by accepting typed argument wrappers directly and simplifying conversions in the test suite.

leynos and others added 2 commits February 8, 2026 17:11
…v0.5.0

- Introduce `docs/developers-guide.md` detailing testing workflow, behavioural test strategy, and authoring policies.
- Add `docs/execplans/rstest-bdd-v0-5-0-behavioural-suite-migration.md` as a living ExecPlan for the migration to rstest-bdd v0.5.0.
- Include staged plan with constraints, risks, decisions, progress, and validation steps.
- Provide comprehensive context to ensure migration completeness and maintain test coverage.

This documentation will serve as the source of truth for contributors updating or maintaining the behavioural test suite during and after the migration.

Co-authored-by: devboxerhub[bot] <devboxerhub[bot]@users.noreply.github.com>
@sourcery-ai
Copy link
Contributor

sourcery-ai bot commented Feb 8, 2026

Reviewer's Guide

Migrates the behavioural test suite and documentation to rstest-bdd v0.5.0 by bumping dev-dependencies, refactoring BDD step implementations to use typed parameter wrappers and inferred patterns, and adding/updating guides and an ExecPlan that document the new v0.5.0 testing strategy, async patterns, and language-server features.

Sequence diagram for async_only_step in synchronous scenario with Tokio fallback runtime

sequenceDiagram
    actor Tester
    participant TestRunner
    participant ScenarioSync
    participant StepAsync
    participant TokioFallbackRuntime

    Tester->>TestRunner: run_tests
    TestRunner->>ScenarioSync: invoke_scenario_sync

    ScenarioSync->>ScenarioSync: execute_sync_steps
    ScenarioSync->>ScenarioSync: encounter_async_only_step
    ScenarioSync->>TokioFallbackRuntime: create_runtime_if_needed

    TokioFallbackRuntime->>StepAsync: run_step_async
    StepAsync-->>TokioFallbackRuntime: step_result
    TokioFallbackRuntime-->>ScenarioSync: return_step_result

    ScenarioSync->>TokioFallbackRuntime: drop_runtime
    ScenarioSync-->>TestRunner: scenario_result
    TestRunner-->>Tester: report_result
Loading

Flow diagram for migrating shared mutable World state to per_scenario fixtures

flowchart TD
    Start[Start_migration] --> HasSharedState{Suite_relies_on_shared_mutable_state_across_scenarios}

    HasSharedState -- Yes --> IdentifyWorld[Identify_global_World_structs_and_cross_scenario_mutation]
    HasSharedState -- No --> VerifyFixtures[Verify_existing_fixtures_follow_per_scenario_isolation]

    IdentifyWorld --> MoveToFixtures[Move_shared_mutable_data_into_scenario_local_fixtures_using_mut_refs_or_Slot]
    MoveToFixtures --> CheckInfra{Is_there_expensive_mostly_read_only_infrastructure}

    CheckInfra -- Yes --> UseOnce[Wrap_expensive_read_only_infra_in_once_fixtures]
    CheckInfra -- No --> PerScenarioOnly[Keep_all_fixtures_per_scenario_without_once]

    UseOnce --> RecreateData[Recreate_scenario_data_per_scenario_without_order_dependencies]
    PerScenarioOnly --> RecreateData

    VerifyFixtures --> ReserveInsertOwned[Reserve_StepContext_insert_owned_for_custom_plumbing_only]
    RecreateData --> ReserveInsertOwned

    ReserveInsertOwned --> UpdateDocs[Update_docs_and_templates_for_state_sharing_and_fixtures]
    UpdateDocs --> End[End_migration]
Loading

File-Level Changes

Change Details Files
Upgrade rstest-bdd dependencies to v0.5.0 with strict compile-time validation.
  • Bump rstest-bdd dev-dependency from 0.4.0 to 0.5.0.
  • Bump rstest-bdd-macros dev-dependency from 0.4.0 to 0.5.0 with strict-compile-time-validation feature.
  • Refresh Cargo.lock entries to match the new versions.
Cargo.toml
Cargo.lock
Refactor BDD step implementations to consume typed parameter wrappers directly and reduce boilerplate.
  • Change CLI parsing step to accept CliArgs instead of &str and pass it through directly.
  • Update multiple Then steps to accept PathString, TargetName, UrlString, ErrorFragment, ManifestOutputPath, DirectoryName, FileName, and CliArgs directly instead of constructing them from &str inside the step body.
  • Remove now-unnecessary clippy::shadow_reuse expectations around locally shadowed variables created during wrapper construction.
  • Adjust workspace path handling to use PathString.as_path() where appropriate and avoid manual &str-to-Path conversions.
tests/bdd/steps/cli.rs
tests/bdd/steps/manifest_command.rs
Enhance typed wrapper types to integrate with rstest-bdd v0.5.0’s parameter parsing.
  • Extend string-backed newtypes with From<&str> implementations for easier construction.
  • Implement FromStr for the same newtypes with Infallible error to enable direct use as step parameters in patterns like {name:string} and {path:string}.
  • Keep existing Display implementations intact for diagnostics and assertions.
tests/bdd/types.rs
Update and expand rstest-bdd user documentation for v0.5.0 features, toolchain requirements, async behaviour, fixtures, scenarios, and language server capabilities.
  • Lower documented minimum Rust version from 1.89.0 to 1.85 and adjust rust-version wording accordingly.
  • Clarify that step definitions can be sync or async, remove legacy async-trait discussion, and explain step wrappers normalizing results into StepExecution.
  • Tweak example scenario functions to avoid unused variable patterns and use underscore-prefixed parameters instead.
  • Add extensive new sections on state management across scenarios, fixture-based "world" modelling, StepContext::insert_owned usage, cucumber-rs migration notes, and antipatterns.
  • Document fixture injection with scenarios!, async scenario execution for #[scenario] and scenarios! including tokio-current-thread runtime, and recommended async patterns (async fixtures, per-step runtime fallback, manual async wrappers).
  • Explain limitations such as single-threaded Tokio requirement and nested-runtime safeguards.
  • Update guidance on compile-time validation features, version pins, and i18n-related rstest-bdd version usage.
  • Replace future-language-server features section with concrete descriptions of Go to implementation support and detailed diagnostics semantics (unimplemented steps, unused definitions, placeholder mismatches, table/docstring expectation mismatches, scenario-outline column issues) and their update behaviour.
docs/rstest-bdd-users-guide.md
Introduce a concrete ExecPlan and developer/migration guides to document the v0.5.0 behavioural test migration strategy and workflow.
  • Add an ExecPlan describing constraints, tolerances, risks, progress log, surprises, decision log, outcomes, and staged migration plan (Stages A–E) for moving behavioural tests to rstest-bdd v0.5.0, including concrete validation commands and acceptance criteria.
  • Add a v0.5.0 migration guide detailing behavioural changes vs 0.4.0 around scenario return types, async steps, fixture-based isolation, runtime fallback rules, and async wrapper paths, with code examples and a checklist.
  • Add a developers guide describing quality gates, test-suite layout, behavioural testing strategy (state/isolation policy, step authoring rules), rstest-bdd v0.5.0 usage rules, and workflow for adding/updating behavioural tests, emphasizing that docs must stay aligned with practice.
docs/execplans/rstest-bdd-v0-5-0-behavioural-suite-migration.md
docs/rstest-bdd-v0-5-0-migration-guide.md
docs/developers-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

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 8, 2026

Summary by CodeRabbit

  • Documentation

    • Added comprehensive developers guide, migration guide and users guide covering rstest-bdd v0.5.0, async scenarios, state/isolation and fixture patterns
    • Added execution plans documenting the behavioural-suite migration and related migration notes
  • Tests

    • Strengthened step parameters with strongly-typed wrappers and adjusted step names
    • Added From<&str>/FromStr conversions for test wrapper types
  • Chores

    • Bumped rstest-bdd dev-dependencies to v0.5.0 and added new test utilities (predicates, mockable, mockall, serial_test, test_support, strip-ansi-escapes)

Walkthrough

Upgrade rstest-bdd and its macros to v0.5.0, expand dev-dependencies, add comprehensive migration and developer guides, and refactor behavioural test steps and types to use strongly-typed newtype wrappers with From/FromStr impls replacing many string parameters.

Changes

Cohort / File(s) Summary
Dependency Changes
Cargo.toml
Bump dev-deps: rstest-bdd & rstest-bdd-macros → v0.5.0; add dev-dependencies: predicates, mockable, serial_test, mockall, test_support, strip-ansi-escapes.
Developer & Migration Docs
docs/developers-guide.md, docs/execplans/rstest-bdd-v0-5-0-behavioural-suite-migration.md, docs/execplans/3-7-3-translator-tooling-and-documentation.md
Add developer guide and ExecPlan for rstest-bdd v0.5.0 migration; minor formatting edits to translator execplan.
User Guide
docs/rstest-bdd-users-guide.md, docs/rstest-bdd-v0-5-0-migration-guide.md
Large user-guide revisions and dedicated v0.5.0 migration guide: async step patterns, fixture lifetimes, scenario isolation, wrappers, migration checklist and common errors.
Behavioural Test Types
tests/bdd/types.rs
Implement From<&str> and std::str::FromStr for newtype wrappers generated by define_newtype!, enabling construction from string slices.
Behavioural Test Steps
tests/bdd/steps/cli.rs, tests/bdd/steps/manifest_command.rs
Refactor step signatures to accept strongly-typed wrappers (e.g. CliArgs, PathString, TargetName, UrlString, ErrorFragment, DirectoryName, ManifestOutputPath, OutputFragment, FileName); rename several step functions (e.g. command_is_*the_command_is_*) and update parsing/usage accordingly.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

Types made tidy, strings cast aside,
Docs grown wide where decisions abide,
Steps now typed, their borders defined,
Migration mapped, each rule aligned,
Tests march forward with order and pride. ✨

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title directly and specifically identifies the main change: migration of behavioural tests to rstest-bdd v0.5.0, encompassing code updates, documentation, and an ExecPlan, which aligns with the substantive content of the changeset.
Description check ✅ Passed The description thoroughly details the migration scope, including dependency upgrades, test suite refactoring, documentation additions, migration stages, validation plan, and acceptance criteria, all of which are directly relevant to the changeset.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.

✏️ 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 adopt-rstest-bdd-v0-5-0

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

…terns

- Upgraded rstest-bdd and rstest-bdd-macros dependencies to v0.5.0 in Cargo.toml and Cargo.lock.
- Refactored BDD step functions to use typed wrappers with FromStr implementations, enabling direct domain type usage.
- Adopted inferred step patterns for simple no-argument steps to reduce boilerplate.
- Updated behavioural test documentation to reflect new usage guidelines.
- Completed migration plan stages from dependency bump through refactors to quality gates.
- Improved test clarity and maintenance by removing repetitive string conversions and explicit step patterns.

This improves test suite expressiveness and leverages new features introduced in rstest-bdd v0.5.0.

Co-authored-by: devboxerhub[bot] <devboxerhub[bot]@users.noreply.github.com>
@leynos leynos changed the title Plan migration of behavioural tests to rstest-bdd v0.5 Migrate behavioural tests to rstest-bdd v0.5: code + docs Feb 8, 2026
@leynos leynos marked this pull request as ready for review February 8, 2026 21:01
Copy link
Contributor

@sourcery-ai sourcery-ai bot left a comment

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:

  • The updated user guide now references cucumber-rs-migration-and-async-patterns.md, so please double‑check that this file (and any other newly referenced docs like ADR-001) actually exist in docs/ and that the relative links resolve correctly from all call sites.
  • In the new examples and guidance around async and fixtures, consider aligning the sample function signatures with what you recommend elsewhere (for example, using _scenario_db: ScenarioDb instead of let _ = scenario_db;) so readers see the idiomatic pattern you intend to enforce in real tests.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The updated user guide now references `cucumber-rs-migration-and-async-patterns.md`, so please double‑check that this file (and any other newly referenced docs like ADR-001) actually exist in `docs/` and that the relative links resolve correctly from all call sites.
- In the new examples and guidance around async and fixtures, consider aligning the sample function signatures with what you recommend elsewhere (for example, using `_scenario_db: ScenarioDb` instead of `let _ = scenario_db;`) so readers see the idiomatic pattern you intend to enforce in real tests.

## Individual Comments

### Comment 1
<location> `docs/developers-guide.md:1` </location>
<code_context>
+# Developers guide
+
+This guide describes the day-to-day engineering workflow for Netsuke, with a
</code_context>

<issue_to_address>
**suggestion (typo):** Consider correcting the title to use the possessive or singular form (e.g., "Developers' guide" or "Developer guide").

The current heading "Developers guide" is ungrammatical; please use a possessive or singular form to align with standard English usage.

```suggestion
# Developer guide
```
</issue_to_address>

### Comment 2
<location> `docs/rstest-bdd-users-guide.md:1159` </location>
<code_context>
+
+- **Tokio current-thread mode only:** Multi-threaded Tokio mode would require
+  `Send` futures, which conflicts with the `RefCell`-backed fixture storage.
+  See [ADR-001](adr-001-async-fixtures-and-test.md) for the full design
+  rationale.
+- **Nested runtime safeguards:** Async-only steps running in synchronous
</code_context>

<issue_to_address>
**suggestion (review_instructions):** The acronym "ADR" is introduced in "ADR-001" without being expanded on first use, which can confuse readers unfamiliar with the term.

Consider expanding ADR on first use, for example: `See Architecture Decision Record 001 (ADR-001) ...` or similar, so that the acronym is defined for readers who may not know what ADR stands for.

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

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

**Instructions:**
Define uncommon acronyms on first use.

</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.

…fter PR review

- Corrected heading grammar in developer's guide.
- Replaced stale or broken migration and ADR links with valid, existing documentation targets.
- Updated scenario fixture examples to use idiomatic `_scenario_db: ScenarioDb` without placeholders.
- Expanded acronyms on first use and aligned citations.
- Verified that linting and tests pass after documentation fixes.

These changes address feedback and comments from the PR review to ensure documentation accuracy and consistency.

Co-authored-by: devboxerhub[bot] <devboxerhub[bot]@users.noreply.github.com>
@leynos leynos changed the title Migrate behavioural tests to rstest-bdd v0.5: code + docs Migrate behavioural tests to rstest-bdd v0.5.0: code + docs + ExecPlan Feb 8, 2026
@leynos
Copy link
Owner Author

leynos commented Feb 8, 2026

@coderabbitai review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Feb 8, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@docs/developers-guide.md`:
- Around line 102-103: Summary: missing comma before "so" in the compound
sentence. Edit the sentence "When test strategy or behavioural test usage
changes, update this file in the same change-set so the documented approach
remains aligned with the codebase." and insert a comma before "so" so it reads
"...same change-set, so the documented approach remains aligned with the
codebase." Locate this sentence in docs/developers-guide.md and update the
punctuation accordingly.

…guidance

Co-authored-by: devboxerhub[bot] <devboxerhub[bot]@users.noreply.github.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@docs/developers-guide.md`:
- Around line 15-18: Replace the indented block containing the shell commands
with a fenced code block using a language identifier (use "bash" for these shell
commands) and ensure there are blank lines before and after the fenced block;
locate the current indented snippet ("set -o pipefail" / "make test 2>&1 | tee
/tmp/netsuke-make-test.log") and wrap it with ```bash and ``` fences so the
documentation follows the fenced-code-block rule.

- Add code block syntax to shell commands in developers-guide.md
- Fix table alignments and formatting in execplans and translators-guide.md
- Adjust line breaks and wording for better readability across guides
- No functional changes, documentation polish only

Co-authored-by: devboxerhub[bot] <devboxerhub[bot]@users.noreply.github.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@docs/execplans/3-7-3-translator-tooling-and-documentation.md`:
- Around line 94-99: Change the US spelling "localization" to British English
"localisation" in the documentation text that describes the netsuke localization
API; specifically update the running prose that references
LocalizedMessage::with_arg so it reads "netsuke localisation API
(`LocalizedMessage::with_arg`)" and ensure any other occurrences in that
paragraph use "localisation" to conform to en-GB-oxendict guidelines.

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