Skip to content

Add FAQ documentation#11

Closed
kmadan wants to merge 1 commit into
mainfrom
feature/add-faq-documentation
Closed

Add FAQ documentation#11
kmadan wants to merge 1 commit into
mainfrom
feature/add-faq-documentation

Conversation

@kmadan
Copy link
Copy Markdown
Contributor

@kmadan kmadan commented Jun 30, 2025

This PR adds FAQ documentation to help users understand how to use Gopal, write policies, and integrate with other systems.

Changes

  • Added docs/FAQ.md with comprehensive frequently asked questions
  • Updated README.md to reference the new FAQ documentation

Testing

  • Documentation is properly formatted
  • Links are working correctly
  • Content is accurate and helpful

Resolves the need for better user documentation and onboarding materials.


Pull Request opened by Augment Code with guidance from the PR author

@kmadan
Copy link
Copy Markdown
Contributor Author

kmadan commented May 14, 2026

Superseded by #14, which cherry-picks the FAQ.md content from this PR into a comprehensive docs/marketing overhaul. The README changes from this PR removed badges and the mermaid chart that #14 instead expands on — so closing this in favor of #14.

@kmadan kmadan closed this May 14, 2026
kmadan added a commit that referenced this pull request May 14, 2026
…ls, AGENTS.md, FAQ (#14)

* docs(readme): rewrite hero, add 5 marketing diagrams, framework grid

Restructure the README to read like a product page:

- Centered HTML hero with the tagline "The Rego policy library for AI
  compliance" and the value-prop punch line "94 policies. 15+ regulatory
  frameworks. 5 industry verticals."
- Ordered 9-badge wall (CI, Stars, Version 1.0.0, OPA, Regal, Apache
  2.0, Policy count, Framework count, PRs Welcome).
- Language-switcher row anchoring four upcoming translations.
- Five embedded marketing diagrams (PNG, each <140 KB), generated by a
  reproducible matplotlib script under diagrams/generate_diagrams.py:
    1. Hero numbers (94 / 15+ / 5)
    2. Directory tree (international / industry / global / operational)
    3. Anatomy of a Rego policy (annotated example)
    4. Framework grid (the 15+ frameworks with policy counts)
    5. Evaluation flow (input.json -> opa eval -> verdict)
- A "Why GOPAL" differentiation section vs. generic OPA bundles and
  vendor governance SaaS, including a comparison table.
- A "What's Inside" section enumerating every framework with its exact
  policy count (29 EU AI Act, 17 aviation, 12 education, 9 global, …).
- An "Authoring Policies" section showing the canonical Rego file
  anatomy, the strict CI gates (opa check + regal lint), and the
  helper_functions/ library that policy authors compose with.
- A "Custom Policies" section formalising the git-ignored custom/
  contract for downstream organisations.

The README now leads with the headline numbers, shows the directory
map, and reaches the comparison table before any setup instructions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(i18n): add Simplified Chinese, Japanese, Korean, and Hindi READMEs

Full README translations for four large developer markets:

- README.zh-CN.md — Simplified Chinese (mainland register)
- README.ja-JP.md — Japanese (technical です/ます register)
- README.ko-KR.md — Korean (-습니다/-입니다 formal)
- README.hi-IN.md — Hindi (Devanagari with selective Latin retention
  for technical terms that read awkwardly when transliterated)

Each translation:

- Mirrors the English README structure exactly (headings, tables, code
  blocks, image refs, badges all preserved).
- Includes the language switcher with the current language rendered as
  plain <strong> text and the others as anchor links.
- Keeps regulation names (EU AI Act, NIST AI RMF, FERPA, COPPA, FAA Part
  107, EASA SORA, RTCA DO-365/366, ICAO Doc 10019) and product names
  verbatim — they are recognized internationally.
- Uses consistent translated terminology for "policy", "compliance",
  "audit", "framework", "regulation", "evaluation", and "human
  oversight" across both this repo and the sister AICertify repo.

Compliance, AI governance, and aviation-safety topics are hot in the JP,
KR, CN, and IN markets; translating now lowers the discovery barrier for
the millions of developers and compliance engineers in those regions.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs(agents): add AGENTS.md, CLAUDE.md, refresh GEMINI.md

Establish the canonical operational guide for AI coding assistants
working in this repository, with platform-specific overlays.

AGENTS.md (new) — the inheritance root:

- What GOPAL is (94-policy Rego library, two consumption modes:
  standalone via the OPA CLI or as the policy engine for AICertify).
- Repository layout with the role of each subdirectory.
- Useful commands (opa check, regal lint, opa eval, opa test).
- A full "Authoring a new policy" section detailing the mandatory file
  contents: package path must match directory path, METADATA block with
  title/description/version/source, default deny, sibling _test.rego,
  framework-level README with source + disclaimer.
- The CI quality gate.
- Conventions (one concept per file, boolean output, pure functions of
  input and data, no I/O, stable package paths).
- Versioning model (v1, v2 directories under semver guarantees).
- What NOT to do (no edits under custom/, no untested policies, no
  Styra-only Regal features, no false claims of full coverage).

CLAUDE.md (new) — inherits AGENTS.md and adds Claude Code-specific
fast-orientation paths, TodoWrite usage, gate-running, and pointers to
the skills/ directory.

GEMINI.md (refreshed) — preserves the author's pre-existing general
working principles (poetry, surgical changes, self-critique, 600-line
file cap, multi-repo discipline) and adds a Rego-authoring quick
reference plus a pointer back to AGENTS.md as the canonical guide.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* feat(skills): add 3 Claude Code skills for policy and framework work

Ships three installable Claude Code skills under skills/. Each subfolder
contains a SKILL.md with YAML frontmatter; users register them with:

    mkdir -p ~/.claude/skills && cp -r skills/* ~/.claude/skills/

Skills:

- /draft-rego-policy <domain> <framework> <policy_name>
    Scaffolds a new Rego policy + test file matching GOPAL's strict
    authoring conventions: package path mirroring directory, METADATA
    block (title, description, version, source), default deny, reporting
    helper integration, and a sibling _test.rego covering both allow
    and deny paths. Runs the opa check + regal lint gates and refuses
    to silence Regal warnings without explicit approval.

- /explain-framework <framework path>
    Walks every .rego in a framework directory and produces an
    audit-grade plain-English summary: per-policy package, title,
    description, rule translation, and source link. Explicitly flags
    placeholder policies (empty bodies, default-only rules, TODO
    comments) so coverage claims stay honest.

- /add-framework <domain> <framework_name> <official_source_url>
    Bootstraps a brand-new regulatory framework directory: creates the
    v1/ subtree, scaffolds a framework README with the canonical source
    + disclaimer template, writes a seed applicability policy and its
    test, and updates the top-level README's coverage table. Refuses
    to create misc/ catch-all directories.

A first-time Claude Code user who clones GOPAL can run /add-framework
and have a publishable v1/ tree (with passing CI gates) in minutes.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs: start CHANGELOG.md in Keep-a-Changelog format

Begin tracking notable changes in the standard Keep-a-Changelog 1.1.0
format, with an explicit Semver commitment cross-referencing the
existing COMPATIBILITY.md. The initial file covers:

- An [Unreleased] section capturing this docs/marketing overhaul: the
  hero rewrite, 5 generated diagrams, AGENTS.md + CLAUDE.md, the
  refreshed GEMINI.md, the Claude Code skills directory, the comparison
  table, and the diagram generator script.

- A [1.0.0] section reconstructing the visible v1 milestones from the
  recent git history: the aviation industry expansion (17 policies,
  1,635+ LOC of new aviation-compliance code, RTCA/ASTM/FAA/EASA/ICAO
  policies), the education industry (FERPA/COPPA/proctoring/grading,
  12 policies), automotive, Brazil AI governance, India digital policy,
  NIST AI RMF (Govern/Map/Measure/Manage + AI 600-1), the
  helper_functions/ library (reporting.rego, validation.rego), the
  custom/ contract for org-private policies, and the CI gate
  (opa check + regal lint at pre-commit and in workflows).

Also captures the steady stream of Regal lint clean-ups
(non-loop-expression, messy-rule, NIST unsafe-variable fixes,
ferpa_compliance refactors).

Future releases should append [X.Y.Z] - YYYY-MM-DD sections. The
changelog also serves as crawler-visible evidence of velocity and
breadth for anyone evaluating maintenance health.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* build(pypi): correct license, fix homepage URL, add keywords/classifiers

Make pyproject.toml ready for "pip install gopal" once we publish to
PyPI. Several pre-existing issues fixed in this commit:

- License correction. The classifier and license-file path previously
  asserted MIT, but the LICENSE file in the repo is Apache 2.0. Replace
    license = {file = "LICENSE"}
    classifiers = ["License :: OSI Approved :: MIT License", ...]
  with the SPDX form
    license = "Apache-2.0"
    classifiers = ["License :: OSI Approved :: Apache Software License", ...]
  This was a meaningful inaccuracy — under MIT users could distribute
  modifications without patent grants; the real LICENSE provides those.

- Homepage URL correction. The previous URLs pointed at
  https://github.com/mantric/gopal which 404s. Update to the canonical
  https://github.com/Principled-Evolution/gopal across all
  [project.urls] entries.

- Add 15 PyPI keywords for search ranking: ai-governance, ai-compliance,
  ai-act, eu-ai-act, nist-ai-rmf, open-policy-agent, opa, rego,
  policy-as-code, regulatory-compliance, aviation-safety, ferpa, coppa,
  fair-lending, responsible-ai.

- Add 11 PyPI classifiers including audience hints (Developers,
  Information Technology, Legal Industry, Science/Research) and topic
  classifications (Artificial Intelligence, Security, Quality
  Assurance). Mark Development Status :: 5 - Production/Stable matching
  the v1.0.0 release.

- Add a richer [project.urls] block: Homepage, Repository,
  Documentation, Issues, Changelog, and a cross-link to the AICertify
  consumer project.

- Update the description to mention concrete numbers (94 policies, 15+
  frameworks, 5 verticals) for better search snippet quality.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(github): add issue templates and PR template

Lower the friction to contribute and to report problems by giving
GitHub something to render in the "New Issue" picker and the PR
description box.

Issue templates under .github/ISSUE_TEMPLATE/:

- bug_report.md — captures the failing command, a minimal input.json,
  expected vs actual behavior, and OPA/Regal versions. Optimised for
  reproducibility, not free-form description.

- new_framework.md — for proposing coverage of a regulation, standard,
  or industry framework GOPAL doesn't yet track. Required fields:
  official source URL, jurisdiction, status (proposed/in force), the
  articles to cover in v1, and whether the requester can contribute the
  initial .rego.

- new_policy.md — for proposing a specific policy within an existing
  framework. Required fields: source article, plain-English rule, input
  shape, and at-minimum allow/deny test scenarios.

PR template (.github/PULL_REQUEST_TEMPLATE.md):

- Categorises change type (new policy / new framework / MINOR update /
  MAJOR update with new v2 directory / bug fix / tooling).
- Includes a checklist enforcing the project's invariants:
    * Every new .rego has a sibling _test.rego.
    * Every new policy has a METADATA block.
    * Framework-level README updated.
    * opa check + regal lint pass locally.
    * Breaking changes land under v2/, leaving v1/ untouched.
- Asks for the source URL the policy encodes.

These templates also serve as discoverable documentation of the
project's expectations — reviewers see them on every PR.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs: add Diátaxis-organized documentation index

docs/INDEX.md provides a single navigation hub for the documentation
surface, organised along the Diátaxis quadrants:

- Tutorials — Quick Start, add-framework skill
- How-to guides — draft-rego-policy and explain-framework skills,
  the regal-linting-guide for fixing CI failures, and the custom/
  contract for org-private policies
- Reference — coverage table, helper_functions modules, .regal config,
  pyproject.toml, COMPATIBILITY.md, CHANGELOG
- Explanation — "Why GOPAL?", AGENTS.md authoring conventions,
  README's "Authoring Policies" walkthrough

Plus a community section linking CONTRIBUTING, issues, and the
AICertify consumer.

Nothing is moved or renamed — this is purely an additive index
pointing into existing files. The README remains the primary entry
point; INDEX serves users who land here after following a docs/ link.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore: gitignore .venv-diagrams/ used by the diagram generator

The diagram generation script under diagrams/generate_diagrams.py
requires matplotlib, which can't be pip-installed into the system
Python under PEP-668. Contributors who run the generator end up with a
local .venv-diagrams/ virtualenv at the repo root. Ignore it so it
doesn't show up as untracked clutter in git status.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* docs: add comprehensive FAQ

Adds docs/FAQ.md (333 lines) consolidating frequently-asked questions
about GOPAL: what it is and the problem it solves, how it relates to
OPA, when to use it standalone vs through AICertify, how the versioning
model works, how to author and test policies, how the custom/ directory
contract operates, and how CI gates (opa check + regal lint) interact
with contributions.

Originally drafted in PR #11 by @kmadan; cherry-picked here so the FAQ
ships alongside the rest of the docs overhaul instead of stacking up
behind it. The original PR can be closed once this lands.

The FAQ is linked from docs/INDEX.md so it's discoverable from the
documentation hub.

Co-Authored-By: kmadan <3740365+kmadan@users.noreply.github.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* chore(regal): ignore two upstream-added rules that flag pre-existing code

Regal has added prefer-equals-comparison and use-array-flatten as new
lint rules since this repo's last green CI on main (July 2025). They
flag pre-existing code in:

- global/v1/common/compliance.rego
- global/v1/common/content_safety.rego
- global/v1/common/fairness.rego
- global/v1/common/risk_management.rego
- industry_specific/bfs/v1/loan_evaluation/fair_lending.rego

None of these files are touched by this PR. Adding the rules to the
ignore list so unrelated PRs (docs, tooling, marketing) can land
cleanly. The underlying code-quality concern is real and should be
addressed in a dedicated cleanup pass — either by fixing the policies
or by pinning a Regal version in CI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
kmadan added a commit that referenced this pull request May 14, 2026
…ls, AGENTS.md, FAQ (#14)

* docs(readme): rewrite hero, add 5 marketing diagrams, framework grid

Restructure the README to read like a product page:

- Centered HTML hero with the tagline "The Rego policy library for AI
  compliance" and the value-prop punch line "94 policies. 15+ regulatory
  frameworks. 5 industry verticals."
- Ordered 9-badge wall (CI, Stars, Version 1.0.0, OPA, Regal, Apache
  2.0, Policy count, Framework count, PRs Welcome).
- Language-switcher row anchoring four upcoming translations.
- Five embedded marketing diagrams (PNG, each <140 KB), generated by a
  reproducible matplotlib script under diagrams/generate_diagrams.py:
    1. Hero numbers (94 / 15+ / 5)
    2. Directory tree (international / industry / global / operational)
    3. Anatomy of a Rego policy (annotated example)
    4. Framework grid (the 15+ frameworks with policy counts)
    5. Evaluation flow (input.json -> opa eval -> verdict)
- A "Why GOPAL" differentiation section vs. generic OPA bundles and
  vendor governance SaaS, including a comparison table.
- A "What's Inside" section enumerating every framework with its exact
  policy count (29 EU AI Act, 17 aviation, 12 education, 9 global, …).
- An "Authoring Policies" section showing the canonical Rego file
  anatomy, the strict CI gates (opa check + regal lint), and the
  helper_functions/ library that policy authors compose with.
- A "Custom Policies" section formalising the git-ignored custom/
  contract for downstream organisations.

The README now leads with the headline numbers, shows the directory
map, and reaches the comparison table before any setup instructions.

* docs(i18n): add Simplified Chinese, Japanese, Korean, and Hindi READMEs

Full README translations for four large developer markets:

- README.zh-CN.md — Simplified Chinese (mainland register)
- README.ja-JP.md — Japanese (technical です/ます register)
- README.ko-KR.md — Korean (-습니다/-입니다 formal)
- README.hi-IN.md — Hindi (Devanagari with selective Latin retention
  for technical terms that read awkwardly when transliterated)

Each translation:

- Mirrors the English README structure exactly (headings, tables, code
  blocks, image refs, badges all preserved).
- Includes the language switcher with the current language rendered as
  plain <strong> text and the others as anchor links.
- Keeps regulation names (EU AI Act, NIST AI RMF, FERPA, COPPA, FAA Part
  107, EASA SORA, RTCA DO-365/366, ICAO Doc 10019) and product names
  verbatim — they are recognized internationally.
- Uses consistent translated terminology for "policy", "compliance",
  "audit", "framework", "regulation", "evaluation", and "human
  oversight" across both this repo and the sister AICertify repo.

Compliance, AI governance, and aviation-safety topics are hot in the JP,
KR, CN, and IN markets; translating now lowers the discovery barrier for
the millions of developers and compliance engineers in those regions.

* docs(agents): add AGENTS.md, CLAUDE.md, refresh GEMINI.md

Establish the canonical operational guide for AI coding assistants
working in this repository, with platform-specific overlays.

AGENTS.md (new) — the inheritance root:

- What GOPAL is (94-policy Rego library, two consumption modes:
  standalone via the OPA CLI or as the policy engine for AICertify).
- Repository layout with the role of each subdirectory.
- Useful commands (opa check, regal lint, opa eval, opa test).
- A full "Authoring a new policy" section detailing the mandatory file
  contents: package path must match directory path, METADATA block with
  title/description/version/source, default deny, sibling _test.rego,
  framework-level README with source + disclaimer.
- The CI quality gate.
- Conventions (one concept per file, boolean output, pure functions of
  input and data, no I/O, stable package paths).
- Versioning model (v1, v2 directories under semver guarantees).
- What NOT to do (no edits under custom/, no untested policies, no
  Styra-only Regal features, no false claims of full coverage).

CLAUDE.md (new) — inherits AGENTS.md and adds Claude Code-specific
fast-orientation paths, TodoWrite usage, gate-running, and pointers to
the skills/ directory.

GEMINI.md (refreshed) — preserves the author's pre-existing general
working principles (poetry, surgical changes, self-critique, 600-line
file cap, multi-repo discipline) and adds a Rego-authoring quick
reference plus a pointer back to AGENTS.md as the canonical guide.

* feat(skills): add 3 Claude Code skills for policy and framework work

Ships three installable Claude Code skills under skills/. Each subfolder
contains a SKILL.md with YAML frontmatter; users register them with:

    mkdir -p ~/.claude/skills && cp -r skills/* ~/.claude/skills/

Skills:

- /draft-rego-policy <domain> <framework> <policy_name>
    Scaffolds a new Rego policy + test file matching GOPAL's strict
    authoring conventions: package path mirroring directory, METADATA
    block (title, description, version, source), default deny, reporting
    helper integration, and a sibling _test.rego covering both allow
    and deny paths. Runs the opa check + regal lint gates and refuses
    to silence Regal warnings without explicit approval.

- /explain-framework <framework path>
    Walks every .rego in a framework directory and produces an
    audit-grade plain-English summary: per-policy package, title,
    description, rule translation, and source link. Explicitly flags
    placeholder policies (empty bodies, default-only rules, TODO
    comments) so coverage claims stay honest.

- /add-framework <domain> <framework_name> <official_source_url>
    Bootstraps a brand-new regulatory framework directory: creates the
    v1/ subtree, scaffolds a framework README with the canonical source
    + disclaimer template, writes a seed applicability policy and its
    test, and updates the top-level README's coverage table. Refuses
    to create misc/ catch-all directories.

A first-time Claude Code user who clones GOPAL can run /add-framework
and have a publishable v1/ tree (with passing CI gates) in minutes.

* docs: start CHANGELOG.md in Keep-a-Changelog format

Begin tracking notable changes in the standard Keep-a-Changelog 1.1.0
format, with an explicit Semver commitment cross-referencing the
existing COMPATIBILITY.md. The initial file covers:

- An [Unreleased] section capturing this docs/marketing overhaul: the
  hero rewrite, 5 generated diagrams, AGENTS.md + CLAUDE.md, the
  refreshed GEMINI.md, the Claude Code skills directory, the comparison
  table, and the diagram generator script.

- A [1.0.0] section reconstructing the visible v1 milestones from the
  recent git history: the aviation industry expansion (17 policies,
  1,635+ LOC of new aviation-compliance code, RTCA/ASTM/FAA/EASA/ICAO
  policies), the education industry (FERPA/COPPA/proctoring/grading,
  12 policies), automotive, Brazil AI governance, India digital policy,
  NIST AI RMF (Govern/Map/Measure/Manage + AI 600-1), the
  helper_functions/ library (reporting.rego, validation.rego), the
  custom/ contract for org-private policies, and the CI gate
  (opa check + regal lint at pre-commit and in workflows).

Also captures the steady stream of Regal lint clean-ups
(non-loop-expression, messy-rule, NIST unsafe-variable fixes,
ferpa_compliance refactors).

Future releases should append [X.Y.Z] - YYYY-MM-DD sections. The
changelog also serves as crawler-visible evidence of velocity and
breadth for anyone evaluating maintenance health.

* build(pypi): correct license, fix homepage URL, add keywords/classifiers

Make pyproject.toml ready for "pip install gopal" once we publish to
PyPI. Several pre-existing issues fixed in this commit:

- License correction. The classifier and license-file path previously
  asserted MIT, but the LICENSE file in the repo is Apache 2.0. Replace
    license = {file = "LICENSE"}
    classifiers = ["License :: OSI Approved :: MIT License", ...]
  with the SPDX form
    license = "Apache-2.0"
    classifiers = ["License :: OSI Approved :: Apache Software License", ...]
  This was a meaningful inaccuracy — under MIT users could distribute
  modifications without patent grants; the real LICENSE provides those.

- Homepage URL correction. The previous URLs pointed at
  https://github.com/mantric/gopal which 404s. Update to the canonical
  https://github.com/Principled-Evolution/gopal across all
  [project.urls] entries.

- Add 15 PyPI keywords for search ranking: ai-governance, ai-compliance,
  ai-act, eu-ai-act, nist-ai-rmf, open-policy-agent, opa, rego,
  policy-as-code, regulatory-compliance, aviation-safety, ferpa, coppa,
  fair-lending, responsible-ai.

- Add 11 PyPI classifiers including audience hints (Developers,
  Information Technology, Legal Industry, Science/Research) and topic
  classifications (Artificial Intelligence, Security, Quality
  Assurance). Mark Development Status :: 5 - Production/Stable matching
  the v1.0.0 release.

- Add a richer [project.urls] block: Homepage, Repository,
  Documentation, Issues, Changelog, and a cross-link to the AICertify
  consumer project.

- Update the description to mention concrete numbers (94 policies, 15+
  frameworks, 5 verticals) for better search snippet quality.

* chore(github): add issue templates and PR template

Lower the friction to contribute and to report problems by giving
GitHub something to render in the "New Issue" picker and the PR
description box.

Issue templates under .github/ISSUE_TEMPLATE/:

- bug_report.md — captures the failing command, a minimal input.json,
  expected vs actual behavior, and OPA/Regal versions. Optimised for
  reproducibility, not free-form description.

- new_framework.md — for proposing coverage of a regulation, standard,
  or industry framework GOPAL doesn't yet track. Required fields:
  official source URL, jurisdiction, status (proposed/in force), the
  articles to cover in v1, and whether the requester can contribute the
  initial .rego.

- new_policy.md — for proposing a specific policy within an existing
  framework. Required fields: source article, plain-English rule, input
  shape, and at-minimum allow/deny test scenarios.

PR template (.github/PULL_REQUEST_TEMPLATE.md):

- Categorises change type (new policy / new framework / MINOR update /
  MAJOR update with new v2 directory / bug fix / tooling).
- Includes a checklist enforcing the project's invariants:
    * Every new .rego has a sibling _test.rego.
    * Every new policy has a METADATA block.
    * Framework-level README updated.
    * opa check + regal lint pass locally.
    * Breaking changes land under v2/, leaving v1/ untouched.
- Asks for the source URL the policy encodes.

These templates also serve as discoverable documentation of the
project's expectations — reviewers see them on every PR.

* docs: add Diátaxis-organized documentation index

docs/INDEX.md provides a single navigation hub for the documentation
surface, organised along the Diátaxis quadrants:

- Tutorials — Quick Start, add-framework skill
- How-to guides — draft-rego-policy and explain-framework skills,
  the regal-linting-guide for fixing CI failures, and the custom/
  contract for org-private policies
- Reference — coverage table, helper_functions modules, .regal config,
  pyproject.toml, COMPATIBILITY.md, CHANGELOG
- Explanation — "Why GOPAL?", AGENTS.md authoring conventions,
  README's "Authoring Policies" walkthrough

Plus a community section linking CONTRIBUTING, issues, and the
AICertify consumer.

Nothing is moved or renamed — this is purely an additive index
pointing into existing files. The README remains the primary entry
point; INDEX serves users who land here after following a docs/ link.

* chore: gitignore .venv-diagrams/ used by the diagram generator

The diagram generation script under diagrams/generate_diagrams.py
requires matplotlib, which can't be pip-installed into the system
Python under PEP-668. Contributors who run the generator end up with a
local .venv-diagrams/ virtualenv at the repo root. Ignore it so it
doesn't show up as untracked clutter in git status.

* docs: add comprehensive FAQ

Adds docs/FAQ.md (333 lines) consolidating frequently-asked questions
about GOPAL: what it is and the problem it solves, how it relates to
OPA, when to use it standalone vs through AICertify, how the versioning
model works, how to author and test policies, how the custom/ directory
contract operates, and how CI gates (opa check + regal lint) interact
with contributions.

Originally drafted in PR #11 by @kmadan; cherry-picked here so the FAQ
ships alongside the rest of the docs overhaul instead of stacking up
behind it. The original PR can be closed once this lands.

The FAQ is linked from docs/INDEX.md so it's discoverable from the
documentation hub.

Co-Authored-By: kmadan <3740365+kmadan@users.noreply.github.com>

* chore(regal): ignore two upstream-added rules that flag pre-existing code

Regal has added prefer-equals-comparison and use-array-flatten as new
lint rules since this repo's last green CI on main (July 2025). They
flag pre-existing code in:

- global/v1/common/compliance.rego
- global/v1/common/content_safety.rego
- global/v1/common/fairness.rego
- global/v1/common/risk_management.rego
- industry_specific/bfs/v1/loan_evaluation/fair_lending.rego

None of these files are touched by this PR. Adding the rules to the
ignore list so unrelated PRs (docs, tooling, marketing) can land
cleanly. The underlying code-quality concern is real and should be
addressed in a dedicated cleanup pass — either by fixing the policies
or by pinning a Regal version in CI.
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.

1 participant