Wrap everything in a module instead of a namespace. I'm still not
entirely clear on what the distinction is but the forked typings
don't seem to get applied without this change.
This is in preparation for a transition to SQLite. SQLite does have
a similar concept called "attached databases", but it's kind of a
pain to deal with if you're casually browsing a database from the
`sqlite3` CLI so we'll just use some slightly uglier explicitly
namespaced table name identifiers instead.
Hostname is configured from .env now along with everything else.
JSON state storage backend has been abandoned. We might add an
SQLite backend to go with the current Postgres backend at some
point though; SQLite even supports window functions these days.
For some reason initpki doesn't generate a set of certs that are
acceptable to the P-Ras core, even though I never modified it.
Maybe some defaults changed in a recent release of OpenSSL or
something.
Well, to make everybody's life easier let's all just use the same
private keys for everything. It's not like it matters.
PowerOn uses HTTP slightly incorrectly, but other endpoints use
HTTP incorrectly in different ways (or maybe even correctly, who
knows). Scope the current request interceptor to just PowerOn.
Turns out (while researching team creation) the profile ext id
is just the aime id. After creating a team a profile discovery
request is immediately issued with the "profile id" in the field
that holds the aime id during initial profile load.
Unconditionally return a response; the team ID and profile ID
don't actually seem to affect what the client expects to receive
(world top ten must be returned in all cases).