Skip to content

feat(ticket-047): add github event acquisition event log adapter - #64

Closed
tom-sapletta-com wants to merge 2 commits into
mainfrom
ticket/047-event-log-acquisition
Closed

feat(ticket-047): add github event acquisition event log adapter#64
tom-sapletta-com wants to merge 2 commits into
mainfrom
ticket/047-event-log-acquisition

Conversation

@tom-sapletta-com

Copy link
Copy Markdown
Contributor

Publishes the two commits that completed ticket-047.

Changes

  • scripts/github-event-log.mjs — dependency-free adapter that maps one bounded GitHub Actions payload (push, pull_request, pull_request_review, completed workflow_run) onto the closed t2c.event-log/v1 vocabulary and publishes one immutable logs.dsl.txt through the ticket-046 codec and atomic writer.
  • test/fixtures/event-log/v1/github-event-payloads.json + test/workflow-validation.test.ts — golden, negative, redaction and byte-repeatability coverage.
  • docs/EVENT_LOG_DSL.md — documents the acquisition boundary and the deferred Actions handoff.
  • .env.example — declares GITHUB_EVENT_PATH / GITHUB_REPOSITORY so verify:env passes.
  • project/ticket-047/** — ticket record set to DONE.

Verification (local, host)

  • make governance — GOV-PASS (0 errors, 0 warnings)
  • make verify — 401/401 pass
  • make docker-smoke — PASS
  • node --test dist/test/workflow-validation.test.js — 9/9

Known gap

The ticket-047 record is incomplete: TODO.md and project/TICKETS.md do not list it, and project/ticket-047/ is missing preprompt.md and ai-codex-logs.txt. That reconciliation is tracked separately as ticket-048.

🤖 Generated with Claude Code

@tom-sapletta-com

Copy link
Copy Markdown
Contributor Author

Closing: this branch carries the squashed cherry-pick, which cannot pass CI governance (GOV-TICKET-001 on a DONE ticket, GOV-INTENT-003 on a combined plan+implementation commit).

@tom-sapletta-com
tom-sapletta-com deleted the ticket/047-event-log-acquisition branch August 6, 2026 07:54
tom-sapletta-com added a commit that referenced this pull request Aug 7, 2026
make governance compares the working tree to HEAD; the CI job compares
base..head. Diagnostics that are properties of the branch rather than the edit
— GOV-INTENT-003, GOV-TICKET-001, workstream scope over the full diff — are
therefore invisible before a push.

project/governance-check.sh already accepts --actor ci --base --head and
reproduces the CI verdict locally in under a second. Nothing prompts anyone to
run it, so the verdict arrives from a failed pull request instead: PR #64
consumed a full CI round on four jobs before failing GOV-TICKET-001.

Plan-only. Wrap-only boundary over the existing checker: no second
implementation, no new diagnostic, no automatically installed Git hook.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
tom-sapletta-com added a commit that referenced this pull request Aug 7, 2026
…tion

make governance compares the working tree to HEAD; CI compares base..head.
GOV-INTENT-003, GOV-TICKET-001 and branch-wide workstream scope are therefore
invisible locally, which is how PR #64 burned a full CI round before failing.

README.md now carries the invocation, a blocking exit policy, and the
requirement to run it from the branch being pushed — the checker reads the
active ticket from the working tree, so running it elsewhere judges one
branch's diff against another branch's ticket.

Proven against real history in isolated worktrees: the squashed ticket-047
topology fails GOV-TICKET-001, the ticket-048 topology passes.

Makefile and AGENTS.md were both attempted first and rejected by the rules
themselves: Makefile routes to the integration workstream via requiredForPaths,
and AGENTS.md is hash-locked in managedFiles.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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