/**
 * The LA Studio's seat handshake, captured.
 *
 * `GET /api/la-studio/tera/seats` on cloud-1 exists for exactly one purpose: to
 * let a Tera office pack be *diffed* against the room it claims to be a twin of.
 * It has existed for a while and nothing has ever diffed against it, which is
 * how a handshake becomes decoration. This is the response, captured on
 * 2026-08-22 at `frameRev` 2, so that the next person to author that pack finds
 * a test already waiting rather than a guess.
 *
 * ### It is a fixture, not a pack
 *
 * Nothing outside `src/test/` imports this and nothing should. It is not in the
 * bundle, it is not an `Office`, and it is deliberately not one: authoring the
 * room this describes is a decision about a private space that has not been
 * made — see `src/test/packs/laStudioHandshake.test.ts`, which is the whole
 * reason the file exists.
 *
 * ### What is in it, and what is deliberately not
 *
 * Three seats and a slab, in the room's own coordinates, with the origin at a
 * floor corner. There is no latitude, no longitude, no address, no bearing to
 * anywhere and nothing home-relative in it. The upstream also serves an
 * occupancy endpoint and a live camera frame; neither is captured here and
 * neither belongs in a repository.
 *
 * `slab.provenance` is the upstream's own word and it is the interesting field:
 * this room was **measured**, on the date it says, which is a stronger claim
 * than any shipped pack makes about its own dimensions and the reason a twin of
 * it would be worth building.
 */

export interface LaStudioSeatFixture {
  id: string;
  position: { x: number; z: number };
  facing: number;
  pose: "sit" | "stand";
}

export interface LaStudioSeatsBody {
  frameRev: number;
  officeId: string;
  slab: {
    widthM: number;
    depthM: number;
    ceilingM: number;
    provenance: string;
    measuredAt: string;
  };
  seats: LaStudioSeatFixture[];
}

/** Captured verbatim from `GET /api/la-studio/tera/seats`, 2026-08-22. */
export const LA_STUDIO_SEATS: LaStudioSeatsBody = {
  frameRev: 2,
  officeId: "la-studio",
  slab: {
    widthM: 3.9624,
    depthM: 3.9624,
    ceilingM: 2.44,
    provenance: "measured",
    measuredAt: "2026-08-21T21:57:05-07:00",
  },
  seats: [
    { id: "desk-01", position: { x: 2.1, z: 0.8 }, facing: 0, pose: "sit" },
    { id: "bed-01", position: { x: 3.55, z: 2.5 }, facing: 1.5707963267948966, pose: "sit" },
    { id: "floor-01", position: { x: 1.9812, z: 1.9812 }, facing: 3.141592653589793, pose: "stand" },
  ],
};
