MCPcopy Index your code
hub / github.com/Fieldguide/action-hasura-change-summary

github.com/Fieldguide/action-hasura-change-summary @v4.0.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v4.0.0 ↗ · + Follow
99 symbols 248 edges 34 files 1 documented · 1%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ci

Hasura Change Summary

GitHub Action to generate readable Hasura metadata change summaries.

Hasura Change Summary example comment

Features

This action currently supports changes to database table metadata including row-level and column-level permissions.

Other metadata such as actions, cron triggers, and remote schemas are not currently supported.

Usage

For example, with marocchino's Sticky Pull Request Comment:

name: ci

on:
  pull_request:
    paths:
      - 'metadata/**.yaml'

jobs:
  hasura-change-summary:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v4

      - name: Detect Hasura metadata changes
        uses: Fieldguide/action-hasura-change-summary@v4
        id: hasura-change-summary
        with:
          hasura_endpoint: https://my-pr-${{ github.event.number }}-app.example.com

      - name: Create or update summary comment
        uses: marocchino/sticky-pull-request-comment@v2
        if: steps.hasura-change-summary.outputs.change_html
        with:
          header: hasura-change-summary
          message: ${{ steps.hasura-change-summary.outputs.change_html }}

Inputs

input description
github_token Repository GITHUB_TOKEN or personal access token secret; defaults to github.token
project_dir Hasura project directory, relative to GITHUB_WORKSPACE; defaults to .
hasura_endpoint Hasura GraphQL engine http(s) endpoint, used for deep console links

Outputs

output description
change_html HTML change summary

Extension points exported contracts — how you extend this code

QualifiedTable (Interface)
(no doc)
src/diff/types.ts
Database (Interface)
(no doc)
src/load/types.ts
TableEntry (Interface)
(no doc)
src/diff/types.ts
HasuraMetadataV3 (Interface)
(no doc)
src/load/types.ts
ConsoleLink (Interface)
(no doc)
src/diff/types.ts
HasuraMetadataLatest (Interface)
(no doc)
src/load/types.ts
LinkableChange (Interface)
(no doc)
src/diff/types.ts
MetadataLoader (Interface)
(no doc)
src/load/types.ts

Core symbols most depended-on inside this repo

emptyTablePermissionsChanges
called by 12
src/diff/tables/permissions/index.ts
columnPermissionsViewFromTableChanges
called by 10
src/diff/tables/permissions/columns/index.ts
load
called by 10
src/load/types.ts
emptyChanges
called by 6
src/diff/functions.ts
tab
called by 6
src/diff/functions.ts
tablesFromMetadata
called by 4
src/diff/functions.ts
diffVersion
called by 4
src/diff/version.ts
formatTableEntries
called by 4
src/diff/tables/index.ts

Shape

Function 68
Interface 19
Method 7
Class 5

Languages

TypeScript100%

Modules by API surface

src/diff/functions.ts12 symbols
src/load/types.ts10 symbols
src/diff/types.ts10 symbols
src/diff/tables/permissions/index.ts7 symbols
src/diff/tables/permissions/columns/functions.ts6 symbols
src/load/functions.ts5 symbols
src/load/WorkspaceLoader.ts5 symbols
src/load/GitHubLoader.ts5 symbols
src/diff/tables/permissions/functions.ts5 symbols
src/load/yaml.ts4 symbols
src/load/AbstractMetadataLoader.ts4 symbols
src/diff/tables/table.ts4 symbols

For agents

$ claude mcp add action-hasura-change-summary \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact