Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
## Evident Evidence
## Tabellio Evidence

- [ ] Evidence envelope generated
- [ ] Evidence envelope validated
Expand All @@ -11,7 +11,7 @@ Evidence summary:

```json
{
"schemaVersion": "evident-evidence/v0.1",
"schemaVersion": "tabellio-evidence/v0.1",
"runId": "",
"baseRef": "",
"headRef": "",
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Evident Evidence
name: Tabellio Evidence

on:
pull_request:
Expand All @@ -7,31 +7,31 @@ on:
evidence_path:
description: Path to the evidence envelope.
required: false
default: evident-pr-evidence.json
default: tabellio-pr-evidence.json
type: string
validation_command:
description: Command to run before writing evidence.
required: false
default: ""
type: string
toolkit_ref:
description: Evident toolkit ref for fallback scripts. Pin to the same ref as the reusable workflow.
description: Tabellio toolkit ref for fallback scripts. Pin to the same ref as the reusable workflow.
required: false
type: string
workflow_call:
inputs:
evidence_path:
description: Path to the evidence envelope.
required: false
default: evident-pr-evidence.json
default: tabellio-pr-evidence.json
type: string
validation_command:
description: Command to run before writing evidence.
required: false
default: ""
type: string
toolkit_ref:
description: Evident toolkit ref for fallback scripts. Pin to the same ref as the reusable workflow.
description: Tabellio toolkit ref for fallback scripts. Pin to the same ref as the reusable workflow.
required: false
type: string

Expand All @@ -40,7 +40,7 @@ permissions:

jobs:
evidence:
name: Evident evidence
name: Tabellio evidence
runs-on: ubuntu-latest
steps:
- name: Checkout
Expand All @@ -58,64 +58,64 @@ jobs:
if: ${{ inputs.validation_command }}
run: ${{ inputs.validation_command }}

- name: Resolve Evident toolkit path
- name: Resolve Tabellio toolkit path
id: toolkit
if: ${{ always() }}
shell: bash
env:
TOOLKIT_REF: ${{ inputs.toolkit_ref || '' }}
run: |
if [ "$GITHUB_REPOSITORY" = "IntelIP/agentic-git-workflow" ]; then
if [ "$GITHUB_REPOSITORY" = "IntelIP/Tabellio" ]; then
echo "path=." >> "$GITHUB_OUTPUT"
elif [ -n "$TOOLKIT_REF" ]; then
echo "path=.evident/toolkit" >> "$GITHUB_OUTPUT"
echo "path=.tabellio/toolkit" >> "$GITHUB_OUTPUT"
echo "ref=$TOOLKIT_REF" >> "$GITHUB_OUTPUT"
elif [ -f scripts/write-evident-evidence-envelope.mjs ] && \
[ -f scripts/check-evident-evidence-envelope.mjs ] && \
[ -f scripts/check-evident-external-actions.mjs ]; then
elif [ -f scripts/write-tabellio-evidence-envelope.mjs ] && \
[ -f scripts/check-tabellio-evidence-envelope.mjs ] && \
[ -f scripts/check-tabellio-external-actions.mjs ]; then
echo "path=." >> "$GITHUB_OUTPUT"
else
echo "::error::toolkit_ref is required when Evident scripts are not vendored. Pin it to the same ref as the reusable workflow."
echo "path=.evident/toolkit" >> "$GITHUB_OUTPUT"
echo "::error::toolkit_ref is required when Tabellio scripts are not vendored. Pin it to the same ref as the reusable workflow."
echo "path=.tabellio/toolkit" >> "$GITHUB_OUTPUT"
exit 1
fi

- name: Checkout Evident toolkit
if: ${{ always() && steps.toolkit.outputs.path == '.evident/toolkit' && steps.toolkit.outputs.ref != '' }}
- name: Checkout Tabellio toolkit
if: ${{ always() && steps.toolkit.outputs.path == '.tabellio/toolkit' && steps.toolkit.outputs.ref != '' }}
uses: actions/checkout@v5
with:
repository: IntelIP/agentic-git-workflow
repository: IntelIP/Tabellio
ref: ${{ steps.toolkit.outputs.ref }}
path: .evident/toolkit
path: .tabellio/toolkit
persist-credentials: false

- name: Write evidence envelope
if: ${{ always() && steps.toolkit.outcome == 'success' }}
run: node "${TOOLKIT_PATH}/scripts/write-evident-evidence-envelope.mjs" --out "${EVIDENCE_PATH}"
run: node "${TOOLKIT_PATH}/scripts/write-tabellio-evidence-envelope.mjs" --out "${EVIDENCE_PATH}"
env:
TOOLKIT_PATH: ${{ steps.toolkit.outputs.path }}
EVIDENCE_PATH: ${{ inputs.evidence_path || 'evident-pr-evidence.json' }}
EVIDENT_VALIDATION_COMMAND: ${{ inputs.validation_command || '' }}
EVIDENT_VALIDATION_STATUS: ${{ steps.validation.outcome || 'skipped' }}
EVIDENT_WRITER_COMMAND: node ${{ steps.toolkit.outputs.path }}/scripts/write-evident-evidence-envelope.mjs
EVIDENCE_PATH: ${{ inputs.evidence_path || 'tabellio-pr-evidence.json' }}
TABELLIO_VALIDATION_COMMAND: ${{ inputs.validation_command || '' }}
TABELLIO_VALIDATION_STATUS: ${{ steps.validation.outcome || 'skipped' }}
TABELLIO_WRITER_COMMAND: node ${{ steps.toolkit.outputs.path }}/scripts/write-tabellio-evidence-envelope.mjs

- name: Validate evidence envelope
if: ${{ always() && steps.toolkit.outcome == 'success' }}
run: node "${TOOLKIT_PATH}/scripts/check-evident-evidence-envelope.mjs" --evidence "${EVIDENCE_PATH}"
run: node "${TOOLKIT_PATH}/scripts/check-tabellio-evidence-envelope.mjs" --evidence "${EVIDENCE_PATH}"
env:
TOOLKIT_PATH: ${{ steps.toolkit.outputs.path }}
EVIDENCE_PATH: ${{ inputs.evidence_path || 'evident-pr-evidence.json' }}
EVIDENCE_PATH: ${{ inputs.evidence_path || 'tabellio-pr-evidence.json' }}

- name: Check external action policy
if: ${{ always() && steps.toolkit.outcome == 'success' }}
run: node "${TOOLKIT_PATH}/scripts/check-evident-external-actions.mjs" --evidence "${EVIDENCE_PATH}"
run: node "${TOOLKIT_PATH}/scripts/check-tabellio-external-actions.mjs" --evidence "${EVIDENCE_PATH}"
env:
TOOLKIT_PATH: ${{ steps.toolkit.outputs.path }}
EVIDENCE_PATH: ${{ inputs.evidence_path || 'evident-pr-evidence.json' }}
EVIDENCE_PATH: ${{ inputs.evidence_path || 'tabellio-pr-evidence.json' }}

- name: Upload evidence artifact
if: ${{ always() && steps.toolkit.outcome == 'success' }}
uses: actions/upload-artifact@v4
with:
name: evident-pr-evidence
path: ${{ inputs.evidence_path || 'evident-pr-evidence.json' }}
name: tabellio-pr-evidence
path: ${{ inputs.evidence_path || 'tabellio-pr-evidence.json' }}
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
node_modules/
agentic-pr-evidence.json
evident-pr-evidence.json
tabellio-pr-evidence.json
.DS_Store
.env
.env.*
Expand Down
6 changes: 3 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
# Changelog

All notable changes to Evident are recorded here.
All notable changes to Tabellio are recorded here.

## 0.1.0 - Pending Release

Initial public release.

### Added

- Evidence envelope contract with `evident-evidence/v0.1` schema version.
- Evidence envelope contract with `tabellio-evidence/v0.1` schema version.
- Dependency-free Node.js writer and validators.
- Default-deny external action policy for protected side effects.
- Reusable GitHub Actions workflow for PR evidence checks.
- Pull request evidence template.
- Minimal valid evidence fixture.
- OpenSSF Scorecard workflow.
- Research grounding, schema reference, and workflow model docs.
- Agentic tooling stack guide covering Code Storage, Entire, Graphite, GitHub, Codex, and Evident boundaries.
- Agentic tooling stack guide covering Code Storage, Entire, Graphite, GitHub, Codex, and Tabellio boundaries.

### Release Gates

Expand Down
12 changes: 6 additions & 6 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,17 +22,17 @@ npm run check
Generate and validate a fresh evidence packet:

```bash
node scripts/write-evident-evidence-envelope.mjs --out /tmp/evident-pr-evidence.json
node scripts/check-evident-evidence-envelope.mjs --evidence /tmp/evident-pr-evidence.json
node scripts/check-evident-external-actions.mjs --evidence /tmp/evident-pr-evidence.json
node scripts/write-tabellio-evidence-envelope.mjs --out /tmp/tabellio-pr-evidence.json
node scripts/check-tabellio-evidence-envelope.mjs --evidence /tmp/tabellio-pr-evidence.json
node scripts/check-tabellio-external-actions.mjs --evidence /tmp/tabellio-pr-evidence.json
```

Check script syntax:

```bash
node --check scripts/check-evident-evidence-envelope.mjs
node --check scripts/check-evident-external-actions.mjs
node --check scripts/write-evident-evidence-envelope.mjs
node --check scripts/check-tabellio-evidence-envelope.mjs
node --check scripts/check-tabellio-external-actions.mjs
node --check scripts/write-tabellio-evidence-envelope.mjs
```

Check the reusable workflow syntax before release:
Expand Down
4 changes: 2 additions & 2 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Evident
Tabellio
Copyright 2026 IntelIP

This product includes software developed for the Evident project.
This product includes software developed for the Tabellio project.
Loading
Loading