memory-dream: read-only memory lint/consolidation analyzer (index, backlinks, stale refs, dup clusters, profile drift); additive-only --apply-safe, all merges/deletes are proposals. sync-memory.sh: additive repo<->harness-profile union (no delete/overwrite, conflicts surfaced), wired to a SessionStart hook. Migrates the useful profile-only memories into the synced repo store. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1.9 KiB
name, description, type, originSessionId
| name | description | type | originSessionId |
|---|---|---|---|
| Gitea Internal API Access | git.azcomputerguru.com is NOT behind Cloudflare — it's the office Cox IP NAT'd to NPM (openresty) on Jupiter. Prefer internal 172.16.3.20:3000 for reliability (bypasses NPM SSL-renewal reload blips) | reference | 511840e9-1aba-40e6-a81e-4905bac958ec |
CORRECTED 2026-05-27 (prior note claimed "behind Cloudflare / curl gets a JS challenge" — that is WRONG/outdated).
git.azcomputerguru.com resolves to a direct public A record 72.194.62.10 (an ACG-office Cox static IP, adjacent to ix at .5 — wsip-72-194-62-10.ph.ph.cox.net). NOT Cloudflare-proxied (same answer from 1.1.1.1; no CF edge IP). Path: .10 → office firewall NAT → NPM (Nginx Proxy Manager = openresty) on Jupiter 172.16.3.20 → Gitea container :3000. The NPM proxy host is /data/nginx/proxy_host/4.conf. curl/HTTPS works fine and returns 200 (Server: openresty) — there is no challenge page.
Why prefer the internal address for API/git on-network: the external path goes through NPM, which periodically renews its SSL certs and reloads openresty — that briefly drops external :443 (observed 2026-05-27: ~7-9 min TCP-timeout window, self-recovered when renewal completed). The internal address bypasses NPM, so it's faster and immune to those renewal blips. It is NOT about Cloudflare.
Use the internal LAN/Tailscale address:
http://172.16.3.20:3000/api/v1/...
Works when on LAN or when Tailscale is connected. Requires the API token from vault:
bash D:/vault/scripts/vault.sh get-field services/gitea.sops.yaml credentials.api.api-token
# 9b1da4b79a38ef782268341d25a4b6880572063f
Example issue creation:
TOKEN="9b1da4b79a38ef782268341d25a4b6880572063f"
curl -s -X POST "http://172.16.3.20:3000/api/v1/repos/azcomputerguru/gururmm/issues" \
-H "Authorization: token $TOKEN" \
-H "Content-Type: application/json" \
-d '{"title": "...", "body": "..."}'