unic / unic/unic-agents-plugins

bug(unic-archon-dlc): the re-entry idiom reads before it offers the choice, and Step 8 hardcodes names the Consumer overrides

Open
#440 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

app:unic-archon-dlc bug needs-specs p2
Dominant language
JavaScript
Stars
1
Forks
0
Avg merge
16h 43m
Merged PRs (30d)
19

Description

The re-entry idiom reads before it offers the choice

/specs Step 2 and /tickets Step 2 carry the same shape: detect → read → summarise → ask.

"Check whether <ARTIFACTS_DIR>/<SLUG>/PRD.md already exists. If it does, this is a re-entry. Read it, summarise it back, and ask whether to revise it or start over — never silently clobber an existing PRD."

The read happens before the choice it is offered for. So both branches are chosen by an agent that has already read the previous artefact, and a second run over an existing PRD cannot be unanchored by picking "start over".

Measured against plugin 0.26.0, gitCommitSha 348f2319. It is a property of the command text, so it holds in every repository.

Run 2 worked around it by deleting PRD.md and issues.json on the branch before invoking, in two commits. That works, and it is not something a command should require an operator to know.

Step 8 hardcodes names that do not fit the Consumer

The branch name. Step 8 prescribes feature/specs/<slug>. The Consumer's documented convention is feature/<WI#>_<slug>. It was overridden in both runs — run 1 used feature/42981_specs-profile-card-take3, run 2 feature/43004_profile-card — and in run 2 the override was necessary rather than stylistic, because a branch cut from develop would have restored the artefacts the setup commits had just removed.

Two overrides across two runs is evidence that the default is wrong, not that the operators were difficult.

The pull-request title. The gate hardcodes plan(<SLUG>): PRD and ADRs, naming an artefact run 2 did not produce — no ADR crystallised. An accurate title had to be written by hand.

The open question, to be grilled before criteria

For re-entry: should the command detect and ask before reading, or should re-entry be an explicit argument rather than something inferred from the filesystem?

For the names: where does a Consumer declare its branch convention, given config.yaml already carries project.branching?

Full evidence: docs/research/2026-08-31-dlc-run-2-findings.md.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with docs/research/2026-08-31-dlc-run-2-findings.md, then inspect the /specs and /tickets command text, especially Step 2 and Step 8, along with config.yaml's project.branching setting. Clarify the re-entry decision and how Consumer naming conventions are declared; done means both commands no longer require manual overrides and their criteria match the artefacts produced.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.