You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: extract mintcore shared library with JWKSVerifier and status endpoint
Extract shared functionality from internal/mint into internal/mintcore
module for reuse by both the mint and devmint Cloud Functions. Includes
JWKSVerifier, OIDC token handling, STS exchange, GitHub API helpers,
claims parsing, and the common handler framework.
Update provisioner to bundle mintcore alongside mint source, rewriting
go.mod replace directives for the deployed directory layout. Add embed
copies at internal/dispatch/gcf/mintsrc/mintcore/*.embed.
Move all mint tests to mintcore since the logic now lives there. Update
CLI commands (admin, inference, mint, run) to use mintcore.BuildRepoProviderID.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: CLAUDE.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,6 +22,8 @@ Fullsend is a platform for fully autonomous agentic development for GitHub-hoste
22
22
23
23
When changing `internal/mint/main.go`, always copy it to `internal/dispatch/gcf/mintsrc/main.go.embed`. If `go.mod` or `go.sum` changed, sync those to `go.mod.embed` and `go.sum.embed` too.
24
24
25
+
The `internal/mintcore/` module is shared between the mint and devmint. Its files are also embedded for Cloud Function deployment at `internal/dispatch/gcf/mintsrc/mintcore/*.embed`. When changing any file in `internal/mintcore/`, sync it to the corresponding `.embed` file under `mintsrc/mintcore/`. Note: the mint's `go.mod.embed` uses `replace mintcore => ./mintcore` (not `../mintcore`), because `provisioner.go` rewrites the replace directive at bundle time to match the deployed directory layout.
26
+
25
27
**Forge abstraction:** All git forge operations must go through the `forge.Client` interface in `internal/forge/forge.go`. Do not use `exec.Command("gh", ...)` or direct GitHub API calls outside `internal/forge/github/`. See [AGENTS.md](AGENTS.md#forge-abstraction) for details.
26
28
27
29
When making changes to Go code under `cmd/` or `internal/`:
Copy file name to clipboardExpand all lines: README.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -42,7 +42,8 @@ This is not a product spec. It's an evolving exploration of a hard problem space
42
42
-[konflux-ci](docs/problems/applied/konflux-ci/) — Kubernetes-native CI/CD platform (the original proving ground)
43
43
-**[docs/plans/](docs/plans/)** — Implementation plans for accepted or in-progress designs:
44
44
-[Universal Harness Access](docs/plans/universal-harness-access.md) — Making harnesses and agents universally accessible via URLs and paths, enabling community sharing and composability
0 commit comments