CodeIssuesDiscussionsWikiPull RequestsProjectsCommitsActionsReleasesContributorsPulse● GatesSecuritySettingsDeploymentsPipelineInsightsAgents✨ Explain✨ Ask AI✨ Workspace✨ Spec✨ Tests▓ Debt Map✨ NL Search🏛 Archaeology
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 | # Gluecron Status — 2026-07-17
Single current source of truth for "what's actually shipped, what's actually
open, what to read next." Supersedes `ROADMAP.md`, `CHANGELOG.md`, and the
`AUDIT-2026-*.md` chain — those are now redirect stubs pointing here. Update
this file, not those, when state changes.
`BUILD_BIBLE.md` §4 (LOCKED BLOCKS) remains the authoritative owner-sign-off
gate on renaming/altering shipped code — that mechanism isn't moved here.
Its *content* (the actual locked-file list) is last known to be a full
audit pass behind current `main` (see "Known documentation debt" below) —
treat any specific file:line claim in it as unverified until re-audited,
not as settled fact.
## What changed this session (2026-07-16/17)
All items below are merged to `main` and pushed to the canonical remote
(`gluecron.com/ccantynz/Gluecron.com.git`), verified per their own
inline test/build evidence — not just written.
1. **Push-time secret scanning, CODEOWNERS merge enforcement, PR-workflow
sync wiring, autorepair/branch-protection fixes** — 5-piece hardening
batch, 29 dedicated tests green.
2. **`agent-journey.ts` self-healing** — orphaned probe-repo cleanup now
sweeps stale `journey-*` repos at the start of every run, so a killed
process no longer leaves permanent leftovers.
3. **Repo-settings and account-settings navigation** — `RepoNav` was
missing its "Settings" tab entirely (type union had it, no `<a>`
rendered it), orphaning the whole settings tree (mirrors, dep updater,
webhooks, collaborators, environments, pages, workflow secrets,
protected tags, rulesets, automation, audit log) behind the Cmd-K
palette. Fixed, plus two adjacent bugs found during the fix:
`dep-updater.tsx` was rendering the wrong nav component entirely
(`IssueNav` instead of `RepoNav`), and the `/settings` index page
itself had no top nav. Account settings had the identical shape —
`SettingsSubnav` only listed 4 of 11 pages; extended to cover
2FA/passkeys/signing-keys/sessions/integrations.
4. **`fireWebhooks()` wired into 19 real call sites** (was 0) — the
webhook feature was fully built (retry/dead-letter queue, live
"last delivery" UI) but no push/issue/PR/star event anywhere in the
codebase ever called it, on either the web routes *or* the 8 MCP
write tools (`gluecron_create_pr`, `gluecron_merge_pr`, etc., which
have their own independent implementations). Verified live end-to-end
against production via `scripts/agent-journey.ts` — a probe webhook
pointed at `/healthz` now records a real delivery attempt after a
real MCP-driven PR create + merge.
5. **AI security gate no longer silently reports "clean" on a provider
error** — `aiSecurityScan()` returned `[]` on any Anthropic API error
(timeout, rate limit, unparseable response), identical to a genuine
zero-finding scan; `gate.ts` then reported "No security issues found"
either way. Added `aiSecurityScanSafe()` distinguishing the two states,
mirroring the `runGateTestScan` skip-not-silently-pass precedent
(commit `6930df0`) already established for the GateTest gate.
6. **Dead webhook deliveries now alert the owner** — a delivery that
exhausts all retries (or is blocked by the SSRF guard) previously only
logged to `console.error`. Now sends an in-app notification
(`integration_dead` kind) linking back to the webhook's settings page.
## Production certification (2026-07-17)
1. **Full authenticated `doctor.ts` sweep is ALL GREEN** — ran sections
a–e in `--full` mode against `https://gluecron.com` with a real admin
PAT. The sweep found and fixed one real bug in the read-only tool matrix:
`gluecron_pr_status_summary` was called with only `{owner,repo}`, but it
summarizes one specific PR and requires a PR number. The doctor now
resolves a live PR number through `gluecron_list_prs` first and skips
gracefully when no PR exists.
2. **Full `agent-journey.ts` write-path certification is GREEN with one
warning** — push, branch, PR, comment, merge, webhook delivery, and
cleanup all passed against production. No AI-review comment appeared on
the test PR within 90 seconds; per the script, this means AI review may
legitimately be disabled or `ANTHROPIC_API_KEY` may be unset. Human
confirmation is still required (see the top open item below).
## Known open items (not closed this session)
- **TOP PRIORITY — confirm production AI-review configuration** — the
full write-path certification produced its sole WARN because no AI-review
comment appeared within 90 seconds. Check `/admin/env-health` or the
production box's `.env` directly to establish whether AI review is
intentionally disabled or `ANTHROPIC_API_KEY` is unset. The old, now-
archived `ROADMAP.md` called out this exact environment variable as a
blocker back in May; this remains open until a human confirms the live
configuration.
- **Offsite backup not armed** — daily Neon dump + weekly restore drill
run fine on the VPS, but dumps only live on the box itself
(`BACKUP_SCP_TARGET` unset). Gates Cutover Runbook Phase 4.
- **GateTest defaults off for new repos** (migration `0112`) — a
deliberate, documented decision (commit `6930df0`: "hasn't proven
reliable enough to be a required-by-default external dependency yet"),
not a bug. Revisit once a concrete reliability bar is defined and met.
- **Legal pages** (`legal/TERMS.md`, `PRIVACY.md`, `AUP.md`, `DPA.md`)
drafted but awaiting attorney sign-off; DMCA agent placeholder unfilled.
- **Penetration test** — not started, intentionally on hold pending a
signed Rules-of-Engagement / authorization document (attorney-gated,
separate from the legal-pages thread above).
## Known documentation debt
`BUILD_BIBLE.md` claims (as of its last real update, 2026-06-13) that
Blocks A–M are all shipped, including the last month's actual work —
it wasn't touched during that month despite real commits landing. Its
§4 locked-blocks list should be treated as stale evidence, not settled
fact, until someone re-audits it against current `main`. That re-audit
is a bigger job than this pass and is explicitly not done here — flagged,
not fixed.
## Where to look
- **This file** — current state, updated as things ship.
- **`BUILD_BIBLE.md`** — locked-file sign-off gate (mechanism still
authoritative; content stale, see above) and historical block plan.
- **`scripts/doctor.ts` / `scripts/agent-journey.ts`** — the actual
live-verification tools. Run them against `https://gluecron.com` with
a fresh `GLUECRON_PAT` (from `/settings/tokens`) rather than trusting
any document's claim about production behavior.
|