ludic/examples/lang/schema_hash.ludic
Orkuncakilkaya d8baf4e579 tests: the full suite's seven failures on lang/foundations - one compiler fault and six stale expectations
- the test runner re-makes every state between tests again: since 12fdc07 a state is made by its getter on
  first use, so re-running L_init_globals left the last test's state in place (state/tested failed its
  second test); @L_reset_states forgets every lazy state, and the runner calls it before each test
- diag_json_case counts errors, and an absent @Ref / @Tint / @OneOf target is a warning since d82dc31:
  ref_unknown is 1 error and node_bad 8
- schema_hash.ludic prints 1: a bool is 1 or 0 as text (random_plain's 1 1 1)
- permap_check_case looks for the unit warning without the quotes the JSON escapes
- baked_test's inputs-hash test makes its directory: each test has a temp directory of its own
- ludic deps prints phase 25's five counters too

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 21:19:00 +03:00

14 lines
512 B
Text

# schema_hash.ludic — Build.schema_hash(): FNV-1a 64 of the program's own schema (what `ludic schema`
# prints), so a tool can tell which data a running build was compiled from; 0 in a release build
# (`ludicc --release`, which ludic bundle passes).
#
# Running it prints: 1 (a bool is 1 or 0 as text)
program SchemaHash {
property Tool {
key: string = ""
weight: float = 1.0
}
registry Tools of Tool as TL
def Tools axe { weight: 2.5 }
entry { print(`{Build.schema_hash() != long(0)}`) }
}