Skip to content

Conversation

@ryderstorm
Copy link
Collaborator

@ryderstorm ryderstorm commented Oct 10, 2025

Why?

Establish the repository as an open-source ready project with clear licensing, contribution guidance, and quality automation so external collaborators can confidently adopt the spec-driven development workflow.

What Changed?

  • Licensing assets Added an Apache 2.0 LICENSE file and surfaced the license badge/section in README.md.
  • Documentation refresh Expanded README.md with project goals, workflow diagram, quick-start instructions, and reference links; introduced a comprehensive CONTRIBUTING.md.
  • Issue templates Created structured GitHub issue forms in .github/ISSUE_TEMPLATE/ for bugs, feature requests, and questions, plus enforcing configuration.
  • Automation workflows Added CI (Run tests and linting) and release pipelines under .github/workflows/, along with Chainguard semantic-release settings.
  • Tooling upgrades Established .pre-commit-config.yaml, updated pyproject.toml and uv.lock with pytest, ruff, and editable project metadata, and added placeholder tests in tests/test_placeholder.py.
  • Spec task tracking Documented task progress in tasks/0002-spec-open-source-ready.md and tasks/tasks-0002-spec-open-source-ready.md.
  • Assets Committed misc/header.png used by the refreshed README hero section.

Note: some of the stuff referenced in the README doesn't exist in this branch yet - this branch was originally based off of #2, which has the actual MCP server in it. I wanted to get this in before the other PR for reasons.

Summary by CodeRabbit

  • Documentation

    • Revamped README with Quick Start, workflow overview, diagrams, and license section.
    • Added CONTRIBUTING, LICENSE, and open-source readiness task docs.
  • Chores

    • Added standardized issue templates, issue-config, and a pull request template.
    • Enabled CI workflows for testing, linting, coverage, and automated releases.
    • Added pre-commit configuration and updated ignore rules.
  • Tests

    • Added a placeholder test to validate CI.

@ryderstorm ryderstorm self-assigned this Oct 10, 2025
@ryderstorm ryderstorm force-pushed the temp/opensource-it branch 3 times, most recently from 44e5c75 to 8379568 Compare October 10, 2025 21:12
ryderstorm and others added 6 commits October 10, 2025 17:14
Add comprehensive specification for preparing the repository for
open-source release under Apache 2.0 license. Includes task
breakdown covering:
- Apache 2.0 licensing artifacts (LICENSE, README updates)
- README refresh with visual asset and improved structure
- Contribution guidelines (CONTRIBUTING.md)
- GitHub issue templates (bug, feature, question)
- Semantic versioning and release documentation

Also update pre-commit config to exclude MD041 (first line heading)
rule to accommodate spec document format.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
Add Apache 2.0 license to repository with complete supporting
documentation:
- Add LICENSE file with official Apache 2.0 text
- Add license badge to README
- Add License section with file reference in README
- Update pyproject.toml with license field
- Exclude LICENSE from markdownlint checks
- Update task tracking (tasks 1.1-1.3 complete)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
- embed a header graphic to give the README a visual entry point
- add a mermaid sequence diagram that explains the SDD workflow
- reference CONTRIBUTING.md alongside the operations guide for contributors
- Adds CONTRIBUTING.md with setup, testing, commits, PRs, CoC placeholder

- References docs/operations.md and issue templates

- Runs tests and pre-commit hooks

- Updates task list: marks 3.1–3.5 and 3.0 complete

Related to tasks 0002
- Add bug, feature, and question forms using Issue Forms schema

- Add config to disable blank issues and link to docs

- Add title prefixes and default labels for triage

- Validate with pre-commit (check-yaml, markdownlint)

- Update 0002/4.0–4.5 tasks as completed
- add uv-based CI jobs for tests, linting, coverage, and commitlint
- configure semantic release with octo-sts identity and uv lock refresh
- align developer tooling via pre-commit defaults, coverage ignores, and pyproject metadata
- add placeholder pytest
@ryderstorm ryderstorm requested a review from a team October 10, 2025 21:22
@ryderstorm ryderstorm marked this pull request as ready for review October 10, 2025 21:24
@ryderstorm
Copy link
Collaborator Author

@coderabbitai full review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 10, 2025

✅ Actions performed

Full review triggered.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 10, 2025

Walkthrough

Adds open-source readiness assets: Apache-2.0 license, CONTRIBUTING, README updates, GitHub issue/PR templates and config, CI (tests/lint/coverage) and release workflows with STS, pre-commit configuration, gitignore updates, pyproject/tooling changes, task docs, and a placeholder test.

Changes

Cohort / File(s) Summary
Issue templates
.github/ISSUE_TEMPLATE/bug_report.yml, .../feature_request.yml, .../question.yml, .../config.yml
Adds structured bug/feature/question issue templates and config to disable blank issues and link documentation; enforces required fields and labels.
Pull request template
.github/pull_request_template.md
Adds PR template with why/what/additional notes and checklist.
CI workflow
.github/workflows/ci.yml
Adds GitHub Actions CI: Python 3.12 + uv, dependency caching, pytest with coverage and Codecov upload, ruff lint/format, and pre-commit checks; triggers on push/PR with path filters.
Release automation & STS
.github/workflows/release.yml, .github/chainguard/main-semantic-release.sts.yaml
Adds semantic-release workflow using octo-sts OIDC flow, configures Git identity and PAT usage, and STS policy restricting issuer/subject and permissions.
Repository metadata
LICENSE, CONTRIBUTING.md, README.md
Adds Apache-2.0 LICENSE, contributing guidelines, and expanded README with workflow overview, quick start, server instructions, prompts list, and license section.
Tooling & project config
.pre-commit-config.yaml, pyproject.toml, .gitignore
Adds pre-commit hooks (yaml, ruff, markdownlint, commitlint), updates pyproject with dependencies, build and tooling configs (ruff, pytest, semantic-release), and ignores coverage artifacts.
Tasks / planning docs
tasks/0002-spec-open-source-ready.md, tasks/tasks-0002-spec-open-source-ready.md
Adds OSS readiness task/spec documents listing goals, success criteria, and proof artifacts.
Tests
tests/test_placeholder.py
Adds a trivial test to exercise CI.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  actor Dev as Developer
  participant GH as GitHub
  participant CI as CI Workflow (ci.yml)
  participant Test as Pytest
  participant Lint as Ruff/Pre-commit
  participant Cov as Codecov

  Dev->>GH: Push / Open PR
  GH-->>CI: Trigger CI workflow
  CI->>CI: Setup Python 3.12 + uv, sync deps
  CI->>Test: Run pytest (collect coverage)
  Test-->>CI: coverage.xml + results
  CI->>Cov: Upload coverage
  CI->>Lint: Run ruff + pre-commit checks
  Lint-->>CI: lint results
  CI-->>GH: Report job statuses
Loading
sequenceDiagram
  autonumber
  participant GH as GitHub
  participant Release as Release Workflow (release.yml)
  participant STS as octo-sts/action
  participant SR as python-semantic-release

  GH-->>Release: workflow_run (success)
  Release->>STS: Request scoped OIDC token
  STS-->>Release: Provide GITHUB_TOKEN-equivalent
  Release->>Release: Checkout full history, configure git
  Release->>SR: Run semantic-release publish
  SR-->>GH: Create tag/release and update changelog
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

I thump my paws on freshly raked ground,
New burrow rules and trails abound.
CI breezes, lint winds comb my fur,
Releases hop when tokens purr.
Templates stack like carrots neat—
Now this warren feels complete. 🥕🐇

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The title concisely summarizes the primary goal of preparing the app for open-source release by standardizing its configuration and documentation, aligning with the PR’s key changes of adding licensing, guidelines, and automation.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch temp/opensource-it

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

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: 4

🧹 Nitpick comments (1)
.github/ISSUE_TEMPLATE/config.yml (1)

3-4: Fix the contact link repository

The documentation link goes to liatrio/spec-driven-development-mcp, which is a different repo. Contributors following it will hit the wrong project. Please point this link at the README for this repository instead.

Apply this diff:

-  - name: Documentation
-    url: https://github.com/liatrio/spec-driven-development-mcp#readme
+  - name: Documentation
+    url: https://github.com/liatrio-labs/spec-driven-workflow-mcp#readme
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 0e13d5e and 91371ad.

⛔ Files ignored due to path filters (2)
  • misc/header.png is excluded by !**/*.png
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (17)
  • .github/ISSUE_TEMPLATE/bug_report.yml (1 hunks)
  • .github/ISSUE_TEMPLATE/config.yml (1 hunks)
  • .github/ISSUE_TEMPLATE/feature_request.yml (1 hunks)
  • .github/ISSUE_TEMPLATE/question.yml (1 hunks)
  • .github/chainguard/main-semantic-release.sts.yaml (1 hunks)
  • .github/pull_request_template.md (1 hunks)
  • .github/workflows/ci.yml (1 hunks)
  • .github/workflows/release.yml (1 hunks)
  • .gitignore (1 hunks)
  • .pre-commit-config.yaml (1 hunks)
  • CONTRIBUTING.md (1 hunks)
  • LICENSE (1 hunks)
  • README.md (4 hunks)
  • pyproject.toml (1 hunks)
  • tasks/0002-spec-open-source-ready.md (1 hunks)
  • tasks/tasks-0002-spec-open-source-ready.md (1 hunks)
  • tests/test_placeholder.py (1 hunks)
🔇 Additional comments (1)
.github/workflows/ci.yml (1)

51-57: Verify Codecov token/app setup.

codecov/codecov-action@v4 will no-op without either a CODECOV_TOKEN secret or the Codecov GitHub App installed on this repo. That would silently drop coverage reports (the step prints a warning but still passes because fail_ci_if_error is false). Please confirm the integration/token is configured, or add it before merging.

ryderstorm and others added 3 commits October 10, 2025 18:03
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[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

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 91371ad and f57db48.

📒 Files selected for processing (3)
  • .github/chainguard/main-semantic-release.sts.yaml (1 hunks)
  • CONTRIBUTING.md (1 hunks)
  • README.md (4 hunks)
🚧 Files skipped from review as they are similar to previous changes (2)
  • .github/chainguard/main-semantic-release.sts.yaml
  • CONTRIBUTING.md

Copy link
Contributor

@iaminawe iaminawe left a comment

Choose a reason for hiding this comment

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

Looks good to me @ryderstorm - all the essential elements for open sourcing are in place and this looks like a good template for future open source projects.

@ryderstorm ryderstorm merged commit 11d3823 into main Oct 10, 2025
6 checks passed
@coderabbitai coderabbitai bot mentioned this pull request Oct 14, 2025
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.

3 participants