feat: add complexity management guidelines - #6
Merged
Conversation
drvova
pushed a commit
to drvova/VovaSpec
that referenced
this pull request
Oct 13, 2025
…ines feat: add complexity management guidelines
shwcsmack
referenced
this pull request
in shwcsmack/c3spec
May 27, 2026
Flesh out the shorthand backlog entry on reducing git prompts into a full-context idea matching the format of #1–#17, grounded in the actual prompt surfaces in the tier skills and the finishing-a-development-branch handoff. Calls out concrete defaults, an opt-out lever, and cross-refs to ideas #3, #6, and #16. Co-authored-by: Cursor <cursoragent@cursor.com>
binbinao
pushed a commit
to binbinao/OpenSpec
that referenced
this pull request
May 31, 2026
DumoeDss
referenced
this pull request
in DumoeDss/rasen
Jul 9, 2026
…er, archive hard gates, delivery preconditions, F.1 generation-match Wires the propose/office-hours/archive/apply/continue workflow commands into the evidence chain and gates established by children #1-#3, and closes a resume-ladder generation-match gap in orchestration. - WF-2: propose.ts checks both office-hours-design.md (change dir) and the sibling office-hours directory (by slug) before drafting, incorporating found validation and naming office-hours as the source; all paths resolved from status JSON. office-hours.ts's producer-side notes (dual-write, auto-detect, downstream integration) made accurate to match, with a verbatim slug-derivation example matching propose's so the two-sided derivation converges (fixed in round 1 after the reviewer caught divergent examples). - WF-6: office-hours.ts (workflow command) restructured so the /office-hours expert is the single facilitation authority; the inline six-questions/builder text becomes an explicit fallback pre-brief, not a second pass; doc production consolidated to one step; precedence stated. - WF-4: archive-change.ts gates on verification-report.md's VERIFY VERDICT (child #2's evidence file) -- refuses by default on BLOCKED, requires an explicit blocker-naming override, refuses outright non-interactively; CLEAN passes with no gate; absence gets a soft note only. Incomplete-tasks check elevated from soft warning to the same hard-gate semantics. The "don't block on warnings" guardrail re-scoped (enumerate-and-gate) to soft warnings only, explicitly excluding both new hard gates. - WF-5/WF-11: archive-change.ts adds a delivery-precondition check reading ship-log.md (soft warning if absent, with a spec-only escape) and a portfolio-awareness note when the ship log's Status line reads "delivery deferred to portfolio level" (ship.ts's exact local-mode marker). - WF-5 (apply) / WF-10 (continue): completion nudges in apply-change.ts and continue-change.ts steer through /rasen:verify -> /rasen:ship, naming archive only as the post-delivery step rather than an immediate co-equal option. - F.1 (LEAD-added, _orchestration.ts scope exception -- one clause, nothing else touched, children #1/#3's edits survive byte-for-byte): Step F.1's resume ladder now states a handoff document counts only if it's the LATEST holder's own distillation; an un-exhausted latest holder with no document resumes from its TRANSCRIPT instead, which beats any earlier generation's document. Adds the same-session- restart nuance: SendMessage-by-NAME may still resolve the latest holder post-restart -- try that wake first, fall back to the ladder otherwise. This exact behavior was live-validated during this change's own implementation (see ship-log's Infra-Revival section). - Parity registry expansion: +19 function-hash entries + 11 content-hash entries for the previously-unpinned workflow/command family (office-hours-command, verify-enhanced, ship, retro, auto, review-cycle, handoff, goal-plan/iterate/report/command) -- this is what makes the F.1 edit verifiable, since it hash-locks rasen-auto/rasen-goal/rasen-review-cycle for the first time. Reviewed CLEAN (review-cycle round 1, non-author confirmed): 1 Minor fixed (propose/office-hours slug-example divergence), 1 Minor accepted-known (F.1's hash movement can't be diff-verified against a pre-edit baseline since the templates were pinned in the same regen run as the edit -- D8, inherent to prior parity debt, not a defect), 2 Trivial accepted-known and skipped by design (office-hours wording nuance deferred to child #6's WF-3; F.1 clause density -- tightening declined to avoid re-churning newly-locked hashes for zero functional gain). Seam integrity confirmed byte-compatible both directions against the actual producer strings, called out by the reviewer as "the opposite of the WF-1 disease" this portfolio exists to close. Infra-revival event during fix round 1: implementer's connection closed mid-edit; LEAD applied child #3's H.4(b) protocol (SendMessage-revive the same agent, zero rework since edits had already landed) rather than cold-reconstructing -- not charged to relay/stall budget, and incidentally a live validation of this change's own F.1 same-session-restart nuance before its hash-lock even shipped. Known-open item relayed to the portfolio-end report (not this change's scope): goal templates are registered in the generation registry, but `update` still doesn't emit rasen-goal* skill directories -- suspected deploy-path filter, not root-caused. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
DumoeDss
referenced
this pull request
in DumoeDss/rasen
Jul 9, 2026
Moves the completed prompt-audit-fixes-store-paths change (child #6, FINAL child of the prompt-audit-fixes portfolio) to rasen/changes/archive/2026-07-09-prompt-audit-fixes-store-paths/ and syncs its three delta specs into rasen/specs/ (all MODIFIED existing capabilities, ADDED-only appends, no existing content changed): - opsx-archive-skill: archive resolves artifact paths from status JSON (tasks via artifactPaths.tasks.existingOutputPaths, main-spec compare via the specs/ sibling of planningHome.changesDir), matching bulk-archive-change's existing resolution so single and bulk archive agree. - specs-sync-skill: sync-specs resolves the main-spec write target from the planning home instead of a literal repo-relative path, so store-scoped syncs land in the store's specs. - opsx-office-hours-command: office-hours resolves both its active-change and no-active-change write paths from status JSON, matching the same location propose already scans (child #5's WF-2 reader) so producer and consumer agree in store mode. All three specs validated clean (`rasen spec validate`). Staged the three spec subdirectories individually (not the bare rasen/specs/ parent) per the established precise-pathspec discipline; confirmed git status --porcelain -- rasen/specs/ showed exactly these three entries before staging, nothing from another session. All 11/11 tasks complete; all 4 artifacts done. This is the final child of the prompt-audit-fixes portfolio -- see this change's ship-log.md for the two-portfolio WF-3 close-out note (T3 tier is deferred to the separate externalize-artifacts-t3-workdir session). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds complexity management guidelines to OpenSpec to prevent over-engineering and encourage minimal implementations.
What This PR Contains
Why This Matters
After reviewing PR #5, we identified that proposals tend toward over-engineering. This change establishes clear principles to:
Implementation
This is a documentation-only change that updates OpenSpec conventions to encourage simplicity-first development.