From c39b48d1ac2fa3d2959d64718662143e14de67db Mon Sep 17 00:00:00 2001 From: Sriram Veeraghanta Date: Thu, 12 Nov 2026 01:36:35 +0530 Subject: [PATCH 1/2] docs: verify and refresh repo documentation against the code Audit every Markdown doc in the repo against the current code and config and fix what had drifted: - README, CONTRIBUTING, AGENTS, SECURITY: versions, setup steps, PR flow, i18n structure, private vulnerability reporting, Forum instead of GitHub Discussions, broken links - linting, copyright check, Copilot instructions: match oxlint/oxfmt config, the CI copyright check and the repo's TS settings - apps/api docs: test runner, fixtures, routes, openapi and exporters module contents; mark the Django 5.2 plan as done - deployments: CLI menu/backup/restore/env vars, AIO services, secrets, build and env precedence, Helm install steps - packages: decorators, logger, editor, codemods and tailwind-config docs rewritten from the real exports and tokens; skill docs updated --- .claude/skills/branch-name/SKILL.md | 6 +- .claude/skills/translate/SKILL.md | 34 +++--- .github/ISSUE_TEMPLATE/config.yaml | 3 +- .github/instructions/bash.instructions.md | 17 ++- .../instructions/typescript.instructions.md | 36 +++++-- AGENTS.md | 14 ++- CONTRIBUTING.md | 100 ++++++++++-------- COPYRIGHT_CHECK.md | 25 +++-- README.md | 16 +-- SECURITY.md | 17 +-- apps/api/docs/django-5.2-migration-plan.md | 4 +- apps/api/plane/tests/README.md | 47 ++++---- apps/api/plane/tests/TESTING_GUIDE.md | 76 +++++++------ apps/api/plane/utils/exporters/README.md | 28 +++-- apps/api/plane/utils/openapi/README.md | 73 +++++-------- apps/api/tests/RUNNING_TESTS.md | 16 +-- apps/space/README.md | 17 +++ deployments/aio/community/README.md | 41 ++++--- deployments/aio/community/variables.env | 6 +- deployments/cli/community/README.md | 80 ++++++++------ deployments/kubernetes/community/README.md | 10 ++ docs/linting.md | 33 ++++-- packages/codemods/instructions.md | 68 +++++++----- packages/decorators/README.md | 47 ++++---- packages/editor/Readme.md | 80 +++++++------- packages/logger/README.md | 26 ++--- packages/tailwind-config/AGENTS.md | 31 ++---- 27 files changed, 536 insertions(+), 415 deletions(-) diff --git a/.claude/skills/branch-name/SKILL.md b/.claude/skills/branch-name/SKILL.md index a6fc6e55cb61..717933991180 100644 --- a/.claude/skills/branch-name/SKILL.md +++ b/.claude/skills/branch-name/SKILL.md @@ -1,12 +1,12 @@ --- name: branch-name -description: Use when starting a new branch or renaming an existing one — produces a branch name in the format `/-` that's compatible with the create-pr skill's work item ID extraction. +description: Use when starting a new branch or renaming an existing one — produces a branch name in the format `/-` that's compatible with the create-pull-request skill's work item ID extraction. user_invocable: true --- # Branch Naming -Create branch names that follow the convention `/-`, where the work item ID can be cleanly extracted later (e.g., by the create-pr skill). +Create branch names that follow the convention `/-`, where the work item ID can be cleanly extracted later (e.g., by the create-pull-request skill). ## Format @@ -51,7 +51,7 @@ Create branch names that follow the convention `/- **Note on the consolidated row.** CLDR itself only requires `other` for `tr-TR`, `vi-VN`, `id`, `ja`, `ko`, `zh-CN`, `zh-TW` (single-form locales). Emitting both `one` and `other` with identical content is a **project convention** — it keeps tooling and linters consistent across the codebase. It is not a CLDR requirement, and `Intl.PluralRules` will return only `"other"` for these locales at runtime. @@ -469,7 +469,7 @@ When reviewing a translation — yours or an AI's — score against these catego A "namespace" is a top-level JSON file (e.g. `common.json`, `auth.json`, `epic.json`). The set of valid namespace names is a hard-coded const array — adding a JSON file alone is not enough; the runtime will not load it. 1. Add the new namespace name to the `NAMESPACES` array in `packages/i18n/src/constants/namespaces.ts`. Keep alphabetical order with the existing entries. -2. Create `.json` in **every** locale directory under `packages/i18n/src/locales/` — start with `en/.json` (the source of truth), then create the file in all 18 target locales. An empty `{}` is fine for the targets at this step; `sync-check` will report missing keys as you add them in step 4. +2. Create `.json` in **every** locale directory under `packages/i18n/src/locales/` — start with `en/.json` (the source of truth), then create the file in every target locale (21 today; `ls packages/i18n/src/locales`). An empty `{}` is fine for the targets at this step; `sync-check` will report missing keys as you add them in step 4. 3. Add at least one key in `en/.json` so the namespace has content. 4. Translate every key from `en/.json` into each target locale — apply every rule in this skill. 5. Run `pnpm --filter @plane/i18n run generate:types` to regenerate the `TTranslationKeys` union so component-level `t()` calls type-check. diff --git a/.github/ISSUE_TEMPLATE/config.yaml b/.github/ISSUE_TEMPLATE/config.yaml index 301080b75900..cf159ef8bd81 100644 --- a/.github/ISSUE_TEMPLATE/config.yaml +++ b/.github/ISSUE_TEMPLATE/config.yaml @@ -1,6 +1,7 @@ contact_links: - name: Help and support - about: Reach out to us on our Forum or GitHub discussions. + url: https://forum.plane.so + about: Ask questions and get help from the community on our Forum. - name: Dedicated support url: mailto:support@plane.so about: Write to us if you'd like dedicated support using Plane diff --git a/.github/instructions/bash.instructions.md b/.github/instructions/bash.instructions.md index b14d3c9eda62..892d25e348c1 100644 --- a/.github/instructions/bash.instructions.md +++ b/.github/instructions/bash.instructions.md @@ -10,23 +10,32 @@ This document outlines the standard tools and commands used in this monorepo. ## Package Manager We use **pnpm** for package management. + - **Do not use `npm` or `yarn`.** - Lockfile: `pnpm-lock.yaml` - Workspace configuration: `pnpm-workspace.yaml` ### Common Commands + - Install dependencies: `pnpm install` - Run a script in a specific package: `pnpm --filter run