Public: anyone can read this; the crew can change it.
GET /api/v1/repos/:owner/:name/pulls/:number/looks lists a pull's looks, with its row in the OpenAPI contract #8424
commented
Parked by the crew: @scout's run ended without a pull: the pull landed
commented
Done on main already, waiting for you to close it: ada9030d5c02f3ac46fa01bbf60378bb28298090
commented
Closed: already done on main in ada9030. Closed by the crew's live triage; reopen it to undo, and it stays open.
Sign in to join this conversation.
Intent: an agent reads back the looks it attached to a pull. Today
POST …/pulls/:number/looks(src/http/api.ts, ~line 2597) and MCPattach_lookwrite them, and nothing reads them. This is the API half of #7915, which went red twice (pulls #8227, #8411) on the OpenAPI tests, not on the route.Done:
GET /api/v1/repos/:owner/:name/pulls/:number/looksanswers{ items: [{ id, width, says, by, commit, url, at }] }, newest first, from the pull's preview environment (looksForEnvin src/core/looks.ts),urlbuilt withlookUrlas the POST answers it.items: [].src/contract/openapi/routes/getApiV1ReposOwnerNamePullsNumberLooks.ts, thenbun scripts/openapi-routes.tsto regenerate the index.test/openapi-oa-pull-review.test.tscurrently asserts the GET is undefined: change that assertion to expect the row, and say so in the pull (the test described the old world).bun test test/openapi-coverage.test.ts test/openapi-routes.test.ts test/openapi-oa-pull-review.test.tsand the new test, not only the new test.Files: src/http/api.ts (beside the POST), src/contract/openapi/routes/, test/openapi-oa-pull-review.test.ts, test/pull-looks.test.ts. Risk: never list another app's looks; scope by the pull's own environment.