feat(96d): architect formula — answer parsing + sub-issue filing #102

Closed
opened 2026-04-01 08:39:45 +00:00 by dev-bot · 0 comments
Collaborator

Parent

Part of #96 — architect agent.

What to do

Implement answer processing in formulas/run-architect.toml: detect answered questions on architect PRs that have passed the pitch phase, parse answers, and file sub-issues.

In preflight: detect PRs in question phase

An architect PR is in the question phase if:

  • It is open
  • The sprint spec contains a ## Design forks section (added by #101 after ACCEPT)
  • Human has not yet answered all questions (or has answered all)

Process answers

All questions answered (every ### Q heading has a matching Q<N>: <letter> in comments):

  1. Parse each answer (e.g. Q1: A, Q2: C)
  2. Read the sprint spec from the PR branch
  3. Generate final sub-issues based on answers:
    • Each sub-issue uses the appropriate issue template (bug/feature/refactor from .codeberg/ISSUE_TEMPLATE/)
    • Fill all template fields: problem/motivation, proposed solution, affected files (max 3), acceptance criteria (max 5), dependencies
    • File via Forgejo API on the disinto repo (not ops repo)
    • Label as backlog
  4. Comment on PR: "Sprint filed: #N, #N, #N"
  5. Merge the PR (sprint spec with answers persists in ops/sprints/)

Some questions answered, not all:

  1. Acknowledge answers received
  2. Comment listing remaining unanswered questions
  3. Signal PHASE:done (check again next poll)

No answers yet (questions posted but human hasn't responded):

  1. Skip — signal PHASE:done

Answer format

Human comments on the PR:

Q1: A
Q2: B
Q3: A

Parser: match lines starting with Q + digit(s) + : + space + letter A-D (case insensitive). Ignore other content in the comment.

Affected files

  • formulas/run-architect.toml (update — add answer processing step)

Acceptance criteria

  • Detects PRs in question phase (has ## Design forks section)
  • Parses human answers: Q1: A pattern matching
  • All answered: files sub-issues using templates on disinto repo, labels backlog
  • Sub-issues have all template fields filled
  • Comments sprint issue links on PR
  • Merges PR after filing (sprint persists in ops/sprints/)
  • Partial answers: acknowledges, lists remaining
  • No answers: skips
  • CI green

Dependencies

Depends on #101 (question posting — needs PRs with design forks to process).

## Parent Part of #96 — architect agent. ## What to do Implement answer processing in `formulas/run-architect.toml`: detect answered questions on architect PRs that have passed the pitch phase, parse answers, and file sub-issues. ### In preflight: detect PRs in question phase An architect PR is in the question phase if: - It is open - The sprint spec contains a `## Design forks` section (added by #101 after ACCEPT) - Human has not yet answered all questions (or has answered all) ### Process answers **All questions answered** (every `### Q` heading has a matching `Q<N>: <letter>` in comments): 1. Parse each answer (e.g. `Q1: A`, `Q2: C`) 2. Read the sprint spec from the PR branch 3. Generate final sub-issues based on answers: - Each sub-issue uses the appropriate issue template (bug/feature/refactor from `.codeberg/ISSUE_TEMPLATE/`) - Fill all template fields: problem/motivation, proposed solution, affected files (max 3), acceptance criteria (max 5), dependencies - File via Forgejo API on the **disinto repo** (not ops repo) - Label as `backlog` 4. Comment on PR: "Sprint filed: #N, #N, #N" 5. Merge the PR (sprint spec with answers persists in `ops/sprints/`) **Some questions answered, not all:** 1. Acknowledge answers received 2. Comment listing remaining unanswered questions 3. Signal PHASE:done (check again next poll) **No answers yet (questions posted but human hasn't responded):** 1. Skip — signal PHASE:done ### Answer format Human comments on the PR: ``` Q1: A Q2: B Q3: A ``` Parser: match lines starting with `Q` + digit(s) + `:` + space + letter A-D (case insensitive). Ignore other content in the comment. ## Affected files - `formulas/run-architect.toml` (update — add answer processing step) ## Acceptance criteria - [ ] Detects PRs in question phase (has `## Design forks` section) - [ ] Parses human answers: `Q1: A` pattern matching - [ ] All answered: files sub-issues using templates on disinto repo, labels backlog - [ ] Sub-issues have all template fields filled - [ ] Comments sprint issue links on PR - [ ] Merges PR after filing (sprint persists in ops/sprints/) - [ ] Partial answers: acknowledges, lists remaining - [ ] No answers: skips - [ ] CI green ## Dependencies Depends on #101 (question posting — needs PRs with design forks to process).
dev-bot added the
backlog
label 2026-04-01 08:40:22 +00:00
dev-qwen self-assigned this 2026-04-01 10:55:57 +00:00
dev-qwen added
in-progress
and removed
backlog
labels 2026-04-01 10:55:57 +00:00
dev-qwen removed their assignment 2026-04-01 11:13:44 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: johba/disinto#102
No description provided.