Repository navigation
Port resolveQuests, progression and nextContinuations (182/182 vectors) - #3
Merged
Merged
Conversation
The last three families the port skipped. With them every vendored conformance vector runs and passes against the v0.14.0 pin. - resolve_quests fires quest stage onComplete and outcome effects whose completeWhen/reachedWhen holds, once each (recorded in quest_fired), to a fixpoint, in quest-id then array order. Unconditioned effects never auto-fire, and quest_stages is never written. - Progression: level_for_xp, points_earned, available_points, effective_skill, skill_cap, recompute_skills and the guarded invest_skill_point. Levels and points derive from total-earned xp; per-skill max comes from an optional skills registry. - next_continuations returns a pending cutscene first, then forced routing (a routed character whose winning offer reads its active_dialogue__ flag at the top level, visited set ignored), else discovery with the visited filter. clear_active_dialogue and clear_pending_cutscene are the helpers that consume them. Mutants on once-only firing, the skill cap guard and the forced-offer flag test each turn the suite red. Dropping the fixpoint loop does not: the vectors' cascade case runs in quest-id order, so a single pass already reaches it. That is a gap in the upstream vectors, not fixed here, because a pinned vector is never hand-edited. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wc6JEuMmSXJEJSRYwGjn1f
mwburke
pushed a commit
to Orbitope/parlance-releases
that referenced
this pull request
Sep 22, 2026
Both ports gained resolveQuests, progression and nextContinuations, so the scoreboards drop their SKIP row and read 182 passed, 0 skipped. The engine-contract note about SKIP now describes it as what an unfinished port does, since this one no longer has any. Merge after Orbitope/parlance-gdscript#3 and Orbitope/parlance-unity#3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wc6JEuMmSXJEJSRYwGjn1f
mwburke
pushed a commit
to Orbitope/mistfall-inn
that referenced
this pull request
Sep 23, 2026
parlance-gdscript now ports every conformance family at the v0.14.0 pin. Re-copied runtime.gd so this vendored addon stays byte-identical to it. The game does not call the new functions yet, so play is unchanged; the game boots headless with no script errors. Depends on Orbitope/parlance-gdscript#3 landing: this is its runtime.gd. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Wc6JEuMmSXJEJSRYwGjn1f
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.
Adds the last three conformance families this port skipped. With them, all 182 vectors at the v0.14.0 pin run and pass.
Changes
resolve_quests(state, project)fires quest stageonCompleteand outcomeeffectswhen their condition (completeWhen/reachedWhen) holds.quest_fired, and the pass repeats until nothing new fires.quest_stages.{state, firings}.level_for_xp,points_earned,available_points,effective_skill,skill_cap,recompute_skills, andinvest_skill_point.invest_skill_pointdoes nothing unless a point is available and the skill is below its cap.xp.maxcomes from an optional skills registry.next_continuations(state, project, visited, current_dialogue_id)decides what to offer when a scene ends.active_dialogue__flag is set and whose winning offer reads that flag at the top level. These are marked queued and ignore the visited set.clear_active_dialogueandclear_pending_cutsceneclear the flag and the pending cutscene once the host has used them.mainnow meets the README's own v1.0.0 bar ("complete against the spec"), but no tag is created.Verification
godot --headless --script tests/conformance_runner.gd(Godot 4.4): 182 passed, 0 failed, 0 skipped.>=→>example: still 6 failures.🤖 Generated with Claude Code
https://claude.ai/code/session_01Wc6JEuMmSXJEJSRYwGjn1f
Generated by Claude Code