nj9shb2tm8thfah77d1f8brsfe5t8nb4 · 63 rows
| id | issue_id | event_type | actor | old_value | new_value | comment | created_at |
|---|---|---|---|---|---|---|---|
| 019f95fc-b75e-7b00-979a-510d501bbb9f | spec-ejq.2 | created | Eugene Blikh | NULL | 2026-07-25T00:16:35Z | ||
| 019f9913-3831-7bd7-8876-d352b2460c79 | spec-by6.3.5 | created | Eugene Blikh | NULL | 2026-07-25T14:40:01Z | ||
| 019fcf65-3a8e-744d-9748-ad204c4a6fcd | spec-by6.4 | created | Eugene Blikh | NULL | 2026-08-05T03:49:05Z | ||
| 019fcf78-95f1-756a-8df8-b30a581fbdc2 | spec-by6.5 | created | Eugene Blikh | NULL | 2026-08-05T04:10:14Z | ||
| 019fcf79-fe91-74f9-aa65-e68d2fe89309 | spec-by6.3.5 | closed | Eugene Blikh | Closed | NULL | 2026-08-05T04:11:46Z | |
| 019fcf84-5f2f-7c77-84e3-c66b4e77685c | spec-by6.5 | closed | Eugene Blikh | Closed | NULL | 2026-08-05T04:23:06Z | |
| 019fcf84-a887-7c5c-aa82-d7c11c7fd387 | spec-by6.4 | closed | Eugene Blikh | Closed | NULL | 2026-08-05T04:23:25Z | |
| 019fcfe1-a1db-7d94-a36f-7dbeac40c1bc | spec-ejq.2 | updated | Eugene Blikh | {"id":"spec-ejq.2","title":"CI publish task fails: build secret apk-ci-s3 is missing","description":"Every recent builds.sr.ht run fails at the publish task while every other task passes. Confirmed on jobs #244 (e97532c), #245 (2dc6b71) and #246 (c2dd1ef): 'scss keygen version build' all SUCCESS, 'publish' FAILED. Pre-existing — #244 and #245 predate the Phase 5b work, so no code change caused it. Consequence: the apk never reaches the Garage repo bucket, so apk-mirror on phoebe has nothing new to re-index and the deployed service cannot be upgraded from CI output.","design":"EVIDENCE. .build.yml declares 'secrets: [apk-ci-s3]', documented as a File secret installed at ~/.apk-ci.env carrying APK_CI_S3_ACCESS_KEY / APK_CI_S3_SECRET_KEY for the Garage repo bucket. The publish task's first real line is '. ~/.apk-ci.env'. But 'hut builds secret list' returns exactly four secrets and none is apk-ci-s3: agent1-deploy (SSH key), bencher-api-key, s3-cache-key-secret, s3-cache-key-id. So the file the task sources is never installed.\n\nNOT VERIFIED: the exact failure text. The raw log endpoint (https://builds.srht.bigb.es/query/log/246/publish/log) needs a Bearer token, and reading hut's credential file was correctly refused, so the diagnosis rests on the secret list plus the manifest rather than on the log line itself. Read the log to confirm before acting.\n\nTWO POSSIBILITIES, needs the owner to distinguish:\n1. The secret was deleted or never created — fix is to create a File secret named apk-ci-s3 at ~/.apk-ci.env (mode 600) holding the two S3 keys.\n2. builds.sr.ht resolves manifest secrets by UUID, not by name — fix is to replace the name with the secret's UUID in .build.yml.\n\nSAME BUG IN THE SIBLING: ~/data/home/sourcehut-compare/.build.yml carries a byte-identical secrets block, so compare.sr.ht's publish is broken the same way and both fix together.","acceptance_criteria":"A push to master produces a build whose publish task succeeds and uploads the .apk to the Garage repo bucket; apk-mirror on phoebe re-indexes it within 15 minutes.","status":"open","priority":2,"issue_type":"bug","owner":"bigbes@gmail.com","created_at":"2026-07-24T21:16:35Z","created_by":"Eugene Blikh","updated_at":"2026-07-24T21:16:35Z"} | {"notes":"DIAGNOSIS RESOLVED 2026-08-05, still blocked on the owner.\n\nPossibility 2 (builds.sr.ht resolves manifest secrets by UUID only) is RULED OUT. buildsrht/manifest.py parses each secrets: entry as a UUID first and, on failure, treats it as a 3-512 character name and looks it up by name. So '- apk-ci-s3' in the manifest is valid as written; nothing in .build.yml needs changing.\n\nPossibility 1 confirmed: 'hut builds secret list' still returns exactly four secrets (agent1-deploy, bencher-api-key, s3-cache-key-secret, s3-cache-key-id) and none is apk-ci-s3. The secret was never created or was deleted.\n\nFailure mechanism, derived rather than read from the log: the task preamble is 'set -xe' and publish's first real line is '. ~/.apk-ci.env'. A missing file makes '.' exit non-zero and set -e kills the task. That reproduces the observed signature exactly - scss/keygen/version/build green, publish red - and matches build #250 (cc90b4a) as well as #247 (61515a5), so the port to the line-numbered diff did not change it.\n\nFIX, both steps need the owner:\n1. Garage, on the host that has the CLI: 'garage key create apk-ci' then 'garage bucket allow --read --write repo --key apk-ci'. No --owner: publish only uploads and never deletes. Check first whether the key behind the existing s3-cache-key-* secrets already has write on the repo bucket.\n2. Register a File secret on builds.srht.bigb.es (web form or GraphQL - 'hut builds secret' is list/share only, it cannot create): name apk-ci-s3, path /home/build/.apk-ci.env, mode 600, contents two lines APK_CI_S3_ACCESS_KEY=... and APK_CI_S3_SECRET_KEY=... . Absolute path rather than ~/.apk-ci.env because the worker writes the literal string it was given; /home/build is the build user's home, so the manifest's '. ~/.apk-ci.env' still resolves. Mode 600 rather than the 644 the existing s3-cache-key-* secrets use: this is a key, not an identifier.\n\nSecrets are account-level, so the same one also fixes sourcehut-compare, whose manifest carries the identical block."} | NULL | 2026-08-05T06:04:58Z |
| 019fcfe8-8394-769f-9863-afe001048233 | spec-ejq.2 | closed | Eugene Blikh | Owner created the File secret apk-ci-s3 (/home/build/.apk-ci.env, mode 600) on builds.srht.bigb.es; 'hut builds secret list' now shows it. Resubmit of #250 as build #251 on the same commit cc90b4a: SUCCESS, all five tasks green including publish. VERIFIED: publish runs under 'set -e' and its body is a loop of 'rclone copyto' with an echo per file, so any failed upload would have exited non-zero and failed the task. A green publish is therefore evidence the .apk reached repo/alpine/v3.22/bigbes/x86_64/ — specsrht-0.0.78-r0.apk for this commit. NOT VERIFIED from here: the apk-mirror re-index on phoebe, the second half of the acceptance criteria. s3.bigb.es is not reachable anonymously from this workstation and phoebe host access is blocked (spec-ar4). If the package turns out not to be installable, that is apk-mirror's problem rather than this repo's and wants its own bead. The manifest needed no change: '- apk-ci-s3' resolves by name, as the diagnosis note records. The same account-level secret should also unblock sourcehut-compare, whose .build.yml carries the identical block — its next build will show it. | NULL | 2026-08-05T06:12:29Z | |
| 019fcfe9-e73a-7edc-8c59-98f8b2382d45 | spec-rsb | created | Eugene Blikh | NULL | 2026-08-05T06:14:00Z | ||
| 019fcfe9-f99d-71f4-9311-f54c432ab69c | spec-rsb | claimed | Eugene Blikh | {"id":"spec-rsb","title":"CLI: specsrht token create|list|revoke","description":"db.Store has the whole agent-token lifecycle (CreateAgentToken, ListAgentTokens, RevokeAgentToken, GenerateToken/HashToken) but nothing calls it: no CLI subcommand and no web page. A freshly deployed instance therefore has no way to issue the credential the agent write plane (REST PUT and mcpsrv spec_propose) requires, short of hand-writing an INSERT with a sha256 hash. Add a 'token' admin subcommand next to 'space', in the same shape: load config, open the pool, run, exit.","acceptance_criteria":"specsrht token create \u003cname\u003e mints a token, stores only its hash, and prints the plaintext once; specsrht token list shows id/name/created/revoked; specsrht token revoke \u003cid\u003e stamps it revoked; usage errors are one clear line; unit tests cover argument parsing and row formatting","status":"open","priority":2,"issue_type":"feature","owner":"bigbes@gmail.com","created_at":"2026-08-05T03:14:01Z","created_by":"Eugene Blikh","updated_at":"2026-08-05T03:14:01Z"} | {"assignee":"Eugene Blikh","status":"in_progress"} | NULL | 2026-08-05T06:14:05Z |
| 019fcfef-8f21-7196-a3ab-faabe432786d | spec-ejq.2 | updated | Eugene Blikh | {"id":"spec-ejq.2","title":"CI publish task fails: build secret apk-ci-s3 is missing","description":"Every recent builds.sr.ht run fails at the publish task while every other task passes. Confirmed on jobs #244 (e97532c), #245 (2dc6b71) and #246 (c2dd1ef): 'scss keygen version build' all SUCCESS, 'publish' FAILED. Pre-existing — #244 and #245 predate the Phase 5b work, so no code change caused it. Consequence: the apk never reaches the Garage repo bucket, so apk-mirror on phoebe has nothing new to re-index and the deployed service cannot be upgraded from CI output.","design":"EVIDENCE. .build.yml declares 'secrets: [apk-ci-s3]', documented as a File secret installed at ~/.apk-ci.env carrying APK_CI_S3_ACCESS_KEY / APK_CI_S3_SECRET_KEY for the Garage repo bucket. The publish task's first real line is '. ~/.apk-ci.env'. But 'hut builds secret list' returns exactly four secrets and none is apk-ci-s3: agent1-deploy (SSH key), bencher-api-key, s3-cache-key-secret, s3-cache-key-id. So the file the task sources is never installed.\n\nNOT VERIFIED: the exact failure text. The raw log endpoint (https://builds.srht.bigb.es/query/log/246/publish/log) needs a Bearer token, and reading hut's credential file was correctly refused, so the diagnosis rests on the secret list plus the manifest rather than on the log line itself. Read the log to confirm before acting.\n\nTWO POSSIBILITIES, needs the owner to distinguish:\n1. The secret was deleted or never created — fix is to create a File secret named apk-ci-s3 at ~/.apk-ci.env (mode 600) holding the two S3 keys.\n2. builds.sr.ht resolves manifest secrets by UUID, not by name — fix is to replace the name with the secret's UUID in .build.yml.\n\nSAME BUG IN THE SIBLING: ~/data/home/sourcehut-compare/.build.yml carries a byte-identical secrets block, so compare.sr.ht's publish is broken the same way and both fix together.","acceptance_criteria":"A push to master produces a build whose publish task succeeds and uploads the .apk to the Garage repo bucket; apk-mirror on phoebe re-indexes it within 15 minutes.","notes":"DIAGNOSIS RESOLVED 2026-08-05, still blocked on the owner.\n\nPossibility 2 (builds.sr.ht resolves manifest secrets by UUID only) is RULED OUT. buildsrht/manifest.py parses each secrets: entry as a UUID first and, on failure, treats it as a 3-512 character name and looks it up by name. So '- apk-ci-s3' in the manifest is valid as written; nothing in .build.yml needs changing.\n\nPossibility 1 confirmed: 'hut builds secret list' still returns exactly four secrets (agent1-deploy, bencher-api-key, s3-cache-key-secret, s3-cache-key-id) and none is apk-ci-s3. The secret was never created or was deleted.\n\nFailure mechanism, derived rather than read from the log: the task preamble is 'set -xe' and publish's first real line is '. ~/.apk-ci.env'. A missing file makes '.' exit non-zero and set -e kills the task. That reproduces the observed signature exactly - scss/keygen/version/build green, publish red - and matches build #250 (cc90b4a) as well as #247 (61515a5), so the port to the line-numbered diff did not change it.\n\nFIX, both steps need the owner:\n1. Garage, on the host that has the CLI: 'garage key create apk-ci' then 'garage bucket allow --read --write repo --key apk-ci'. No --owner: publish only uploads and never deletes. Check first whether the key behind the existing s3-cache-key-* secrets already has write on the repo bucket.\n2. Register a File secret on builds.srht.bigb.es (web form or GraphQL - 'hut builds secret' is list/share only, it cannot create): name apk-ci-s3, path /home/build/.apk-ci.env, mode 600, contents two lines APK_CI_S3_ACCESS_KEY=... and APK_CI_S3_SECRET_KEY=... . Absolute path rather than ~/.apk-ci.env because the worker writes the literal string it was given; /home/build is the build user's home, so the manifest's '. ~/.apk-ci.env' still resolves. Mode 600 rather than the 644 the existing s3-cache-key-* secrets use: this is a key, not an identifier.\n\nSecrets are account-level, so the same one also fixes sourcehut-compare, whose manifest carries the identical block.","status":"closed","priority":2,"issue_type":"bug","owner":"bigbes@gmail.com","created_at":"2026-07-24T21:16:35Z","created_by":"Eugene Blikh","updated_at":"2026-08-05T03:12:30Z","closed_at":"2026-08-05T03:12:30Z","close_reason":"Owner created the File secret apk-ci-s3 (/home/build/.apk-ci.env, mode 600) on builds.srht.bigb.es; 'hut builds secret list' now shows it. Resubmit of #250 as build #251 on the same commit cc90b4a: SUCCESS, all five tasks green including publish.\n\nVERIFIED: publish runs under 'set -e' and its body is a loop of 'rclone copyto' with an echo per file, so any failed upload would have exited non-zero and failed the task. A green publish is therefore evidence the .apk reached repo/alpine/v3.22/bigbes/x86_64/ — specsrht-0.0.78-r0.apk for this commit.\n\nNOT VERIFIED from here: the apk-mirror re-index on phoebe, the second half of the acceptance criteria. s3.bigb.es is not reachable anonymously from this workstation and phoebe host access is blocked (spec-ar4). If the package turns out not to be installable, that is apk-mirror's problem rather than this repo's and wants its own bead.\n\nThe manifest needed no change: '- apk-ci-s3' resolves by name, as the diagnosis note records. The same account-level secret should also unblock sourcehut-compare, whose .build.yml carries the identical block — its next build will show it."} | {"notes":"RE-INDEX VERIFIED 2026-08-05, the half the close reason left open.\n\nChecked through repo.bigb.es, the public mirror apk-mirror builds from the Garage repo bucket (URL documented in the APKBUILD header; s3.bigb.es itself resolves to 192.168.88.18 and is only reachable from the LAN, which is why the first attempt to verify failed).\n\n spec.sr.ht-0.0.78-r0.apk 200 content-length 16059260 last-modified 03:09:39 GMT\n APKINDEX.tar.gz 200 last-modified 03:15:00 GMT\n index entry: P:spec.sr.ht V:0.0.78-r0 A:x86_64 S:16059260\n\nThe size in the index matches the object byte for byte, and 0.0.78 is 'git rev-list --count cc90b4a' — the commit build #251 ran on. The index was rebuilt 5.5 minutes after the upload, inside the 15-minute window the acceptance criteria name. Both halves of the criteria are therefore met.\n\nCorrection to the close reason: the package is named spec.sr.ht-0.0.78-r0.apk, not specsrht-0.0.78-r0.apk — pkgname in APKBUILD is spec.sr.ht. The specsrht spelling 404s."} | NULL | 2026-08-05T06:20:11Z |
| 019fcff2-24b3-749f-ae45-0a4e0290db20 | spec-ovo | created | Eugene Blikh | NULL | 2026-08-05T06:23:00Z |