agentleFS
WhatIfWeDigDeeperWhatIfWeDigDeeper/application-tracker/.github/copilot-instructions.md

application-tracker

Copilot instructions1 starsChanged 9 months agoMITView on GitHub

Scope: Repo-wide guardrails and navigation for GitHub Copilot Chat. Keep changes within this monorepo; respect existing workflows and Claude skills. When responding to PR review feedback, do not directly apply reviewer suggestions to files in .agents/skills/ — post a reply noting the suggestion will be addressed upstream instead. Skills sourced from WhatIfWeDigDeeper/agent-skills (e.g., pr-comments, ship-it, learn, playwright-cli) are maintained upstream; deliberate version upgrades or syncs via dedicated PRs are fine. Only project-owned files (scripts/, .vscode/, docs/, fastapi/, application source) are…

We split this copilot-instructions.md into the rules it gives an agent

14 rules. About 0 are common, 7 are distinctive, and 7 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 7

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Start here, then jump to the focused partials in .github/agents/ for on-demand detail.

    line 6
  2. Very specific:

    Keep CLAUDE.md and .github/copilot-instructions.md in sync for cross-cutting rule changes.

    line 9
  3. Very specific:

    Run the validation chain after meaningful code changes: build → lint → test → test:e2e.

    line 12
  4. Very specific:

    Prefer individual CRUD operations over batch replace for nested resources.

    line 13
  5. Distinctive:

    Use exact dependency versions (no ^ or ~).

    line 14
  6. Distinctive:

    Keep APIs/UI aligned with the shared schema and port mappings.

    line 15
  7. Distinctive:

    Use worktrees or subagents for 3+ parallel items.

    line 17
  8. Distinctive:

    Before raising PR feedback, read existing review threads and replies on the touched code.

    line 20
  9. Very specific:

    Validation limit changes: When updating max lengths in constants/schemas, grep for hardcoded boundary values in tests (e.g., repeat(1001)) …

    line 40
  10. Very specific:

    GitHub CLI pager fallback in VS Code: If gh opens the alternate buffer or exits 130 despite GH_PAGER=cat PAGER=cat, redirect output to a …

    line 41
  11. Very specific:

    Migrations: Prefer IF NOT EXISTS on CREATE SCHEMA / TABLE / INDEX — app_tracker is shared.

    line 43
  12. Distinctive:

    Cross-stack cleanup discovered mid-PR: If the PR exposes a problem it doesn't own (other stacks, shared tooling), file a cross-linked …

    line 44
  13. Distinctive:

    Rule writing: Every clause must be load-bearing (rule / non-obvious why / concrete example).

    line 45
  14. Distinctive:

    Ask for clarification if a requirement conflicts.

    line 53

≈ “Common” is an estimate: at least 1 in 5 of the 3,669 Copilot instructions files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
copilot-instructions.md

Copilot Instructions

Scope: Repo-wide guardrails and navigation for GitHub Copilot Chat. Keep changes within this monorepo; respect existing workflows and Claude skills.

How to Use This Guide

  • Start here, then jump to the focused partials in .github/agents/ for on-demand detail.
  • For automation recipes, see .github/agents/skills-index.md to leverage existing .claude/skills instead of duplicating them.
  • Honor CLAUDE.md rules: no new docs at repo root; prefer exact version pins; use worktrees for complex work.
  • Keep CLAUDE.md and .github/copilot-instructions.md in sync for cross-cutting rule changes.

Quick Rules

  • Run the validation chain after meaningful code changes: build → lint → test → test:e2e; skip only for trivial/docs-only edits.
  • Prefer individual CRUD operations over batch replace for nested resources; UI components expose onAdd/onUpdate/onRemove instead of onChange full-state diffs.
  • Use exact dependency versions (no ^ or ~); run audit checks before shipping.
  • Keep APIs/UI aligned with the shared schema and port mappings; see env/ports partial.
  • Rails API work lives in rails-api/ and uses Ruby 3.3+ with ActiveRecord against PostgreSQL schema ruby_rails on port 5180.
  • Use worktrees or subagents for 3+ parallel items.

Code Review

  • Before raising PR feedback, read existing review threads and replies on the touched code. Do not restate issues that were already answered, intentionally accepted, or deferred to a linked follow-up issue unless later commits materially changed the code or invalidated the earlier resolution.

Jump To Partials

  • Overview and tone: .github/agents/overview.md
  • Validation chain details: .github/agents/validation.md
  • Running and testing commands: .github/agents/running-and-testing.md
  • Env and ports: .github/agents/env-and-ports.md
  • E2E guidance: .github/agents/e2e.md
  • Dependencies and security: .github/agents/dependencies-security.md
  • Patterns (API/UI/testing): .github/agents/patterns.md
  • Workflows/CI expectations: .github/agents/workflows.md
  • Troubleshooting: .github/agents/troubleshooting.md
  • Skills index (reuse Claude skills): .github/agents/skills-index.md
  • Agent operating guide: .github/agents/AGENT.md

Agent Skills Policy

When responding to PR review feedback, do not directly apply reviewer suggestions to files in .agents/skills/ — post a reply noting the suggestion will be addressed upstream instead. Skills sourced from WhatIfWeDigDeeper/agent-skills (e.g., pr-comments, ship-it, learn, playwright-cli) are maintained upstream; deliberate version upgrades or syncs via dedicated PRs are fine. Only project-owned files (scripts/, .vscode/, docs/, fastapi/, application source) are in-scope for directly applying reviewer feedback.

Cross-Cutting Patterns

  • Validation limit changes: When updating max lengths in constants/schemas, grep for hardcoded boundary values in tests (e.g., repeat(1001)) — tests may silently pass with stale limits
  • GitHub CLI pager fallback in VS Code: If gh opens the alternate buffer or exits 130 despite GH_PAGER=cat PAGER=cat, redirect output to a temp file and inspect it in the editor or with CLI tools like cat, sed, or rg (for example, TMP=$(mktemp ...); gh pr view ... > "$TMP").
  • Shared tests: See tests/CLAUDE.md for API/E2E lifecycle, --runInBand, cleanup, and Playwright/WebKit quirks.
  • Migrations: Prefer IF NOT EXISTS on CREATE SCHEMA / TABLE / INDEX — app_tracker is shared; prior state may pre-exist.
  • Cross-stack cleanup discovered mid-PR: If the PR exposes a problem it doesn't own (other stacks, shared tooling), file a cross-linked follow-up issue instead of expanding the diff. List filed issues with URLs in the session summary.
  • Rule writing: Every clause must be load-bearing (rule / non-obvious why / concrete example). Cut restatements, redundant adverbs, and self-evident "why" tails.
  • PR body updates after push: Fetch the current body and modify in place via gh pr edit <pr> --body-file — never rewrite from scratch — so HTML-comment marker blocks (e.g. <!-- pr-human-guide -->) survive.
  • bundleDependencies defeats overrides: bump the parent, then run a full npm install (not --package-lock-only) so bundled-nested entries land in the lockfile — otherwise CI's npm ci fails with Missing: <pkg> from lock file.
  • Process new bot review feedback after each push to an open PR: After pushing to a PR branch, check for new bot review comments the push may have triggered and address them before reporting the push complete.

When in Doubt

  • Mirror existing implementations; prefer incremental changes with tests.
  • Link to .claude/skills via the skills index instead of rewriting guidance.
  • Ask for clarification if a requirement conflicts; document any deviations in PR descriptions.
  • Corrupted npm lockfile signatures: If package-lock.json contains absolute temp paths (for example ../../../../private/tmp/.../node_modules/*) and many "extraneous": true entries, npm ci may fail with platform errors (e.g. @esbuild/* EBADPLATFORM) even for optional deps. Fix by deleting node_modules and package-lock.json in that package, then running npm install to regenerate a clean lockfile.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.