maaz519
4b7dc98c6b
feat(service): ingest endpoint with kernel gates (P1.4)
...
POST /v1/interactions/ingest: fail-closed OPA gate -> resolve scope/handle(MDM,
no silent merge)/actor/channel/thread -> idempotent write of interaction+parts+
outbox CloudEvent in one tx. 4 DB-backed gate tests green (idempotent /
fail-closed / unresolved-handle / outbox event). 16 tests total.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 21:24:09 +05:30
maaz519
8cd5d9b248
feat(service): PlatformGates seam + fail-closed decideOrThrow (P1.3)
...
LocalDevPorts = permissive in-service default (no testkit at runtime);
decideOrThrow turns OPA deny/throw/timeout into PolicyDeniedError. Tests drive
deny/timeout via testkit fakes. 12 tests green.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 21:18:23 +05:30
maaz519
9cfd1ab1ab
feat(service): NestJS kernel skeleton + 10-table kernel schema (P1.1+1.2)
...
Reuses support-service bootstrap/health/prisma patterns. Kernel-only Prisma
schema (scope/source_handle/actor/channel/thread/participant/interaction/
message_part/outbox/processed_event) with orgId/appId NOT NULL and
@@unique([scopeId, idempotencyKey]). Health verified: {status:ok,db:true}.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 21:16:31 +05:30
maaz519
c73acce0e8
ci: import-boundary law + CI workflow (P0 complete)
...
Boundary script enforces contracts<testkit<service (catches from/side-effect/
dynamic/require imports); wired into pnpm test + CI. CI: install --frozen-lockfile
-> boundary -> typecheck -> build -> test.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 21:09:37 +05:30
maaz519
169c1a375c
feat(testkit): deterministic fake platform ports + fixtures + replay oracle
...
Fakes for all 7 IiosPlatformPorts (deny/timeout/ambiguous controls), portal +
unknown-email fixtures, replayTwice idempotency oracle. Adds ingest request
contract. Vitest alias resolves workspace packages to source.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 21:05:41 +05:30
maaz519
fbea291609
feat(contracts): @insignia/iios-contracts — scope, enums, platform ports, CloudEvents, errors
...
Verbatim IiosPlatformPorts from the bottom-up atlas; orgId/appId required scope
(KG-02); PolicyDeniedError for fail-closed. Vitest as workspace test runner.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 20:59:34 +05:30
maaz519
c00d038df2
chore: iios workspace skeleton (pnpm workspace, configs, postgres:5434)
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-30 20:56:36 +05:30