Skip to content

docs: add developer documentation under /docs#155

Merged
petesramek merged 1 commit intodevelop/1.0from
copilot/add-documentation-for-workflows
Apr 3, 2026
Merged

docs: add developer documentation under /docs#155
petesramek merged 1 commit intodevelop/1.0from
copilot/add-documentation-for-workflows

Conversation

Copy link
Copy Markdown

Copilot AI commented Apr 3, 2026

Adds a /docs folder with developer-focused guides covering the areas of the project that lack written explanation: composite actions, testing conventions, benchmarks, CI workflows, branching/versioning pipeline, API doc generation, and extensibility.

New files

  • docs/README.md — index linking all sections
  • docs/local-development.md — build/test/format commands with correct config caveats (e.g. always use Release for tests)
  • docs/testing.md — project layout, MSTest conventions, data-driven tests, abstract-class testing pattern
  • docs/benchmarks.md — BenchmarkDotNet structure, writing benchmarks, full CLI flag reference, CI trigger variables
  • docs/composite-actions.md — catalogue of all 14 composite actions with inputs, outputs, usage context, and a template for adding new ones
  • docs/workflows.md — all 6 workflows with job-dependency tables, triggers, shared env vars, and a flow diagram showing how they chain
  • docs/branch-strategy.md — branch types, lifecycle diagram, protection rules, environment mapping
  • docs/versioning.md — branch naming → two-step extract-version / format-version pipeline with all output formulas and worked examples
  • docs/api-documentation.md — two DocFX manifests explained, publishing flow, how to add a new version to the site, local preview
  • docs/extensibility.md — how to subclass AbstractPolylineEncoder / AbstractPolylineDecoder for custom coordinate/polyline types, with examples drawn from existing benchmark code

Updated

  • CONTRIBUTING.md — new Developer Documentation section with links to all /docs articles

@petesramek petesramek marked this pull request as ready for review April 3, 2026 20:30
@petesramek petesramek merged commit eb72d7d into develop/1.0 Apr 3, 2026
1 check passed
@petesramek petesramek deleted the copilot/add-documentation-for-workflows branch April 3, 2026 21:16
petesramek added a commit that referenced this pull request Apr 3, 2026
…rhaul (#159)

## Overview

Promotes `develop/1.0` to `preview/1.0` in preparation for the 1.0
preview release. This batch brings in a full rewrite of the library's
core, docs, CI/CD pipeline, and test suite accumulated since the last
preview snapshot.

## What's included

### 🏗️ CI/CD & Workflows
- **New workflows**: `bump-version`, `promote-branch` with source-branch
enforcement, auto merge-to-main on release
- **Branch protection**: new `lock`/`unlock` composite actions;
`preview/**` and `release/**` branches are now automatically locked
after creation
- **Fix**: removed invalid `administration` permission from
`release.yml` that caused workflow parse failures (#158)
- **Fix**: corrected pull-request-finding logic in promote workflow
- **Docs publishing**: URL-aware version switcher via `docs-versioning`
template; `versions.json` manifest; reworked `generate-docs` job (#157)

### 📚 Documentation
- New `/docs` developer guides: local development, testing conventions,
benchmarks, composite actions catalogue, CI workflow reference, branch
strategy, versioning pipeline, API doc generation, extensibility guide
(#155)
- Updated API reference YAMLs for version 1.0
- Fixed grammar, TOC typo, and outdated API references in docs
- Updated `CONTRIBUTING.md` with links to all new docs articles
- Flushed `PublicAPI.Unshipped.txt`

### 🔧 Source (library)
- Refactored internal structure: `CoordinateDelta`,
`CoordinateVariance`, `Pow10`, `Defaults`, `ExceptionGuard`, logging
helpers
- Updated `PolylineEncoder`, `PolylineDecoder`, `PolylineEncoding`,
`PolylineEncodingOptions`, `PolylineEncodingOptionsBuilder`
- Public API cleanup; `.editorconfig` updated (primary constructors
disabled)

### ✅ Tests
- Reorganized test files into proper namespace folders (`Abstraction/`,
`Extensions/`, `Internal/`)
- Added new test classes for `CoordinateDelta`, `CoordinateVariance`,
`Pow10`, `ExceptionGuard`, `LogDebugExtensions`, `LogWarningExtensions`,
`InvalidPolylineException`, `PolylineEncodingOptionsBuilder`, and
encoder/decoder extensions
- Removed stale/duplicate test files

### 🛠️ Build & Config
- Cleaned up `PolylineAlgorithm.slnx`, `Directory.Build.props`,
benchmarks config
- Updated `.gitignore` to exclude dynamically generated
`api-reference/_docs/`
- Misc cleanup (removed junk files, updated `AGENTS.md`)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Pete Sramek <petr.sramek@dropoutcoder.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
petesramek pushed a commit that referenced this pull request Apr 4, 2026
)

## Overview

Promotes `preview/1.0` to `release/1.0` in preparation for the 1.0
release. This batch brings in a full rewrite of the library's core,
docs, CI/CD pipeline, and test suite accumulated since the last preview
snapshot.

## What's included

### 🏗️ CI/CD & Workflows
- **New workflows**: `bump-version`, `promote-branch` with source-branch
enforcement, auto merge-to-main on release
- **Branch protection**: new `lock`/`unlock` composite actions;
`preview/**` and `release/**` branches are now automatically locked
after creation
- **Fix**: removed invalid `administration` permission from
`release.yml` that caused workflow parse failures (#158)
- **Fix**: corrected pull-request-finding logic in promote workflow
- **Docs publishing**: URL-aware version switcher via `docs-versioning`
template; `versions.json` manifest; reworked `generate-docs` job (#157)

### 📚 Documentation
- New `/docs` developer guides: local development, testing conventions,
benchmarks, composite actions catalogue, CI workflow reference, branch
strategy, versioning pipeline, API doc generation, extensibility guide
(#155)
- Updated API reference YAMLs for version 1.0
- Fixed grammar, TOC typo, and outdated API references in docs
- Updated `CONTRIBUTING.md` with links to all new docs articles
- Flushed `PublicAPI.Unshipped.txt`

### 🔧 Source (library)
- Refactored internal structure: `CoordinateDelta`,
`CoordinateVariance`, `Pow10`, `Defaults`, `ExceptionGuard`, logging
helpers
- Updated `PolylineEncoder`, `PolylineDecoder`, `PolylineEncoding`,
`PolylineEncodingOptions`, `PolylineEncodingOptionsBuilder`
- Public API cleanup; `.editorconfig` updated (primary constructors
disabled)

### ✅ Tests
- Reorganized test files into proper namespace folders (`Abstraction/`,
`Extensions/`, `Internal/`)
- Added new test classes for `CoordinateDelta`, `CoordinateVariance`,
`Pow10`, `ExceptionGuard`, `LogDebugExtensions`, `LogWarningExtensions`,
`InvalidPolylineException`, `PolylineEncodingOptionsBuilder`, and
encoder/decoder extensions
- Removed stale/duplicate test files

### 🛠️ Build & Config
- Cleaned up `PolylineAlgorithm.slnx`, `Directory.Build.props`,
benchmarks config
- Updated `.gitignore` to exclude dynamically generated
`api-reference/_docs/`
- Misc cleanup (removed junk files, updated `AGENTS.md`)
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.

2 participants