Skip to content

fix: cap Soundwave interview at 8 questions (was ~18) - #825

Merged
PurpleCHOIms merged 2 commits into
mainfrom
fix/soundwave-interview-question-budget
Sep 25, 2026
Merged

PurpleCHOIms merged 2 commits into
mainfrom
fix/soundwave-interview-question-budget

Conversation

@NetVar1337

Copy link
Copy Markdown
Member

Fixes #824.

Root cause

roe-template alone drove 10 separate ask_user_question calls and conops-template another 8 (including one for the CONOPS.communication_plan field, which is DEPRECATED per SCHEMA_REFERENCE and duplicated by ContactPlan). That's 18 questions before a single planning document exists — exactly matching the reporter's count.

Fix

  • soundwave.md CRITICAL_RULES demo #12 (new): Question Budget. Hard cap of 8 ask_user_question calls for the whole engagement. Only Scope and Success criteria are always asked; every other dimension gets a schema/tier/RoE-derived default instead of its own question round. Assumed defaults are surfaced in the Phase 3 bundle summary so the operator corrects them after generation instead of before.
  • roe-template/SKILL.md: 10 → 6 questions. Merges engagement name+org, in-scope+out-of-scope, and escalation contacts+auth-ref into single combined free-form answers; additional-prohibited-actions defaults silently to the standard deny-list instead of its own multi-select.
  • conops-template/SKILL.md: 8 → 2 questions (threat-actor tier, success criteria). Motivation/initial-access derive from the tier's archetype table; attack narrative and ultimate objectives are agent-drafted, not operator homework; the deprecated communication-plan question is removed; deconfliction method defaults unless a SOC endpoint was already flagged.
  • SOCRATIC_INTERVIEW Core Rule fix : dockerfile #3: "Challenge assumptions" now folds into the same ask_user_question call's options instead of a separate follow-up round — this was silently doubling questions on ambiguous answers.
  • Ambiguity Dimensions table: explicitly marks Contacts / Data sensitivity / Abort triggers / Persistence footprint as budget-optional/defaulted (they were never part of the Stop Condition, but the per-doc templates were asking about them anyway).
  • workflows/soundwave.md: synced anti-pattern guidance and budget note so the workflow doc doesn't contradict the system prompt.
  • CHANGELOG entry under 1.1.45.

Verification

Manually traced the old vs. new question counts per template (RoE 10→6, CONOPS/Threat 8→2, others already 0-1 conditional) = 18 → ≤8 worst case. No code paths changed (prompt/skill markdown only), so no test suite is affected.

roe-template drove 10 separate ask_user_question calls and
conops-template another 8 (including one for the DEPRECATED
communication_plan field), so a fresh engagement paid for every
dimension one field at a time before any planning document existed.

- Add a hard 8-question interview budget (CRITICAL_RULES #12 in
  soundwave.md): only Scope and Success criteria are always asked;
  everything else defaults from schema/RoE/CONOPS content unless the
  operator's answers raise a flag a default cannot cover.
- roe-template: merge related fields into 6 combined questions
  (was 10) instead of one ask_user_question per field.
- conops-template: ask only threat-actor tier + success criteria (2,
  was 8); derive motivation/initial access from tier, drop the
  deprecated communication_plan question, agent-draft the narrative,
  default deconfliction method.
- Fold assumption-challenge follow-ups into the original picker's
  options instead of spawning a second question round.

Fixes #824
@PurpleCHOIms
PurpleCHOIms merged commit 3a44990 into main Sep 25, 2026
28 checks passed
musicsms pushed a commit to musicsms/decepticon that referenced this pull request Sep 28, 2026
…#825)

* fix: cap Soundwave interview at 8 questions (was ~18)

roe-template drove 10 separate ask_user_question calls and
conops-template another 8 (including one for the DEPRECATED
communication_plan field), so a fresh engagement paid for every
dimension one field at a time before any planning document existed.

- Add a hard 8-question interview budget (CRITICAL_RULES BitterSecurity#12 in
  soundwave.md): only Scope and Success criteria are always asked;
  everything else defaults from schema/RoE/CONOPS content unless the
  operator's answers raise a flag a default cannot cover.
- roe-template: merge related fields into 6 combined questions
  (was 10) instead of one ask_user_question per field.
- conops-template: ask only threat-actor tier + success criteria (2,
  was 8); derive motivation/initial access from tier, drop the
  deprecated communication_plan question, agent-draft the narrative,
  default deconfliction method.
- Fold assumption-challenge follow-ups into the original picker's
  options instead of spawning a second question round.

Fixes BitterSecurity#824

* chore: regenerate skills.cypher for roe/conops-template edits

---------

Co-authored-by: NetVar1337 <netvar1337@users.noreply.github.com>
@PurpleCHOIms
PurpleCHOIms deleted the fix/soundwave-interview-question-budget branch October 5, 2026 01:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

At the beginning of a penetration testing task, I was asked 18 questions. Why don't you set up a company that specializes in survey questionnaires?

2 participants