docs(ospo): community health rollout v2 — README, agents.md, health files#1529
docs(ospo): community health rollout v2 — README, agents.md, health files#1529dj4oC wants to merge 2 commits into
Conversation
…iles Introduced by the Kiteworks Open Source Program Office (OSPO) on May 5, 2026. Changes: - README.md: rewritten with OSPO v2 template — license-specific migration guidance, Community & Support section, Contributing workflow, Security section pointing to security.owncloud.com + YesWeHack bug bounty - agents.md: AI agent context file with architecture, build commands, and OSPO Policy Constraints (GitHub Actions, Dependabot, Git Workflow) - CODE_OF_CONDUCT.md: redirect to https://owncloud.com/contribute/code-of-conduct/ - CONTRIBUTING.md: redirect to https://owncloud.com/contribute/ - SECURITY.md: redirect to https://security.owncloud.com + YesWeHack - SUPPORT.md: redirect to https://owncloud.com/contact-us/ + channels OSPO: https://kiteworks.com/opensource Signed-off-by: David Walter <david.walter@kiteworks.com>
ad2ee6d to
a541fa1
Compare
DeepDiver1975
left a comment
There was a problem hiding this comment.
🤖 Automated review by Claude Code review agent.
Overview
This PR rolls out the Kiteworks OSPO community-health template to owncloud/docs-server: it rewrites README.md and adds agents.md, CODE_OF_CONDUCT.md, CONTRIBUTING.md, SECURITY.md, and SUPPORT.md. The change is documentation-only and generally well structured. I verified the diff against the actual repository state (master) and checked every external link.
Good things confirmed:
- LICENSE matches: the README/agents.md state AGPL-3.0 and the repo
LICENSEis genuinely GNU AGPL v3. The "current vs target license" framing is accurate and appropriately cautious. - All external links resolve (HTTP 200): code-of-conduct, contribute, security.owncloud.com, YesWeHack, doc.owncloud.com, org discussions, Transifex, Matrix, and kiteworks.com/opensource.
- Internal links exist:
./docs/the-branching-workflow.mdand./docs/new-version-branch.mdboth exist;CONTRIBUTING.md/CODE_OF_CONDUCT.md/SECURITY.mdare added in the same PR. - Build/test claims are correct:
npm run antora,npm run antora-local,npm run serve, andnpm run linkcheckall exist inpackage.json;broken-link-checkerandhttp-serverare real devDependencies. Dependabot (.github/dependabot.yml) is indeed configured. The GitHub Actions SHA-pinning policy already matches reality (lint-pr-title.ymlpinsamannn/action-semantic-pull-requestto a full SHA).
Code quality / style
Clean, consistent Markdown. Sections are well organized and the OSPO/license-migration block is clearly worded. Mixed link styles (<https://...> autolinks vs bare URLs in SUPPORT.md) are cosmetic only.
Specific suggestions
-
Regression: README no longer documents the Conventional Commits / PR-title requirement. The old README opened with a prominent notice that the repo "uses Conventional Commits for commits and the Pull Request title." This repo actively enforces that via
.github/workflows/lint-pr-title.yml(action-semantic-pull-request), so a PR with a non-conventional title will fail CI. The rewritten README drops this entirely — it only survives insideagents.md. Please re-add a Conventional Commits note to the README Contributing/Workflow section so human contributors aren't surprised by a failing check. -
agents.md"Primary language(s): JavaScript" is inaccurate. This is an AsciiDoc documentation component — ~353.adocsource files vs ~8.jsfiles (build tooling only). Listing JavaScript as the primary language is misleading for an AI agent; consider "AsciiDoc (content); JavaScript (Antora build tooling)". -
Filename casing:
agents.mdvsAGENTS.md. The emerging cross-tool convention (and what several agents auto-discover) is uppercaseAGENTS.md. Lowercase may not be picked up automatically. Recommend renaming toAGENTS.mdfor the rollout to be effective. -
Duplication with existing
CLAUDE.md. The repo already contains aCLAUDE.md. Adding a parallelagents.mdrisks divergence over time. Consider whetherCLAUDE.mdshould point to (or be consolidated with) the newagents.mdso guidance stays single-sourced. -
Getting Started sequence is slightly redundant.
npm run antora-localalready produces the build intopublic/, andnpm run serve(http-server on default :8080) serves it. The instructions are correct, but a one-line note thatservehosts the output of the previous build (rather than a separate dev server) would prevent confusion.
Potential issues / risks
- Low risk overall — documentation only, no code or CI behavior changes.
- The only substantive correctness issue is suggestion (1): silently removing the documented Conventional Commits requirement while CI still enforces it can cause confusing PR failures for contributors. Worth fixing before merge.
- The
## Test planchecklist in the PR description is still unchecked; in particular "agents.md loads correctly in Claude Code and GitHub Copilot" interacts with suggestion (3) — verify discovery actually works with the lowercase filename, and note Copilot reads.github/copilot-instructions.mdrather thanagents.md.
DeepDiver1975
left a comment
There was a problem hiding this comment.
🤖 Automated review by Claude Code review agent.
Overview
This is the OSPO community health rollout v2 PR for owncloud/docs-server. It rewrites README.md with the v2 OSPO template and adds five community-health files: agents.md, CODE_OF_CONDUCT.md, CONTRIBUTING.md, SECURITY.md, SUPPORT.md. Net +189 / -22 across 6 files, targeting master.
This PR was reviewed at an earlier commit and now carries new commits (HEAD 5bb940a, 2 commits on the branch). The notes below reflect the current state and re-check the three issues flagged previously.
Verification against the repo (HEAD): LICENSE is genuinely AGPL-3.0 (README badge + License section correct), package.json contains antora, antora-local, serve, and linkcheck scripts (all referenced commands resolve), and antora.yml, site.yml, modules/, ext-antora/, ext-asciidoc/, global-attributes.yml, docs/the-branching-workflow.md, docs/new-version-branch.md all exist (paths valid).
Code quality / style
- The README is well structured and renders cleanly; section ordering and links are sensible.
- Redirect-style health files (CODE_OF_CONDUCT / CONTRIBUTING / SECURITY / SUPPORT) are concise and consistent.
- Minor inconsistency:
SUPPORT.mdandagents.mdmix bare URLs (https://github.com/orgs/owncloud/discussions) with angle-bracket autolinks (<https://...>) used elsewhere — cosmetic.
Re-check of previously flagged issues
-
README drops the Conventional Commits notice that CI still enforces — NOT fixed (in README).
The old README stated the repo uses Conventional Commits for the PR title. The v2 README removes this entirely. Confirmed.github/workflows/lint-pr-title.ymlstill runsamannn/action-semantic-pull-request@...onpull_request, i.e. Conventional-Commit PR titles are still enforced. Contributors reading only the README will hit a failing required check with no in-repo explanation. Partial mitigation:agents.mdnow documents the Conventional Commits + squash-merge requirement, but human contributors typically read the README, notagents.md. Recommend restoring a short "PR titles must follow Conventional Commits (enforced by CI)" line under README -> Contributing -> Workflow. -
agents.mdmislabels the primary language as JavaScript — NOT fixed.
agents.mdstill saysPrimary language(s): JavaScript. This is a documentation content repo:modules/contains AsciiDoc (admin_manual,developer_manual,classic_ui, ...) and the source is overwhelmingly.adoc. JavaScript only appears in the Antora build tooling. This is misleading context for AI agents (and the statedTest framework: broken-link-checkeris a link checker, not a test framework). RecommendPrimary language(s): AsciiDoc (docs content); JavaScript (Antora build tooling). -
Lowercase
agents.mdvsAGENTS.md+ duplication of existingCLAUDE.md— NOT fixed.
The file is still committed as lowercaseagents.md. The emerging cross-tool convention is uppercaseAGENTS.md; on case-sensitive filesystems tools looking forAGENTS.mdwill miss it. Separately, the repo already contains aCLAUDE.mdthat covers the same ground (Antora overview,npm install/npm run antoracommands, DCO). The newagents.mdlargely duplicates it, creating two agent-context files that can drift apart. Recommend either renaming toAGENTS.mdand havingCLAUDE.mdpoint to it (single source of truth), or consolidating.
Specific suggestions
- README "Getting Started" lists
npm run serve(servespublic/) but never runs a build that populatespublic/—npm run antora-localdoes the build. Either reorder soantora-localprecedesserve, or note thatserverequires a prior build. As written, a fresh clone running the three commands serves an empty directory. agents.mdGitHub Actions policy says onlyowncloud-owned /actions/*/ Marketplace-verified actions are allowed. The repo's ownlint-pr-title.ymlusesamannn/action-semantic-pull-request(third-party, though SHA-pinned and Marketplace-verified) — worth confirming this falls under the "verified Marketplace" carve-out so the policy doesn't appear self-violating.- The README "License Migration to Apache 2.0" section is long and forward-looking for a docs repo; it correctly notes AGPL-3.0 is current and Category-X. Fine to keep, but it dominates the README relative to the repo's actual purpose.
Potential issues / risks
- Contributor friction (highest impact): the missing Conventional-Commits guidance in README vs. an enforcing required CI check is a real UX regression — first-time contributors get a red check with no in-repo hint. Worth fixing before merge.
- Link risk:
https://security.owncloud.com, the YesWeHack program URL, and the Matrixapp.element.iodeep link were not load-verified here; the test-plan checkbox for link resolution is still unchecked — confirm before merge. - Low risk: redirect health files duplicate URLs that may change; acceptable for the rollout's consistency goals.
Overall: the factual claims that can be checked against the repo (license, paths, build scripts) are accurate. The three previously-flagged issues remain substantively unaddressed in the canonical locations (README + filename/language). Recommend addressing #1 (Conventional Commits in README) and #2 (language label) before merge; #3 (filename/dedup) is a convention cleanup.
Summary
This PR is part of the Kiteworks OSPO community health rollout (kiteworks.com/opensource), applied to all ~110 public ownCloud repositories starting May 5, 2026.
Test plan
🤖 Generated with Claude Code as part of the ownCloud OSPO rollout.
Kiteworks OSPO: https://kiteworks.com/opensource