chore(deps): refresh Go toolchain and archive dependencies - #194
Conversation
|
🦞👀 Pull request received. I will update this pull request when review starts. |
|
Codex review: needs real behavior proof before merge. Reviewed September 4, 2026, 5:52 AM ET / 09:52 UTC. ClawSweeper reviewWhat this changesRefreshes the preferred Go toolchain, SQLite/crypto/terminal dependencies, Docker image, related documentation and changelog, plus Pages and secret-scanning workflow actions. Merge readiness⛔ Blocked before merge - 5 items remain Keep open: the dependency refresh is focused and its module/Docker CI checks have passed, but the upgraded secret-scanning action remains a mutable tag and the claimed fresh-archive integration run has no inspectable real-behavior evidence. Priority: P2 Review scores
Verification
How this fits togetherDiscrawl's Go module manifest selects dependency versions and the preferred compiler for CI and source builds; Docker consumes the same manifest to build the archive CLI. Separate GitHub workflows deploy documentation and scan repository changes for verified secrets. flowchart LR
A[Dependency and toolchain update] --> B[Go module manifest]
B --> C[CI toolchain selection]
B --> D[Container build]
D --> E[Discrawl archive CLI]
A --> F[Workflow action updates]
F --> G[Docs deployment and secret scanning]
Before merge
Findings
Agent review detailsSecurityNeeds attention: The dependency update changes a security workflow to a mutable third-party action reference. Review metrics
Merge-risk optionsMaintainer options:
Technical reviewBest possible solution: Pin the intended TruffleHog release to its verified commit SHA and retain the version annotation, then attach a redacted terminal trace of the fresh archive import/reopen/search behavior under the selected toolchain. Do we have a high-confidence way to reproduce the issue? Not applicable: this is a dependency-maintenance PR rather than a report of broken product behavior; the completed dependency and Docker checks exercise the changed build inputs. Is this the best way to solve the issue? No: the refresh is a narrow maintenance approach, but it should use an immutable secret-scanner revision and provide inspectable after-fix runtime evidence before merge. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: not found in the target repository. Codex review notes: model internal, reasoning high; reviewed against 0853d40e0525. LabelsLabel changes:
Label justifications:
EvidenceSecurity concerns:
What I checked:
Likely related people:
Rank-up movesOptional improvements that raise the rating; they are not merge blockers.
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
Refresh the archive's dependency stack and preferred build toolchain with compatible releases:
Keep modernc.org/libc at v1.75.6: SQLite explicitly requires its exact pinned libc version. SQLite's new Linux OFD locking stays opt-in; this change does not enable it or change the archive schema.
Validation completed locally: module checksum verification, focused store/cache-import and CLI tests, docs-site build, and a built CLI integration run against a fresh synthetic archive. The integration run imports and searches a guild message and DM, reopens the archive, confirms a repeat import preserves exactly two rows/two events, returns TUI/status JSON, passes SQLite integrity_check, and rejects SQL writes by default. Independent P0–P2 review found no actionable findings in the full change, including go.sum.
The committed-head archive-upgrade smoke also passes: a binary using the baseline dependency files created an archive with SQLite v1.57.0; the updated binary reopened, searched, and re-imported it while preserving both messages and events. The pinned Docker image builds, and its CLI returns version and metadata successfully. Go 1.27.0 still builds the CLI with
GOTOOLCHAIN=local.All checks pass at final head
1ba1ef56d229dfc4bead82cf70a02719cce6fdaa:No release or deployment has been performed.
Built CLI behavior evidence (synthetic fixtures)
The candidate executable was built with Go 1.27.1 and recorded clean VCS revision
163a699a5923b4dc5840cf7ee5c5c100bf65252f. Two fixtures were used: a fresh archive and an archive populated by a binary built with the baseline dependency files (SQLite v1.57.0). Each command reopened the archive in a separate CLI process. The scanner-reference follow-up changes no application source or dependency bytes.Sapphire333333333333333346, contentSapphire guild fixture café 日本語 🦞Emerald333333333333333347in local guild@me, contentEmerald private fixturemessages=2,events=2files_scanned=0,files_unchanged=1messages=2,events=2PRAGMA integrity_checkokDELETE FROM messagesThe Go 1.27.0 minimum build also succeeded with
GOTOOLCHAIN=local. The built Docker image returneddevfor version andcrawlkit.control.v1metadata. All data above is synthetic; no Discord credentials or personal cache data were used.