Skip to content

Develop#80

Merged
CedaryCat merged 4 commits intomainfrom
develop
Mar 16, 2026
Merged

Develop#80
CedaryCat merged 4 commits intomainfrom
develop

Conversation

@CedaryCat
Copy link
Owner

@CedaryCat CedaryCat commented Mar 16, 2026

Summary by Sourcery

Align repository branch workflow, versioning, and documentation around a develop → main → release/ model and introduce automated doc metadata checks in CI.

Build:

  • Update GitVersion branch configuration to drop the dedicated documentation branch and treat release/* as release execution branches cut from main.

CI:

  • Enhance the docs-check workflow to run .NET restore and a docs metadata sync check, and trigger on docs-related changes across main, develop, and release branches.

Documentation:

  • Rewrite and rename the branch workflow guides in English and Chinese to describe the develop/main/release flow and CI/release behavior.
  • Refresh the English and Chinese READMEs with clearer architecture, quick-start, and bundled TShock explanations, and link to the new branch workflow docs.

Chores:

  • Refresh SVG assets used in the README hero and quick-glance sections.

- expand README notes for first boot and the bundled TShock runtime
- rewrite the branch workflow guides and add zh-cn counterparts
- sync GitVersion and docs-check with the documented develop/main/release flow
@sourcery-ai
Copy link

sourcery-ai bot commented Mar 16, 2026

Reviewer's Guide

Refactors the documented branch workflow from a three-branch model to a develop→main→release/ model, aligns GitVersion and CI configuration with that workflow (including docs-only checks and release semantics), and expands both English and Simplified Chinese README and branch docs with clearer explanations plus localized counterparts.

Sequence diagram for the new release execution process

sequenceDiagram
  actor Dev as Developer
  participant GitHubRepo as GitHub_repository
  participant GitVersion as GitVersion_engine
  participant Actions as GitHub_Actions
  participant ReleasePage as GitHub_Releases

  Dev->>GitHubRepo: checkout main
  Dev->>GitHubRepo: create branch release_0_2_1 from main
  Dev->>GitHubRepo: push release_0_2_1

  GitHubRepo-->>Actions: push to release/* (build_workflow)
  Actions->>GitVersion: calculate_version(branch=release_0_2_1)
  GitVersion-->>Actions: version v0_2_1_rc_N
  Actions->>ReleasePage: create_or_update_alpha_prerelease

  Dev->>Actions: manual workflow_dispatch Build_and_Release
  Actions->>GitVersion: calculate_version(branch=release_0_2_1)
  GitVersion-->>Actions: version v0_2_1_rc_or_stable
  Actions->>ReleasePage: create_RC_or_stable_release

  Dev->>GitHubRepo: continue work on develop for next_cycle
Loading

Flow diagram for the updated develop_main_release branch workflow

flowchart TD
  subgraph Daily_development
    D[develop]
  end

  subgraph Stable_promotion
    M[main]
  end

  subgraph Release_execution
    R[release_x_y_z]
  end

  subgraph Short_lived_branches
    F[feature_my_change]
    B[bugfix_fix_issue]
    DOC[doc_update_docs]
  end

  F --> D
  B --> D
  DOC --> D

  D -->|stable_snapshot_PR| M
  M -->|cut_release_branch| R

  R -->|push_commits| R

  classDef dev fill:#d0ebff,stroke:#1c7ed6,color:#000
  classDef main fill:#d3f9d8,stroke:#2b8a3e,color:#000
  classDef release fill:#fff3bf,stroke:#f08c00,color:#000
  classDef short fill:#f8f0fc,stroke:#7048e8,color:#000

  class D dev
  class M main
  class R release
  class F,B,DOC short
Loading

File-Level Changes

Change Details Files
Redesigned branch workflow documentation to describe a develop→main→release/ model and deprecate the dedicated documentation branch.
  • Renamed the main guide to "Branch Workflow Guide" and rewrote it to focus on develop, main, and release/ roles and flows.
  • Documented local setup, day-to-day development, stable promotion, and release execution steps including CI behavior and GitHub Actions usage.
  • Clarified that release/ is the canonical branch prefix and that releases/* remains a legacy-compatible alias.
docs/branch-setup-guide.md
Updated documentation-check CI workflow to track the new branch model and add metadata sync validation.
  • Stopped triggering docs checks on the deprecated documentation branch and now trigger on main, develop, and release/** (plus legacy releases/**).
  • Added tools/sync-doc-metadata.ps1 to the watched paths for both push and pull_request events.
  • Introduced .NET setup and restore using DOTNET_VERSION and PROJECT_PATH env vars, and added a PowerShell step to run sync-doc-metadata.ps1 in check mode before printing a shorter validation summary.
.github/workflows/docs-check.yaml
Rewrote the quick-reference branch strategy doc to match the new workflow and CI behavior.
  • Retitled the doc to "Branch Workflow Quick Reference" and updated tables to describe develop, main, and release/ roles plus optional feature/bugfix/doc branches.
  • Replaced old examples (documentation branch, hotfix flows) with concise commands for normal work, stable promotions, and cutting release branches.
  • Summarized CI triggers and versioning notes in terms of docs-check/build workflows and release/* semantics.
docs/branch-strategy-quick-reference.md
Expanded English and Simplified Chinese READMEs with clearer architecture, quick-start, and bundled TShock explanations, and linked the new branch workflow docs.
  • Refined the high-level architecture description to emphasize single-process multi-world coordination, routing, and console isolation, in both English and Chinese READMEs.
  • Improved quick-start sections with role-based entry guidance, clearer first-boot behavior descriptions, and details on generated configs, plugin layout, and console windows.
  • Added detailed notes on the bundled TShock port (config layout, upstream tracking, multi-world behavior, reload semantics, and credits) to both READMEs.
  • Linked the new branch workflow guide and quick reference (both English and zh-CN) from the reference tables at the bottom of the READMEs.
README.md
docs/README.zh-cn.md
Aligned GitVersion configuration with the new branch workflow and simplified branch family semantics.
  • Clarified main, develop, feature, bugfix, hotfix, and release branch comments to describe stable promotions, daily integration, and optional short-lived work branches.
  • Removed the dedicated documentation branch configuration so docs changes no longer have a separate versioning lane.
  • Restricted release branches to be sourced from main only, while still supporting both release/ and releases/ via regex and keeping them as non-main branches with rc labels.
GitVersion.yml
Added Simplified Chinese versions of the branch workflow docs.
  • Created a zh-CN branch workflow guide mirroring the English content, including branch roles, local setup, daily development, stable promotion, release execution, and CI/version notes.
  • Created a zh-CN quick-reference doc with tables and command snippets aligned to the new develop→main→release/ flow and CI triggers.
  • Hooked these new zh-CN docs into the Chinese README reference section and cross-linked language toggles at the top of each doc.
docs/branch-setup-guide.zh-cn.md
docs/branch-strategy-quick-reference.zh-cn.md
Updated README hero/quick-glance assets to match the refreshed documentation (content not shown in diff).
  • Replaced or modified hero.svg under docs/assets/readme, likely to reflect updated branding or architecture depiction.
  • Replaced or modified quick-glance.svg to align with the new quick reference story and visuals.
docs/assets/readme/hero.svg
docs/assets/readme/quick-glance.svg

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

Copy link

@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 left some high level feedback:

  • The updated docs-check.yaml runs dotnet restore on src/ for any docs-only change; if this begins to impact CI time, consider either skipping the .NET setup/restore when only markdown/docs paths change or narrowing PROJECT_PATH to the minimal solution/project needed for sync-doc-metadata.ps1.
  • You’ve documented release/<version> as the canonical release branch prefix while still supporting releases/* in CI and GitVersion; consider adding a brief note in GitVersion.yml near the release regex to explain this dual support so future changes don’t accidentally drop the legacy alias.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- The updated `docs-check.yaml` runs `dotnet restore` on `src/` for any docs-only change; if this begins to impact CI time, consider either skipping the .NET setup/restore when only markdown/docs paths change or narrowing `PROJECT_PATH` to the minimal solution/project needed for `sync-doc-metadata.ps1`.
- You’ve documented `release/<version>` as the canonical release branch prefix while still supporting `releases/*` in CI and GitVersion; consider adding a brief note in `GitVersion.yml` near the `release` regex to explain this dual support so future changes don’t accidentally drop the legacy alias.

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.

@CedaryCat CedaryCat merged commit 07fbdc3 into main Mar 16, 2026
13 checks passed
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