Repository navigation
Implement dialogue offers and check modifiers; pin to Parlance v0.14.0 - #2
Merged
Merged
Conversation
Parlance 0.14.0 carries two contract changes, and a port must ship both
before it can claim 0.14.0 conformance:
- Dialogue offers replace the character ladder. resolve_character_dialogue
no longer walks character.dialogues; it gathers the dialogues offering
for the character (offer.character ?? speakerId), drops failed
offer.when gates and visited non-replayable ones, and picks by priority
tier, then condition_specificity, then lowest id. It takes an optional
visited set, as the reference does.
- Checks gain conditional modifiers. resolve_check sums every modifier
whose when holds into the total, and reports bonus/appliedModifiers
only when the check declares one. A check with modifiers and no project
returns {"error"} where the reference throws; choose_choice threads the
project through. check_bonus and passive_check_passes (the passive
reveal threshold) are exported.
Vectors and schema re-copied from parlance@v0.14.0; PIN moved to the tag.
nextContinuations.json is new upstream and reports as SKIP, like
resolveQuests and progression. 159 passed, 0 failed, 23 skipped.
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.
Parlance 0.14.0 has two contract changes, and a port needs both before it can claim 0.14.0 conformance.
Changes
resolve_character_dialogueno longer walkscharacter.dialogues. It collects the dialogues offering for the character (offer.character ?? speakerId) and drops those whoseoffer.whenfails, plus visited non-replayableones. It then picks by priority tier, thencondition_specificity, then lowest id. It takes an optionalvisitedset, as the reference does.resolve_checkadds the bonus of every modifier whosewhenholds to the total. It reportsbonusandappliedModifiersonly when the check declares modifiers. A check with modifiers and no project returns{"error"}; the reference throws in that case.choose_choicenow passes the project through.check_bonusandpassive_check_passes(the rule for revealing a passive check) are new public functions.parlance@v0.14.0;conformance/PINmoved to the tag.nextContinuations.jsonis new upstream and optional for a port. It reports as SKIP, likeresolveQuestsandprogression.Verification
godot --headless --script tests/conformance_runner.gdgives 159 passed, 0 failed, 23 skipped. Before this change, the new vectors failed 21 times.>=to>in_comparenow produces 6 failures (README updated to match).🤖 Generated with Claude Code
https://claude.ai/code/session_01Wc6JEuMmSXJEJSRYwGjn1f
Generated by Claude Code