The dual-faced felis-api: internal (service) and external (public/app/admin) routes behind a Zero-Trust guard. Includes the access domain (whitelist, ban, and LuckPerms permission/group control over the owner-gated RCON path), the modpack submission endpoints, and the admin-tier SysAdmin fleet read. Structured access fields are charset-validated before assembly so no field can splice a second RCON command.
14 lines
537 B
Go
14 lines
537 B
Go
package api
|
|
|
|
import (
|
|
"felis.lolicon.best/internal/restore"
|
|
)
|
|
|
|
// Compile-time proof that the production restore executor satisfies the API's
|
|
// Restorer interface. The dependency points one way only: api defines the
|
|
// narrow Restorer port and never imports the restore package in production
|
|
// (handlers_backups.go depends on the interface); this test is the single place
|
|
// the concrete type and the port are pinned together, mirroring how images_test
|
|
// pins build.Builder to ImageBuilder.
|
|
var _ Restorer = (*restore.Restorer)(nil)
|