Fas 1b punkt 6: First Scan Coach + aktiveringsmätning

This commit is contained in:
Sven (AAMOS AI)
2026-08-06 04:14:49 +07:00
parent 2f3cdf8016
commit bd8df59138
29 changed files with 9378 additions and 29 deletions
+25
View File
@@ -0,0 +1,25 @@
import type { FastifyInstance } from "fastify";
import { getActivationState, schema } from "@app/database";
import { errors } from "../lib/errors.js";
import { getActiveHouseholdId } from "../lib/helpers.js";
/**
* Hushållsaktiveringsstatus (spec §4.2):
* - ACTIVATED_HOUSEHOLD
* - VALUE_CONFIRMED_HOUSEHOLD
*/
export async function activationRoutes(app: FastifyInstance) {
const auth = { preHandler: [app.authenticate] };
app.get("/v1/households/me/activation", auth, async (req) => {
const householdId = await getActiveHouseholdId(app.db, req.userId);
if (!householdId) throw errors.notFound("Aktivt hushåll saknas.");
const state = await getActivationState(app.db, householdId);
return {
...state,
isActivated: state.activatedAt != null,
isValueConfirmed: state.valueConfirmedAt != null,
};
});
}