~bigbes/sr-ht-spec · parade

main · last commit 18 hours ago · 8tmadfpi

← Back to the parade

spec-3pc Add config.example.ini, README.md, SPEC.md and the missing Makefile gates to specs Lined Up

status: open P2 task
bd update spec-3pc --claim bd close spec-3pc
Created byEugene Blikh
Ownerbigbes@gmail.com
Created2026-08-17T20:40:10Z
Updated2026-08-17T20:40:10Z
Description
What is wrong: specs has no `config.example.ini`, no `README.md`, no `SPEC.md`, no `contrib/` directory, and its `Makefile` has none of `vet`, `fmt`, `fmt-check`, `check`, `tidy`, `check-version` or `check-embedded-css` targets — despite having a real, non-trivial config surface (`service.LoadConfig`, validated in `cmd/specsrht/main.go::validateConfig`, reading `[spec.sr.ht] origin` / `connection-string` / `repos` / `cache` / …).

Why it matters: specs is a donor repo — it supplied the migrate binary, the DB test harness, and half the daemon skeleton, APKBUILD and `.build.yml` pattern that later services (including tokens) copied from. Its first commit predates tokens' by about two and a half weeks. A newcomer copying from specs today has no config reference to copy, and inherits a Makefile with none of the build-integrity gates — it can ship a `vcs.modified=true` or stale-CSS binary with nothing in `make install` catching it. `docs/DESIGN.md` (1475 lines) and `AGENTS.md`/`CLAUDE.md` do exist, so this is a doc/tooling gap in an actively maintained service, not an abandoned one.

Sibling that does it correctly: `sourcehut-tokens` and `sourcehut-curator` for the doc-file set; `sourcehut-curator/Makefile` for the richest gate set in the family (`help`, `test-all`, `check-test-env`, `init-db`, `migrate`).

Fix: extract `config.example.ini` from `docs/DESIGN.md`'s `[spec.sr.ht]` block; write `README.md`; port the seven missing Makefile targets from `sourcehut-tokens/Makefile`. This is a prerequisite for several other findings against specs (the `bind-address` key, `check-version`/`check-embedded-css`, the CI DB-test gate) since they assume a `config.example.ini`/full Makefile exists to add to.

Note: confidence verified — listed the repo root directly: no `config.example.ini`, no `README.md`, no `SPEC.md`, no `contrib/`.

Audit: D32 (cross-repo audit, 2026-08-17)

Depends on

No outgoing dependencies.

Depended on by

Nothing depends on this issue.

No comments.

  • Eugene Blikh created the issue · 2026-08-17T23:40:10Z
Stored rows — what this pane was built from, as read
issues 1 row
id spec-3pc
content_hash 484b1bf8dd4e5d46ff150c048e27252a3102ad2f3544c5ad1569859a1d632adc
title Add config.example.ini, README.md, SPEC.md and the missing Makefile gates to specs
description What is wrong: specs has no `config.example.ini`, no `README.md`, no `SPEC.md`, no `contrib/` directory, and its `Makefile` has none of `vet`, `fmt`, `fmt-check`, `check`, `tidy`, `check-version` or `check-embedded-css` targets — despite having a real, non-trivial config surface (`service.LoadConfig`, validated in `cmd/specsrht/main.go::validateConfig`, reading `[spec.sr.ht] origin` / `connection-string` / `repos` / `cache` / …). Why it matters: specs is a donor repo — it supplied the migrate binary, the DB test harness, and half the daemon skeleton, APKBUILD and `.build.yml` pattern that later services (including tokens) copied from. Its first commit predates tokens' by about two and a half weeks. A newcomer copying from specs today has no config reference to copy, and inherits a Makefile with none of the build-integrity gates — it can ship a `vcs.modified=true` or stale-CSS binary with nothing in `make install` catching it. `docs/DESIGN.md` (1475 lines) and `AGENTS.md`/`CLAUDE.md` do exist, so this is a doc/tooling gap in an actively maintained service, not an abandoned one. Sibling that does it correctly: `sourcehut-tokens` and `sourcehut-curator` for the doc-file set; `sourcehut-curator/Makefile` for the richest gate set in the family (`help`, `test-all`, `check-test-env`, `init-db`, `migrate`). Fix: extract `config.example.ini` from `docs/DESIGN.md`'s `[spec.sr.ht]` block; write `README.md`; port the seven missing Makefile targets from `sourcehut-tokens/Makefile`. This is a prerequisite for several other findings against specs (the `bind-address` key, `check-version`/`check-embedded-css`, the CI DB-test gate) since they assume a `config.example.ini`/full Makefile exists to add to. Note: confidence verified — listed the repo root directly: no `config.example.ini`, no `README.md`, no `SPEC.md`, no `contrib/`. Audit: D32 (cross-repo audit, 2026-08-17)
design
acceptance_criteria
notes
status open
priority 2
issue_type task
assignee NULL
estimated_minutes NULL
created_at 2026-08-17T20:40:10Z
created_by Eugene Blikh
owner bigbes@gmail.com
updated_at 2026-08-17T20:40:10Z
closed_at NULL
closed_by_session
external_ref NULL
spec_id
compaction_level 0
compacted_at NULL
compacted_at_commit NULL
original_size NULL
sender
ephemeral 0
wisp_type
pinned 0
is_template 0
mol_type
work_type
source_system
metadata �{}
source_repo
close_reason
event_kind
actor
target
payload
await_type
await_id
timeout_ns 0
waiters
hook_bead
role_bead
agent_state
last_activity NULL
role_type
rig
due_at NULL
defer_until NULL
no_history 0
started_at NULL
is_blocked 0
events 1 row
id 01a01174-0037-78e5-893e-f7cb96d35985
issue_id spec-3pc
event_type created
actor Eugene Blikh
old_value
new_value
comment NULL
created_at 2026-08-17T23:40:10Z