Combine current facts with native bribe payments

This commit is contained in:
Quintine committed 2026-10-26 16:39:30 +11:00
1 parent b63a60da64
commit 6b2dfb84a2
23 files changed
+1445 -170

No files matched your search

+33
View File
@@ -16,6 +16,39 @@ open mode gates.
## Current checkpoint and work
**Truthtrance / current facts and ordinary payments — 26 October. Prototyped / Partial.**
Full mixed AND/OR questions now freeze facts before real payer debits, then bind
only the native cumulative payment obligation needed for the whole answer.
Constants require no payment; unknowns retain the conservative guarantee.
Original purse/accepted order/nonallies/timing/receipts and actual turn end stay.
Raw original question/aggregate/progress are own-projected without frozen clause
values or compiled residuals. Movement/payments share the full mixed editor;
movement API/IDs/callbacks stay. Scalar/pure/mixed panels use live ownership for
one exact guide. Private answers and four minimal policies are connected.
Root integration with disjoint controls/native lanes passes **21 files,216/216**,
types/lint/build and **ten native paths**,33 GameTable SSR renders/13 actual
guide callbacks plus two editor callbacks followed by native Ask. Genuine
base33 Basic20/Advanced23 prefixes add22: factual E10 stays binding while H3/A2
debits leave E5; each exact share credits once at its actual opening. Edited
true OR has no payment binding; false AND permits a real payment. Native unknown
OR Yes pays, AND No caps cumulative payments. A32-action Mentat prefix adds37:
only payer readiness reopens and late receipts wait for the next actual opening.
Original H/A/T Ix47 102-action prefixes add16 in both accepted orders: H1/A1
then native leader2 ends T0. The shared movement editor still submits native Ask.
All33/47 cards remain physical; four policies actually answer and pay.
Nineteen native,two native funding and nine controlled cases supplement existing
generic/scalar/grouped/movement coverage. One old historical-scalar guide
expectation now follows live ownership. The first frozen v1 batch passes;
proof/manifest:
`/home/quintine/.local/share/dune/checkpoints/20261026-truth-mixed-bribe-proof-v1/`;
journeys/HTML: adjacent `20261026-truth-mixed-bribe-runtime/`.
No saved-game/database/server/reset/restart/deployment operation is performed.
Other families, correlated unknowns, future preparations, wider compositions,
browser/mobile/deployed and final rules/assurance remain required.
[Authority, original payment boundaries and evidence](TRUTHTRANCE_MIXED_BRIBES.md).
**Truthtrance / current facts and future movement — 26 October. Prototyped / Partial.**
Full mixed AND/OR questions now freeze current facts at actual answer time and
bind only the remaining native ground-movement obligation. Unknown facts use
+47
View File
@@ -1,5 +1,52 @@
# Dune implementation status
## 26 October 2026 — Current facts with ordinary payments and shared mixed authoring
**Prototyped / Partial.** Full mixed fact/payment AND/OR questions freeze current
facts before actual ordinary payer debits. Conservative unknown compilation
creates only the native residual needed by the selected whole answer; decisive
constants require no payment. One physical bribe ledger owns cumulative progress,
funding, accepted order, restrictions, receipts and actual turn-end deadlines.
Raw metadata links the original question/event; pure projection hides residuals
and own mixed projection exposes only raw/aggregate/progress/status. Existing
uniform Yes readiness reopening and new-record-only discard signatures preserve
native timing and earlier record shapes. No old answer is reactivated.
Shared generic mixed fields extract the existing movement tree editor. Its
thin movement adapter retains API/IDs/data attributes/callback traversal while
payment fields provide current nonally recipients and safe integer minima.
Both retain nested facts,16 leaves/depth4, editable invalid drafts, raw preview/
Ask and private answers. Scalar/grouped/mixed panels use live guide ownership;
a fulfilled historical row cannot duplicate or suppress a later payment guide.
Four minimal profiles answer and pay; strategy/calibration remain deferred.
Root integration and disjoint control/native lanes pass **21 files,216/216**,
types/lint/build and **ten native paths**,33 GameTable SSR renders/13 guide
callbacks plus two editor callbacks followed by native Ask. Original H/A/E
base33 Basic20/Advanced23 prefixes add22: actual H3/A2 payment debits reduce E10
to5 without changing its answer-time fact; exact receipts collect once at the
real opening. Edited true OR is immediate Yes; false AND is immediate No while
actual payment stays legal. Native unknown OR Yes pays; unknown AND No caps the
future total. A32-action actual Mentat prefix adds37, reopens only the payer and
earns late receipt at the following opening. Original H/A/T Ix47 102-action
prefixes add16 in either accepted order: real H1/A1 then native leader2 fulfills
both at T0. Shared movement adapter still edits/asks its raw question correctly.
All33/47 original cards remain physical. Four profiles actually answer/pay on
both Basic/Advanced original sources.
Nineteen native,two native funding,nine controlled and existing generic/scalar/
grouped/movement cases cover current debit snapshots, constants/unknowns,
prior intervals, split payments, shared budgets/caps, exact wire/event/ownership,
raw projection and late deadlines. One older controls assertion changes from
historical scalar ownership to live ownership. The first frozen v1 batch passes.
Proof/report/manifest:
`/home/quintine/.local/share/dune/checkpoints/20261026-truth-mixed-bribe-proof-v1/`;
journeys/HTML: adjacent `20261026-truth-mixed-bribe-runtime/`.
No saved-game/database/server/reset/restart/deployment operation is performed.
Other action families, correlated unknowns, future preparation, optional/wider
compositions, final rules/recovery/privacy/custody and browser/deployed remain.
[Contract](TRUTHTRANCE_MIXED_BRIBES.md).
## 26 October 2026 — Current facts with future ground moves
**Prototyped / Partial.** Full mixed questions combine current facts and future
+14
View File
@@ -1,5 +1,19 @@
# Rule decision index
## Current facts combined with ordinary payments — 26 October 2026
Reuse the current-fact/movement snapshot composition and recorded publisher
FAQp8/current-turn/AND/OR plus supplied Advanced physical39 compliance/unknown
text. Facts freeze before real payer debits; unknown takes false for Yes and
true for No. Only an action residual binds native cumulative ordinary payments.
Decisive constant aggregates need none. Raw original question/whole answer are
projected without individual frozen values or compiled branches. Preserve the
original current purse, accepted order, nonallies, pending/Double guards,
opening-only receipts and actual turn end. This remains provisional online
composition, not a dedicated publisher mixed-payment algorithm or a correlated
unknown solver. No mode/save/server/publication gate changes.
[Contract and evidence](TRUTHTRANCE_MIXED_BRIBES.md).
## Current facts combined with future movement — 26 October 2026
Reuse recorded publisher FAQp8 current-turn/AND/OR authority and supplied
+126
View File
@@ -0,0 +1,126 @@
# Truthtrance current facts and ordinary payments
## Mixed aggregate prototype — 26 October 2026
**Prototyped / Partial.** The packet is
`{kind:'mixedBribe',target,turn,mixed}`. Raw fact/action/AND/OR clauses reuse
`MixedActionExpression<BribePaymentClaim>`; a payment leaf contains only
`{recipient,minimum}`. Quiet native Basic/Advanced phases0–8 retain the existing
[ordinary payment](TRUTHTRANCE_BRIBE_EXPRESSIONS.md) scope and all mode gates.
## Authority and snapshot meaning
Reuse the [mixed-movement composition](TRUTHTRANCE_MIXED_MOVEMENT.md), recorded
[publisher November2020 FAQp8](https://www.gf9games.com/dune/wp-content/uploads/2020/11/Dune-FAQ-Nov-2020.pdf)
current-turn/AND/OR authority and supplied Advanced physical39/printed37 public
answer/compliance/release/unknown text. Existing [Mentat timing](MENTAT_BRIBES.md)
and cumulative native payer accounting remain. No source supplies a complete
online solver; current-funded witnesses, snapshot/unknown and accepted-order
release remain provisional under standing14October priority.
Facts freeze at the actual answer. A current-spice fact at10 stays that
answer-time fact after promised payments reduce the same purse to5. Later
spending/card changes create no new fact answer. No negates the entire mixed
expression. Unknown takes false for a definite Yes and true for No, then the
remaining owned payment completion must guarantee the aggregate. Correlations
between unknown predicates are not inferred. When neither definite completion
is known, unknown/save/change-question remains available.
A true held Shield OR payment can settle Yes immediately; false held Hajr AND
payment can settle No immediately. Otherwise the action-only residual uses the
existing cumulative native payment ledger. Smaller payments after the answer
add together per named recipient. Prior payments, gifts, allied aid and later
recipient collection do not count. Different questions keep their own future
intervals; repeated recipient thresholds share actual payer progress.
## Shared implementation and controls
`game/mixed-bribe-question.ts` rejects leaf metadata/extra keys and reuses scalar
recipient/minimum decoding. The generic mixed parser validates every subtree
and shares one16-leaf/depth4 budget with nested current facts. A positive safe
whole minimum has no artificial extra cap. Server context validates every
recipient as another current nonally, including below decisive fact branches.
Public frozen constants or compiled fields are not accepted.
The existing compiler eagerly reads all current facts before folding known
constants/identity children/singletons. A remaining payment tree binds the
original bribe-expression ledger and accepted order; raw `mixedBribeQuestions`
metadata links the original question to that event. A constant aggregate has no
native payment binding. There is no second payment/debit/receipt implementation.
Native quotes preserve earlier scalar, grouped, revival, bid, shipment,
movement and battle budgets using the same current uncommitted purse.
Own raw question, aggregate status and recorded payer totals are projected.
Compiled residuals are excluded from the public pure-expression ledger; raw
internal metadata and frozen per-fact values remain unprojected. The common
exact event/phase payment guide can belong to scalar, grouped or mixed answers.
Uniform existing Yes readiness reopening applies even to decisive constants,
so no immediate compiled-branch readiness flag is added. Required aggregate
release and public actual payments retain their original information.
`components/mixed-action-fields.tsx` shares full add/wrap/nest/switch/remove/
collapse editing and current-fact controls. Movement retains its public API,
IDs/data attributes and callback traversal through a thin adapter. Bribe fields
supply public recipient choices and uniquely identified per-leaf numeric inputs;
invalid numeric/empty-recipient drafts remain repairable. Preview/Ask keep the
complete original tree. Scalar/grouped/mixed panels choose exactly one guide
using live ownership rather than fulfilled historical rows. Four minimal
policies answer and pay legally; strategy/calibration remain deferred.
Payer spice is spent now. Recipient shares remain deferred until the next actual
Mentat opening; late Mentat payments wait for next turn's opening. Existing ally,
pending-choice, Inflation Double and Bureaucrat guards remain. Yes cannot evade
Mentat Ready; No remains binding through collection until actual turn advance.
A known automatic Double closure retains the earlier Collection deadline.
New mixed discard signatures bind metadata/residual without altering older
record signatures. No historical answer is reactivated or database rewritten.
## Evidence and remaining gates
Source cases: `tests/fixture-truth-mixed-bribe.ts`,
`tests/truth-mixed-bribe-runtime.test.ts`,
`tests/truth-mixed-bribe-funding.test.ts`.
Controlled shared editing/guide cases: `tests/truth-mixed-bribe-controls.test.tsx`;
existing mixed-movement controls retain their scope. Nineteen native,two native
funding and nine controlled cases supplement existing generic/scalar/grouped/
movement coverage in the frozen **21-file,216/216** union. Types/lint, production
build and ten native paths pass on the same unchanged source. Actual GameTable
SSR renders33 times;13 guide callbacks submit native packets. Two editor
meaning callbacks (payment and retained movement adapter) preserve their whole
raw questions through native Ask. Four minimal profiles actually answer and pay
on both Basic/Advanced original sources.
| Original source | Prefix actions | Further actions | Actual result |
| --- | ---: | ---: | --- |
| Basic frozen spice | 20 | 22 | H3/A2 reduces E10→5; both exact opening receipts |
| Advanced frozen spice | 23 | 22 | Same answer-time snapshot/native payment/receipt |
| Basic edited true OR | 20 | 20 | Real AND→OR editor/Ask; immediate Yes, no payment binding |
| Basic false AND | 20 | 21 | Immediate No permits an actual ordinary payment |
| Basic unknown OR Yes | 20 | 21 | Unknown forecast requires actual payment |
| Basic unknown AND No | 20 | 21 | Cumulative payments remain below the qualifying minimum |
| Basic late-ready mixed | 32 | 37 | Only payer reopens; receipts wait for next real opening |
| Basic shared leader, bribe first | 102 | 16 | H1/A1 then native leader2 at T0; both obligations fulfilled |
| Basic shared leader, revival first | 102 | 16 | Same real purse in opposite accepted order |
| Basic shared movement editor | 20 | 5 | Retained movement IDs/callbacks edit/Ask the same raw tree |
The first frozen batch passes after updating one old assertion to live scalar
ownership. The passing source snapshot is
`ae77b288d097191c4b1f1ecdea123d564184532a9e06b7555f4b2e3fe79a9d0d`
(3162 files). Final evidence prose is a separate three-document overlay.
Frozen proof/report/manifest:
`/home/quintine/.local/share/dune/checkpoints/20261026-truth-mixed-bribe-proof-v1/`;
journeys/HTML: adjacent `20261026-truth-mixed-bribe-runtime/`.
SSR/editor/guide callbacks are local engine/control evidence, not DOM,
hydration, browser/mobile or deployed acceptance.
Original H/A/E base33 Basic20/Advanced23 and late Mentat32/35 sources supply
E10, its printed Shield and both original H Truths. H/A/T Ix47 sources supply
actual T4/dead native leader2 for shared-funding orders. No played clock,
purse, hand, payment, fact answer, promise or progress is installed. Controlled
views keep those labels rather than claiming original acquisition histories.
Other action families, correlated unknowns, future owned income/preparations,
optional modules, broader faction/card/funding composition and final rules/
recovery/privacy/custody/browser/mobile/deployed acceptance remain required.
No complete mode is certified. No saved-game/database/server/reset/restart/
deployment operation is performed by this batch.
+4
View File
@@ -1,5 +1,9 @@
# Truthtrance current facts and future ground movement
The [mixed ordinary-payment follow-up](TRUTHTRANCE_MIXED_BRIBES.md) reuses
this compiler and extracts the editor into `components/mixed-action-fields.tsx`.
The movement wrapper retains its public API, IDs, callbacks and native behavior.
## Mixed aggregate prototype — 26 October 2026
**Prototyped / Partial.** The packet is