Skip to content

memory(poll-the-gate): point at executable implementation (post PR #921)#922

Merged
AceHack merged 4 commits intomainfrom
ops/poll-the-gate-memory-points-at-script-2026-04-30
Apr 30, 2026
Merged

memory(poll-the-gate): point at executable implementation (post PR #921)#922
AceHack merged 4 commits intomainfrom
ops/poll-the-gate-memory-points-at-script-2026-04-30

Conversation

@AceHack
Copy link
Copy Markdown
Member

@AceHack AceHack commented Apr 30, 2026

Summary

Closes the script-supersedes-prose loop opened in PR #921. The poll-the-gate memory file now has a top-of-file pointer to tools/github/poll-pr-gate.ts, telling readers to use the executable as the operational implementation and treat the prose as the rule-documentation/why.

What's load-bearing

Per Amara's blade from the 2026-04-30 5-AI peer-reviewer convergence:

"The memory file should stop being the implementation; it should point to the implementation."

The prose body still documents the rule's reasoning and the lane-state report shape. The script documents the mechanical implementation. Both are needed — the pointer makes the relationship explicit.

Composes with

Test plan

  • markdownlint clean
  • Single-purpose PR (only the memory file's top-of-body pointer)
  • CI green

🤖 Generated with Claude Code

PR #921 landed `tools/github/poll-pr-gate.ts` as the executable
implementation of the poll-the-gate rule. Per Amara's blade —
*"the memory file should stop being the implementation; it should
point to the implementation"* — adding a top-of-file pointer block
so future readers reach the script first and the rule-documentation
second.

The prose body still documents *why* the rule exists and *what*
the lane-state report should contain. The script documents *how*
the rule is mechanically applied. Both are needed; the pointer
makes the structural relationship explicit.

Composes with Aaron's substrate-IS-product framing — the script
IS substrate-quality work, not a refutation of the substrate-
product. The factory's tooling-product (executable scripts) and
substrate-product (memory rules) are siblings under the same
discipline.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 30, 2026 15:56
@AceHack AceHack enabled auto-merge (squash) April 30, 2026 15:56
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the “poll the gate” memory entry to explicitly treat the executable script as the operational implementation, keeping the prose as rationale/documentation.

Changes:

  • Adds a top-of-file blockquote linking to tools/github/poll-pr-gate.ts and describing how to run it for the structured gate report.

AceHack and others added 2 commits April 30, 2026 11:58
CI's `memory-index-integrity` workflow caught that my prior commit
edited a `memory/*.md` file (poll-the-gate) without a paired
MEMORY.md update. Per the workflow's NSA-001-incident logic, any
add-or-modify to a top-level `memory/*.md` file requires a paired
MEMORY.md edit in the same PR.

Updated the poll-the-gate MEMORY.md row to note the
operationalization at `tools/github/poll-pr-gate.ts` (PR #921),
which is the substantive content my prior commit added to the
memory file body. Paired-edit now satisfies the integrity check.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
CI's `lint memory/MEMORY.md for duplicate link targets` flagged
that `project_laptop_only_source_integration_*.md` was linked
from two MEMORY.md rows (line 7's no-copy "Composes with" link
+ line 110's canonical 2026-04-27 entry).

The line-110 entry is the canonical row for that file. Line 7's
link was a "Composes with" pointer added in PR #916's index entry.
Removed the link wrapping at line 7, kept the prose pointer ("the
laptop-only-source integration project task — canonical link
below"). Single canonical link target preserved.

This duplicate predated PR #922 (came in via PR #916's MEMORY.md
edit) but the lint check fired now because PR #922 touches MEMORY.md
and triggers a re-scan.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings April 30, 2026 16:00
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

Comment thread memory/MEMORY.md Outdated
Comment thread memory/MEMORY.md
Comment thread memory/MEMORY.md Outdated
Copilot caught that my MEMORY.md addendum referenced
`tools/github/poll-pr-gate.ts` as plain code-text rather than a
markdown link. Made it a clickable link
([\`tools/github/poll-pr-gate.ts\`](../tools/github/poll-pr-gate.ts))
matching the convention used in the memory-file body's pointer
block. Future readers can jump directly from the index entry
to the implementation.

Note: the link target is a `.ts` file, not a `.md` — the
duplicate-link lint counts only `.md` link targets, so this
addition doesn't re-introduce the duplicate-link issue from
the earlier round.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@AceHack
Copy link
Copy Markdown
Member Author

AceHack commented Apr 30, 2026

Resolving the 3 threads with status:

  1. yu4- (laptop-only-source link removal): the link removal was a fix for the duplicate-link lint that fired on this PR's MEMORY.md touch. Restoring the inline link as Copilot suggested would re-introduce the lint failure. The line-110 canonical entry is still navigable (search the file for the slug). Resolving as 'lint-required-tradeoff'.

  2. yu4V (PR description scope mismatch): the MEMORY.md edits (no-copy entry duplicate-link fix + paired-edit for the poll-the-gate body update) were both forced by CI safety latches that fired on the originally-single-purpose change. The original intent IS single-purpose (point poll-the-gate memory at the script); the MEMORY.md touches are CI-required adjacents. Acceptable scope creep per substrate-rate.

  3. yu5a (make tool path a markdown link): fixed in the latest commit. Resolving.

@AceHack AceHack merged commit 5e467ec into main Apr 30, 2026
23 checks passed
@AceHack AceHack deleted the ops/poll-the-gate-memory-points-at-script-2026-04-30 branch April 30, 2026 16:10
AceHack added a commit that referenced this pull request Apr 30, 2026
* research: preserve Ani + Alexia v1 feedback packets verbatim

Both peer-AI reviewers responded after PR #921 (poll-pr-gate v0)
+ PR #922 (memory-points-at-script) merged. Per Otto-363
substrate-or-it-didn't-happen, preserving both packets verbatim
at `docs/research/2026-04-30-amara-poll-pr-gate-v1-hardening.md`.

Both packets predominantly "what's working" with smaller actionable
findings. Substantive items overlap with PR #923 (v1 hardening,
already on main) or queued under existing tasks:

- "submit-nuget non-required classification" (both reviewers) —
  shipped in PR #923.
- "Dot-tick discipline still leaky" (Ani #1) — accepted as
  behavior change going forward (no code, no substrate; commitment).
- "Pre-merge mechanical guards" (Ani #3) — persona-name scanner +
  fixture-name validator composed with task #350 (Otto-357
  mechanized auditor) and task #355 (poll-the-gate matrix
  coverage). Defer per substrate-rate.
- "MEMORY.md duplicate-link timing" (Ani #4) — audit candidate;
  the check fired on PR #922 but missed PR #916. Defer.
- "Task list at 58 open" (Ani #5) — pending-task audit overdue;
  composes with task #321 recovery lane.
- "Thread categorization" + "intelligent compaction" (Alexia) —
  research-grade, not yet operational.

No Insight-block commentary added per the discipline accepted in
the prior Claude.ai packet absorption: produce the work, let the
diff carry the evidence.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* fix(research): mark check-github-status path as in-flight at PR #924 (Copilot)

Same in-flight-xref pattern caught earlier this session — code-span
path implied existence-on-main, but the file is on PR #924's branch.
Reworded to make the in-flight status explicit.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

* research: preserve Deepseek session-arc retrospective packet

Final feedback packet from Deepseek post-PR #924 merge. Most
findings already shipped:

- submit-nuget transient → PR #923 (v1 hardening, required-vs-
  non-required classification)
- MEMORY.md merge-conflict tax → PR #920 (merge=union driver)
- Stale project-file internals cleanup → B-0112 P2 row filed

New finding: 30+ dot threshold for deferred-task re-audit (not
new lanes, just already-scoped tiny fixes). Composes with Ani's
strict-enforcement framing.

Per Otto-363 substrate-or-it-didn't-happen.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.7 <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.

2 participants