Skip to content

Validation

llms.txt lists every page for a coding agent.

This is the only page that states loomster’s status. Other pages link here rather than repeat it.

Each tier on each target: the Floci emulator and a real AWS account.

TierFlociReal AWS
lightAll seven stacks CREATE_COMPLETE, including the agents wave on Floci; the local app runs with a real Cognito login (just local-up)Deployed end to end: the ALB serves Loom, backed by RDS and Cognito, and the backend passes its health check. backend/deploy-agent deployed an agent through Loom’s API to READY on this tier
productionAll seven stacks against a bring-your-own VPC, with every tier resource: RDS Proxy, PrivateLink, ACM and Route53, backend autoscaling, the assistant runtime (just production-floci-e2e)All seven stacks CREATE_COMPLETE on a custom domain over HTTPS, the assistant runtime READY on AgentCore, and the 15 screen checks the harness had at the time passed through a token from an MFA-enforced pool (just production-live-e2e)
production-haAs production, plus Multi-AZ RDS, rotation and the two-task floor (just production-ha-floci-e2e)All seven stacks, Multi-AZ RDS and the rotation schedule live, served over HTTPS, the assistant READY. It ran as a second instance next to production in the same account

Floci runs RDS as one container, so MultiAZ is requested and reported false, and it doesn’t serve the ALB to ECS path, so the health check only runs on AWS.

Each claim runs twice: plain, where it must pass, and under BREAK=1, where it breaks its own property and must report caught. just claims records every run in test/claims-record.json, and npm run claims:page writes the table below from it; the docs check fails when the two disagree. Each cell is the claim’s own one-line verdict from its latest recorded run. bash test/claims.sh --list prints every claim with its target and statement.

ClaimTargetPlainBREAKRecorded
agents/per-agent-roleawspass: loom-agent-role made loom-claims-c633b8-agent-role-loomster-claim-c633b8-role and registered it in Loom (loom:group loomster); an agent on it reached READY in 322s and answered one invokefail: with bedrock model calls denied to the per-agent role, the agent still reached READY and answered2026-10-13, 135fdea
agents/ready-and-invokeawsfail: the invoke streamed an error: data: {“error”: “No configuration found. Set AGENT_CONFIG_JSON or AGENT_CONFIG_PATH.”, “error_type”: “ValueError”, “message”: “An error occurred during streaming”}caught: with bedrock:InvokeModel* denied to the runtime’s role: the invoke streamed an error: data: {“error”: “No configuration found. Set AGENT_CONFIG_JSON or AGENT_CONFIG_PATH.”, “error_type”: “ValueError”, “message”: “An error occurred during streaming”}2026-10-13, 135fdea
backend/deploy-agentawspass: Loom deployed loomster_claim_c49490_run_1791822788 to READY in 306s on us-east-1 and it answered one invokecaught: with the task role denied: agent loomster_claim_c49490_brk_1791823177 ended FAILED after 46s (failed)2026-10-12, bd7ac01
backend/deploy-agent-flociflocino recorded runno recorded run
backend/task-rolestaticpass: allowed=82/82caught: dropped=iam:PassRole denied=6/82 hit=iam:PassRole@role/loom-dev-a-shared-foundation-agent-role2026-10-12, dcbfca4
cognito/user-clientstaticpass: light, production and production-ha: the user client allows password sign-in, and every frontend build passes its id from loom-cognito’s oUserClientIdcaught: with a shared pool that names no user client: light: a loom-frontend docker-build lacks VITE_COGNITO_USER_CLIENT_ID from loom-cognito’s oUserClientId; production: a loom-frontend docker-build lacks VITE_COGNITO_USER_CLIENT_ID from loom-cognito’s oUserClientId; producti…2026-10-12, 12a1d76
db/baselineawsfail: just db reader failed: no pg_hba.conf entry for host “10.0.1.162”, user “loom”, database “loom”, no encryptionfail: BREAK could not be applied: just db reader failed: db: 127.0.0.1:15432 is already in use; set LOOM_DB_LOCAL_PORT2026-10-13, 135fdea
db/migrate-localflocipass: baseline recorded, the loomster_claim_probe_1791845574 migration stopped at its gate (exit 3), applied after its plan was approved, and status and drift are cleancaught: with agents.description changed out of band, just db drift reported it (exit 2)2026-10-12, dcbfca4
local/authflocipass: the SPA logs in at /floci-cognito/ and Loom accepts the Floci token (200 with g-admins-super; 401 without one)caught: with LOOM_COGNITO_ENDPOINT_URL unset, Loom refused the Floci token (401)2026-10-12, dcbfca4
ops/bootstrapawspass: both service-linked roles exist after loom-bootstrap, and the second run found both and created nothingcaught: with iam:CreateServiceLinkedRole refused and no role present, loom-bootstrap failed with AccessDenied2026-10-12, dcbfca4
params/reach-buildstaticpass: the password reached loom-db and ARM64 reached the backend task definitioncaught: with the variables unset: LOOM_DB_PASSWORD not in loom-db; LOOM_CPU_ARCHITECTURE=ARM64 not in loom-backend (CpuArchitecture X86_64)2026-10-12, 12a1d76
params/reach-deploystaticpass: the template cfn-deploy got for loom-db was synthesized in the run and holds LOOM_DB_PASSWORDcaught: with LOOM_DB_PASSWORD unset: LOOM_DB_PASSWORD is not in the template cfn-deploy got2026-10-12, 12a1d76
screens/allawsfail: loom-seed (demo) failed: Op “loom-seed” failed after 24.0sfail: BREAK could not be applied: loom-seed (demo) failed: Op “loom-seed” failed after 23.7s2026-10-13, 135fdea
seed/demo-loudflocipass: loom-seed’s demo profile exited 0, and agents, memories, MCP servers and A2A agents each list an entrycaught: with the A2A card URL on a closed port, loom-seed’s demo profile exited non-zero2026-10-12, dcbfca4
teardown/covers-componentsstaticpass: all 7 components are in the teardown order, consumers firstcaught: with loom-agents dropped: not in the teardown order: loom-agents2026-10-12, 12a1d76
tier/light-liveawspass: http://loom-claims-c633b8-shared-458efb-646878298.us-east-1.elb.amazonaws.com serves the SPA with the user client 70860og0bk9auhsvgieu9qriku baked in; signing in through it gave a g-admins-super token that /api/auth/me and /api/agents accept (401 without one)caught: without g-admins-super the web app’s sign-in gave a token (groups [“t-admin”]) that /api/agents refused (403)2026-10-12, dcbfca4
tunnel/rdsawspass: the tunnel host i-0754858d6479074b1 came online in SSM and scripts/tunnel.sh forwarded 127.0.0.1:61577 to the database, where SELECT 1 answeredfail: with the host’s ingress on sg-061ab6fd637417540 revoked, SELECT 1 still answered through the tunnel2026-10-13, 135fdea

Each item below has a claim written for it, named in brackets. The five AWS claims among them have recorded runs, but those ran before the fixes for what they found (the memory namespace in the demo seed Op, the assistant’s baked config, SSL to RDS, and claims that mistook a streamed error for an answer). They haven’t run since, so their rows above show the old failures.

  • Every screen check passing against a seeded Loom on AWS, the Evaluations seed steps included (screens/all). The Skills steps need an Agent Registry, which the claims deployment doesn’t configure.
  • Chant-managed runtimes on AgentCore Runtime V2 answering an invoke live (agents/ready-and-invoke).
  • The per-agent role from loom-agent-role being the one that limits the agent’s model calls (agents/per-agent-role). The plain run passed.
  • The SSM tunnel failing closed when the host can’t reach the database (tunnel/rds; the plain run passed), and the SQL Yodeler baseline recorded through it (db/baseline).
  • Real agent reasoning on Floci: invoking an agent there returns a canned reply.
  • The bedrock-mantle:CreateInference grant against a mantle-only model.
  • The generated Forgejo and GitHub deploy workflows against real infrastructure; their component pipelines run against Floci (just github-runtime-e2e, just forgejo-runtime-e2e).