diff --git a/FABRIC-3.md b/FABRIC-3.md index 0ea4167f..993a5c7a 100644 --- a/FABRIC-3.md +++ b/FABRIC-3.md @@ -5642,3 +5642,78 @@ scope per §XXXV.3 was the writer only, verified here by a one-off Python script bytes directly, not a maintained tool. Launching the first live multi-hour campaign is still a separate, later, explicit decision -- this entry closes the persistence-writer gap, nothing more. +### XXXV.11 -- The reader tool from §XXXV.10's own "still open" note: built, plus a full +R/LaTeX report pipeline, all live-verified (2026-09-17) + +Requested directly: "mount the virtual drive on a loop device... spool the csv's into a file +for the proper deeply detailed R/LaTeX report with svg charts... build that workflow script for +automated production of the PDF artifact while execution of the experiment is underway." Closes +the one item §XXXV.10 itself flagged as still missing. + +**Built:** +- `scripts/extract_doe_region.py` -- standalone reader, independent reimplementation of + `doe_region.c`'s own ring-walk logic in Python (same devblock_from_top fence math, same + head/tail/record_count ring-order walk) reading `disk/artemis.img` directly. Two modes: + `--img PATH` (default, no privilege needed -- opens the image as a plain file) and `--loop` + (attaches via `losetup --read-only`, needs sudo, detaches on exit -- the literal loop-device + step requested; noted in the script's own docstring that the ring is raw binary at a fixed + offset, not a filesystem, so there is nothing to `mount` in the POSIX sense once attached, it + reads exactly like a regular file). Read-only in both modes; a torn read mid-write from a + live campaign is rejected the same way `doe_region_ctrl_read()` itself rejects a bad + magic/version -- "not yet initialized," not a crash. +- `experiments/bare_metal/analysis/analyse_multiuser_doe.R` -- new analysis script, house style + (`ggplot2`/`svglite`, same `theme_light_report()` shape as `analyse_multirep.R`), but + deliberately NOT that script's fixed-manifest pattern: auto-discovers whatever CSV or CSV + directory it's given and **degrades gracefully to a placeholder table/chart when 0 trials + exist yet**, rather than erroring -- the explicit "while execution of the experiment is + underway" requirement. Also writes an auto-generated LaTeX fragment + (`report/sections/multiuser_summary_autogen.tex`) with the actual current trial count, fail + rate, and per-cell breakdown, computed fresh every run -- the report's own numbers stay + truthful across re-runs instead of going stale. +- `experiments/bare_metal/analysis/report/multiuser_doe_report.tex` -- new self-contained + report (same preamble/colour-palette convention as `bare_metal_doe_report.tex`), every + data-dependent figure wrapped in `\IfFileExists` so the report builds correctly whether 0 + trials or many have been extracted. +- `scripts/build_multiuser_doe_report.sh` -- orchestrates all of the above: extract -> R + analysis -> `svg_to_pdf.py` (existing, reused unmodified) -> `pdflatex` (twice, for + cross-references) -> `multiuser_doe_report.pdf`. `--csv PATH` skips disk extraction entirely + (smoke-testing against an arbitrary CSV); `--loop` passes through to the extractor. + +**Real bug found and fixed while verifying, not left in:** the R script's original +`SCRIPT_DIR` detection (`sys.frames()[[1]]$ofile`, the same pattern `analyse_multirep.R` already +uses) silently fell back to `getwd()` when invoked from the orchestration script's own working +directory -- wrote `charts/`, `tables/`, and `report/sections/` at the repo root instead of +under `experiments/bare_metal/analysis/`, confirmed live (all three stray directories actually +appeared there on the first orchestrated run). Fixed with the robust `commandArgs()` +`"--file="` idiom, re-verified correct placement, stray directories removed. Not touched in +`analyse_multirep.R` itself -- out of scope, not verified broken there, flag only. + +**Verified live, full pipeline, both branches:** +1. **No-data branch:** ran the full orchestration script against the current (post-§XXXV.10 + test-write-reverted) `disk/artemis.img` -- 0 trials, placeholder chart/table/summary + generated, real 2-page PDF produced, correctly states "No trial data has been persisted to + the DoE region yet." +2. **Populated branch:** booted amd64, wrote 3 synthetic trial records via `DOE-PERSIST-TRIAL` + at the console (one deliberately with `fail=1`), clean `BYE`. `extract_doe_region.py` + round-tripped all 3 records correctly, in ring order, byte-exact. Full orchestration run + (`--csv` override, to isolate the R/LaTeX stage from the disk-extraction stage) produced a + real 4-page PDF with correct auto-generated summary text ("3 completed trial(s)... Overall + fail rate... 33.3%...") and real embedded SVG-derived charts. +3. Reverted the synthetic test write from `disk/artemis.img` afterward (same convention as + §XXXV.10) and regenerated the final on-disk report/CSV against the real, empty state before + committing -- what's in the repo now honestly reflects "no campaign has run yet," not + leftover demo numbers. +4. Reverted an unrelated side effect caught before committing: `svg_to_pdf.py` (existing, + unmodified) re-converts every SVG in the shared `charts/` directory on each run, which + touched ~85 pre-existing, unrelated committed figure PDFs with meaningless + binary/metadata-only diffs (almost certainly `rsvg-convert` version drift, not content + changes) -- reverted before staging, confirmed only the new `multiuser_*` files remain + changed. + +**Not done, explicitly out of scope for this pass:** the actual multi-day campaign launch is +still a separate, deliberate decision -- this closes only the "how do we get a report out of +it" side. `--loop` mode was implemented per the literal request but not live-tested (the +default `--img` direct-file mode was what got exercised above; both modes share the same +`read_ring()` code path once handed a device/file path, so this is a thin, low-risk gap, not +an unverified core mechanism). + diff --git a/capsules/BLOCK_MAP.md b/capsules/BLOCK_MAP.md index 8d5b857f..3acd1c7f 100644 --- a/capsules/BLOCK_MAP.md +++ b/capsules/BLOCK_MAP.md @@ -1,5 +1,5 @@ # Capsule Block Manifest — Auto-generated - + diff --git a/experiments/bare_metal/analysis/analyse_multiuser_doe.R b/experiments/bare_metal/analysis/analyse_multiuser_doe.R new file mode 100644 index 00000000..7352c073 --- /dev/null +++ b/experiments/bare_metal/analysis/analyse_multiuser_doe.R @@ -0,0 +1,285 @@ +#!/usr/bin/env Rscript +# analyse_multiuser_doe.R +# StarForth LithosAnanke — Multiuser/Multitasking DoE Analysis +# +# Analyses trial-summary records from the multiuser/multitasking campaign +# (multiuser-doe.4th / per-isa-doe.4th, FABRIC-3.md §XXXIII/§XXXV) -- one +# row per completed trial: concurrency level (nw: 2/4/8) x mode (0=uniform, +# 1=heterogeneous), fail count, and trial-end fleet physics (fleet_k_q48, +# fleet_conserved, switch_count_cumulative). +# +# Unlike analyse_multirep.R/analyse_bare_metal.R (which analyse dense +# per-tick HB-ON streams from a fixed manifest of completed runs), this +# script auto-discovers whatever CSV(s) are present and is designed to be +# re-run repeatedly WHILE a campaign is still in progress -- it degrades +# gracefully to a "no data yet" placeholder rather than erroring when a +# campaign has produced 0 trials so far, and re-summarises from scratch +# each run against however many trials currently exist. Input format is +# extract_doe_region.py's own CSV schema, or (for smoke-testing this +# pipeline before real campaign data exists) any CSV in this shape. + +suppressPackageStartupMessages({ + library(ggplot2) + library(svglite) + library(dplyr) + library(scales) +}) + +# sys.frames()[[1]]$ofile is unreliable depending on how Rscript was +# invoked (silently falls back to getwd(), which is wrong whenever this +# is called from a different working directory -- e.g. an orchestration +# script that cd's to the repo root first). commandArgs()'s "--file=" +# entry is the robust Rscript idiom and is what's used here. +get_script_dir <- function() { + raw_args <- commandArgs(trailingOnly = FALSE) + file_arg <- grep("^--file=", raw_args, value = TRUE) + if (length(file_arg) == 1) { + return(dirname(normalizePath(sub("^--file=", "", file_arg)))) + } + tryCatch(dirname(normalizePath(sys.frames()[[1]]$ofile)), error = function(e) getwd()) +} +SCRIPT_DIR <- get_script_dir() +BASE_DIR <- normalizePath(file.path(SCRIPT_DIR, "..")) +OUT_CHARTS <- file.path(SCRIPT_DIR, "charts") +OUT_TABLES <- file.path(SCRIPT_DIR, "tables") +OUT_SECTION <- file.path(SCRIPT_DIR, "report", "sections", "multiuser_summary_autogen.tex") +dir.create(OUT_CHARTS, showWarnings = FALSE, recursive = TRUE) +dir.create(OUT_TABLES, showWarnings = FALSE, recursive = TRUE) +dir.create(dirname(OUT_SECTION), showWarnings = FALSE, recursive = TRUE) + +# LaTeX-escape a plain string for safe \newcommand/text use. +tex_escape <- function(s) { + s <- gsub("\\\\", "\\\\textbackslash{}", s) + s <- gsub("([%&_#{}$])", "\\\\\\1", s) + s +} + +write_tex_fragment <- function(lines) { + writeLines(lines, OUT_SECTION) + cat(sprintf(" Saved: %s\n", OUT_SECTION)) +} + +# ── input: first CLI arg is a CSV path, or a directory to scan; default +# is the extractor's own conventional output location ────────────────── +args <- commandArgs(trailingOnly = TRUE) +input_arg <- if (length(args) >= 1) args[1] else file.path(BASE_DIR, "runs", "multiuser-doe-trials.csv") + +cat("══════════════════════════════════════════════════════════════════\n") +cat(" StarForth LithosAnanke — Multiuser/Multitasking DoE Analysis\n") +cat("══════════════════════════════════════════════════════════════════\n\n") + +load_trials <- function(path) { + if (dir.exists(path)) { + files <- list.files(path, pattern = "\\.csv$", full.names = TRUE) + if (length(files) == 0) return(NULL) + dfs <- lapply(files, function(f) tryCatch(read.csv(f, stringsAsFactors = FALSE), error = function(e) NULL)) + dfs <- dfs[!sapply(dfs, is.null)] + dfs <- dfs[sapply(dfs, function(d) all(c("cfg","nw","mode","fail_count") %in% names(d)))] + if (length(dfs) == 0) return(NULL) + bind_rows(dfs) + } else if (file.exists(path)) { + df <- read.csv(path, stringsAsFactors = FALSE) + if (!all(c("cfg","nw","mode","fail_count") %in% names(df))) return(NULL) + df + } else { + NULL + } +} + +df <- load_trials(input_arg) +n_trials <- if (is.null(df)) 0 else nrow(df) +cat(sprintf(" Input: %s\n Trials found: %d\n\n", input_arg, n_trials)) + +Q48 <- 65536.0 + +write_placeholder <- function(reason) { + cat(sprintf(" %s -- writing placeholder tables/charts so the report build\n", reason)) + cat(" still completes (this pipeline is meant to be re-run while the\n") + cat(" campaign is still in progress).\n\n") + + placeholder_tbl <- data.frame(status = reason, trials_so_far = n_trials) + write.csv(placeholder_tbl, file.path(OUT_TABLES, "multiuser_status.csv"), row.names = FALSE) + + p <- ggplot() + + annotate("text", x = 0, y = 0, label = paste0(reason, "\n(", n_trials, " trials so far)"), + size = 6, colour = "grey40") + + theme_void() + svglite(file.path(OUT_CHARTS, "multiuser_placeholder.svg"), width = 8, height = 4) + print(p) + dev.off() + cat(" Saved: multiuser_placeholder.svg\n\n") +} + +if (n_trials == 0) { + write_placeholder("No trials persisted yet") + write_tex_fragment(c( + "% Auto-generated by analyse_multiuser_doe.R -- do not edit by hand.", + "No trial data has been persisted to the DoE region yet. This section", + "will populate automatically the next time this report is built after", + "the campaign has produced at least one completed trial." + )) + quit(save = "no", status = 0) +} + +# ── normalise / label factors ──────────────────────────────────────────── +df$nw <- factor(df$nw, levels = c(2, 4, 8)) +df$mode <- factor(df$mode, levels = c(0, 1), labels = c("uniform", "heterogeneous")) +df$cfg <- factor(df$cfg) +if (!"isa" %in% names(df) || all(df$isa == "" | is.na(df$isa))) df$isa <- "amd64" +df$isa <- factor(df$isa, levels = intersect(c("amd64","aarch64","riscv64"), unique(df$isa))) +df$fleet_k <- df$fleet_k_q48 / Q48 + +# ── 1. Per-cfg summary ─────────────────────────────────────────────────── +cat("Computing per-cfg summary (concurrency x mode)...\n") +cfg_tbl <- df %>% + group_by(nw, mode) %>% + summarise( + n_trials = n(), + n_fail = sum(fail_count > 0), + fail_rate = mean(fail_count > 0), + mean_fail_count = mean(fail_count), + mean_fleet_k = mean(fleet_k, na.rm = TRUE), + pct_conserved = mean(fleet_conserved == 1, na.rm = TRUE), + mean_switch_cnt = mean(switch_count_cumulative, na.rm = TRUE), + .groups = "drop" + ) +write.csv(cfg_tbl, file.path(OUT_TABLES, "multiuser_cell_summary.csv"), row.names = FALSE) +cat(" Saved: multiuser_cell_summary.csv\n") +print(as.data.frame(cfg_tbl)) +cat("\n") + +# ── 2. Per-ISA summary (only meaningful once >1 ISA present) ──────────── +if (nlevels(df$isa) > 1) { + cat("Computing per-ISA summary...\n") + isa_tbl <- df %>% + group_by(isa) %>% + summarise( + n_trials = n(), + fail_rate = mean(fail_count > 0), + mean_fleet_k = mean(fleet_k, na.rm = TRUE), + .groups = "drop" + ) + write.csv(isa_tbl, file.path(OUT_TABLES, "multiuser_isa_summary.csv"), row.names = FALSE) + cat(" Saved: multiuser_isa_summary.csv\n\n") +} + +# ── colour theme (house style, matches analyse_multirep.R) ────────────── +theme_light_report <- function() { + theme_minimal(base_size = 11) %+replace% + theme( + panel.grid.minor = element_blank(), + panel.grid.major = element_line(colour = "grey90"), + strip.text = element_text(face = "bold"), + plot.title = element_text(face = "bold", size = 12), + plot.subtitle = element_text(colour = "grey40", size = 9), + legend.position = "bottom" + ) +} + +save_svg <- function(plot, name, w = 10, h = 6) { + path <- file.path(OUT_CHARTS, paste0(name, ".svg")) + svglite(path, width = w, height = h) + print(plot) + dev.off() + cat(sprintf(" Saved: %s.svg\n", name)) + invisible(path) +} + +cat("Generating charts...\n\n") + +# ── CHART MU-1: fail rate by concurrency x mode ────────────────────────── +cat("[MU-1] Fail rate by concurrency x mode...\n") +p_fail <- ggplot(cfg_tbl, aes(x = nw, y = fail_rate, fill = mode)) + + geom_col(position = "dodge", alpha = 0.85) + + geom_text(aes(label = sprintf("%d/%d", n_fail, n_trials)), + position = position_dodge(width = 0.9), vjust = -0.4, size = 3) + + scale_y_continuous(labels = percent_format(accuracy = 1), limits = c(0, NA)) + + scale_fill_manual(values = c(uniform = "#4A90D9", heterogeneous = "#E07B39")) + + labs( + title = "Trial Fail Rate by Concurrency Level x Workload Mode", + subtitle = paste0(n_trials, " trials"), + x = "Concurrent workers", + y = "Fraction of trials with fail_count > 0" + ) + + theme_light_report() +save_svg(p_fail, "multiuser_fail_rate", w = 8, h = 6) + +# ── CHART MU-2: switch_count_cumulative distribution by concurrency ───── +cat("[MU-2] Switch count by concurrency...\n") +p_switch <- ggplot(df, aes(x = nw, y = switch_count_cumulative, fill = nw)) + + geom_boxplot(alpha = 0.8, outlier.alpha = 0.4) + + scale_fill_manual(values = c("2" = "#50C878", "4" = "#4A90D9", "8" = "#E07B39"), guide = "none") + + labs( + title = "Cumulative Preemptive Switch Count by Concurrency Level", + subtitle = "Stage-3 switch signal count at trial end, by number of concurrent workers", + x = "Concurrent workers", + y = "switch_count_cumulative" + ) + + theme_light_report() +save_svg(p_switch, "multiuser_switch_count", w = 8, h = 6) + +# ── CHART MU-3: fleet_k_q48 (conservation) across trials in run order ─── +cat("[MU-3] Fleet K conservation across trial sequence...\n") +df_seq <- df %>% arrange(run_id) +p_fleetk <- ggplot(df_seq, aes(x = run_id, y = fleet_k, colour = mode)) + + geom_point(alpha = 0.6, size = 1.5) + + geom_hline(yintercept = 1.0, colour = "grey50", linetype = "dashed") + + scale_colour_manual(values = c(uniform = "#4A90D9", heterogeneous = "#E07B39")) + + labs( + title = "Fleet Heat Conservation (K) Across the Trial Sequence", + subtitle = "Dashed line = Q48.16 conserved value (1.0); trial-end reads, shuffled run order", + x = "Run id (shuffled trial index)", + y = "fleet_k_q48 / 65536" + ) + + theme_light_report() +save_svg(p_fleetk, "multiuser_fleet_k_sequence", w = 10, h = 6) + +# ── CHART MU-4: per-ISA panel (only when >1 ISA present) ───────────────── +if (nlevels(df$isa) > 1) { + cat("[MU-4] Per-ISA fail rate panel...\n") + p_isa <- ggplot(df %>% group_by(isa, nw, mode) %>% + summarise(fail_rate = mean(fail_count > 0), .groups = "drop"), + aes(x = nw, y = fail_rate, fill = mode)) + + geom_col(position = "dodge", alpha = 0.85) + + scale_y_continuous(labels = percent_format(accuracy = 1), limits = c(0, NA)) + + scale_fill_manual(values = c(uniform = "#4A90D9", heterogeneous = "#E07B39")) + + facet_wrap(~ isa, ncol = 3) + + labs( + title = "Fail Rate by Concurrency x Mode, per ISA", + x = "Concurrent workers", + y = "Fraction of trials with fail_count > 0" + ) + + theme_light_report() + save_svg(p_isa, "multiuser_isa_panel", w = 12, h = 5) +} + +# ── summary ─────────────────────────────────────────────────────────────── +cat(sprintf("\n══════════════════════════════════════════════════════════════════\n")) +cat(sprintf(" Multiuser DoE analysis complete. %d trials, %d cfg cells.\n", + n_trials, nrow(cfg_tbl))) +cat(sprintf("══════════════════════════════════════════════════════════════════\n\n")) + +overall_fail_rate <- mean(df$fail_count > 0) +overall_conserved <- mean(df$fleet_conserved == 1, na.rm = TRUE) +cat(sprintf(" Overall fail rate: %.2f%%\n", overall_fail_rate * 100)) +cat(sprintf(" Fraction of trials conserved (fleet_conserved==1): %.2f%%\n", overall_conserved * 100)) + +# ── auto-generated LaTeX summary fragment (re-written every run) ──────── +isa_list <- paste(levels(df$isa), collapse = ", ") +cell_lines <- apply(cfg_tbl, 1, function(r) { + sprintf(" \\item %s workers, %s: %s trials, fail rate %.1f\\%%, mean fleet K = %.4f", + r["nw"], tex_escape(as.character(r["mode"])), r["n_trials"], + as.numeric(r["fail_rate"]) * 100, as.numeric(r["mean_fleet_k"])) +}) +write_tex_fragment(c( + "% Auto-generated by analyse_multiuser_doe.R -- do not edit by hand.", + sprintf("This report reflects \\textbf{%d} completed trial(s) persisted via", n_trials), + "\\texttt{DOE-PERSIST-TRIAL} as of the last extraction, spanning ISA(s)", + sprintf("\\texttt{%s}. Overall fail rate across all trials so far is", tex_escape(isa_list)), + sprintf("\\textbf{%.1f\\%%}; \\textbf{%.1f\\%%} of trials read", overall_fail_rate * 100, overall_conserved * 100), + "\\texttt{fleet\\_conserved==1} at trial end.", + "", + "\\begin{itemize}", + cell_lines, + "\\end{itemize}" +)) diff --git a/experiments/bare_metal/analysis/charts/multiuser_placeholder.svg b/experiments/bare_metal/analysis/charts/multiuser_placeholder.svg new file mode 100644 index 00000000..00d60a29 --- /dev/null +++ b/experiments/bare_metal/analysis/charts/multiuser_placeholder.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + +No trials persisted yet +(0 trials so far) + + + diff --git a/experiments/bare_metal/analysis/report/figures/multiuser_placeholder.pdf b/experiments/bare_metal/analysis/report/figures/multiuser_placeholder.pdf new file mode 100644 index 00000000..496f4a3f Binary files /dev/null and b/experiments/bare_metal/analysis/report/figures/multiuser_placeholder.pdf differ diff --git a/experiments/bare_metal/analysis/report/multiuser_doe_report.pdf b/experiments/bare_metal/analysis/report/multiuser_doe_report.pdf new file mode 100644 index 00000000..e8ef5471 Binary files /dev/null and b/experiments/bare_metal/analysis/report/multiuser_doe_report.pdf differ diff --git a/experiments/bare_metal/analysis/report/multiuser_doe_report.tex b/experiments/bare_metal/analysis/report/multiuser_doe_report.tex new file mode 100644 index 00000000..eec749b6 --- /dev/null +++ b/experiments/bare_metal/analysis/report/multiuser_doe_report.tex @@ -0,0 +1,148 @@ +\documentclass[10pt,a4paper]{article} + +%% ── Packages ────────────────────────────────────────────────────────────────── +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage[margin=2.5cm]{geometry} +\usepackage{graphicx} +\usepackage{subcaption} +\usepackage{booktabs} +\usepackage{amsmath} +\usepackage{amssymb} +\usepackage{xcolor} +\usepackage{microtype} +\usepackage{parskip} +\usepackage{enumitem} +\usepackage[hidelinks,colorlinks=true,linkcolor=black,citecolor=black,urlcolor=blue]{hyperref} +\usepackage{lmodern} + +%% ── Colour palette (matches bare_metal_doe_report.tex) ───────────────────────── +\definecolor{sfblue}{RGB}{31,119,180} +\definecolor{sforange}{RGB}{255,127,14} +\definecolor{sfgreen}{RGB}{44,160,44} +\definecolor{sfgray}{RGB}{80,80,80} + +%% ── Figure path ─────────────────────────────────────────────────────────────── +\graphicspath{{figures/}} + +%% ── Title metadata ──────────────────────────────────────────────────────────── +\title{% + \textbf{LithosAnanke Multiuser/Multitasking Design of Experiments}\\[0.4em] + \large Concurrent Worker VM Load Across Three Instruction-Set Architectures +} +\author{% + R.\,A. James (Captain Bob)\\[0.2em] + \small StarForth Project \quad\texttt{robert.allan.james@gmail.com} +} +\date{% + Generated automatically by \texttt{scripts/build\_multiuser\_doe\_report.sh}\\[0.2em] + \textnormal{(Patent Pending --- Provisional Filed December 2025)} +} + +%% ═════════════════════════════════════════════════════════════════════════════ +\begin{document} + +\maketitle +\thispagestyle{empty} + +%% ── Abstract ────────────────────────────────────────────────────────────────── +\begin{abstract} +\noindent +This report analyses the multiuser/multitasking Design of Experiments +(FABRIC-3.md \S{}XXXIII/\S{}XXXV): a 6-cell factorial over concurrency level +(2, 4, or 8 simultaneously live worker VMs, each birthed and touched twice +by the Mama VM Hera) crossed with workload mode (uniform -- every worker +runs the same workload; heterogeneous -- worker $n$ runs workload +$n \bmod 10$), run per instruction-set architecture with a fixed seed. +Trial outcomes -- concurrency, mode, fail count, and trial-end fleet +physics (cumulative preemptive switch count, fleet heat conservation) -- +persist to a dedicated block-backed region on \texttt{disk/artemis.img} +(\texttt{DOE-PERSIST-TRIAL}, \S{}XXXV.10) rather than depending on a live +serial-log tail, so this report can be rebuilt at any point during a +multi-day campaign, including while it is still running, from whatever +trials have completed so far. +\end{abstract} + +\section{Current campaign status} + +\input{sections/multiuser_summary_autogen.tex} + +\IfFileExists{figures/multiuser_placeholder.pdf}{% + \begin{figure}[h] + \centering + \includegraphics[width=0.6\textwidth]{multiuser_placeholder.pdf} + \end{figure} +}{} + +\IfFileExists{figures/multiuser_fail_rate.pdf}{% +\section{Fail rate by concurrency and workload mode} + +\begin{figure}[h] + \centering + \includegraphics[width=0.75\textwidth]{multiuser_fail_rate.pdf} + \caption{Fraction of trials with \texttt{fail\_count > 0}, by concurrency + level (2/4/8 workers) and workload mode. Labels give (failed/total) trials + per cell.} +\end{figure} +}{} + +\IfFileExists{figures/multiuser_switch_count.pdf}{% +\clearpage +\section{Preemptive switch load} + +\begin{figure}[h] + \centering + \includegraphics[width=0.75\textwidth]{multiuser_switch_count.pdf} + \caption{Distribution of cumulative Stage-3 preemptive switch count at + trial end, by concurrency level. Higher concurrency is expected to drive + more switch events per trial.} +\end{figure} +}{} + +\IfFileExists{figures/multiuser_fleet_k_sequence.pdf}{% +\section{Fleet heat conservation across the trial sequence} + +\begin{figure}[h] + \centering + \includegraphics[width=\textwidth]{multiuser_fleet_k_sequence.pdf} + \caption{Trial-end fleet heat (\texttt{fleet\_k\_q48}, decoded from + Q48.16) across the shuffled trial run order. The dashed line marks the + conserved value (1.0); persistent drift away from it across the + sequence would indicate a real conservation violation rather than + per-trial noise.} +\end{figure} +}{} + +\IfFileExists{figures/multiuser_isa_panel.pdf}{% + \clearpage + \section{Per-ISA comparison} + \begin{figure}[h] + \centering + \includegraphics[width=\textwidth]{multiuser_isa_panel.pdf} + \caption{Fail rate by concurrency and mode, faceted by ISA -- populated + once more than one architecture's trials have been persisted.} + \end{figure} +}{} + +\section{Methodology notes} + +\begin{itemize} + \item \textbf{Persistence, not a serial-log dependency.} Earlier attempts + at this campaign relied entirely on a live QEMU serial-log tail and + were lost when the process was interrupted (FABRIC-3.md \S{}XXXV.10). + Every number in this report comes from \texttt{disk/artemis.img}'s + own on-disk DoE region, read directly by + \texttt{scripts/extract\_doe\_region.py} with no live QEMU process + required. + \item \textbf{Rebuildable mid-campaign.} This report's build script + (\texttt{scripts/build\_multiuser\_doe\_report.sh}) can be re-run at + any point -- including while a multi-day campaign is still executing + -- and will reflect however many trials have completed at that moment. + \item \textbf{Trial-summary, not per-tick.} Unlike the per-tick + \texttt{HB-ON} serial stream (which remains the authoritative live + instrumentation during a run), the persisted region stores one summary + record per completed trial (\S{}XXXV.4) -- sized to comfortably fit + the device budget for the full campaign, not a raw tick mirror. +\end{itemize} + +\end{document} diff --git a/experiments/bare_metal/analysis/report/sections/multiuser_summary_autogen.tex b/experiments/bare_metal/analysis/report/sections/multiuser_summary_autogen.tex new file mode 100644 index 00000000..9ddcb6ff --- /dev/null +++ b/experiments/bare_metal/analysis/report/sections/multiuser_summary_autogen.tex @@ -0,0 +1,4 @@ +% Auto-generated by analyse_multiuser_doe.R -- do not edit by hand. +No trial data has been persisted to the DoE region yet. This section +will populate automatically the next time this report is built after +the campaign has produced at least one completed trial. diff --git a/experiments/bare_metal/analysis/tables/multiuser_status.csv b/experiments/bare_metal/analysis/tables/multiuser_status.csv new file mode 100644 index 00000000..57e00894 --- /dev/null +++ b/experiments/bare_metal/analysis/tables/multiuser_status.csv @@ -0,0 +1,2 @@ +"status","trials_so_far" +"No trials persisted yet",0 diff --git a/experiments/bare_metal/runs/doe-amd64-20260917-165235.csv b/experiments/bare_metal/runs/doe-amd64-20260917-165235.csv new file mode 100644 index 00000000..e69de29b diff --git a/experiments/bare_metal/runs/multiuser-doe-trials.csv b/experiments/bare_metal/runs/multiuser-doe-trials.csv new file mode 100644 index 00000000..7e670c9a --- /dev/null +++ b/experiments/bare_metal/runs/multiuser-doe-trials.csv @@ -0,0 +1 @@ +isa,run_id,cfg,rep,nw,mode,fail_count,fleet_k_q48,fleet_conserved,switch_count_cumulative diff --git a/logs/20260917-165235/amd64/qemu-amd64-20260917-165235.log b/logs/20260917-165235/amd64/qemu-amd64-20260917-165235.log new file mode 100644 index 00000000..a788b2bd --- /dev/null +++ b/logs/20260917-165235/amd64/qemu-amd64-20260917-165235.log @@ -0,0 +1,9243 @@ +[=3hBdsDxe: loading Boot0002 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0) +BdsDxe: starting Boot0002 "UEFI QEMU DVD-ROM QM00005 " from PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x2,0xFFFF,0x0) +[=3hStarKernel UEFI Loader +Loading kernel from ESP... +[CKPT 001] Entered efi_main - ConOut live +RAW SERIAL UP +[CKPT 002] Serial (COM1) initialized +Monolithic build - kernel linked directly +Collecting boot information... +CmdLine: parsed OK +[CKPT 004] Command line parsed +[CKPT 005] Kernel stack allocation decided +[CKPT 006] Boot info collected (ACPI table located) +GOP: linear framebuffer found +[CKPT 007] GOP: linear framebuffer found +[CKPT 008] About to enter ExitBootServices retry loop +EBS... +EBS OK +Calling kernel_main (monolithic)... + + + _____ _ _ __ _ + / ____| | | |/ / | | + | (___ | |_ __ _ _ __| ' / ___ _ __ _ __ ___| | + \___ \| __/ _` | '__| < / _ \ '__| '_ \ / _ \ | + ____) | || (_| | | | . \ __/ | | | | | __/ | + |_____/ \__\__,_|_| |_|\_\___|_| |_| |_|\___|_| + +LithosAnanke v2.0.0 +Architecture: amd64 +Build: Sep 17 2026 14:36:43 + +UEFI BootServices: EXITED + +=== StarKernel Boot Information === +Memory map entries: 129 +Total memory: 1023 MB +Usable memory: 968 MB +=================================== + +PMM initialized. +PMM statistics: + Total pages: 249352 + Free pages : 247829 + Used pages : 1523 + Total MB : 974 + Free MB : 968 + Used MB : 5 + +VMM initialized (mapped RAM, CR3 switched) +VMM initialized (mapped RAM, CR3 switched) +VMM self-test: mapped OK at 0xffff800000000000 +VMM self-test complete. + +IDT installed. + +APIC: init... +APIC: IA32_APIC_BASE MSR=0x00000000fee00900 +APIC: stale-ISR drain: 0 EOI(s) issued +APIC: initialized (xAPIC MMIO, TPR=0, SIVR=0x1FF, EOI-clear) +APIC: init done + +I/O APIC: init... +I/O APIC: base=0xfec00000, gsi_base=0, overrides=5 + override: source=00 gsi=2 flags=0x0000 + override: source=05 gsi=5 flags=0x000d + override: source=09 gsi=9 flags=0x000d + override: source=0a gsi=10 flags=0x000d + override: source=0b gsi=11 flags=0x000d +i8042: keyboard ACKed enable-scanning +i8042: IRQ1 enabled in controller config byte +I/O APIC: keyboard IRQ1 routed (masked) + +Timer: init... +Timer: init start +Timer: PM_TMR_BLK discovered from FADT at port 1544 +Timer: VM mode detected (hypervisor present). +Timer: HPET calibration disabled (VM-exit MMIO would poison timing). +Timer: WARNING: invariant TSC not present under hypervisor. +Timer: continuing in RELATIVE mode (no determinism guarantees). +Timer: RDTSCP not present; using RDTSC (less serialized). +Timer: CPUID frequency unavailable; trying PM Timer... +Timer: trust=1 (0=NONE,1=REL,2=ABS), TSC=2103420256 Hz +Timer: init done + +Kernel heap initialized. +Heap statistics: + Total bytes: 536870872 + Free bytes: 536870872 + Used bytes: 0 + Peak bytes: 0 + Heap base addr: 24641536 + Heap end addr: 561512448 + +Heartbeat: init... +APIC Timer: calibrating... +APIC Timer: apic_hz=1008987326, tick_hz=100, initial_count=10089873 +APIC Timer: configured (masked, ready to start) +Heartbeat: init done +Kernel initialization complete. +Boot successful! + +Stadium: 83886 cells (5242 KB), 50 VM slots +VM: bootstrap parity... +VM arena allocated: 0xffff900000000000 + (5 MB) +[HADES][INFO ] [KRELTSC: 0] Registering FORTH-79 Standard word set... +[HADES][INFO ] [KRELTSC: 4259451] Registering FORTH-79 arithmetic words... +[HADES][INFO ] [KRELTSC: 61168359] FORTH-79 Standard word set registration complete +[Hera] POST: Running comprehensive test suite... +[Hera] [HADES][INFO ] [KRELTSC: 94832493] Starting comprehensive FORTH-79 modular test suite... +[Hera] [HADES][INFO ] [KRELTSC: 95633433] ============================================== +[Hera] [HADES][INFO ] [KRELTSC: 96429228] +[Hera] === Testing Module: Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 97655145] Running Stack Words Tests (Module 1: Foundation)... +[Hera] [HADES][TEST ] [KRELTSC: 98703465] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 99797292] Testing word: DUP +[Hera] [HADES][TEST ] [KRELTSC: 100554384] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 101551737] Running DUP.basic: 5 DUP . . CR +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 112300482] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 113567181] Expected: Should print: 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] 5 5 +[Hera] [HADES][TEST ] [KRELTSC: 116457327] Running DUP.zero: 0 DUP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 117687906] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 119063028] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 121442013] Running DUP.negative: -42 DUP . . CR +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 122834964] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 124159266] Expected: Should print: -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] -42 -42 +[Hera] [HADES][TEST ] [KRELTSC: 126836115] Running DUP.max_int: 2147483647 DUP . . CR +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 128238621] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 129536253] Expected: Should duplicate max int +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] 2147483647 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 132653199] Running DUP.min_int: -2147483648 DUP . . CR +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 134075004] Test passed +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 135412767] Expected: Should duplicate min int +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] -2147483648 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 138549453] Running DUP.empty_stack: DUP +[Hera] [HADES][ERROR] [KRELTSC: 139525701] DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 140306124] Expected error occurred +[Hera] [HADES][TEST ] Testing DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 141746850] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 142789752] DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 143967873] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 145030011] Testing word: DROP +[Hera] [HADES][TEST ] [KRELTSC: 145728030] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 146499360] Running DROP.basic: 5 7 DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 147743715] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 149101239] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 151336836] Running DROP.zero: 42 0 DROP . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 152491206] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 153831615] Expected: Should drop zero, print 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 156196530] Running DROP.negative: 10 -5 DROP . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 157406613] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 158750214] Expected: Should drop negative, print 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 161152047] Running DROP.double_drop: 1 2 3 DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 162437226] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 163797375] Expected: Should print: 1 +[Hera] 1 +[Hera] [HADES][INFO ] [KRELTSC: 166765242] L8[TABLE]: Config 17 → 0 regime=2 score=26214 L1=0 L2=0 L3=0 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 169886997] Running DROP.triple_drop: 1 2 3 4 DROP DROP DROP . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 171207939] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 172566870] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 174881490] Running DROP.sequential: 5 DROP 6 DROP 7 . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 176127756] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 177476166] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 179787825] Running DROP.single_item: 99 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 181059144] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 182432544] Expected: Should empty stack, depth=0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 184848279] Running DROP.depth_change: DEPTH 1 2 DROP DEPTH SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 186436614] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 187794495] Expected: Should change depth by 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 190299984] Running DROP.preserve_depth: DEPTH 5 6 DROP DROP DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 191836386] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 193163019] Expected: Should preserve net depth +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 195617100] L8[TABLE]: Config 0 → 1 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 197070951] Running DROP.max_int: 2147483647 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 198354996] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 199678920] Expected: Should drop max int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 202011810] Running DROP.min_int: -2147483648 DROP DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 203294637] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 204622698] Expected: Should drop min int +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 206954349] Running DROP.with_dup: 5 DUP DROP . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 208125855] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 209484534] Expected: Should duplicate then drop +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 211880361] Running DROP.with_swap: 1 2 SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 213242379] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 214643688] Expected: Should swap then drop +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 216998733] Running DROP.complex: 1 2 3 ROT DROP SWAP DROP . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 218468355] Test passed +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 219823548] Expected: Should handle complex sequence +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 222393864] Running DROP.empty_stack: DROP +[Hera] [HADES][ERROR] [KRELTSC: 223265490] DROP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 224036043] Expected error occurred +[Hera] [HADES][TEST ] Testing DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 225458709] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 226374750] DROP: 15 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 227311854] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 228333420] Testing word: SWAP +[Hera] [HADES][TEST ] [KRELTSC: 229084590] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 229865076] Running SWAP.basic: 5 7 SWAP . . CR +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 231062769] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 232403535] Expected: Should print: 7 5 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] 5 7 +[Hera] [HADES][TEST ] [KRELTSC: 234834054] Running SWAP.same_values: 42 42 SWAP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 236109279] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 237476568] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 239960385] L8[TABLE]: Config 1 → 2 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 241176411] Running SWAP.zero_nonzero: 0 99 SWAP . . CR +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 242520327] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 243888792] Expected: Should print: 99 0 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] 0 99 +[Hera] [HADES][TEST ] [KRELTSC: 246351966] Running SWAP.negative: -5 10 SWAP . . CR +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 247613037] Test passed +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 248942211] Expected: Should print: 10 -5 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] -5 10 +[Hera] [HADES][TEST ] [KRELTSC: 251454966] Running SWAP.one_item: 42 SWAP +[Hera] [HADES][ERROR] [KRELTSC: 252348180] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 253260546] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 254708370] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 255628758] Running SWAP.empty_stack: SWAP +[Hera] [HADES][ERROR] [KRELTSC: 256451370] SWAP: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 257378163] Expected error occurred +[Hera] [HADES][TEST ] Testing SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 258860007] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 259772604] SWAP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 260729679] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 261833586] Testing word: OVER +[Hera] [HADES][TEST ] [KRELTSC: 262572744] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 263363268] Running OVER.basic: 5 7 OVER . . . CR +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 264741729] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 266074326] Expected: Should print: 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] 5 7 5 +[Hera] [HADES][TEST ] [KRELTSC: 268546152] Running OVER.zeros: 0 0 OVER . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 269751321] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 271081251] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 273579222] Running OVER.mixed: -1 42 OVER . . . CR +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 274846656] Test passed +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 276199308] Expected: Should print: -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] -1 42 -1 +[Hera] [HADES][TEST ] [KRELTSC: 278873007] Running OVER.one_item: 42 OVER +[Hera] [HADES][ERROR] [KRELTSC: 279738963] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 280652400] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 282107532] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 283059252] Running OVER.empty_stack: OVER +[Hera] [HADES][ERROR] [KRELTSC: 283900155] OVER: Insufficient stack items (need 2) +[Hera] [HADES][TEST ] [KRELTSC: 284738454] Expected error occurred +[Hera] [HADES][TEST ] Testing OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 286183737] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 287113638] OVER: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 287996394] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 289073862] Testing word: ROT +[Hera] [HADES][TEST ] [KRELTSC: 289787421] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 290565912] Running ROT.basic: 1 2 3 ROT . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 291810456] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 293126988] Expected: Should print: 2 3 1 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 295652427] Running ROT.zeros: 0 0 0 ROT . . . CR +[Hera] [HADES][INFO ] [KRELTSC: 296649906] L8[TABLE]: Config 2 → 3 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 298111065] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 299477325] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 301982499] Running ROT.mixed: -1 0 1 ROT . . . CR +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 303228429] Test passed +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 304592967] Expected: Should print: 0 1 -1 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] -1 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 307130502] Running ROT.two_items: 1 2 ROT +[Hera] [HADES][ERROR] [KRELTSC: 308044611] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 308952924] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 310392537] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 311297364] Running ROT.one_item: 42 ROT +[Hera] [HADES][ERROR] [KRELTSC: 312117624] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 313019112] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 314494551] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 315428841] Running ROT.empty_stack: ROT +[Hera] [HADES][ERROR] [KRELTSC: 316276191] ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 317144268] Expected error occurred +[Hera] [HADES][TEST ] Testing ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 318517374] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 319410651] ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 320323962] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 321382950] Testing word: DEPTH +[Hera] [HADES][TEST ] [KRELTSC: 322112091] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 322860678] Running DEPTH.empty: DEPTH . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 324005514] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 325368267] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 327575535] Running DEPTH.one_item: 42 DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 328753950] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 330100659] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 332317167] Running DEPTH.multiple: 1 2 3 DEPTH . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 333526578] Test passed +[Hera] [HADES][TEST ] Testing DEPTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 334844790] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 337117935] DEPTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 338062641] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 339132780] Testing word: PICK +[Hera] [HADES][TEST ] [KRELTSC: 339864126] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 340596753] Running PICK.pick_0: 1 2 3 0 PICK . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 341913369] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 343174692] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 345472197] Running PICK.pick_1: 1 2 3 1 PICK . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 346683918] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 348031740] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][INFO ] [KRELTSC: 350113344] L8[TABLE]: Config 3 → 4 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 351522024] Running PICK.pick_2: 1 2 3 2 PICK . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 352728474] Test passed +[Hera] [HADES][TEST ] Testing PICK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 354019785] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 356330121] PICK: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 357345093] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 358436610] Testing word: ROLL +[Hera] [HADES][TEST ] [KRELTSC: 359170854] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 359960496] Running ROLL.roll_1: 1 2 3 1 ROLL . . . CR +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 361413885] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 362830545] Expected: Should print: 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] 1 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 365368500] Running ROLL.roll_2: 1 2 3 2 ROLL . . . CR +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 366629613] Test passed +[Hera] [HADES][TEST ] Testing ROLL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 368000640] Expected: Should print: 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] 2 3 1 +[Hera] [HADES][TEST ] [KRELTSC: 370541997] ROLL: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 371475804] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 372527442] Testing word: ?DUP +[Hera] [HADES][TEST ] [KRELTSC: 373244802] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 374035536] Running ?DUP.nonzero: 42 ?DUP . . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 375360174] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 376682817] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 379147209] Running ?DUP.negative: -5 ?DUP . . CR +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 380340954] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 381680166] Expected: Should print: -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] -5 -5 +[Hera] [HADES][TEST ] [KRELTSC: 384165495] Running ?DUP.zero: 0 ?DUP DEPTH . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 385385763] Test passed +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 386722602] Expected: Should not dup: depth 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 389073426] Running ?DUP.empty_stack: ?DUP +[Hera] [HADES][ERROR] [KRELTSC: 389968950] ?DUP: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 390737613] Expected error occurred +[Hera] [HADES][TEST ] Testing ?DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 392206710] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 393097110] ?DUP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 394038918] ▶ Testing module: src/test_runner/modules/stack_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 395110695] Testing word: -ROT +[Hera] [HADES][TEST ] [KRELTSC: 395839206] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 396634203] Running -ROT.basic: 1 2 3 -ROT . . . CR +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 398021694] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 399382515] Expected: Should print: 1 3 2 +[Hera] [HADES][INFO ] [KRELTSC: 400260924] L8[TABLE]: Config 4 → 5 regime=2 score=26214 L1=0 L2=0 L3=0 L +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] 2 1 3 +[Hera] [HADES][TEST ] [KRELTSC: 403001172] Running -ROT.zeros: 0 0 0 -ROT . . . CR +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 404236140] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 405591690] Expected: Should print: 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 408089976] Running -ROT.roundtrip: 1 2 3 -ROT ROT . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 409439478] Test passed +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 410820186] Expected: Should restore original order +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 413436009] Running -ROT.two_items: 1 2 -ROT +[Hera] [HADES][ERROR] [KRELTSC: 414318051] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 415352763] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 416831562] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 417785130] Running -ROT.empty_stack: -ROT +[Hera] [HADES][ERROR] [KRELTSC: 418707240] -ROT: Insufficient stack items (need 3) +[Hera] [HADES][TEST ] [KRELTSC: 419609421] Expected error occurred +[Hera] [HADES][TEST ] Testing -ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 421038030] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 421981371] -ROT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 423008586] === Stack Words Summary: 0 passed, 0 failed, 0 skipped, 0 error +[Hera] [HADES][INFO ] [KRELTSC: 424140402] +[Hera] === Testing Module: Return Stack Words === +[Hera] [HADES][INFO ] [KRELTSC: 425302647] Running Return Stack Words Tests (Module 2)... +[Hera] [HADES][TEST ] [KRELTSC: 426301050] ▶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 427407666] Testing word: >R +[Hera] [HADES][TEST ] [KRELTSC: 428131179] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 428905932] Running >R.basic: 42 >R R@ . R> . CR +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 430430406] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 431787300] Expected: Should print: 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 434302512] Running >R.zero: 0 >R R@ . R> . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 435489348] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 436814973] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 439226613] Running >R.negative: -123 >R R@ . R> . CR +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 440550453] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 441894684] Expected: Should print: -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] -123 -123 [HADES][INFO ] [KRELTSC: 443930109] L8[TABLE]: Config 5 → 6 regime=2 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -123 -123 +[Hera] -123 -123 +[Hera] [HADES][TEST ] [KRELTSC: 445798353] Running >R.multiple: 1 2 >R >R R@ . R> . R@ . R> . CR +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 447563529] Test passed +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 449211231] Expected: Should print: 2 2 1 1 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] 1 1 2 2 +[Hera] [HADES][TEST ] [KRELTSC: 452861493] Running >R.empty_stack: >R +[Hera] [HADES][ERROR] [KRELTSC: 453935538] >R: DSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 454775328] Expected error occurred +[Hera] [HADES][TEST ] Testing >R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 456535233] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 457647939] >R: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 458855628] ▶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 459978372] Testing word: R> +[Hera] [HADES][TEST ] [KRELTSC: 460681494] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 461471493] Running R>.basic: 42 >R R> . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 462698880] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 464014908] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 466331649] Running R>.lifo_order: 1 2 >R >R R> . R> . CR +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 467647467] Test passed +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 468969144] Expected: Should print: 2 1 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 471436350] Running R>.empty_rstack: R> +[Hera] [HADES][ERROR] [KRELTSC: 472391976] R>: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 473097324] Expected error occurred +[Hera] [HADES][TEST ] Testing R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 474549159] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 475542858] R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 476477652] ▶ Testing module: src/test_runner/modules/return_stack_words_ +[Hera] [HADES][TEST ] [KRELTSC: 477525426] Testing word: R@ +[Hera] [HADES][TEST ] [KRELTSC: 478248330] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 479032239] Running R@.basic: 42 >R R@ . R> DROP CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 480302298] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 481644534] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 484056426] Running R@.non_destructive: 99 >R R@ R@ = . R> DROP CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 485495997] Test passed +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 486828489] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 488732034] L8[TABLE]: Config 6 → 7 regime=2 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 490366926] Running R@.empty_rstack: R@ +[Hera] [HADES][ERROR] [KRELTSC: 491204511] R@: RSP underflow +[Hera] [HADES][TEST ] [KRELTSC: 491919351] Expected error occurred +[Hera] [HADES][TEST ] Testing R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 493369905] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 494319399] R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 495244575] === Return Stack Words Summary: 0 passed, 0 failed, 0 skipped, +[Hera] [HADES][INFO ] [KRELTSC: 496268787] +[Hera] === Testing Module: Memory Words === +[Hera] [HADES][INFO ] [KRELTSC: 497450268] Running Memory Words Tests (Module 3)... +[Hera] [HADES][TEST ] [KRELTSC: 498331197] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 499473807] Testing word: ! +[Hera] [HADES][TEST ] [KRELTSC: 500178147] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 500969637] Running !.basic: 42 HERE ! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 502476429] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 503814192] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 506165037] Running !.zero: 0 HERE ! HERE @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 507340050] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 508644570] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 511001631] Running !.negative: -999 HERE ! HERE @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 512274840] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 513607080] Expected: Should print: -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 516095874] Running !.overwrite: 111 HERE ! 222 HERE ! HERE @ . CR +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 517484541] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 518812056] Expected: Should print: 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] 222 +[Hera] [HADES][TEST ] [KRELTSC: 521303055] Running !.max_int: 2147483647 HERE ! HERE @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 522672171] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 524012475] Expected: Should store max int +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 526705011] Running !.min_int: -2147483648 HERE ! HERE @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 528081771] Test passed +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 529339902] Expected: Should store min int +[Hera] [HADES][INFO ] [KRELTSC: 530327217] L8[TABLE]: Config 7 → 8 regime=2 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 533368752] Running !.empty_stack: ! +[Hera] [HADES][TEST ] [KRELTSC: 534173892] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 535622031] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 536554368] Running !.one_item: 42 ! +[Hera] [HADES][TEST ] [KRELTSC: 537374691] Expected error occurred +[Hera] [HADES][TEST ] Testing ! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 538763148] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 539658462] !: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 540635172] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 541723959] Testing word: @ +[Hera] [HADES][TEST ] [KRELTSC: 542377122] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 543267039] Running @.after_store: 123 HERE ! HERE @ . CR +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 545020035] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 546496755] Expected: Should print: 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] 123 +[Hera] [HADES][TEST ] [KRELTSC: 548995650] Running @.multiple_reads: 456 HERE ! HERE @ HERE @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 550398429] Test passed +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 551720526] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 554152263] Running @.empty_stack: @ +[Hera] [HADES][TEST ] [KRELTSC: 555028425] Expected error occurred +[Hera] [HADES][TEST ] Testing @ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 556470033] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 557399787] @: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 558294912] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 559369104] Testing word: C! +[Hera] [HADES][TEST ] [KRELTSC: 560074746] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 560861490] Running C!.basic: 65 HERE C! HERE C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 562411605] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 563624817] Expected: Should print: 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 565862262] Running C!.zero: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 567097377] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 568434006] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 570816246] Running C!.high_byte: 255 HERE C! HERE C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 572140506] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 573433329] Expected: Should print: 255 +[Hera] 255 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][INFO ] [KRELTSC: 575337336] L8[TABLE]: Config 8 → 9 regime=2 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 255 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 577154088] Running C!.truncation: 256 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 578465769] Test passed +[Hera] [HADES][TEST ] Testing C! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 579807963] Expected: Should print: 0 (truncated) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 582266286] C!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 583203873] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 584252109] Testing word: C@ +[Hera] [HADES][TEST ] [KRELTSC: 584898342] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 585667656] Running C@.after_cstore: 97 HERE C! HERE C@ . CR +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 586961718] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 588368298] Expected: Should print: 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] 97 +[Hera] [HADES][TEST ] [KRELTSC: 590764797] Running C@.zero_byte: 0 HERE C! HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 592057200] Test passed +[Hera] [HADES][TEST ] Testing C@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 593348427] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 595720839] C@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 596651265] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 597749439] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 598456845] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 599256147] Running ,.basic: 42 , HERE 8 - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 600684651] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 602042532] Expected: Should compile 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 604477545] Running ,.negative: -999 , HERE 8 - @ . CR +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 605781267] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 607121445] Expected: Should compile -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 609639996] ,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 610579221] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 611661624] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 612402714] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 613184670] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 614638920] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 615996150] Expected: Should compile byte 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][INFO ] [KRELTSC: 617607186] L8[TABLE]: Config 9 → 10 regime=2 score=6553 L1=0 L2=0 L3=0 L +[Hera] 65 +[Hera] 65 +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 619775079] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 621031110] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 622359003] Expected: Should compile byte 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 624924153] C,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 625865142] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 626946705] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 627664632] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 628458054] Running 2,.roundtrip: 12345 67890 2, HERE 16 - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 630279321] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 631653141] Expected: Should print: 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 634538289] Running 2,.save-and-verify: 12345 67890 2, HERE 16 - 2@ 67890 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 636140631] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 637527135] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 640134390] 2,: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 641032581] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 642072438] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 642791499] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 643566945] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 645138816] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 646837800] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 649212858] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 S +[Hera] [HADES][INFO ] [KRELTSC: 650434008] L8[TABLE]: Config 10 → 11 regime=2 score=6553 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 651999012] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 653324952] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes +[Hera] [HADES][TEST ] [KRELTSC: 654870741] HERE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 655809462] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 656896170] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 657643854] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 658448322] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 659889657] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 661294326] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 663796308] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 665161035] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 666550647] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 669085179] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 670449423] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 671817195] Expected: Should print: -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 674293011] ALLOT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 675252207] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 676344669] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 677087250] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 677895393] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 679151634] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 680511972] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 682866492] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 684182310] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 685565601] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 [HADES][INFO ] [KRELTSC: 686941836] L8[TABLE]: Config 11 → 12 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 688798005] PAD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 689743194] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 690832023] Testing word: +! +[Hera] [HADES][TEST ] [KRELTSC: 691537350] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 692348223] Running +!.basic: 10 HERE ! 5 HERE +! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 693829731] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 695171988] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 697674978] Running +!.by_zero: 42 HERE ! 0 HERE +! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 699017445] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 700390845] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 703027122] Running +!.negative: 10 HERE ! -3 HERE +! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 704404239] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 705726210] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 708155826] Running +!.accumulate: 0 HERE ! 1 HERE +! 2 HERE +! 3 HERE +! +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 709621248] Test passed +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 710991162] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][INFO ] [KRELTSC: 712670280] L8[TABLE]: Config 12 → 13 regime=2 score=6553 L1=0 L2=0 L3=0 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 714800079] Running +!.empty_stack: +! +[Hera] [HADES][TEST ] [KRELTSC: 715645749] Expected error occurred +[Hera] [HADES][TEST ] Testing +! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 717097332] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 718013457] +!: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 718922211] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 719963034] Testing word: -! +[Hera] [HADES][TEST ] [KRELTSC: 720701520] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 721494060] Running -!.basic: 10 HERE ! 3 HERE -! HERE @ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 722976072] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 724330551] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 726746118] Running -!.by_zero: 42 HERE ! 0 HERE -! HERE @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 728139447] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 729536892] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 732036795] Running -!.negative: 10 HERE ! -5 HERE -! HERE @ . CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 733427940] Test passed +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 734785800] Expected: Should print: 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 737306535] Running -!.empty_stack: -! +[Hera] [HADES][TEST ] [KRELTSC: 738153066] Expected error occurred +[Hera] [HADES][TEST ] Testing -! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 739596354] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 740523987] -!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 741455946] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 742576611] Testing word: 2! +[Hera] [HADES][TEST ] [KRELTSC: 743283408] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 744042873] Running 2!.basic: 11 22 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 745756452] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 747130524] Expected: Should print: 22 11 +[Hera] 11 22 +[Hera] 11 22 [HADES][INFO ] [KRELTSC: 748715709] L8[TABLE]: Config 13 → 14 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 11 22 +[Hera] 11 22 +[Hera] 11 22 +[Hera] [HADES][TEST ] [KRELTSC: 750757371] Running 2!.zeros: 0 0 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 752160759] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 753525234] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 756113148] Running 2!.negative: -1 -2 HERE 2! HERE @ . HERE 8 + @ . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 757561056] Test passed +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 758923326] Expected: Should print: -2 -1 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 761739258] Running 2!.empty_stack: 2! +[Hera] [HADES][TEST ] [KRELTSC: 762601917] Expected error occurred +[Hera] [HADES][TEST ] Testing 2! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 764050350] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 765001797] 2!: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 765929367] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 767041611] Testing word: FILL +[Hera] [HADES][TEST ] [KRELTSC: 767786859] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 768561171] Running FILL.basic: HERE 8 65 FILL HERE C@ . HERE 1+ C@ . CR +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 770331534] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 771713355] Expected: Should print: 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 +[Hera] 65 65 [HADES][INFO ] [KRELTSC: 774138246] L8[TABLE]: Config 14 → 15 regime=2 score=6553 L1=0 L2=0 L3=0 + +[Hera] 65 65 +[Hera] [HADES][TEST ] [KRELTSC: 775501839] Running FILL.zero_n: HERE 0 88 FILL +[Hera] [HADES][TEST ] [KRELTSC: 776427393] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 777826077] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 778868706] Running FILL.zero_byte: HERE 4 0 FILL HERE C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 780556266] Test passed +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 782126520] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 784579320] Running FILL.empty_stack: FILL +[Hera] [HADES][TEST ] [KRELTSC: 785501808] Expected error occurred +[Hera] [HADES][TEST ] Testing FILL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 786991674] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 787918803] FILL: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 788882934] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 789985035] Testing word: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 790739355] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 791527044] Running MOVE.basic: HERE 65 OVER C! HERE 1+ 66 OVER C! HERE H +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 793461543] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 794899539] Expected: Should print: 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 798116361] Running MOVE.zero_n: HERE HERE 8 + 0 MOVE +[Hera] [HADES][TEST ] [KRELTSC: 799126062] Test passed +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 800509794] Expected: Should do nothing +[Hera] [HADES][INFO ] [KRELTSC: 801481737] L8[TABLE]: Config 15 → 16 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] [HADES][TEST ] [KRELTSC: 802889031] Running MOVE.empty_stack: MOVE +[Hera] [HADES][TEST ] [KRELTSC: 803761371] Expected error occurred +[Hera] [HADES][TEST ] Testing MOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 805203042] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 806077146] MOVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 807154320] ▶ Testing module: src/test_runner/modules/memory_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 808453023] Testing word: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 809344179] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 810256293] Running ERASE.basic: HERE 4 65 FILL HERE 4 ERASE HERE C@ . HE +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 812547099] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 814259964] Expected: Should print: 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 818103132] Running ERASE.zero_n: HERE 0 ERASE +[Hera] [HADES][TEST ] [KRELTSC: 819303282] Test passed +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 820998969] Expected: Should do nothing +[Hera] [HADES][TEST ] [KRELTSC: 822412479] Running ERASE.empty_stack: ERASE +[Hera] [HADES][TEST ] [KRELTSC: 823393410] Expected error occurred +[Hera] [HADES][TEST ] Testing ERASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 824868534] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 825812862] ERASE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 826769895] === Memory Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 827835981] +[Hera] === Testing Module: Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 829003329] Running Arithmetic Words Tests (Module 5)... +[Hera] [HADES][TEST ] [KRELTSC: 829953327] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 831044760] Testing word: + +[Hera] [HADES][TEST ] [KRELTSC: 831750192] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 832510035] Running +.basic: 5 7 + . CR +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 833642586] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 834976926] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 837227874] Running +.zero_add: 42 0 + . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 838373193] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 839709465] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 842005962] Running +.negative: -5 3 + . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 843183306] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 844481757] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 846773319] Running +.both_negative: -5 -3 + . CR +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 847963914] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 849334437] Expected: Should print: -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] -8 +[Hera] [HADES][INFO ] [KRELTSC: 851415012] L8[TABLE]: Config 16 → 18 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] -8 +[Hera] [HADES][TEST ] [KRELTSC: 852864978] Running +.overflow: 2147483647 1 + . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 854135877] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 855474165] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 858135159] Running +.underflow: -2147483648 -1 + . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 859458348] Test passed +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 860795838] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 863468424] Running +.empty_stack: + +[Hera] [HADES][ERROR] [KRELTSC: 864305862] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 865048569] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 866473818] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 867418146] Running +.one_item: 42 + +[Hera] [HADES][ERROR] [KRELTSC: 868250166] +: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 868973742] Expected error occurred +[Hera] [HADES][TEST ] Testing + ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 870414510] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 871335864] +: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 872307975] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 873358605] Testing word: - +[Hera] [HADES][TEST ] [KRELTSC: 874113387] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 874885977] Running -.basic: 10 3 - . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 876099000] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 877446549] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 879727800] Running -.zero_sub: 42 0 - . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 880896996] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 882238749] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 884555847] Running -.from_zero: 0 5 - . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 885707130] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 887038635] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 889336098] Running -.negative: 5 -3 - . CR +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 890473122] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 891861642] Expected: Should print: 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] 8 +[Hera] [HADES][TEST ] [KRELTSC: 894147429] Running -.same_values: 42 42 - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 895358205] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 896693259] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 898976421] Running -.overflow: -2147483648 1 - . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 900287283] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 901654488] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 904345281] Running -.underflow: 2147483647 -1 - . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 905645433] Test passed +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 906977673] Expected: Should overflow +[Hera] 2147483648 +[Hera] [HADES][INFO ] [KRELTSC: 908233746] L8[TABLE]: Config 18 → 19 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 910828086] Running -.empty_stack: - +[Hera] [HADES][ERROR] [KRELTSC: 911668149] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 912390822] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 913825479] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 914722977] Running -.one_item: 42 - +[Hera] [HADES][ERROR] [KRELTSC: 915510414] -: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 916232646] Expected error occurred +[Hera] [HADES][TEST ] Testing - ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 917648193] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 918581958] -: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 919481745] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 920550981] Testing word: * +[Hera] [HADES][TEST ] [KRELTSC: 921239466] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 922006029] Running *.basic: 6 7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 923258931] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 924615678] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 926902725] Running *.by_zero: 42 0 * . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 928023159] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 929382153] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 931632072] Running *.by_one: 42 1 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 932892744] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 934207890] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 936510477] Running *.by_negative: 6 -7 * . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 937713672] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 939023316] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 941425758] Running *.negative_negative: -6 -7 * . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 942657240] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 943998741] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 946302189] Running *.large_numbers: 32767 2 * . CR +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 947546187] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 948909528] Expected: Should print: 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] 65534 +[Hera] [HADES][TEST ] [KRELTSC: 951361068] Running *.overflow: 65536 65536 * . CR +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 952647969] Test passed +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 954019773] Expected: May overflow +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 956614470] Running *.empty_stack: * +[Hera] [HADES][ERROR] [KRELTSC: 957466377] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 958250412] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 959685258] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 960613899] Running *.one_item: 42 * +[Hera] [HADES][ERROR] [KRELTSC: 961456692] *: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 962203746] Expected error occurred +[Hera] [HADES][TEST ] Testing * ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 963652137] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 964589094] *: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 965524077] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 966632940] Testing word: / +[Hera] [HADES][TEST ] [KRELTSC: 967341186] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 968127468] Running /.basic: 15 3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 969270435] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 970614204] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][INFO ] [KRELTSC: 972358401] L8[TABLE]: Config 19 → 20 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 974061417] Running /.by_one: 42 1 / . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 975216837] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 976564029] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 978888078] Running /.negative_dividend: -15 3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 980113554] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 981470742] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 983782128] Running /.negative_divisor: 15 -3 / . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 985011993] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 986364246] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 988679559] Running /.both_negative: -15 -3 / . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 989888886] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 991359075] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 993614790] Running /.truncation: 7 3 / . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 994782642] Test passed +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 996099279] Expected: Should print: 2 (truncated) +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 998464971] Running /.by_zero: 42 0 / +[Hera] [HADES][ERROR] [KRELTSC: 999295542] /: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1000055385] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1001473158] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1002372021] Running /.empty_stack: / +[Hera] [HADES][ERROR] [KRELTSC: 1003184070] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1003961385] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1005372375] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1006265190] Running /.one_item: 42 / +[Hera] [HADES][ERROR] [KRELTSC: 1007097189] /: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1007863563] Expected error occurred +[Hera] [HADES][TEST ] Testing / ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1009303743] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1010212665] /: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1011174927] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1012284063] Testing word: MOD +[Hera] [HADES][TEST ] [KRELTSC: 1013016900] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1013812485] Running MOD.basic: 17 5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1015304157] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1016670270] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1019051439] Running MOD.exact_division: 15 3 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1020312342] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1021687065] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1024104774] Running MOD.by_one: 42 1 MOD . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1025584434] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1027239318] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1029753543] Running MOD.negative_dividend: -17 5 MOD . CR +[Hera] [HADES][INFO ] [KRELTSC: 1030778343] L8[TABLE]: Config 20 → 21 regime=2 score=26214 L1=0 L2=0 L3=1 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1032263484] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1033652970] Expected: Should handle negative +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1036130676] Running MOD.negative_divisor: 17 -5 MOD . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1037405733] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1038733857] Expected: Should handle negative +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1041189681] Running MOD.small_by_large: 3 7 MOD . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1042406631] Test passed +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1043791308] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1046170608] Running MOD.by_zero: 42 0 MOD +[Hera] [HADES][ERROR] [KRELTSC: 1047121824] MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1048003446] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1049414079] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1050318906] Running MOD.empty_stack: MOD +[Hera] [HADES][ERROR] [KRELTSC: 1051200633] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1051954785] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1053379845] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1054290552] Running MOD.one_item: 42 MOD +[Hera] [HADES][ERROR] [KRELTSC: 1055176815] MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1055915553] Expected error occurred +[Hera] [HADES][TEST ] Testing MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1057356489] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1058291220] MOD: 9 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1059224628] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1060300689] Testing word: /MOD +[Hera] [HADES][TEST ] [KRELTSC: 1061034639] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1061814285] Running /MOD.basic: 17 5 /MOD . . CR +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 1063233234] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1064619276] Expected: Should print: 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] 3 2 +[Hera] [HADES][TEST ] [KRELTSC: 1067196711] Running /MOD.exact: 15 3 /MOD . . CR +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 1068444195] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1069849284] Expected: Should print: 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] 5 0 +[Hera] [HADES][TEST ] [KRELTSC: 1072364958] Running /MOD.negative: -17 5 /MOD . . CR +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1073675022] Test passed +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1075050123] Expected: Should handle negative dividend +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 1077774852] Running /MOD.by_zero: 42 0 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1078700238] /MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1079499582] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1080967566] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1081904565] Running /MOD.empty_stack: /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1082790807] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1083577635] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1085028399] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1085949018] Running /MOD.one_item: 42 /MOD +[Hera] [HADES][ERROR] [KRELTSC: 1086873921] /MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1087642122] Expected error occurred +[Hera] [HADES][TEST ] Testing /MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1089084234] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1090049688] /MOD: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1091010396] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1092114072] Testing word: ABS +[Hera] [HADES][TEST ] [KRELTSC: 1092825363] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1093624644] Running ABS.positive: 42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1094943801] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1096319175] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1098638709] Running ABS.negative: -42 ABS . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1099824369] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1101210663] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 [HADES][INFO ] [KRELTSC: 1103521440] L8[TABLE]: Config 21 → 22 regime=2 score=26214 L1=0 L2=0 L3=1 + +[Hera] [HADES][TEST ] [KRELTSC: 1104473622] Running ABS.zero: 0 ABS . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1105679631] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1107064455] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1109335395] Running ABS.min_int: -2147483648 ABS . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1110625593] Test passed +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1112009094] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1114711437] Running ABS.empty_stack: ABS +[Hera] [HADES][ERROR] [KRELTSC: 1115589321] ABS: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1116361617] Expected error occurred +[Hera] [HADES][TEST ] Testing ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1117842642] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1118770674] ABS: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1119734343] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1120802739] Testing word: NEGATE +[Hera] [HADES][TEST ] [KRELTSC: 1121595510] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1122396156] Running NEGATE.positive: 42 NEGATE . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1123782975] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1125180609] Expected: Should print: -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 1127590380] Running NEGATE.negative: -42 NEGATE . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1128825348] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1130248035] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1132560051] Running NEGATE.zero: 0 NEGATE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1133723892] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1135103697] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1137343473] Running NEGATE.min_int: -2147483648 NEGATE . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1138700262] Test passed +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1140061125] Expected: Should print: 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1142752695] Running NEGATE.empty_stack: NEGATE +[Hera] [HADES][ERROR] [KRELTSC: 1143697464] NEGATE: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1144502667] Expected error occurred +[Hera] [HADES][TEST ] Testing NEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1145987766] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1146929595] NEGATE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1147931820] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1149030771] Testing word: MIN +[Hera] [HADES][TEST ] [KRELTSC: 1149764742] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1150580235] Running MIN.basic: 5 3 MIN . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1151867892] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1153234110] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1155537306] Running MIN.equal: 42 42 MIN . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1156698627] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1158081519] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1160458278] Running MIN.negative: -5 -3 MIN . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1161669474] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1163092728] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1165425492] Running MIN.mixed: -1 1 MIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1166568333] Test passed +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1167957504] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 1169688282] L8[TABLE]: Config 22 → 23 regime=2 score=52428 L1=0 L2=0 L3=1 + +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1171239825] Running MIN.one_item: 42 MIN +[Hera] [HADES][ERROR] [KRELTSC: 1172099376] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1172866401] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1174337325] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1175252022] Running MIN.empty_stack: MIN +[Hera] [HADES][ERROR] [KRELTSC: 1176094038] MIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1176821058] Expected error occurred +[Hera] [HADES][TEST ] Testing MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1178274720] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1179165414] MIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1180108671] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1181197815] Testing word: MAX +[Hera] [HADES][TEST ] [KRELTSC: 1181935713] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1182714309] Running MAX.basic: 5 3 MAX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1183987623] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1185366819] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1187659704] Running MAX.equal: 42 42 MAX . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1188857460] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1190231343] Expected: Should print: 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 1192564002] Running MAX.negative: -5 -3 MAX . CR +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 1193775660] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1195121781] Expected: Should print: -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] -3 +[Hera] [HADES][TEST ] [KRELTSC: 1197460719] Running MAX.mixed: -1 1 MAX . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1198606101] Test passed +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1199967405] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1202217912] Running MAX.one_item: 42 MAX +[Hera] [HADES][ERROR] [KRELTSC: 1203095271] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1203848499] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1205324484] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1206244725] Running MAX.empty_stack: MAX +[Hera] [HADES][ERROR] [KRELTSC: 1207036215] MAX: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1207806537] Expected error occurred +[Hera] [HADES][TEST ] Testing MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1209243798] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1210136466] MAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1211079513] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1212179850] Testing word: 1+ +[Hera] [HADES][TEST ] [KRELTSC: 1212878604] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1213679901] Running 1+.basic: 5 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1214779944] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1216141752] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1218384867] Running 1+.zero: 0 1+ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1219465086] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1220905119] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 1223158734] Running 1+.negative: -1 1+ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1224295233] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1225654059] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1227896607] Running 1+.chain: 3 1+ 1+ 1+ . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1229089869] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1230446007] Expected: Should print: 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 1232693448] Running 1+.overflow: 2147483647 1+ . CR +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1233967644] Test passed +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1235322417] Expected: Should overflow +[Hera] 2147483648 +[Hera] 2147483648 [HADES][INFO ] [KRELTSC: 1236834417] L8[TABLE]: Config 23 → 24 regime=2 score=6553 L1=0 L2=0 L3=1 + +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 1238864613] Running 1+.empty_stack: 1+ +[Hera] [HADES][ERROR] [KRELTSC: 1239717465] 1+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1240482768] Expected error occurred +[Hera] [HADES][TEST ] Testing 1+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1241956674] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1242889788] 1+: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1243806564] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1244850537] Testing word: 1- +[Hera] [HADES][TEST ] [KRELTSC: 1245551118] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1246292313] Running 1-.basic: 5 1- . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1247497461] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1248841083] Expected: Should print: 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 1251070065] Running 1-.to_zero: 1 1- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1252204800] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1253553294] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1255747626] Running 1-.to_negative: 0 1- . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1256909913] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1258231254] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1260529011] Running 1-.chain: 6 1- 1- 1- . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1262080617] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1263567438] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1265903730] Running 1-.underflow: -2147483648 1- . CR +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 1267188720] Test passed +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1268522640] Expected: Should underflow +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] -2147483649 +[Hera] [HADES][TEST ] [KRELTSC: 1271181492] Running 1-.empty_stack: 1- +[Hera] [HADES][ERROR] [KRELTSC: 1272091149] 1-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1272864117] Expected error occurred +[Hera] [HADES][TEST ] Testing 1- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1274316183] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1275265488] 1-: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1276208829] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1277309082] Testing word: 2+ +[Hera] [HADES][TEST ] [KRELTSC: 1278117267] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1278924759] Running 2+.basic: 5 2+ . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 1280179320] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1281527415] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 1283760198] Running 2+.zero: 0 2+ . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1284846864] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1286197836] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1288429863] Running 2+.negative: -3 2+ . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1289591856] Test passed +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1290918531] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1293230967] Running 2+.empty_stack: 2+ +[Hera] [HADES][ERROR] [KRELTSC: 1294079955] 2+: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1294857228] Expected error occurred +[Hera] [HADES][TEST ] Testing 2+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1296338106] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1297256919] 2+: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1298223549] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1299319224] Testing word: 2- +[Hera] [HADES][TEST ] [KRELTSC: 1300067580] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1300870620] Running 2-.basic: 7 2- . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1302091119] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1303479639] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1305734829] Running 2-.zero: 2 2- . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1306822398] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1308160833] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1309583121] L8[TABLE]: Config 24 → 25 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1311594879] Running 2-.negative: 0 2- . CR +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1312763382] Test passed +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1314115131] Expected: Should print: -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] -2 +[Hera] [HADES][TEST ] [KRELTSC: 1316430276] Running 2-.empty_stack: 2- +[Hera] [HADES][ERROR] [KRELTSC: 1317465849] 2-: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1318201080] Expected error occurred +[Hera] [HADES][TEST ] Testing 2- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1319664150] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1320592392] 2-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1321522734] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1322613810] Testing word: 2* +[Hera] [HADES][TEST ] [KRELTSC: 1323315630] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1324112622] Running 2*.basic: 5 2* . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1325375037] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1326708033] Expected: Should print: 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1329029478] Running 2*.zero: 0 2* . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1330133301] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1331465058] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1333682847] Running 2*.negative: -3 2* . CR +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 1334844546] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1336278153] Expected: Should print: -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] -6 +[Hera] [HADES][TEST ] [KRELTSC: 1338596448] Running 2*.one: 1 2* . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1339687482] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1341044838] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 1343251812] Running 2*.large: 1073741823 2* . CR +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 1344500136] Test passed +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1345854027] Expected: Should print: 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] 2147483646 +[Hera] [HADES][TEST ] [KRELTSC: 1348555215] Running 2*.empty_stack: 2* +[Hera] [HADES][ERROR] [KRELTSC: 1349384778] 2*: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1350184626] Expected error occurred +[Hera] [HADES][TEST ] Testing 2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1351595175] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1352540931] 2*: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1353451890] ▶ Testing module: src/test_runner/modules/arithmetic_words_te +[Hera] [HADES][TEST ] [KRELTSC: 1354511676] Testing word: 2/ +[Hera] [HADES][TEST ] [KRELTSC: 1355214546] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1355983776] Running 2/.basic: 10 2/ . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1357258350] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1358576940] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 1360855608] Running 2/.odd: 7 2/ . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1361981418] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1363337787] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 1365573069] Running 2/.zero: 0 2/ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1366674624] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1367999220] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1370250798] Running 2/.negative_even: -10 2/ . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1371442611] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1372779450] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 1375046904] Running 2/.one: 1 2/ . CR +[Hera] [HADES][INFO ] [KRELTSC: 1375908051] L8[TABLE]: Config 25 → 26 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1377351843] Test passed +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1378710312] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1380943221] Running 2/.empty_stack: 2/ +[Hera] [HADES][ERROR] [KRELTSC: 1381796451] 2/: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1382582250] Expected error occurred +[Hera] [HADES][TEST ] Testing 2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1383998889] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1384910793] 2/: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1385865411] === Arithmetic Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 1386947961] +[Hera] === Testing Module: Logical Words === +[Hera] [HADES][INFO ] [KRELTSC: 1388122365] Running Logical Words Tests (Module 8)... +[Hera] [HADES][TEST ] [KRELTSC: 1389055878] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1390174170] Testing word: AND +[Hera] [HADES][TEST ] [KRELTSC: 1390885419] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1391656644] Running AND.both_true: -1 -1 AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1392851460] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1394365140] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1396713570] Running AND.first_false: 0 -1 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1397875563] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1399265070] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1401551088] Running AND.second_false: -1 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1402768479] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1404121803] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1406406141] Running AND.both_false: 0 0 AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1407594846] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1408937229] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1411170327] Running AND.bitwise: 85 51 AND . CR +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 1412344710] Test passed +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1413714771] Expected: Should print: 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] 17 +[Hera] [HADES][TEST ] [KRELTSC: 1416015741] Running AND.empty_stack: AND +[Hera] [HADES][ERROR] [KRELTSC: 1416905553] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1417700718] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1419165867] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1420063974] Running AND.one_item: 42 AND +[Hera] [HADES][ERROR] [KRELTSC: 1420931106] AND: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1421677803] Expected error occurred +[Hera] [HADES][TEST ] Testing AND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1423120860] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1424045595] AND: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1425015942] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1426114872] Testing word: OR +[Hera] [HADES][TEST ] [KRELTSC: 1426809552] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1427663055] Running OR.both_true: -1 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1428998046] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1430395071] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1432710363] Running OR.first_false: 0 -1 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1433909547] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1435242627] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1437577071] Running OR.second_false: -1 0 OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1438775163] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1440104379] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1441854939] L8[TABLE]: Config 26 → 27 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1443580761] Running OR.both_false: 0 0 OR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1444743132] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1446070689] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1448319138] Running OR.bitwise: 85 51 OR . CR +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 1449482790] Test passed +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1450941849] Expected: Should print: 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] 119 +[Hera] [HADES][TEST ] [KRELTSC: 1453299813] Running OR.empty_stack: OR +[Hera] [HADES][ERROR] [KRELTSC: 1454162220] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1454953101] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1456366233] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1457282274] Running OR.one_item: 42 OR +[Hera] [HADES][ERROR] [KRELTSC: 1458112677] OR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1458860277] Expected error occurred +[Hera] [HADES][TEST ] Testing OR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1460325636] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1461247746] OR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1462182204] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1463311080] Testing word: XOR +[Hera] [HADES][TEST ] [KRELTSC: 1464051015] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1464849477] Running XOR.both_true: -1 -1 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1466216178] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1467583866] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1469836704] Running XOR.first_false: 0 -1 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1471036287] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1472374281] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1474666494] Running XOR.second_false: -1 0 XOR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1475874561] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1477223559] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1479514911] Running XOR.both_false: 0 0 XOR . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1480706304] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1482089112] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1484300517] Running XOR.bitwise: 85 51 XOR . CR +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 1485489201] Test passed +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1486821609] Expected: Should print: 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] 102 +[Hera] [HADES][TEST ] [KRELTSC: 1489123902] Running XOR.empty_stack: XOR +[Hera] [HADES][ERROR] [KRELTSC: 1489981710] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1490776035] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1492234212] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1493147985] Running XOR.one_item: 42 XOR +[Hera] [HADES][ERROR] [KRELTSC: 1493980719] XOR: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1494702573] Expected error occurred +[Hera] [HADES][TEST ] Testing XOR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1496117427] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1497170955] XOR: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1498369971] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1499777433] Testing word: NOT +[Hera] [HADES][TEST ] [KRELTSC: 1500608865] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1501421103] Running NOT.true: -1 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1502787405] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1504162107] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1506399552] Running NOT.false: 0 NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1507561818] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1508984400] Expected: Should print: -1 +[Hera] [HADES][INFO ] [KRELTSC: 1509905565] L8[TABLE]: Config 27 → 28 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1512510489] Running NOT.positive: 42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1513683276] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1514992899] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1517243994] Running NOT.negative: -42 NOT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1518408654] Test passed +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1519764666] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1522020738] Running NOT.empty_stack: NOT +[Hera] [HADES][ERROR] [KRELTSC: 1522863972] NOT: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1523648679] Expected error occurred +[Hera] [HADES][TEST ] Testing NOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1525048959] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1525970313] NOT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1526904813] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1527966930] Testing word: = +[Hera] [HADES][TEST ] [KRELTSC: 1528648464] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1529440395] Running =.equal: 42 42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1530598965] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1531914993] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1534217958] Running =.not_equal: 42 43 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1535368485] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1536697617] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1538937204] Running =.zero_equal: 0 0 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1540091259] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1541409996] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1543670814] Running =.negative_equal: -42 -42 = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1544897067] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1546233990] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1548493128] Running =.negative_positive: -42 42 = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1549702329] Test passed +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1551055107] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1553303031] Running =.empty_stack: = +[Hera] [HADES][ERROR] [KRELTSC: 1554085407] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1554854658] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1556271969] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1557166779] Running =.one_item: 42 = +[Hera] [HADES][ERROR] [KRELTSC: 1557980676] =: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1558697112] Expected error occurred +[Hera] [HADES][TEST ] Testing = ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1560178389] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1561095375] =: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1562018808] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1563093378] Testing word: <> +[Hera] [HADES][TEST ] [KRELTSC: 1563804417] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1564587864] Running <>.not_equal: 42 43 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1566029136] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1567382481] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1569667323] Running <>.equal: 42 42 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1570890615] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1572255762] Expected: Should print: 0 +[Hera] [HADES][INFO ] [KRELTSC: 1573088937] L8[TABLE]: Config 28 → 29 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1575631995] Running <>.zero_equal: 0 0 <> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1576816668] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1578153822] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1580386059] Running <>.negative: -42 42 <> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1581556032] Test passed +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1582900137] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1585177860] Running <>.empty_stack: <> +[Hera] [HADES][ERROR] [KRELTSC: 1586002887] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1586737572] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1588193061] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1589107401] Running <>.one_item: 42 <> +[Hera] [HADES][ERROR] [KRELTSC: 1589933499] <>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1590661170] Expected error occurred +[Hera] [HADES][TEST ] Testing <> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1592130834] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1593028521] <>: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1593971820] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1595059074] Testing word: < +[Hera] [HADES][TEST ] [KRELTSC: 1595760684] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1596527310] Running <.less_than: 5 7 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1597836429] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1599166149] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1601464221] Running <.greater_than: 7 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1602675711] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1604027208] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1606281264] Running <.equal: 5 5 < . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1607390337] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1608733686] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1610979111] Running <.negative_positive: -5 5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1612204251] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1613531199] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1615798842] Running <.negative_negative: -7 -5 < . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1617051933] Test passed +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1618408953] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1620705429] Running <.empty_stack: < +[Hera] [HADES][ERROR] [KRELTSC: 1621519305] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1622260248] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1623880104] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1624780689] Running <.one_item: 42 < +[Hera] [HADES][ERROR] [KRELTSC: 1625576001] <: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1626308250] Expected error occurred +[Hera] [HADES][TEST ] Testing < ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1627789317] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1628737320] <: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1629653613] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1630764975] Testing word: > +[Hera] [HADES][TEST ] [KRELTSC: 1631493297] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1632288189] Running >.greater_than: 7 5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1633582608] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1634714340] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1636003320] L8[TABLE]: Config 29 → 30 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1638006069] Running >.less_than: 5 7 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1639275099] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1640649738] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1642878510] Running >.equal: 5 5 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1643968515] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1645322112] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1647554643] Running >.positive_negative: 5 -5 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1648758552] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1650055701] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1652355642] Running >.negative_negative: -5 -7 > . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1653577737] Test passed +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1654912266] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1657232388] Running >.empty_stack: > +[Hera] [HADES][ERROR] [KRELTSC: 1658062182] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1658795019] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1660227387] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1661147733] Running >.one_item: 42 > +[Hera] [HADES][ERROR] [KRELTSC: 1661929332] >: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1662667839] Expected error occurred +[Hera] [HADES][TEST ] Testing > ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1664089728] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1664999448] >: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1665914271] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1666997871] Testing word: 0= +[Hera] [HADES][TEST ] [KRELTSC: 1667697108] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1668460311] Running 0=.zero: 0 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1669684296] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1670987556] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1673338716] Running 0=.positive: 42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1674511041] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1675886163] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1678140051] Running 0=.negative: -42 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1679302128] Test passed +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1680605556] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1682952978] Running 0=.empty_stack: 0= +[Hera] [HADES][ERROR] [KRELTSC: 1683826515] 0=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1684583628] Expected error occurred +[Hera] [HADES][TEST ] Testing 0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1686047286] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1686970194] 0=: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1687895790] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1688987706] Testing word: 0< +[Hera] [HADES][TEST ] [KRELTSC: 1689731295] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1690513335] Running 0<.negative: -42 0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1691821425] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1693184451] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1695463791] Running 0<.zero: 0 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1696648632] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1698007227] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1700105883] L8[TABLE]: Config 30 → 31 regime=2 score=6553 L1=0 L2=0 L3=1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1701530607] Running 0<.positive: 42 0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1702694532] Test passed +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1704043866] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1706309094] Running 0<.empty_stack: 0< +[Hera] [HADES][ERROR] [KRELTSC: 1707153021] 0<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1707926619] Expected error occurred +[Hera] [HADES][TEST ] Testing 0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1709375073] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1710306801] 0<: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1711249806] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1712359278] Testing word: 0> +[Hera] [HADES][TEST ] [KRELTSC: 1713085248] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1713856704] Running 0>.positive: 42 0> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1715131929] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1716511860] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1718794665] Running 0>.zero: 0 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1719935826] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1721324640] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1723578255] Running 0>.negative: -42 0> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1724748459] Test passed +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1726111548] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1728356280] Running 0>.empty_stack: 0> +[Hera] [HADES][ERROR] [KRELTSC: 1729226520] 0>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1729996044] Expected error occurred +[Hera] [HADES][TEST ] Testing 0> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1731452373] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1732384479] 0>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1733449641] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1734765795] Testing word: 0<> +[Hera] [HADES][TEST ] [KRELTSC: 1735599789] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1736389872] Running 0<>.nonzero_pos: 42 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1737817116] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1739212440] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1741484262] Running 0<>.nonzero_neg: -1 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1742687079] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1744033557] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1746328584] Running 0<>.zero: 0 0<> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1747450488] Test passed +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1748810448] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1751017002] Running 0<>.empty_stack: 0<> +[Hera] [HADES][ERROR] [KRELTSC: 1751861937] 0<>: stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1752631608] Expected error occurred +[Hera] [HADES][TEST ] Testing 0<> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1754067882] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1754961915] 0<>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1755866889] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1756952085] Testing word: U< +[Hera] [HADES][TEST ] [KRELTSC: 1757640969] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1758404193] Running U<.less: 3 5 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1759654344] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1761004329] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1763312901] Running U<.equal: 5 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1764475419] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1765843023] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1768113648] Running U<.greater: 7 5 U< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1769268375] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1770580665] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1772347584] L8[TABLE]: Config 31 → 32 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1774039743] Running U<.zero_one: 0 1 U< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1775226852] Test passed +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1776584880] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1778903595] Running U<.empty_stack: U< +[Hera] [HADES][ERROR] [KRELTSC: 1779792168] U<: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1780547727] Expected error occurred +[Hera] [HADES][TEST ] Testing U< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1782002565] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1782919152] U<: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1783883871] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1784972721] Testing word: U> +[Hera] [HADES][TEST ] [KRELTSC: 1785699552] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1786496586] Running U>.greater: 5 3 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1787787771] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1789141347] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1791461763] Running U>.equal: 5 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1792656579] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1794046527] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1796373306] Running U>.less: 3 5 U> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1797509175] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1798880034] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1801191000] Running U>.one_zero: 1 0 U> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1802354148] Test passed +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1803738090] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1806070980] Running U>.empty_stack: U> +[Hera] [HADES][ERROR] [KRELTSC: 1806935697] U>: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1807699236] Expected error occurred +[Hera] [HADES][TEST ] Testing U> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1809142335] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1810073076] U>: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1811019378] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1812102390] Testing word: WITHIN +[Hera] [HADES][TEST ] [KRELTSC: 1812886971] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1813681590] Running WITHIN.in_range: 3 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1815065700] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1816470516] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1818873210] Running WITHIN.at_low: 1 1 5 WITHIN . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1820108682] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1821516942] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1823841936] Running WITHIN.at_high: 5 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1825146456] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1826543124] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1828287678] L8[TABLE]: Config 32 → 33 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1830030951] Running WITHIN.below: 0 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1831239984] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1832636715] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1834923846] Running WITHIN.above: 6 1 5 WITHIN . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1836168159] Test passed +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1837541895] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1839856347] Running WITHIN.empty_stack: WITHIN +[Hera] [HADES][ERROR] [KRELTSC: 1840769553] WITHIN: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1841569569] Expected error occurred +[Hera] [HADES][TEST ] Testing WITHIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1843058742] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1843997421] WITHIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1844961594] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1846045446] Testing word: TRUE +[Hera] [HADES][TEST ] [KRELTSC: 1846806801] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1847569122] Running TRUE.value: TRUE . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1848767172] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1850094834] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1852382679] Running TRUE.as_flag: TRUE 0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1853600154] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1854940626] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1857193233] Running TRUE.in_and: TRUE TRUE AND . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1858415370] Test passed +[Hera] [HADES][TEST ] Testing TRUE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1859752482] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1862092470] TRUE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1863015378] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1864120902] Testing word: FALSE +[Hera] [HADES][TEST ] [KRELTSC: 1864850694] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1865645817] Running FALSE.value: FALSE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1866843069] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1868252820] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1870521114] Running FALSE.as_flag: FALSE 0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1871718870] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1873113648] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1875452481] Running FALSE.in_or: TRUE FALSE OR . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1876706580] Test passed +[Hera] [HADES][TEST ] Testing FALSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1878103458] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1880476290] FALSE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1881451110] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1882558524] Testing word: >= +[Hera] [HADES][TEST ] [KRELTSC: 1883296065] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1884083880] Running >=.less: 3 5 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1885357971] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1886763732] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 1888794369] L8[TABLE]: Config 33 → 34 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1890207732] Running >=.greater: 5 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1891418739] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1892771244] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1895094873] Running >=.equal: 3 3 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1896209637] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1897580139] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1899889761] Running >=.negative: -1 0 >= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1901083464] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1902477486] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1904754537] Running >=.neg_neg: -1 -2 >= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1905949647] Test passed +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1907296314] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1909611921] Running >=.underflow: >= +[Hera] [HADES][ERROR] [KRELTSC: 1910428758] >=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1911219933] Expected error occurred +[Hera] [HADES][TEST ] Testing >= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1912656081] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1913593920] >=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1914542406] ▶ Testing module: src/test_runner/modules/logical_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 1915627455] Testing word: <= +[Hera] [HADES][TEST ] [KRELTSC: 1916353866] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1917148716] Running <=.less: 3 5 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1918415646] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1919786379] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1922064522] Running <=.greater: 5 3 <= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1923270195] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1924587189] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1926841560] Running <=.equal: 3 3 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1927978542] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1929346461] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1931652765] Running <=.negative: -1 0 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1932817194] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1934187171] Expected: Should print: -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1936961313] Running <=.neg_neg: -2 -1 <= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1938423669] Test passed +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1939782432] Expected: Should print: -1 +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 1940999508] L8[TABLE]: Config 34 → 35 regime=2 score=52428 L1=0 L2=1 L3=0 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 1943350878] Running <=.underflow: <= +[Hera] [HADES][ERROR] [KRELTSC: 1944212466] <=: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1945004145] Expected error occurred +[Hera] [HADES][TEST ] Testing <= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1946429184] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1947375444] <=: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1948342347] === Logical Words Summary: 0 passed, 0 failed, 0 skipped, 0 err +[Hera] [HADES][INFO ] [KRELTSC: 1949438211] +[Hera] === Testing Module: Mixed Arithmetic Words === +[Hera] [HADES][INFO ] [KRELTSC: 1950661944] Running Mixed Arithmetic Words Tests (Module 7)... +[Hera] [HADES][TEST ] [KRELTSC: 1951703691] ▶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 1952832042] Testing word: */ +[Hera] [HADES][TEST ] [KRELTSC: 1953565404] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1954407777] Running */.basic: 6 7 4 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1955758917] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1957088616] Expected: Should print: 10 (6*7/4) +[Hera] [HADES][TEST ] [KRELTSC: 1958035380] Running */.exact_division: 12 5 3 */ . CR +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 1959273309] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1960684740] Expected: Should print: 20 (12*5/3) +[Hera] [HADES][TEST ] [KRELTSC: 1961574552] Running */.zero_multiply: 0 999 123 */ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 1962868614] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1964249721] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 1965064395] Running */.by_one: 42 5 1 */ . CR +[Hera] 210 +[Hera] [HADES][TEST ] [KRELTSC: 1966300917] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1967662032] Expected: Should print: 210 (42*5/1) +[Hera] [HADES][TEST ] [KRELTSC: 1968591534] Running */.truncation: 7 3 2 */ . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 1970201646] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1971837441] Expected: Should print: 10 (21/2 truncated) +[Hera] [HADES][TEST ] [KRELTSC: 1972794894] Running */.negative_multiply: -6 7 4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1974149373] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1975539468] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1976410254] Running */.negative_divisor: 6 7 -4 */ . CR +[Hera] -10 +[Hera] [HADES][TEST ] [KRELTSC: 1977742158] Test passed +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1979125449] Expected: Should print: -10 +[Hera] [HADES][TEST ] [KRELTSC: 1979970720] Running */.div_by_zero: 6 7 0 */ +[Hera] [HADES][ERROR] [KRELTSC: 1980978006] */: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1981755552] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1983208206] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 1984147914] Running */.empty_stack: */ +[Hera] [HADES][ERROR] [KRELTSC: 1985034324] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1985789442] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1987287036] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1988239281] Running */.two_items: 1 2 */ +[Hera] [HADES][ERROR] [KRELTSC: 1989136779] */: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1989891435] Expected error occurred +[Hera] [HADES][TEST ] Testing */ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1991385711] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 1992387243] */: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 1993440309] ▶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 1994522439] Testing word: */MOD +[Hera] [HADES][TEST ] [KRELTSC: 1995272748] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 1996068921] Running */MOD.basic: 17 3 5 */MOD . . CR +[Hera] 10 1 +[Hera] [HADES][TEST ] [KRELTSC: 1997522772] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 1998908121] Expected: Should print: 1 10 (51/5 = 10 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 1999915596] Running */MOD.exact_division: 15 4 3 */MOD . . CR +[Hera] 20 0 +[Hera] [HADES][TEST ] [KRELTSC: 2001278055] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2002669704] Expected: Should print: 0 20 (60/3 = 20 rem 0) +[Hera] [HADES][TEST ] [KRELTSC: 2003666637] Running */MOD.zero_multiply: 0 999 123 */MOD . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2005038189] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2006409909] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2007265911] Running */MOD.by_one: 42 5 1 */MOD . . CR +[Hera] 210 0 +[Hera] [HADES][TEST ] [KRELTSC: 2008585341] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2009983584] Expected: Should print: 0 210 +[Hera] [HADES][TEST ] [KRELTSC: 2010846747] Running */MOD.remainder: 7 8 5 */MOD . . CR +[Hera] 11 1 +[Hera] [HADES][TEST ] [KRELTSC: 2012180814] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2013572274] Expected: Should print: 1 11 (56/5 = 11 rem 1) +[Hera] [HADES][TEST ] [KRELTSC: 2014562130] Running */MOD.negative: -7 3 4 */MOD . . CR +[Hera] -5 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2015899662] Test passed +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2017262394] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2018127027] Running */MOD.div_by_zero: 6 7 0 */MOD +[Hera] [HADES][ERROR] [KRELTSC: 2019124947] */MOD: Division by zero +[Hera] [HADES][TEST ] [KRELTSC: 2019915807] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2021406324] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 2022344100] Running */MOD.empty_stack: */MOD +[Hera] [HADES][ERROR] [KRELTSC: 2023286412] */MOD: Stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2024071392] Expected error occurred +[Hera] [HADES][TEST ] Testing */MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2025537549] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2026578477] */MOD: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2027535783] ▶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 2028644499] Testing word: M+ +[Hera] [HADES][TEST ] [KRELTSC: 2029386660] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2030192115] Running M+.basic: 0 100 200 M+ . . CR +[Hera] 300 0 +[Hera] [HADES][TEST ] [KRELTSC: 2031629649] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2033002020] Expected: Should print: 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2033896410] Running M+.overflow: 0 2147483647 1 M+ . . CR +[Hera] 2147483648 0 +[Hera] [HADES][TEST ] [KRELTSC: 2035289109] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2036645709] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 2037554736] Running M+.negative: 0 -100 50 M+ . . CR +[Hera] -50 0 +[Hera] [HADES][TEST ] [KRELTSC: 2038844997] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2040212496] Expected: Should print: 50 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2041094601] Running M+.zero_add: 0 42 0 M+ . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 2042331921] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2043724830] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 2044587636] Running M+.both_negative: 0 -100 -200 M+ . . CR +[Hera] -300 0 +[Hera] [HADES][TEST ] [KRELTSC: 2045960574] Test passed +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2047317510] Expected: Should print: -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2048192202] Running M+.empty_stack: M+ +[Hera] [HADES][TEST ] [KRELTSC: 2049072018] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2050555983] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2051483616] Running M+.one_item: 42 M+ +[Hera] [HADES][TEST ] [KRELTSC: 2052334977] Expected error occurred +[Hera] [HADES][TEST ] Testing M+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2053781541] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2054730678] M+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2055672003] ▶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 2056779480] Testing word: M* +[Hera] [HADES][TEST ] [KRELTSC: 2057497512] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2058281820] Running M*.basic: 123 456 M* . . CR +[Hera] 0 56088 +[Hera] [HADES][TEST ] [KRELTSC: 2059611981] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2060944053] Expected: Should print: 56088 0 +[Hera] [HADES][TEST ] [KRELTSC: 2061807447] Running M*.by_zero: 999 0 M* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2063014128] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2064370266] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2065207200] Running M*.by_one: 42 1 M* . . CR +[Hera] 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 2066417388] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2067790263] Expected: Should print: 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 2068658214] Running M*.negative: -123 456 M* . . CR +[Hera] -1 -56088 +[Hera] [HADES][TEST ] [KRELTSC: 2069957001] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2071342686] Expected: Should print: -56088 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2072203329] Running M*.large_multiply: 65536 65536 M* . . CR +[Hera] 0 4294967296 +[Hera] [HADES][TEST ] [KRELTSC: 2073630846] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2075011953] Expected: Should handle large result +[Hera] [HADES][TEST ] [KRELTSC: 2075928561] Running M*.both_negative: -100 -200 M* . . CR +[Hera] 0 20000 +[Hera] [HADES][TEST ] [KRELTSC: 2077264665] Test passed +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2078626326] Expected: Should print: 20000 0 +[Hera] [HADES][TEST ] [KRELTSC: 2079514941] Running M*.empty_stack: M* +[Hera] [HADES][TEST ] [KRELTSC: 2080366386] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2081815575] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2082727647] Running M*.one_item: 42 M* +[Hera] [HADES][TEST ] [KRELTSC: 2083581717] Expected error occurred +[Hera] [HADES][TEST ] Testing M* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2085069252] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2086001757] M*: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2086943586] ▶ Testing module: src/test_runner/modules/mixed_arithmetic_wo +[Hera] [HADES][TEST ] [KRELTSC: 2088064818] Testing word: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2088825774] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2089616613] Running M/MOD.basic: 0 1000 100 M/MOD . . CR +[Hera] 10 0 +[Hera] [HADES][TEST ] [KRELTSC: 2091257826] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2092646703] Expected: Should print: 0 10 (1000/100) +[Hera] [HADES][TEST ] [KRELTSC: 2093581623] Running M/MOD.with_remainder: 0 1234 100 M/MOD . . CR +[Hera] 12 34 +[Hera] [HADES][TEST ] [KRELTSC: 2094966006] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2096341716] Expected: Should handle remainder +[Hera] [HADES][TEST ] [KRELTSC: 2097245745] Running M/MOD.double_dividend: 5001 0 10 M/MOD . . CR +[Hera] 1844674407370955161 6 +[Hera] [HADES][TEST ] [KRELTSC: 2098749177] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2100154203] Expected: Should print: 1 500 (5001/10) +[Hera] [HADES][TEST ] [KRELTSC: 2101104453] Running M/MOD.by_one: 0 42 1 M/MOD . . CR +[Hera] 42 0 +[Hera] [HADES][TEST ] [KRELTSC: 2102399796] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2103805977] Expected: Should print: 0 42 +[Hera] [HADES][TEST ] [KRELTSC: 2104673697] Running M/MOD.negative_dividend: -1 1000 100 M/MOD . . CR +[Hera] -184467440737095506 -16 +[Hera] [HADES][TEST ] [KRELTSC: 2106344331] Test passed +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2107837767] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2108714790] Running M/MOD.div_by_zero: 0 100 0 M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2109739653] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2111214147] Expected: Should cause division by zero +[Hera] [HADES][TEST ] [KRELTSC: 2112134283] Running M/MOD.empty_stack: M/MOD +[Hera] [HADES][TEST ] [KRELTSC: 2113047510] Expected error occurred +[Hera] [HADES][TEST ] Testing M/MOD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2114507031] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2115459276] M/MOD: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2116440333] === Mixed Arithmetic Words Summary: 0 passed, 0 failed, 0 skipp +[Hera] [HADES][INFO ] [KRELTSC: 2117521497] +[Hera] === Testing Module: Double Words === +[Hera] [HADES][INFO ] [KRELTSC: 2118670155] Running Double Number Words Tests (Module 6)... +[Hera] [HADES][TEST ] [KRELTSC: 2119716900] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2120824734] Testing word: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2121583905] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2122365210] Running 2DROP.basic: 1 2 3 4 2DROP . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 2123709063] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2125059069] Expected: Should print: 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 2125893021] Running 2DROP.zeros: 0 0 42 99 2DROP . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2127150816] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2128515963] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2129349369] Running 2DROP.negative: -1 -2 100 200 2DROP . . CR +[Hera] -2 -1 +[Hera] [HADES][INFO ] [KRELTSC: 2143831725] L8[TABLE]: Config 35 → 36 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 2144756166] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2145928869] Expected: Should print: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2146666284] Running 2DROP.exact_four: 10 20 30 40 2DROP DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2147772816] Test passed +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2148787095] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 2149636335] Running 2DROP.empty_stack: 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2150529717] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2152172925] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2153196969] Running 2DROP.one_item: 42 2DROP +[Hera] [HADES][TEST ] [KRELTSC: 2154180651] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DROP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2155743807] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2156793996] 2DROP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2157894123] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2159066343] Testing word: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2159808483] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2160587688] Running 2DUP.basic: 100 200 2DUP . . . . CR +[Hera] 200 100 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2162095698] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2163495642] Expected: Should print: 100 200 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2164429743] Running 2DUP.zeros: 0 0 2DUP . . . . CR +[Hera] 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2165752827] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2167152414] Expected: Should print: 0 0 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2168020344] Running 2DUP.negative: -100 -200 2DUP . . . . CR +[Hera] -200 -100 -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2169502692] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2170880229] Expected: Should duplicate negatives +[Hera] [HADES][TEST ] [KRELTSC: 2171822121] Running 2DUP.depth_check: 10 20 2DUP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 2173104759] Test passed +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2174509659] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 2175284517] Running 2DUP.empty_stack: 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2176213431] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2177692503] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2178609531] Running 2DUP.one_item: 42 2DUP +[Hera] [HADES][TEST ] [KRELTSC: 2179473975] Expected error occurred +[Hera] [HADES][TEST ] Testing 2DUP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2180941770] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2181875997] 2DUP: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2182807914] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2183904786] Testing word: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2184648753] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2185445892] Running 2OVER.basic: 10 20 30 40 2OVER . . . . . . CR +[Hera] 20 10 40 30 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2187026688] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2188404057] Expected: Should print: 10 20 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2189363442] Running 2OVER.zeros: 0 0 99 88 2OVER . . . . . . CR +[Hera] 0 0 88 99 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2190802383] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2192179122] Expected: Should print: 0 0 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2193117633] Running 2OVER.mixed: -1 2 -3 4 2OVER . . . . . . CR +[Hera] 2 -1 4 -3 2 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2194584336] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2195975796] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2196898158] Running 2OVER.depth_check: 1 2 3 4 2OVER DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 2198236929] Test passed +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2199630804] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 2200433949] Running 2OVER.three_items: 1 2 3 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2201434368] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2202952479] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2203906404] Running 2OVER.empty_stack: 2OVER +[Hera] [HADES][TEST ] [KRELTSC: 2204791659] Expected error occurred +[Hera] [HADES][TEST ] Testing 2OVER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2206590246] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2207706480] 2OVER: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2208673761] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2209780608] Testing word: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2210535978] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2211334839] Running 2SWAP.basic: 10 20 30 40 2SWAP . . . . CR +[Hera] 20 10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2213006208] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2214408399] Expected: Should print: 30 40 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2215341198] Running 2SWAP.zeros: 0 0 99 88 2SWAP . . . . CR +[Hera] 0 0 88 99 +[Hera] [HADES][TEST ] [KRELTSC: 2216692128] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2218098582] Expected: Should print: 99 88 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2218993791] Running 2SWAP.same_pairs: 42 42 42 42 2SWAP . . . . CR +[Hera] 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 2220457071] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2221848237] Expected: Should print: 42 42 42 42 +[Hera] [HADES][TEST ] [KRELTSC: 2222775030] Running 2SWAP.negative: -10 -20 30 40 2SWAP . . . . CR +[Hera] -20 -10 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2224247991] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2225624793] Expected: Should print: 30 40 -10 -20 +[Hera] [HADES][TEST ] [KRELTSC: 2226569898] Running 2SWAP.depth_check: 1 2 3 4 2SWAP DEPTH . CR +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 2227912890] Test passed +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2229293703] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 2230128516] Running 2SWAP.three_items: 1 2 3 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2231098422] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2232609120] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2233563318] Running 2SWAP.empty_stack: 2SWAP +[Hera] [HADES][TEST ] [KRELTSC: 2234446515] Expected error occurred +[Hera] [HADES][TEST ] Testing 2SWAP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2235918573] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2236842195] 2SWAP: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2237796540] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2238927495] Testing word: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2239662201] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2240459718] Running 2ROT.basic: 10 20 30 40 50 60 2ROT . . . . . . CR +[Hera] 20 10 60 50 40 30 +[Hera] [HADES][TEST ] [KRELTSC: 2242199274] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2243613120] Expected: Should print: 30 40 50 60 10 20 +[Hera] [HADES][TEST ] [KRELTSC: 2244573009] Running 2ROT.zeros: 0 0 1 1 2 2 2ROT . . . . . . CR +[Hera] 0 0 2 2 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 2246035680] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2247422415] Expected: Should rotate with zeros +[Hera] [HADES][TEST ] [KRELTSC: 2248322307] Running 2ROT.negative: -1 -2 3 4 -5 -6 2ROT . . . . . . CR +[Hera] -2 -1 -6 -5 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2249863728] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2251255062] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2252152812] Running 2ROT.depth_check: 1 2 3 4 5 6 2ROT DEPTH . CR +[Hera] 6 +[Hera] [HADES][TEST ] [KRELTSC: 2253510126] Test passed +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2254886928] Expected: Should print: 6 +[Hera] [HADES][TEST ] [KRELTSC: 2255733144] Running 2ROT.five_items: 1 2 3 4 5 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2256776004] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2258272758] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2259190500] Running 2ROT.empty_stack: 2ROT +[Hera] [HADES][TEST ] [KRELTSC: 2260071282] Expected error occurred +[Hera] [HADES][TEST ] Testing 2ROT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2261523348] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2262478323] 2ROT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2263436385] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2264558142] Testing word: D+ +[Hera] [HADES][TEST ] [KRELTSC: 2265279198] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2266085115] Running D+.basic: 100 200 300 400 D+ . . CR +[Hera] 600 400 +[Hera] [HADES][TEST ] [KRELTSC: 2267552679] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2268937104] Expected: Should print: 400 600 +[Hera] [HADES][TEST ] [KRELTSC: 2269834434] Running D+.zero_add: 42 99 0 0 D+ . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2271107769] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2272501854] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2273345382] Running D+.negative: -100 -200 50 75 D+ . . CR +[Hera] -125 -50 +[Hera] [HADES][TEST ] [KRELTSC: 2274712881] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2276086575] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2276984325] Running D+.carry: 2147483647 0 1 0 D+ . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2278339098] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2279714115] Expected: Should handle carry +[Hera] [HADES][TEST ] [KRELTSC: 2280588009] Running D+.both_negative: -100 -200 -300 -400 D+ . . CR +[Hera] -599 -400 +[Hera] [HADES][TEST ] [KRELTSC: 2282025543] Test passed +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2283395037] Expected: Should add negatives +[Hera] [HADES][TEST ] [KRELTSC: 2284270023] Running D+.three_items: 1 2 3 D+ +[Hera] [HADES][TEST ] [KRELTSC: 2285180625] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2286649827] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2287559064] Running D+.empty_stack: D+ +[Hera] [HADES][TEST ] [KRELTSC: 2288375355] Expected error occurred +[Hera] [HADES][TEST ] Testing D+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2289664986] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2290442952] D+: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2291212497] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2292262077] Testing word: D- +[Hera] [HADES][TEST ] [KRELTSC: 2293034814] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2293879518] Running D-.basic: 500 600 100 200 D- . . CR +[Hera] 400 [HADES][INFO ] [KRELTSC: 2295415143] L8[TABLE]: Config 36 → 37 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] 400 +[Hera] [HADES][TEST ] [KRELTSC: 2296659624] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2298039891] Expected: Should print: 400 400 +[Hera] [HADES][TEST ] [KRELTSC: 2298909816] Running D-.zero_sub: 42 99 0 0 D- . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2300208939] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2301603150] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2302467342] Running D-.from_zero: 0 0 100 200 D- . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2303815164] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2305163343] Expected: Should print: -100 -200 +[Hera] [HADES][TEST ] [KRELTSC: 2306086293] Running D-.negative: 100 200 -50 -75 D- . . CR +[Hera] 274 150 +[Hera] [HADES][TEST ] [KRELTSC: 2307435690] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2308820598] Expected: Should handle negatives +[Hera] [HADES][TEST ] [KRELTSC: 2309702913] Running D-.borrow: 0 0 1 0 D- . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2310967071] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2312307816] Expected: Should handle borrow +[Hera] [HADES][TEST ] [KRELTSC: 2313153927] Running D-.same_values: 100 200 100 200 D- . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2314529154] Test passed +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2315927040] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2316769035] Running D-.three_items: 1 2 3 D- +[Hera] [HADES][TEST ] [KRELTSC: 2318180319] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2319642024] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2320597629] Running D-.empty_stack: D- +[Hera] [HADES][TEST ] [KRELTSC: 2321478810] Expected error occurred +[Hera] [HADES][TEST ] Testing D- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2322924639] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2323856955] D-: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2324803551] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2325882930] Testing word: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2326637355] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2327410890] Running DNEGATE.positive: 100 200 DNEGATE . . CR +[Hera] -201 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2328977826] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2330403621] Expected: Should negate positive double +[Hera] [HADES][TEST ] [KRELTSC: 2331348264] Running DNEGATE.negative: -100 -200 DNEGATE . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 2332732794] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2334155628] Expected: Should negate negative double +[Hera] [HADES][TEST ] [KRELTSC: 2335102203] Running DNEGATE.zero: 0 0 DNEGATE . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2336352186] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2337761118] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2338586229] Running DNEGATE.max_positive: 2147483647 0 DNEGATE . . CR +[Hera] -1 -2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2340130506] Test passed +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2341530051] Expected: Should negate max positive +[Hera] [HADES][TEST ] [KRELTSC: 2342449704] Running DNEGATE.one_item: 42 DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2343392562] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2344889988] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2345848890] Running DNEGATE.empty_stack: DNEGATE +[Hera] [HADES][TEST ] [KRELTSC: 2346767388] Expected error occurred +[Hera] [HADES][TEST ] Testing DNEGATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2348280018] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2349235329] DNEGATE: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2350243728] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2351350218] Testing word: DABS +[Hera] [HADES][TEST ] [KRELTSC: 2352097461] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2352889707] Running DABS.positive: 100 200 DABS . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2354264220] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2355633399] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2356515987] Running DABS.negative: -100 -200 DABS . . CR +[Hera] 199 100 +[Hera] [HADES][TEST ] [KRELTSC: 2357878551] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2359253673] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2360102892] Running DABS.zero: 0 0 DABS . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2361300060] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2362671717] Expected: Should print: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2363528097] Running DABS.mixed_sign: 100 -1 DABS . . CR +[Hera] 0 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2364836754] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2366262318] Expected: Should handle mixed sign +[Hera] [HADES][TEST ] [KRELTSC: 2367134007] Running DABS.min_double: -2147483648 -1 DABS . . CR +[Hera] 0 2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2368545711] Test passed +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2369900967] Expected: Should handle min double +[Hera] [HADES][TEST ] [KRELTSC: 2370792480] Running DABS.one_item: 42 DABS +[Hera] [HADES][TEST ] [KRELTSC: 2371736052] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2373208068] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2374161636] Running DABS.empty_stack: DABS +[Hera] [HADES][TEST ] [KRELTSC: 2375060877] Expected error occurred +[Hera] [HADES][TEST ] Testing DABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2376507231] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2377445385] DABS: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2378392065] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2379477345] Testing word: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2380221228] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2381031786] Running DMIN.basic: 100 200 300 400 DMIN . . CR +[Hera] 200 100 +[Hera] [HADES][TEST ] [KRELTSC: 2382504705] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2383906518] Expected: Should print: 100 200 +[Hera] [HADES][TEST ] [KRELTSC: 2384773692] Running DMIN.equal: 42 99 42 99 DMIN . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2386148982] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2387511252] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2388373680] Running DMIN.negative: -100 -200 -50 -75 DMIN . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2389791369] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2391158427] Expected: Should find min negative +[Hera] [HADES][TEST ] [KRELTSC: 2392082406] Running DMIN.mixed: -100 -1 100 0 DMIN . . CR +[Hera] -1 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2393405448] Test passed +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2394777378] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2395716876] Running DMIN.three_items: 1 2 3 DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2396678571] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2398167639] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2399091219] Running DMIN.empty_stack: DMIN +[Hera] [HADES][TEST ] [KRELTSC: 2399965512] Expected error occurred +[Hera] [HADES][TEST ] Testing DMIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2401395255] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2402325219] DMIN: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2403262638] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2404356864] Testing word: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2405091003] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2405895072] Running DMAX.basic: 100 200 300 400 DMAX . . CR +[Hera] 400 300 +[Hera] [HADES][TEST ] [KRELTSC: 2407450983] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2408849415] Expected: Should print: 300 400 +[Hera] [HADES][TEST ] [KRELTSC: 2409734544] Running DMAX.equal: 42 99 42 99 DMAX . . CR +[Hera] 99 42 +[Hera] [HADES][TEST ] [KRELTSC: 2411122140] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2412486951] Expected: Should print: 42 99 +[Hera] [HADES][TEST ] [KRELTSC: 2413354461] Running DMAX.negative: -300 -400 -100 -200 DMAX . . CR +[Hera] -200 -100 +[Hera] [HADES][TEST ] [KRELTSC: 2414802894] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2416186605] Expected: Should find max negative +[Hera] [HADES][TEST ] [KRELTSC: 2417096367] Running DMAX.mixed: -100 -1 100 0 DMAX . . CR +[Hera] 0 100 +[Hera] [HADES][TEST ] [KRELTSC: 2418400971] Test passed +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2419764858] Expected: Should handle mixed signs +[Hera] [HADES][TEST ] [KRELTSC: 2420692428] Running DMAX.three_items: 1 2 3 DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2421627642] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2423104845] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2424043104] Running DMAX.empty_stack: DMAX +[Hera] [HADES][TEST ] [KRELTSC: 2424916935] Expected error occurred +[Hera] [HADES][TEST ] Testing DMAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2426360643] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2427292770] DMAX: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2428248459] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2429376558] Testing word: D= +[Hera] [HADES][TEST ] [KRELTSC: 2430116472] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2430913989] Running D=.equal: 100 200 100 200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2432302845] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2433673242] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2434486761] Running D=.not_equal_low: 100 200 101 200 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2435820387] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2437172409] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2438003190] Running D=.not_equal_high: 100 200 100 201 D= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2439295992] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2440667628] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2441656917] Running D=.zero_equal: 0 0 0 0 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2443270200] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2444661660] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2445510984] Running D=.negative_equal: -100 -200 -100 -200 D= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2446875753] Test passed +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2448253584] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2449083126] Running D=.three_items: 1 2 3 D= +[Hera] [HADES][TEST ] [KRELTSC: 2450065548] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2451473178] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2452392012] Running D=.empty_stack: D= +[Hera] [HADES][TEST ] [KRELTSC: 2453187576] Expected error occurred +[Hera] [HADES][TEST ] Testing D= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2454643779] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2455544112] D=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2456469834] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2457529221] Testing word: D< +[Hera] [HADES][TEST ] [KRELTSC: 2458235514] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2459017281] Running D<.less_than: 100 200 300 400 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2460415797] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2461778949] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2462592405] Running D<.greater_than: 300 400 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2463919206] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2465245608] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2466052533] Running D<.equal: 100 200 100 200 D< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2467335129] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2468621946] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2469422655] Running D<.negative_positive: -100 -1 100 0 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2470700085] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2471997801] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2472801618] Running D<.negative_negative: -300 -1 -100 -1 D< . CR +[Hera] -1 +[Hera] [HADES][INFO ] [KRELTSC: 2474220168] L8[TABLE]: Config 37 → 38 regime=2 score=26214 L1=0 L2=1 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 2475368448] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2476710810] Expected: Should compare negatives +[Hera] [HADES][TEST ] [KRELTSC: 2477595582] Running D<.high_word_diff: 100 200 100 300 D< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2478888909] Test passed +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2480251746] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2481095988] Running D<.three_items: 1 2 3 D< +[Hera] [HADES][TEST ] [KRELTSC: 2482018539] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2483461743] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2484385260] Running D<.empty_stack: D< +[Hera] [HADES][TEST ] [KRELTSC: 2485218414] Expected error occurred +[Hera] [HADES][TEST ] Testing D< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2486700741] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2487764643] D<: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2488701642] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2489809161] Testing word: D0= +[Hera] [HADES][TEST ] [KRELTSC: 2490545253] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2491341174] Running D0=.zero: 0 0 D0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2492610309] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2494005171] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2494849581] Running D0=.positive: 100 200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2496074700] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2497441023] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2498253996] Running D0=.negative: -100 -200 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2499489762] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2500918182] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2501743230] Running D0=.zero_high: 0 100 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2502965367] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2504333748] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2505175344] Running D0=.zero_low: 100 0 D0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2506391664] Test passed +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2507773653] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2508616677] Running D0=.one_item: 42 D0= +[Hera] [HADES][TEST ] [KRELTSC: 2509510731] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2510977371] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2511901665] Running D0=.empty_stack: D0= +[Hera] [HADES][TEST ] [KRELTSC: 2512736142] Expected error occurred +[Hera] [HADES][TEST ] Testing D0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2514195285] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2515146249] D0=: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2516085369] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2517199209] Testing word: D0< +[Hera] [HADES][TEST ] [KRELTSC: 2517919971] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2518713813] Running D0<.negative: -100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2520045444] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2521417983] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2522239146] Running D0<.zero: 0 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2523392886] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2524753287] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2525608785] Running D0<.positive: 100 0 D0< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2526826239] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2528196216] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2529045204] Running D0<.negative_high_only: 100 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2530347855] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2531713590] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2532559197] Running D0<.large_negative: -1 -1 D0< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2533816656] Test passed +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2535208431] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 2536061283] Running D0<.one_item: 42 D0< +[Hera] [HADES][TEST ] [KRELTSC: 2536948806] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2538426681] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2539370568] Running D0<.empty_stack: D0< +[Hera] [HADES][TEST ] [KRELTSC: 2540231001] Expected error occurred +[Hera] [HADES][TEST ] Testing D0< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2541709716] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2542729266] D0<: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2543827587] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2544980487] Testing word: S>D +[Hera] [HADES][TEST ] [KRELTSC: 2545718259] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2546526402] Running S>D.positive: 5 S>D . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2547943146] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2549321208] Expected: Should sign-extend positive: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2550307095] Running S>D.negative: -5 S>D . . CR +[Hera] -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 2551560795] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2552918739] Expected: Should sign-extend negative: -1 -5 +[Hera] [HADES][TEST ] [KRELTSC: 2553896247] Running S>D.zero: 0 S>D . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2555092533] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2556458415] Expected: Should sign-extend zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2557404738] Running S>D.max_int: 2147483647 S>D . . CR +[Hera] 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2558746008] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2560117560] Expected: Should extend max int: 0 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 2561119512] Running S>D.min_int: -2147483648 S>D . . CR +[Hera] -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2562460005] Test passed +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2563830633] Expected: Should extend min int: -1 -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 2564829540] Running S>D.empty_stack: S>D +[Hera] [HADES][TEST ] [KRELTSC: 2565727983] Expected error occurred +[Hera] [HADES][TEST ] Testing S>D ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2567195043] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2568135024] S>D: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2569080192] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2570161020] Testing word: D2* +[Hera] [HADES][TEST ] [KRELTSC: 2570892597] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2571688812] Running D2*.basic: 5 0 D2* . . CR +[Hera] 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 2573030523] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2574403482] Expected: Should double 5: 0 10 +[Hera] [HADES][TEST ] [KRELTSC: 2575293609] Running D2*.zero: 0 0 D2* . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2576474040] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2577964998] Expected: Should double zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2578956534] Running D2*.negative: -1 -1 D2* . . CR +[Hera] -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2580276426] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2581652682] Expected: Should double -1: -1 -2 +[Hera] [HADES][TEST ] [KRELTSC: 2582557320] Running D2*.carry: 0 1 D2* . . CR +[Hera] 2 0 +[Hera] [HADES][TEST ] [KRELTSC: 2583741741] Test passed +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2585117997] Expected: Should shift high cell: 0 2 +[Hera] [HADES][TEST ] [KRELTSC: 2586037020] Running D2*.empty_stack: D2* +[Hera] [HADES][TEST ] [KRELTSC: 2586938298] Expected error occurred +[Hera] [HADES][TEST ] Testing D2* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2588405211] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2589332571] D2*: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2590265118] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2591363775] Testing word: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 2592101694] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2592910236] Running D2/.basic: 10 0 D2/ . . CR +[Hera] 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2594247054] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2595596220] Expected: Should halve 10: 0 5 +[Hera] [HADES][TEST ] [KRELTSC: 2596472319] Running D2/.negative: -2 -1 D2/ . . CR +[Hera] -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2597743512] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2599113195] Expected: Should halve -2: -1 -1 +[Hera] [HADES][TEST ] [KRELTSC: 2599978458] Running D2/.zero: 0 0 D2/ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2601185979] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2602589661] Expected: Should halve zero: 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 2603435583] Running D2/.odd: 3 0 D2/ . . CR +[Hera] 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 2604599781] Test passed +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2605973034] Expected: Should truncate toward zero: 0 1 +[Hera] [HADES][TEST ] [KRELTSC: 2606946363] Running D2/.empty_stack: D2/ +[Hera] [HADES][TEST ] [KRELTSC: 2607834516] Expected error occurred +[Hera] [HADES][TEST ] Testing D2/ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2609250252] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2610188868] D2/: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2611144641] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2612255415] Testing word: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 2612966076] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2613763887] Running 2>R.roundtrip: 10 20 2>R 2R> . . CR +[Hera] 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2615329143] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2616709851] Expected: Should store and retrieve: 20 10 +[Hera] [HADES][TEST ] [KRELTSC: 2617653465] Running 2>R.depth_after: 1 2 2>R DEPTH . 2R> DROP DROP CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2619060402] Test passed +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2620443840] Expected: Should empty data stack: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2621386467] Running 2>R.empty_stack: 2>R +[Hera] [HADES][TEST ] [KRELTSC: 2622299610] Expected error occurred +[Hera] [HADES][TEST ] Testing 2>R ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2623756317] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2624714106] 2>R: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2625664713] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2626753143] Testing word: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 2627483649] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2628297588] Running 2R>.roundtrip: 5 6 2>R 2R> . . CR +[Hera] 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 2629553598] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2630916813] Expected: Should retrieve double: 6 5 +[Hera] [HADES][TEST ] [KRELTSC: 2631860406] Running 2R>.depth: 9 8 2>R 2R> DEPTH . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 2633118243] Test passed +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2634525789] Expected: Should push 2 items to data stack: 2 +[Hera] [HADES][TEST ] [KRELTSC: 2635506048] Running 2R>.empty_rstack: 2R> +[Hera] [HADES][TEST ] [KRELTSC: 2636394957] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2637845952] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2638851285] 2R>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2639773773] ▶ Testing module: src/test_runner/modules/double_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2640883497] Testing word: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 2641620597] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2642403645] Running 2R@.peek: 3 4 2>R 2R@ . . 2R> DROP DROP CR +[Hera] 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2643881982] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2645216049] Expected: Should peek: 4 3 +[Hera] [HADES][TEST ] [KRELTSC: 2646037590] Running 2R@.non_destructive: 7 8 2>R 2R@ DROP DROP 2R> . . CR +[Hera] 8 7 +[Hera] [HADES][TEST ] [KRELTSC: 2647427013] Test passed +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2648779791] Expected: Should leave rstack intact +[Hera] [HADES][TEST ] [KRELTSC: 2649705618] Running 2R@.empty_rstack: 2R@ +[Hera] [HADES][TEST ] [KRELTSC: 2650569957] Expected error occurred +[Hera] [HADES][TEST ] Testing 2R@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2652027483] Expected: Should cause return stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2652989220] 2R@: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2653990563] === Double Number Words Summary: 0 passed, 0 failed, 0 skipped, +[Hera] [HADES][INFO ] [KRELTSC: 2655062592] +[Hera] === Testing Module: Format Words === +[Hera] [HADES][INFO ] [KRELTSC: 2656252158] Running Format Words Tests (Module 10)... +[Hera] [HADES][TEST ] [KRELTSC: 2657194554] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2658305034] Testing word: BASE +[Hera] [HADES][TEST ] [KRELTSC: 2659057443] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2659955676] Running BASE.decimal: DECIMAL 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2661186969] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2662542477] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2663358915] Running BASE.hex: HEX FF . CR +[Hera] FF +[Hera] [HADES][TEST ] [KRELTSC: 2664534600] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2665935594] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2666777946] Running BASE.octal: OCTAL 52 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2667980280] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2669384844] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2670209241] Running BASE.base_store: 16 BASE ! 255 . CR +[Hera] 723 +[Hera] [HADES][TEST ] [KRELTSC: 2671515357] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2672868786] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2673676593] Running BASE.base_fetch: BASE @ . CR +[Hera] 16 +[Hera] [HADES][TEST ] [KRELTSC: 2674861854] Test passed +[Hera] [HADES][TEST ] Testing BASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2676211272] Expected: Should print current base +[Hera] [HADES][TEST ] [KRELTSC: 2677101777] BASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2678041632] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2679131784] Testing word: DECIMAL +[Hera] [HADES][TEST ] [KRELTSC: 2679877872] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2680632465] Running DECIMAL.from_hex: HEX FF DECIMAL . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2681923608] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2683291044] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 2684133879] Running DECIMAL.from_octal: OCTAL 52 DECIMAL . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2685429201] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2686785465] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 2687627166] Running DECIMAL.state_persist: DECIMAL 42 . CR 42 . CR HEX 42 +[Hera] 42 +[Hera] 42 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2689590057] Test passed +[Hera] [HADES][TEST ] Testing DECIMAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2691007914] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2691863790] DECIMAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2692860219] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2693962068] Testing word: HEX +[Hera] [HADES][TEST ] [KRELTSC: 2694703221] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2695502901] Running HEX.from_decimal: DECIMAL 255 HEX . CR +[Hera] FF +[Hera] [HADES][TEST ] [KRELTSC: 2696820672] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2698196550] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 2699025546] Running HEX.from_octal: OCTAL 52 HEX . CR +[Hera] 2A +[Hera] [HADES][TEST ] [KRELTSC: 2700299028] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2701656720] Expected: Should print: 2A +[Hera] [HADES][TEST ] [KRELTSC: 2702465157] Running HEX.state_persist: HEX FF . CR DECIMAL 255 . CR +[Hera] FF +[Hera] [HADES][INFO ] [KRELTSC: 2703934632] L8[TABLE]: Config 38 → 39 regime=2 score=52428 L1=0 L2=1 L3=0 +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 2705394972] Test passed +[Hera] [HADES][TEST ] Testing HEX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2706762828] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2707628910] HEX: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2708585649] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2709682542] Testing word: OCTAL +[Hera] [HADES][TEST ] [KRELTSC: 2710440012] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2711199477] Running OCTAL.from_decimal: DECIMAL 42 OCTAL . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2712520377] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2713883151] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2714722836] Running OCTAL.from_hex: HEX 2A OCTAL . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2715965952] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2717373456] Expected: Should print: 52 +[Hera] [HADES][TEST ] [KRELTSC: 2718216627] Running OCTAL.state_persist: DECIMAL 42 . CR OCTAL 52 . CR +[Hera] 42 +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 2719885476] Test passed +[Hera] [HADES][TEST ] Testing OCTAL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2721245058] Expected: Should maintain base +[Hera] [HADES][TEST ] [KRELTSC: 2722084680] OCTAL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2723026761] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2724140244] Testing word: <# +[Hera] [HADES][TEST ] [KRELTSC: 2724857121] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2725648989] Running <#.basic: DECIMAL 42 S>D <# #S #> TYPE CR +[Hera] 774763251095801167872 +[Hera] [HADES][TEST ] [KRELTSC: 2728044942] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2729372856] Expected: Should format number +[Hera] [HADES][TEST ] [KRELTSC: 2730225855] Running <#.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2731163925] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2732510970] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2733387888] Running <#.negative: -42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2734737600] Test passed +[Hera] [HADES][TEST ] Testing <# ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2736084540] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 2736951756] <#: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2737892766] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2738985711] Testing word: # +[Hera] [HADES][TEST ] [KRELTSC: 2739716574] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2740503381] Running #.single_digit: 15 <# # #> TYPE CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2741878104] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2743210491] Expected: Should print rightmost digit +[Hera] [HADES][TEST ] [KRELTSC: 2744186886] Running #.multiple: 15 <# # # #> TYPE CR +[Hera] 15 +[Hera] [HADES][TEST ] [KRELTSC: 2745452136] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2746820664] Expected: Should print digits right to left +[Hera] [HADES][TEST ] [KRELTSC: 2747797143] Running #.zero_pad: 5 <# # 0 # #> TYPE CR +[Hera] 05 +[Hera] [HADES][TEST ] [KRELTSC: 2749027176] Test passed +[Hera] [HADES][TEST ] Testing # ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2750384721] Expected: Should handle zero padding +[Hera] [HADES][TEST ] [KRELTSC: 2751310674] #: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2752264389] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2753346876] Testing word: #S +[Hera] [HADES][TEST ] [KRELTSC: 2754060813] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2754872442] Running #S.basic: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2756102601] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2757442254] Expected: Should convert all digits +[Hera] [HADES][TEST ] [KRELTSC: 2758339920] Running #S.zero: 0 <# #S #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2759527365] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2760893352] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2761737426] Running #S.large: 1234567890 <# #S #> TYPE CR +[Hera] 1234567890 +[Hera] [HADES][TEST ] [KRELTSC: 2763135732] Test passed +[Hera] [HADES][TEST ] Testing #S ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2764505961] Expected: Should handle large numbers +[Hera] [HADES][TEST ] [KRELTSC: 2765369208] #S: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2766311184] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2767432143] Testing word: SIGN +[Hera] [HADES][TEST ] [KRELTSC: 2768182242] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2769020058] Running SIGN.negative: -42 ABS <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2770500012] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2771857452] Expected: Should add minus +[Hera] [HADES][TEST ] [KRELTSC: 2772694974] Running SIGN.positive: 42 <# #S SIGN #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2773999998] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2775417456] Expected: Should not add sign +[Hera] [HADES][TEST ] [KRELTSC: 2776289145] Running SIGN.zero: 0 <# #S SIGN #> TYPE CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2777589864] Test passed +[Hera] [HADES][TEST ] Testing SIGN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2778952890] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 2779819875] SIGN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2780775900] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2781856854] Testing word: #> +[Hera] [HADES][TEST ] [KRELTSC: 2782596684] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2783382903] Running #>.normal: 42 <# #S #> TYPE CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 2784615120] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2785960548] Expected: Should terminate formatting +[Hera] [HADES][TEST ] [KRELTSC: 2786892738] Running #>.empty: 0 <# #> TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2787849309] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2789238060] Expected: Should handle empty format +[Hera] [HADES][TEST ] [KRELTSC: 2790169788] Running #>.stack_effect: 42 <# #S #> SWAP . . CR +[Hera] 24 2 +[Hera] [HADES][TEST ] [KRELTSC: 2791535733] Test passed +[Hera] [HADES][TEST ] Testing #> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2792911758] Expected: Should leave addr u +[Hera] [HADES][TEST ] [KRELTSC: 2793789117] #>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2794675716] ▶ Testing module: src/test_runner/modules/format_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2795762151] Testing word: HOLD +[Hera] [HADES][TEST ] [KRELTSC: 2796506496] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2797305840] Running HOLD.basic: 42 <# 46 HOLD #S #> TYPE CR +[Hera] 42. +[Hera] [HADES][TEST ] [KRELTSC: 2798657841] Test passed +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2800049973] Expected: Should insert dot +[Hera] [HADES][TEST ] [KRELTSC: 2800901292] Running HOLD.overflow: <# 257 HOLD #> +[Hera] [HADES][ERROR] [KRELTSC: 2801892324] HOLD: byte out of range (257) +[Hera] [HADES][TEST ] [KRELTSC: 2802928443] Expected error occurred +[Hera] [HADES][TEST ] Testing HOLD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2804386347] Expected: Should handle overflow +[Hera] [HADES][TEST ] [KRELTSC: 2805250581] HOLD: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2806195266] === Format Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 2807268996] +[Hera] === Testing Module: String Words === +[Hera] [HADES][INFO ] [KRELTSC: 2808350034] Running String Words Tests (Module 11)... +[Hera] [HADES][TEST ] [KRELTSC: 2809292304] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2810382225] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 2811130413] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2811905670] Running COUNT.basic: HERE S" Test" DROP COUNT . . CR +[Hera] 84 121 +[Hera] [HADES][TEST ] [KRELTSC: 2813775951] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2815157310] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 2816098929] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 2817487029] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2818858749] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2819801544] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 2821279272] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2822663151] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 2823552480] Running COUNT.string_bounds: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2824961916] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2826353922] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 2827239954] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 2828163030] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2828981988] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2830476474] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 2831397303] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2832425799] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2833490793] Testing word: -TRAILING +[Hera] [HADES][TEST ] [KRELTSC: 2834298663] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2835098028] Running -TRAILING.basic: HERE S" Test " -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2836755243] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2838179295] Expected: Should trim spaces +[Hera] [HADES][TEST ] [KRELTSC: 2839017783] Running -TRAILING.all_spaces: HERE S" " -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2840255040] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2841676803] Expected: Should handle all spaces +[Hera] [HADES][TEST ] [KRELTSC: 2842608426] Running -TRAILING.no_spaces: HERE S" Test" -TRAILING TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2844040899] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2845452519] Expected: Should handle no spaces +[Hera] [HADES][TEST ] [KRELTSC: 2846359320] Running -TRAILING.empty: HERE 0 -TRAILING TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2847450102] Test passed +[Hera] [HADES][TEST ] Testing -TRAILING ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2848884360] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2849786583] -TRAILING: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2850785028] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2851878477] Testing word: CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2852644872] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2853431742] Running CMOVE.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMOV + +[Hera] [HADES][TEST ] [KRELTSC: 2854918899] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2856278145] Expected: Should copy string +[Hera] [HADES][TEST ] [KRELTSC: 2857137297] Running CMOVE.empty: HERE HERE 10 + 0 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2858166885] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2859580374] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2860474701] Running CMOVE.overlap: HERE DUP 1+ 5 CMOVE +[Hera] [HADES][TEST ] [KRELTSC: 2861461260] Test passed +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2862867504] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 2863720566] Running CMOVE.bounds: HERE PAD 1000 CMOVE +[Hera] [HADES][ERROR] [KRELTSC: 2864740473] CMOVE: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 2865745323] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2867233089] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 2868108831] CMOVE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2869079388] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2870166537] Testing word: CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2870897043] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2871697164] Running CMOVE>.basic: HERE S" Test" DUP >R HERE 10 + SWAP CMO + +[Hera] [HADES][TEST ] [KRELTSC: 2873158554] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2874563832] Expected: Should copy backward +[Hera] [HADES][TEST ] [KRELTSC: 2875410048] Running CMOVE>.empty: HERE HERE 10 + 0 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2876465928] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2877851088] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2878767738] Running CMOVE>.overlap: HERE DUP 1+ 5 CMOVE> +[Hera] [HADES][TEST ] [KRELTSC: 2879809632] Test passed +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2881215393] Expected: Should handle overlap +[Hera] [HADES][TEST ] [KRELTSC: 2882100165] Running CMOVE>.bounds: HERE PAD 1000 CMOVE> +[Hera] [HADES][ERROR] [KRELTSC: 2883130572] CMOVE>: out-of-bounds (src=125 dst=5242368 n=1000) +[Hera] [HADES][TEST ] [KRELTSC: 2884137018] Expected error occurred +[Hera] [HADES][TEST ] Testing CMOVE> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2885630307] Expected: Should check bounds +[Hera] [HADES][TEST ] [KRELTSC: 2886477699] CMOVE>: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2887454913] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2888561592] Testing word: COMPARE +[Hera] [HADES][TEST ] [KRELTSC: 2889324081] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2890232625] Running COMPARE.equal: HERE S" Test" HERE S" Test" COMPARE . +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2892016449] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2893422714] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 2894232684] Running COMPARE.less: HERE S" Test1" HERE S" Test2" COMPARE . +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2895726351] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2897122830] Expected: Should return -1 +[Hera] [HADES][TEST ] [KRELTSC: 2897958966] Running COMPARE.greater: HERE S" Test2" HERE S" Test1" COMPAR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2899440159] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2900859906] Expected: Should return 1 +[Hera] [HADES][TEST ] [KRELTSC: 2901672963] Running COMPARE.different_lengths: HERE S" Test" HERE S" Test +[Hera] [HADES][INFO ] [KRELTSC: 2902919040] L8[TABLE]: Config 39 → 40 regime=2 score=6553 L1=0 L2=1 L3=0 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 2904371778] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2905826742] Expected: Should handle lengths +[Hera] [HADES][TEST ] [KRELTSC: 2906707125] Running COMPARE.empty: HERE 0 HERE 0 COMPARE . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2908189242] Test passed +[Hera] [HADES][TEST ] Testing COMPARE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2909582655] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2910417447] COMPARE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2911379583] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2912478597] Testing word: SEARCH +[Hera] [HADES][TEST ] [KRELTSC: 2913244236] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2913992949] Running SEARCH.found: HERE S" Testing" HERE S" Test" SEARCH . +[Hera] -1 15 120 +[Hera] [HADES][TEST ] [KRELTSC: 2915967159] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2917343457] Expected: Should find substring +[Hera] [HADES][TEST ] [KRELTSC: 2918228565] Running SEARCH.not_found: HERE S" Testing" HERE S" Xyz" SEARC +[Hera] -1 7 141 +[Hera] [HADES][TEST ] [KRELTSC: 2919773766] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2921173374] Expected: Should return false +[Hera] [HADES][TEST ] [KRELTSC: 2922051447] Running SEARCH.empty_pattern: HERE S" Test" HERE 0 SEARCH . . +[Hera] -1 4 145 +[Hera] [HADES][TEST ] [KRELTSC: 2923587828] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2925007701] Expected: Should handle empty pattern +[Hera] [HADES][TEST ] [KRELTSC: 2925934662] Running SEARCH.empty_string: HERE 0 HERE S" Test" SEARCH . . +[Hera] -1 30 120 +[Hera] [HADES][TEST ] [KRELTSC: 2927406510] Test passed +[Hera] [HADES][TEST ] Testing SEARCH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2928799020] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 2929675875] SEARCH: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2930667810] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2931752103] Testing word: SCAN +[Hera] [HADES][TEST ] [KRELTSC: 2932513290] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2933310156] Running SCAN.basic: HERE S" Test,Data" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2934753444] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2936135013] Expected: Should find space +[Hera] [HADES][TEST ] [KRELTSC: 2936989692] Running SCAN.not_found: HERE S" TestData" BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2938162164] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2939540016] Expected: Should scan to end +[Hera] [HADES][TEST ] [KRELTSC: 2940385749] Running SCAN.empty: HERE 0 BL SCAN TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2941467228] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2942839914] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2943675672] Running SCAN.all_delims: HERE S" " BL SCAN TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2945157075] Test passed +[Hera] [HADES][TEST ] Testing SCAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2946527283] Expected: Should handle all delims +[Hera] [HADES][TEST ] [KRELTSC: 2947541961] SCAN: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2948663655] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2949737994] Testing word: SKIP +[Hera] [HADES][TEST ] [KRELTSC: 2950458462] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2951232564] Running SKIP.basic: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2952811008] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2954207907] Expected: Should skip spaces +[Hera] [HADES][TEST ] [KRELTSC: 2955058911] Running SKIP.no_delims: HERE S" Test" BL SKIP TYPE CR +[Hera] Test +[Hera] [HADES][TEST ] [KRELTSC: 2956412004] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2957791053] Expected: Should not skip +[Hera] [HADES][TEST ] [KRELTSC: 2958600330] Running SKIP.empty: HERE 0 BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2959689537] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2961068397] Expected: Should handle empty +[Hera] [HADES][TEST ] [KRELTSC: 2961926478] Running SKIP.all_delims: HERE S" " BL SKIP TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2963092188] Test passed +[Hera] [HADES][TEST ] Testing SKIP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2964497004] Expected: Should skip all +[Hera] [HADES][TEST ] [KRELTSC: 2965328919] SKIP: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2966269530] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2967356658] Testing word: BLANK +[Hera] [HADES][TEST ] [KRELTSC: 2968107618] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2968888944] Running BLANK.basic: HERE 5 BLANK HERE 5 TYPE CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 2970560880] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2971961076] Expected: Should fill with spaces +[Hera] [HADES][TEST ] [KRELTSC: 2972830182] Running BLANK.zero: HERE 0 BLANK HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 2973875625] Test passed +[Hera] [HADES][TEST ] Testing BLANK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2975258433] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 2976166977] BLANK: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 2977105950] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 2978171322] Testing word: S" +[Hera] [HADES][TEST ] [KRELTSC: 2978886330] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 2979623892] Running S".interpret_len: S" hello" . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2980836999] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2982145362] Expected: Should print: 5 (length) +[Hera] [HADES][TEST ] [KRELTSC: 2983032990] Running S".interpret_type: S" hello" TYPE CR +[Hera] hello +[Hera] [HADES][TEST ] [KRELTSC: 2984282826] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2985657087] Expected: Should print: hello +[Hera] [HADES][TEST ] [KRELTSC: 2986483269] Running S".empty: S" " . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 2987623296] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2988962172] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 2989801794] Running S".compile_type: : TSQ S" world" TYPE CR ; TSQ +[Hera] world +[Hera] [HADES][TEST ] [KRELTSC: 2993766111] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2995105554] Expected: Should print: world +[Hera] [HADES][TEST ] [KRELTSC: 2995942152] Running S".compile_len: : TSQ2 S" forth" SWAP DROP . CR ; TSQ +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 2997708903] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 2999020731] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 2999871399] Running S".compile_twice: : TSQ3 S" ab" TYPE S" cd" TYPE CR ; +[Hera] abcd +[Hera] [HADES][TEST ] [KRELTSC: 3001616961] Test passed +[Hera] [HADES][TEST ] Testing S" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3002989878] Expected: Should print: abcd +[Hera] [HADES][TEST ] [KRELTSC: 3003860517] S": 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3004838529] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3005957745] Testing word: BL +[Hera] [HADES][TEST ] [KRELTSC: 3006696399] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3007493727] Running BL.value: BL . CR +[Hera] 32 +[Hera] [HADES][TEST ] [KRELTSC: 3008732727] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3010086114] Expected: Should print: 32 +[Hera] [HADES][TEST ] [KRELTSC: 3010918512] Running BL.as_char: BL EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 3012165660] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3013531206] Expected: Should emit a space +[Hera] [HADES][TEST ] [KRELTSC: 3014428095] Running BL.in_scan: HERE S" a b" BL SCAN SWAP DROP . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3015851937] Test passed +[Hera] [HADES][TEST ] Testing BL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3017227122] Expected: Should find space at offset 1 +[Hera] [HADES][TEST ] [KRELTSC: 3018195054] BL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3019097865] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3020199777] Testing word: SOURCE +[Hera] [HADES][TEST ] [KRELTSC: 3020984589] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3021744411] Running SOURCE.returns_pair: SOURCE SWAP DROP 0< NOT . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3023639577] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3025067724] Expected: Should return non-negative length +[Hera] [HADES][TEST ] [KRELTSC: 3026053044] Running SOURCE.has_addr: SOURCE DROP 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3027378039] Test passed +[Hera] [HADES][TEST ] Testing SOURCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3028795980] Expected: Should return non-null address +[Hera] [HADES][TEST ] [KRELTSC: 3029748120] SOURCE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3030721008] ▶ Testing module: src/test_runner/modules/string_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3031827141] Testing word: >IN +[Hera] [HADES][TEST ] [KRELTSC: 3032569344] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3033362661] Running >IN.initial: >IN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3034676190] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3036035394] Expected: Should return input offset +[Hera] [HADES][TEST ] [KRELTSC: 3036982809] Running >IN.advances: : TWIN >IN @ >IN @ - . CR ; TWIN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3038713629] Test passed +[Hera] [HADES][TEST ] Testing >IN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3040114371] Expected: Should print: 0 (no advance inside compiled word) +[Hera] [HADES][TEST ] [KRELTSC: 3041237661] >IN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3042225417] === String Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 3043316976] +[Hera] === Testing Module: I/O Words === +[Hera] [HADES][INFO ] [KRELTSC: 3044447049] Running I/O Words Tests (Module 9)... +[Hera] [HADES][TEST ] [KRELTSC: 3045387051] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3046467480] Testing word: . +[Hera] [HADES][TEST ] [KRELTSC: 3047183223] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3047990463] Running ..positive: 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3049195065] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3050550132] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 3051388935] Running ..negative: -42 . CR +[Hera] -42 +[Hera] [HADES][TEST ] [KRELTSC: 3052552965] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3053919561] Expected: Should print: -42 +[Hera] [HADES][TEST ] [KRELTSC: 3054780372] Running ..zero: 0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3055863531] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3057227271] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3058045599] Running ..max_int: 2147483647 . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3059265594] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3060645231] Expected: Should print: 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3061551402] Running ..min_int: -2147483648 . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 3062854032] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3064208007] Expected: Should print: -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 3065117118] Running ..multiple: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3066341733] Test passed +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3067714587] Expected: Should print: 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3068586717] Running ..empty_stack: . +[Hera] [HADES][TEST ] [KRELTSC: 3069454626] Expected error occurred +[Hera] [HADES][TEST ] Testing . ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3070905453] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3071837223] .: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3072817272] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3073884345] Testing word: CR +[Hera] [HADES][TEST ] [KRELTSC: 3074619639] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3075395694] Running CR.basic: 42 . CR 43 . CR +[Hera] 42 +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 3076882704] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3078239493] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 3079214754] Running CR.multiple: CR CR CR + + + +[Hera] [HADES][TEST ] [KRELTSC: 3080144676] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3081514212] Expected: Should print multiple newlines +[Hera] [HADES][TEST ] [KRELTSC: 3082467339] Running CR.no_stack_effect: DEPTH CR DEPTH = . CR + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3083842398] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3085185915] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3086088306] Running CR.after_output: 1 2 3 . . . CR +[Hera] 3 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 3087336294] Test passed +[Hera] [HADES][TEST ] Testing CR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3088710051] Expected: Should work after output +[Hera] [HADES][TEST ] [KRELTSC: 3089610510] CR: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3090537282] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3091617354] Testing word: SPACE +[Hera] [HADES][TEST ] [KRELTSC: 3092371737] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3093148485] Running SPACE.basic: 42 . SPACE 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3094492674] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3095877540] Expected: Should add space between numbers +[Hera] [HADES][TEST ] [KRELTSC: 3096829155] Running SPACE.multiple: SPACE SPACE SPACE +[Hera] [HADES][INFO ] [KRELTSC: 3098838687] L8[TABLE]: Config 40 → 0 regime=7 score=26214 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 3100008786] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3101170989] Expected: Should print multiple spaces +[Hera] [HADES][TEST ] [KRELTSC: 3102107400] Running SPACE.no_stack_effect: DEPTH SPACE DEPTH = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3103528764] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3104924130] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 3105813459] Running SPACE.with_text: 65 EMIT SPACE 66 EMIT CR +[Hera] A B +[Hera] [HADES][TEST ] [KRELTSC: 3107178900] Test passed +[Hera] [HADES][TEST ] Testing SPACE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3108595707] Expected: Should space between chars +[Hera] [HADES][TEST ] [KRELTSC: 3109502130] SPACE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3110451855] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3111509037] Testing word: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3112274865] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3113062029] Running SPACES.zero: 0 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3113964693] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3115405881] Expected: Should print no spaces +[Hera] [HADES][TEST ] [KRELTSC: 3116287146] Running SPACES.one: 1 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3117441180] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3118596894] Expected: Should print one space +[Hera] [HADES][TEST ] [KRELTSC: 3119517030] Running SPACES.multiple: 5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3120771822] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3121916301] Expected: Should print five spaces +[Hera] [HADES][TEST ] [KRELTSC: 3122828457] Running SPACES.large: 20 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3124105488] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3125265171] Expected: Should print twenty spaces +[Hera] [HADES][TEST ] [KRELTSC: 3126187491] Running SPACES.negative: -5 SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3127136229] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3128562969] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3129463680] Running SPACES.with_output: 42 . 3 SPACES 43 . CR +[Hera] 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3130842015] Test passed +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3132262455] Expected: Should space output +[Hera] [HADES][TEST ] [KRELTSC: 3133118793] Running SPACES.empty_stack: SPACES +[Hera] [HADES][TEST ] [KRELTSC: 3134062701] Expected error occurred +[Hera] [HADES][TEST ] Testing SPACES ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3135565482] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3136452438] SPACES: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3137440950] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3138532278] Testing word: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 3139273431] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3140076723] Running EMIT.letter_A: 65 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3141234138] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3142632675] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 3143476056] Running EMIT.letter_Z: 90 EMIT CR +[Hera] Z +[Hera] [HADES][TEST ] [KRELTSC: 3144631224] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3145995510] Expected: Should print: Z +[Hera] [HADES][TEST ] [KRELTSC: 3146834502] Running EMIT.digit: 48 EMIT CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3147958191] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3149353746] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3150198660] Running EMIT.space_char: 32 EMIT CR +[Hera] +[Hera] [HADES][TEST ] [KRELTSC: 3151386357] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3152778405] Expected: Should print space +[Hera] [HADES][TEST ] [KRELTSC: 3153606267] Running EMIT.newline: 10 EMIT + +[Hera] [HADES][TEST ] [KRELTSC: 3154520292] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3155887560] Expected: Should print newline +[Hera] [HADES][TEST ] [KRELTSC: 3156797364] Running EMIT.high_ascii: 127 EMIT CR +[Hera]  +[Hera] [HADES][TEST ] [KRELTSC: 3157972398] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3159374841] Expected: Should print DEL char +[Hera] [HADES][TEST ] [KRELTSC: 3160250961] Running EMIT.truncation: 321 EMIT CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3161450271] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3162846078] Expected: Should truncate to low byte +[Hera] [HADES][TEST ] [KRELTSC: 3163772031] Running EMIT.negative: -1 EMIT CR +[Hera] ÿ +[Hera] [HADES][TEST ] [KRELTSC: 3164940282] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3166301670] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3167193666] Running EMIT.sequence: 72 EMIT 73 EMIT 10 EMIT +[Hera] HI +[Hera] [HADES][TEST ] [KRELTSC: 3168456249] Test passed +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3169865349] Expected: Should print: HI +[Hera] [HADES][TEST ] [KRELTSC: 3170664966] Running EMIT.empty_stack: EMIT +[Hera] [HADES][TEST ] [KRELTSC: 3171576177] Expected error occurred +[Hera] [HADES][TEST ] Testing EMIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3173037966] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3173956821] EMIT: 10 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3174935463] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3176005434] Testing word: KEY +[Hera] [HADES][TEST ] [KRELTSC: 3176739573] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3177621804] KEY: 0 passed, 0 failed, 4 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3178572306] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3179656284] Testing word: ?KEY +[Hera] [HADES][TEST ] [KRELTSC: 3180412977] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3181192392] ?KEY: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3182171769] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3183246171] Testing word: TYPE +[Hera] [HADES][TEST ] [KRELTSC: 3183987198] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3184780641] Running TYPE.basic_string: HERE S" Hello" DUP >R HERE SWAP CM +[Hera] Hello +[Hera] [HADES][TEST ] [KRELTSC: 3186349530] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3187771671] Expected: Should print: Hello +[Hera] [HADES][TEST ] [KRELTSC: 3188612805] Running TYPE.empty_string: HERE 0 TYPE CR + +[Hera] [HADES][TEST ] [KRELTSC: 3189611019] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3191030787] Expected: Should print nothing +[Hera] [HADES][TEST ] [KRELTSC: 3191901216] Running TYPE.single_char: HERE 65 OVER C! 1 TYPE CR +[Hera] A +[Hera] [HADES][TEST ] [KRELTSC: 3193273167] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3194657739] Expected: Should print: A +[Hera] [HADES][TEST ] [KRELTSC: 3195506853] Running TYPE.numbers: HERE S" 12345" DUP >R HERE SWAP CMOVE H +[Hera] 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3197075406] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3198449772] Expected: Should print: 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3199313628] Running TYPE.zero_length: PAD 0 TYPE +[Hera] [HADES][TEST ] [KRELTSC: 3200249724] Test passed +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3201577386] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 3202503969] Running TYPE.one_item: PAD TYPE +[Hera] [HADES][ERROR] [KRELTSC: 3203416335] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3204235524] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3205728246] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3206666820] Running TYPE.empty_stack: TYPE +[Hera] [HADES][ERROR] [KRELTSC: 3207519042] TYPE: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3208295685] Expected error occurred +[Hera] [HADES][TEST ] Testing TYPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3209791977] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3210712071] TYPE: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3211684287] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3212731368] Testing word: COUNT +[Hera] [HADES][TEST ] [KRELTSC: 3213494697] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3214294608] Running COUNT.basic: HERE S" Test" DROP C@ HERE 1+ SWAP COUNT +[Hera] 0 85 +[Hera] [HADES][TEST ] [KRELTSC: 3215847810] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3217243470] Expected: Should show length and addr+1 +[Hera] [HADES][TEST ] [KRELTSC: 3218198235] Running COUNT.empty: HERE 0 OVER C! COUNT . . CR +[Hera] 0 126 +[Hera] [HADES][TEST ] [KRELTSC: 3219558594] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3220919625] Expected: Should handle empty string +[Hera] [HADES][TEST ] [KRELTSC: 3221813868] Running COUNT.max_length: HERE 255 OVER C! COUNT . . CR +[Hera] 255 126 +[Hera] [HADES][TEST ] [KRELTSC: 3223227756] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3224556657] Expected: Should handle max length +[Hera] [HADES][TEST ] [KRELTSC: 3225477717] Running COUNT.zero_addr_plus_one: HERE COUNT SWAP 1- = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3226920627] Test passed +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3228329517] Expected: Should increment address +[Hera] [HADES][TEST ] [KRELTSC: 3229236969] Running COUNT.empty_stack: COUNT +[Hera] [HADES][ERROR] [KRELTSC: 3230141334] COUNT: Data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3230952291] Expected error occurred +[Hera] [HADES][TEST ] Testing COUNT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3232434702] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3233382516] COUNT: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3234371112] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3235463133] Testing word: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3236223585] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3236989812] Running EXPECT.zero_length: PAD 0 EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3238220034] Test passed +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3239610696] Expected: Should handle zero length +[Hera] [HADES][TEST ] [KRELTSC: 3240534843] Running EXPECT.one_item: PAD EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3241497000] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3243008874] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3243938313] Running EXPECT.empty_stack: EXPECT +[Hera] [HADES][TEST ] [KRELTSC: 3244854606] Expected error occurred +[Hera] [HADES][TEST ] Testing EXPECT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3246319104] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3247235313] EXPECT: 3 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3248208978] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3249274077] Testing word: SPAN +[Hera] [HADES][TEST ] [KRELTSC: 3250010337] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3250797102] Running SPAN.zero_input: PAD 0 EXPECT SPAN @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3252167583] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3253543104] Expected: Should show zero +[Hera] [HADES][TEST ] [KRELTSC: 3254372205] Running SPAN.variable_test: SPAN @ SPAN @ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3255727482] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3257097732] Expected: Should be consistent +[Hera] [HADES][TEST ] [KRELTSC: 3257983428] Running SPAN.address_test: SPAN 0<> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3259226796] Test passed +[Hera] [HADES][TEST ] Testing SPAN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3260605572] Expected: Should be valid address +[Hera] [HADES][TEST ] [KRELTSC: 3261499227] SPAN: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3262447230] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3263530935] Testing word: WORD +[Hera] [HADES][TEST ] [KRELTSC: 3264226518] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3264990015] Running WORD.empty_input: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3266687403] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3268053831] Expected: Should handle empty input +[Hera] [HADES][TEST ] [KRELTSC: 3268972098] Running WORD.space_delim: 32 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3269955948] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3271340184] Expected: Should use space as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3272278695] Running WORD.newline_delim: 10 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3273235245] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3274601001] Expected: Should use newline as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3275558790] Running WORD.tab_delim: 9 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3276474873] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3277853376] Expected: Should use tab as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3278782626] Running WORD.comma_delim: 44 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3279743880] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3281130006] Expected: Should use comma as delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3282073011] Running WORD.skip_leading: BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3283044807] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3284447145] Expected: Should skip leading spaces +[Hera] [HADES][TEST ] [KRELTSC: 3285364950] Running WORD.single_char: BL WORD COUNT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3286660692] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3288041988] Expected: Should parse single character +[Hera] [HADES][TEST ] [KRELTSC: 3288971007] Running WORD.long_word: BL WORD COUNT 0 > . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3290263116] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3291654639] Expected: Should parse long word +[Hera] [HADES][TEST ] [KRELTSC: 3292544052] Running WORD.zero_delim: 0 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3293502366] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3294887694] Expected: Should handle null delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3295841808] Running WORD.high_ascii: 127 WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3296793444] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3298100001] Expected: Should handle DEL delimiter +[Hera] [HADES][TEST ] [KRELTSC: 3298995588] Running WORD.count_format: BL WORD C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3300270897] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3301644507] Expected: Should have count byte +[Hera] [HADES][TEST ] [KRELTSC: 3302494524] Running WORD.count_value: BL WORD COUNT SWAP DROP . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3303898794] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3305267805] Expected: Should return count +[Hera] [HADES][TEST ] [KRELTSC: 3306095016] Running WORD.empty_stack: WORD +[Hera] [HADES][TEST ] [KRELTSC: 3307012212] Expected error occurred +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3308524632] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3309479418] Running WORD.multi_delim: BL WORD DROP BL WORD DROP +[Hera] [HADES][TEST ] [KRELTSC: 3310570473] Test passed +[Hera] [HADES][TEST ] Testing WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3311978838] Expected: Should handle multiple parses +[Hera] [HADES][TEST ] [KRELTSC: 3312902796] WORD: 14 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3313911342] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3314934294] Testing word: BASE_OUTPUT +[Hera] [HADES][TEST ] [KRELTSC: 3315730236] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3316515216] Running BASE_OUTPUT.decimal: 10 BASE ! 255 . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3317810874] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3319230327] Expected: Should print: 255 +[Hera] [HADES][TEST ] [KRELTSC: 3320076501] Running BASE_OUTPUT.hex: 16 BASE ! 255 . CR +[Hera] 597 +[Hera] [HADES][TEST ] [KRELTSC: 3321336795] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3322760763] Expected: Should print: FF +[Hera] [HADES][TEST ] [KRELTSC: 3323569662] Running BASE_OUTPUT.octal: 8 BASE ! 64 . CR +[Hera] 52 +[Hera] [HADES][TEST ] [KRELTSC: 3324832812] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3326244201] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 3327047850] Running BASE_OUTPUT.binary: 5 2 BASE ! . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 3328319946] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3329702586] Expected: Should print: 101 +[Hera] [HADES][TEST ] [KRELTSC: 3330509427] Running BASE_OUTPUT.base_restore: BASE @ DECIMAL 255 16 BA +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3331975080] Test passed +[Hera] [HADES][TEST ] Testing BASE_OUTPUT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3333384012] Expected: Should restore base +[Hera] [HADES][TEST ] [KRELTSC: 3334259859] BASE_OUTPUT: 5 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3335291190] ▶ Testing module: src/test_runner/modules/io_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3336367818] Testing word: FORMAT_COMBO +[Hera] [HADES][TEST ] [KRELTSC: 3337197738] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3337966275] Running FORMAT_COMBO.number_space_number: DECIMAL 42 . SPACE +[Hera] 42 [HADES][INFO ] [KRELTSC: 3339455238] L8[TABLE]: Config 0 → 1 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 43 +[Hera] [HADES][TEST ] [KRELTSC: 3340687980] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3342125094] Expected: Should format: 42 43 +[Hera] [HADES][TEST ] [KRELTSC: 3342984456] Running FORMAT_COMBO.multi_line: DECIMAL 1 . CR 2 . CR 3 . CR +[Hera] 1 +[Hera] 2 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 3344908308] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3346341957] Expected: Should print on separate lines +[Hera] [HADES][TEST ] [KRELTSC: 3347257872] Running FORMAT_COMBO.indented: DECIMAL 5 SPACES 42 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3348713886] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3350179224] Expected: Should indent number +[Hera] [HADES][TEST ] [KRELTSC: 3351053307] Running FORMAT_COMBO.table_format: DECIMAL 1 . 3 SPACES 10 . +[Hera] 1 10 100 +[Hera] [HADES][TEST ] [KRELTSC: 3352609848] Test passed +[Hera] [HADES][TEST ] Testing FORMAT_COMBO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3354043749] Expected: Should format table +[Hera] [HADES][TEST ] [KRELTSC: 3354903237] FORMAT_COMBO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3355959390] === I/O Words Summary: 0 passed, 0 failed, 0 skipped, 0 errors +[Hera] [HADES][INFO ] [KRELTSC: 3357044607] +[Hera] === Testing Module: Block Words === +[Hera] [HADES][INFO ] [KRELTSC: 3358213215] Running Block Words Tests (Module 16)... +[Hera] [HADES][TEST ] [KRELTSC: 3359151327] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3360257439] Testing word: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3360950985] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3361760703] Running BLOCK.basic: 1 BLOCK DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 3363876012] Test passed +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3365240823] Expected: Should return block address +[Hera] [HADES][TEST ] [KRELTSC: 3366160875] Running BLOCK.zero_block: 0 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3367075845] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3368545971] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3369442566] Running BLOCK.large_block: 65536 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3370433136] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3371927475] Expected: Should handle large number +[Hera] [HADES][TEST ] [KRELTSC: 3372851055] Running BLOCK.negative: -1 BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3373751157] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3375225336] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3376117017] Running BLOCK.empty_stack: BLOCK +[Hera] [HADES][TEST ] [KRELTSC: 3376987131] Expected error occurred +[Hera] [HADES][TEST ] Testing BLOCK ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3378454380] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3379377519] BLOCK: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3380314308] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3381445872] Testing word: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3382225875] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3383023875] Running BUFFER.basic: 1 BUFFER DUP . CR +[Hera] 5238784 +[Hera] [HADES][TEST ] [KRELTSC: 3384849720] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3386226585] Expected: Should return buffer address +[Hera] [HADES][TEST ] [KRELTSC: 3387163500] Running BUFFER.zero_block: 0 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3388088235] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3389588412] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3390475893] Running BUFFER.flush_dirty: 2 BLOCK 1+ 2 BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3391565142] Test passed +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3392974305] Expected: Should flush if dirty +[Hera] [HADES][TEST ] [KRELTSC: 3393836082] Running BUFFER.empty_stack: BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3394741245] Expected error occurred +[Hera] [HADES][TEST ] Testing BUFFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3396205134] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3397150197] BUFFER: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3398109309] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3399174534] Testing word: UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3399931227] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3400701255] Running UPDATE.basic: 1 BLOCK UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3401919675] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3403286838] Expected: Should mark block dirty +[Hera] [HADES][TEST ] [KRELTSC: 3404147187] Running UPDATE.multiple: 1 BLOCK UPDATE UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3405165813] Test passed +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3406561914] Expected: Should handle multiple updates +[Hera] [HADES][TEST ] [KRELTSC: 3407490408] Running UPDATE.no_block: 0 SCR ! UPDATE +[Hera] [HADES][TEST ] [KRELTSC: 3408556032] Expected error occurred +[Hera] [HADES][TEST ] Testing UPDATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3410055957] Expected: Should error: blk=0 is invalid +[Hera] [HADES][TEST ] [KRELTSC: 3410966622] UPDATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3411895116] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3413144763] Testing word: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3413978988] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3414765879] Running SAVE-BUFFERS.basic: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3416101143] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3417536178] Expected: Should flush all buffers +[Hera] [HADES][TEST ] [KRELTSC: 3418427061] Running SAVE-BUFFERS.dirty_blocks: 1 BLOCK UPDATE SAVE-BUFFER +[Hera] [HADES][TEST ] [KRELTSC: 3419620743] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3421057794] Expected: Should save dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3421903968] Running SAVE-BUFFERS.no_dirty: SAVE-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3422886936] Test passed +[Hera] [HADES][TEST ] Testing SAVE-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3424335915] Expected: Should handle no dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3425312310] SAVE-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3426319701] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3427435452] Testing word: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3428257560] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3429037122] Running EMPTY-BUFFERS.basic: EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3430135506] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3431562645] Expected: Should invalidate all buffers +[Hera] [HADES][TEST ] [KRELTSC: 3432499455] Running EMPTY-BUFFERS.after_use: 1 BLOCK EMPTY-BUFFERS +[Hera] [HADES][TEST ] [KRELTSC: 3433578393] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3434986989] Expected: Should invalidate used buffers +[Hera] [HADES][TEST ] [KRELTSC: 3435901770] Running EMPTY-BUFFERS.dirty_blocks: 1 BLOCK UPDATE EMPTY-BUFF +[Hera] [HADES][TEST ] [KRELTSC: 3437039067] Test passed +[Hera] [HADES][TEST ] Testing EMPTY-BUFFERS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3438463560] Expected: Should handle dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3439365342] EMPTY-BUFFERS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3440379222] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3441447261] Testing word: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3442156011] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3442945317] Running FLUSH.basic: FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3443797644] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3445169952] Expected: Should save and invalidate buffers +[Hera] [HADES][TEST ] [KRELTSC: 3446158716] Running FLUSH.dirty_blocks: 1 BLOCK UPDATE FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3447246453] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3448655532] Expected: Should flush dirty blocks +[Hera] [HADES][TEST ] [KRELTSC: 3449560926] Running FLUSH.after_empty: EMPTY-BUFFERS FLUSH +[Hera] [HADES][TEST ] [KRELTSC: 3450597003] Test passed +[Hera] [HADES][TEST ] Testing FLUSH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3451991760] Expected: Should handle empty buffers +[Hera] [HADES][TEST ] [KRELTSC: 3452927100] FLUSH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3453854922] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3454914309] Testing word: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3455639565] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3456405666] Running LOAD.basic: 1 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3457447959] Test passed +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3458814555] Expected: Should interpret block 1 +[Hera] [HADES][TEST ] [KRELTSC: 3459693048] Running LOAD.zero_block: 0 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3460572654] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3462024804] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3462892713] Running LOAD.nonexistent: 9999 LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3463839477] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3465343539] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 3466280664] Running LOAD.empty_stack: LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3467163882] Expected error occurred +[Hera] [HADES][TEST ] Testing LOAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3468592974] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3469497423] LOAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3470397483] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3471467664] Testing word: LIST +[Hera] [HADES][TEST ] [KRELTSC: 3472184877] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3472973868] Running LIST.basic: 1 LIST + +[Hera] Block 1 + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + + + +[Hera] [HADES][TEST ] [KRELTSC: 3491202708] Test passed +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3492582828] Expected: Should display block 1 +[Hera] [HADES][TEST ] [KRELTSC: 3493456806] Running LIST.zero_block: 0 LIST +[Hera] [HADES][TEST ] [KRELTSC: 3494352477] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3495819684] Expected: Should handle block 0 +[Hera] [HADES][TEST ] [KRELTSC: 3496718988] Running LIST.nonexistent: 9999 LIST +[Hera] [HADES][TEST ] [KRELTSC: 3497633496] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3499095411] Expected: Should handle missing block +[Hera] [HADES][TEST ] [KRELTSC: 3500006076] Running LIST.empty_stack: LIST +[Hera] [HADES][TEST ] [KRELTSC: 3500875707] Expected error occurred +[Hera] [HADES][TEST ] Testing LIST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3502307172] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3503226552] LIST: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3504149712] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3505257336] Testing word: SCR +[Hera] [HADES][TEST ] [KRELTSC: 3505966485] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3506764695] Running SCR.basic: SCR @ . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3507952854] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3509300151] Expected: Should show current block +[Hera] [HADES][TEST ] [KRELTSC: 3510172113] Running SCR.after_list: 1 LIST SCR @ . CR + +[Hera] Block 1 + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + +[Hera] 2d: +[Hera] + + + +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3528551292] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3529936389] Expected: Should update after LIST +[Hera] [HADES][TEST ] [KRELTSC: 3530813223] Running SCR.after_load: 1 LOAD SCR @ . CR +[Hera] [HADES][TEST ] [KRELTSC: 3531827313] Test passed +[Hera] [HADES][TEST ] Testing SCR ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3533191851] Expected: Should update after LOAD +[Hera] [HADES][TEST ] [KRELTSC: 3534121689] SCR: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3535061985] ▶ Testing module: src/test_runner/modules/block_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 3536150898] Testing word: THRU +[Hera] [HADES][TEST ] [KRELTSC: 3536909733] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3537708090] Running THRU.single_block: 1 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3538866009] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3540242202] Expected: Should load single block (1-1) +[Hera] [HADES][TEST ] [KRELTSC: 3541207341] Running THRU.ascending: 1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3542148561] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3543482502] Expected: Should load blocks 1-3 in order +[Hera] [HADES][TEST ] [KRELTSC: 3544433949] Running THRU.descending: 3 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3545356920] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3546760917] Expected: Should auto-swap and load 1-3 +[Hera] [HADES][TEST ] [KRELTSC: 3547717908] Running THRU.same_block: 2 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3548660577] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3550032192] Expected: Should load single block (2-2) +[Hera] [HADES][TEST ] [KRELTSC: 3550986474] Running THRU.zero_start: 0 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3551940000] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3553411932] Expected: Should reject block 0 as start +[Hera] [HADES][TEST ] [KRELTSC: 3554375937] Running THRU.zero_end: 1 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3555260835] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3556709898] Expected: Should reject block 0 as end +[Hera] [HADES][TEST ] [KRELTSC: 3557636250] Running THRU.both_zero: 0 0 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3558516087] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3559969308] Expected: Should reject both blocks as 0 +[Hera] [HADES][TEST ] [KRELTSC: 3560906748] Running THRU.invalid_start: 9999 10000 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3561879972] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3563382207] Expected: Should reject invalid start block +[Hera] [HADES][TEST ] [KRELTSC: 3564303309] Running THRU.invalid_end: 1 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3565226532] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3566700732] Expected: Should reject invalid end block +[Hera] [HADES][TEST ] [KRELTSC: 3567668349] Running THRU.both_invalid: 9998 9999 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3568603626] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3570067893] Expected: Should reject both invalid blocks +[Hera] [HADES][TEST ] [KRELTSC: 3571016001] Running THRU.empty_stack: THRU +[Hera] [HADES][TEST ] [KRELTSC: 3571863582] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3573352188] Expected: Should cause stack underflow (no args) +[Hera] [HADES][TEST ] [KRELTSC: 3574450866] Running THRU.one_arg: 1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3575309703] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3576730563] Expected: Should cause stack underflow (one arg) +[Hera] [HADES][TEST ] [KRELTSC: 3577720335] Running THRU.small_range: 1 2 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3578658447] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3580056585] Expected: Should load 2-block range +[Hera] [HADES][TEST ] [KRELTSC: 3581056143] Running THRU.medium_range: 1 5 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3582000534] Test passed +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3583351548] Expected: Should load 5-block range +[Hera] [HADES][TEST ] [KRELTSC: 3584264838] Running THRU.negative_start: -1 3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3585184890] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3586648107] Expected: Should handle negative start +[Hera] [HADES][TEST ] [KRELTSC: 3587547873] Running THRU.negative_end: 1 -3 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3588460890] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3589935300] Expected: Should handle negative end +[Hera] [HADES][TEST ] [KRELTSC: 3590853189] Running THRU.both_negative: -3 -1 THRU +[Hera] [HADES][TEST ] [KRELTSC: 3591785169] Expected error occurred +[Hera] [HADES][TEST ] Testing THRU ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3593251704] Expected: Should handle both negative +[Hera] [HADES][TEST ] [KRELTSC: 3594202542] THRU: 17 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3595214259] === Block Words Summary: 0 passed, 0 failed, 0 skipped, 0 error +[Hera] [HADES][INFO ] [KRELTSC: 3596304453] +[Hera] === Testing Module: Dictionary Words === +[Hera] [HADES][INFO ] [KRELTSC: 3597503007] Running Dictionary Words Tests (Module 4)... +[Hera] [HADES][TEST ] [KRELTSC: 3598485093] Testing word: HERE +[Hera] [HADES][TEST ] [KRELTSC: 3599212911] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3600004296] Running HERE.basic: HERE HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3601235106] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3602629779] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3603482148] Running HERE.after_comma: HERE 42 , HERE SWAP - 1 CELLS = 0 S +[Hera] [HADES][TEST ] [KRELTSC: 3604731501] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3606088941] Expected: Asserts HERE advances by exactly 1 CELLS (8 bytes +[Hera] [HADES][TEST ] [KRELTSC: 3607152108] Running HERE.after_c_comma: HERE 65 C, HERE SWAP - . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 3608530149] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3609884754] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 3610679016] Running HERE.after_allot: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 3612084756] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3613442658] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3614255421] Running HERE.stability: HERE DUP HERE = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3615519474] Test passed +[Hera] [HADES][TEST ] Testing HERE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3616835649] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3617665275] HERE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3618683901] Testing word: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 3619416801] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3620208333] Running ALLOT.basic: HERE 10 ALLOT HERE SWAP - . CR +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 3621555399] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3622973130] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 3623808426] Running ALLOT.zero: HERE 0 ALLOT HERE SWAP - . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3625209840] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3626557641] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3627378573] Running ALLOT.negative: HERE -4 ALLOT HERE SWAP - . CR +[Hera] -4 +[Hera] [HADES][TEST ] [KRELTSC: 3628756656] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3630127746] Expected: Should print: -4 +[Hera] [HADES][TEST ] [KRELTSC: 3630948930] Running ALLOT.large: HERE 100 ALLOT HERE SWAP - . CR +[Hera] 100 +[Hera] [HADES][TEST ] [KRELTSC: 3632321259] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3633640080] Expected: Should print: 100 +[Hera] [HADES][TEST ] [KRELTSC: 3634465443] Running ALLOT.after_use: ALIGN HERE 10 ALLOT 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3635954931] Test passed +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3637341414] Expected: Should store and retrieve +[Hera] [HADES][TEST ] [KRELTSC: 3638334945] Running ALLOT.empty_stack: ALLOT +[Hera] [HADES][TEST ] [KRELTSC: 3639248067] Expected error occurred +[Hera] [HADES][TEST ] Testing ALLOT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3640726236] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3641632218] ALLOT: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3642573333] Testing word: , +[Hera] [HADES][TEST ] [KRELTSC: 3643267110] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3644058012] Running ,.basic: 42 , HERE 1 CELLS - @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3645393906] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3646726398] Expected: Should compile 42 +[Hera] [HADES][TEST ] [KRELTSC: 3647558334] Running ,.negative: -999 , HERE 1 CELLS - @ . CR +[Hera] [HADES][INFO ] [KRELTSC: 3648668919] L8[TABLE]: Config 1 → 2 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] -999 +[Hera] [HADES][TEST ] [KRELTSC: 3650187471] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3651536721] Expected: Should compile -999 +[Hera] [HADES][TEST ] [KRELTSC: 3652348854] Running ,.zero: 0 , HERE 1 CELLS - @ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3653639661] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3654972636] Expected: Should compile 0 +[Hera] [HADES][TEST ] [KRELTSC: 3655795836] Running ,.max_int: 2147483647 , HERE 1 CELLS - @ . CR +[Hera] 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3657237927] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3658576635] Expected: Should compile max int +[Hera] [HADES][TEST ] [KRELTSC: 3659444208] Running ,.min_int: -2147483648 , HERE 1 CELLS - @ . CR +[Hera] -2147483648 +[Hera] [HADES][TEST ] [KRELTSC: 3660843753] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3662186976] Expected: Should compile min int +[Hera] [HADES][TEST ] [KRELTSC: 3663028299] Running ,.multiple: 10 , 20 , HERE 1 CELLS - @ . HERE 1 CELLS +[Hera] 20 20 +[Hera] [HADES][TEST ] [KRELTSC: 3664585113] Test passed +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3665944191] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 3666825708] Running ,.empty_stack: , +[Hera] [HADES][TEST ] [KRELTSC: 3667675284] Expected error occurred +[Hera] [HADES][TEST ] Testing , ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3669135729] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3670067604] ,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3671019135] Testing word: C, +[Hera] [HADES][TEST ] [KRELTSC: 3671742333] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3672549006] Running C,.basic: 65 C, HERE 1 - C@ . CR +[Hera] 65 +[Hera] [HADES][TEST ] [KRELTSC: 3673824378] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3675174027] Expected: Should compile byte 65 +[Hera] [HADES][TEST ] [KRELTSC: 3676030407] Running C,.zero: 0 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3677303910] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3678669078] Expected: Should compile byte 0 +[Hera] [HADES][TEST ] [KRELTSC: 3679506327] Running C,.high_byte: 255 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3680879811] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3682215495] Expected: Should compile byte 255 +[Hera] [HADES][TEST ] [KRELTSC: 3683114001] Running C,.truncation: 256 C, HERE 1 - C@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3684390990] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3685724910] Expected: Should truncate to 0 +[Hera] [HADES][TEST ] [KRELTSC: 3686577657] Running C,.negative: -1 C, HERE 1 - C@ . CR +[Hera] 255 +[Hera] [HADES][TEST ] [KRELTSC: 3687902715] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3689214354] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 3690078567] Running C,.multiple: 65 C, 66 C, HERE 2 - C@ . HERE 1 - C@ . +[Hera] 65 66 +[Hera] [HADES][TEST ] [KRELTSC: 3691645839] Test passed +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3693008760] Expected: Should compile multiple +[Hera] [HADES][TEST ] [KRELTSC: 3693872196] Running C,.empty_stack: C, +[Hera] [HADES][TEST ] [KRELTSC: 3694719672] Expected error occurred +[Hera] [HADES][TEST ] Testing C, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3696247044] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3697169217] C,: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3698072553] Testing word: 2, +[Hera] [HADES][TEST ] [KRELTSC: 3698794323] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3699601689] Running 2,.basic: 12345 67890 2, HERE 2 CELLS - 2@ . . CR +[Hera] 67890 12345 +[Hera] [HADES][TEST ] [KRELTSC: 3701082252] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3702542193] Expected: Should compile double +[Hera] [HADES][TEST ] [KRELTSC: 3703433181] Running 2,.zero: 0 0 2, HERE 2 CELLS - 2@ . . CR +[Hera] 0 0 +[Hera] [HADES][TEST ] [KRELTSC: 3704789319] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3706156272] Expected: Should compile zero double +[Hera] [HADES][TEST ] [KRELTSC: 3707057298] Running 2,.negative: -1000 -2000 2, HERE 2 CELLS - 2@ . . CR +[Hera] -2000 -1000 +[Hera] [HADES][TEST ] [KRELTSC: 3708576669] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3709934193] Expected: Should compile negative double +[Hera] [HADES][TEST ] [KRELTSC: 3710822703] Running 2,.large: 2147483647 -1 2, HERE 2 CELLS - 2@ . . CR +[Hera] -1 2147483647 +[Hera] [HADES][TEST ] [KRELTSC: 3712344699] Test passed +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3713677611] Expected: Should compile large double +[Hera] [HADES][TEST ] [KRELTSC: 3714589158] Running 2,.one_item: 42 2, +[Hera] [HADES][TEST ] [KRELTSC: 3715451901] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3716856696] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3717766227] Running 2,.empty_stack: 2, +[Hera] [HADES][TEST ] [KRELTSC: 3718587705] Expected error occurred +[Hera] [HADES][TEST ] Testing 2, ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3720023286] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3720959235] 2,: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3721875759] Testing word: PAD +[Hera] [HADES][TEST ] [KRELTSC: 3722618508] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3723359703] Running PAD.basic: PAD PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3724569114] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3725905155] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3726734025] Running PAD.different_from_here: PAD HERE = . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3728012232] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3729344682] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 3730161645] Running PAD.stability: PAD DUP PAD = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3731400540] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3732815247] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3733617972] Running PAD.usable: PAD 42 OVER ! @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3734884944] Test passed +[Hera] [HADES][TEST ] Testing PAD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3736251603] Expected: Should be usable memory +[Hera] [HADES][TEST ] [KRELTSC: 3737178711] PAD: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3738100674] Testing word: SP@ +[Hera] [HADES][TEST ] [KRELTSC: 3738816228] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3739583820] Running SP@.depth_effect: 42 SP@ SWAP DROP SP@ = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3741066315] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3742427787] Expected: Should show stack effect +[Hera] [HADES][TEST ] [KRELTSC: 3743317935] Running SP@.empty_stack: DEPTH 0= SP@ AND . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3744590514] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3745983927] Expected: Should work on empty stack +[Hera] [HADES][TEST ] [KRELTSC: 3746863155] Running SP@.multiple_items: 1 2 3 SP@ SWAP DROP SWAP DROP SWA +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3748364928] Test passed +[Hera] [HADES][TEST ] Testing SP@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3749724027] Expected: Should track changes +[Hera] [HADES][TEST ] [KRELTSC: 3750571671] SP@: 3 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3751510980] Testing word: SP! +[Hera] [HADES][TEST ] [KRELTSC: 3752252490] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3753050721] Running SP!.basic_restore: 1 2 3 SP@ 4 5 6 DROP DROP DROP SP! +[Hera] 3 [HADES][TEST ] [KRELTSC: 3754648674] Test passed +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3755829189] Expected: Should restore stack +[Hera] [HADES][TEST ] [KRELTSC: 3756696804] Running SP!.invalid_addr: 0 SP! +[Hera] [HADES][TEST ] [KRELTSC: 3757613181] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3759040698] Expected: Should cause error +[Hera] [HADES][TEST ] [KRELTSC: 3759882084] Running SP!.empty_stack: SP! +[Hera] [HADES][TEST ] [KRELTSC: 3760744995] Expected error occurred +[Hera] [HADES][TEST ] Testing SP! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3762230346] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 3763171209] SP!: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3764118225] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 3764887413] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3765678882] Running LATEST.basic: LATEST LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3767016393] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3768400860] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 3769204866] Running LATEST.stability: LATEST DUP LATEST = . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3770548173] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3771919074] Expected: Should be stable +[Hera] [HADES][TEST ] [KRELTSC: 3772754454] LATEST: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3773704998] Testing word: COMPILATION +[Hera] [HADES][TEST ] [KRELTSC: 3774473787] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3775255092] Running COMPILATION.here_comma_sequence: HERE 10 , 20 , 30 , +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3776696889] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3778087299] Expected: Should advance HERE by 12 +[Hera] [HADES][TEST ] [KRELTSC: 3778998006] Running COMPILATION.mixed_compilation: HERE 42 , 65 C, 100 20 +[Hera] [HADES][INFO ] [KRELTSC: 3780507087] L8[TABLE]: Config 2 → 3 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3781968477] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3783399396] Expected: Should advance correctly +[Hera] [HADES][TEST ] [KRELTSC: 3784286331] Running COMPILATION.allot_comma_combo: HERE 10 ALLOT 99 , HER +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3785758242] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3787176666] Expected: Should combine allot and comma +[Hera] [HADES][TEST ] [KRELTSC: 3788118054] Running COMPILATION.pad_isolation: PAD 999 OVER ! HERE 42 , P +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 3789583623] Test passed +[Hera] [HADES][TEST ] Testing COMPILATION ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3790989531] Expected: PAD should be isolated +[Hera] [HADES][TEST ] [KRELTSC: 3791912166] COMPILATION: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3792890073] Testing word: STACK_MGMT +[Hera] [HADES][TEST ] [KRELTSC: 3793687170] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3794457051] Running STACK_MGMT.sp_round_trip: 42 43 SP@ >R 44 45 R> SP! . +[Hera] 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 3795962121] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3797365698] Expected: Should print: 43 42 +[Hera] [HADES][TEST ] [KRELTSC: 3798186189] Running STACK_MGMT.depth_preservation: 1 2 3 DEPTH >R SP@ >R +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3799664904] Test passed +[Hera] [HADES][TEST ] Testing STACK_MGMT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3801124761] Expected: Should preserve depth +[Hera] [HADES][TEST ] [KRELTSC: 3802027488] STACK_MGMT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3803076018] === Dictionary Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 3804185973] +[Hera] === Testing Module: Dictionary Manipulation Words === +[Hera] [HADES][INFO ] [KRELTSC: 3805473756] Running Dictionary Manipulation Words Tests (Module 14)... +[Hera] [HADES][TEST ] [KRELTSC: 3806556831] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3807657378] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 3808421358] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3809197686] Running CREATE.basic: CREATE test1 42 , test1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3811343592] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3812738517] Expected: Should create and store +[Hera] [HADES][TEST ] [KRELTSC: 3813609030] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 3814559658] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3816046794] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 3816951453] Running CREATE.redefine_shadows: CREATE T 1 , CREATE T 2 , T +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 3818893197] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3820332432] Expected: Newest definition should win (prints 2) +[Hera] [HADES][TEST ] [KRELTSC: 3821362293] Running CREATE.duplicate: CREATE test2 CREATE test2 +[Hera] [HADES][TEST ] [KRELTSC: 3822930720] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3824271570] Expected: Should allow redefinition (latest shadows) +[Hera] [HADES][TEST ] [KRELTSC: 3825276588] CREATE: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3826308696] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3827411700] Testing word: FORGET +[Hera] [HADES][TEST ] [KRELTSC: 3828156969] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3828927732] Running FORGET.basic: CREATE temp1 FORGET temp1 +[Hera] [HADES][TEST ] [KRELTSC: 3830915256] Test passed +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3832297623] Expected: Should forget word +[Hera] [HADES][TEST ] [KRELTSC: 3833127144] Running FORGET.nonexistent: FORGET nonexistent +[Hera] [HADES][TEST ] [KRELTSC: 3834269292] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3835741707] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 3836655144] Running FORGET.protected: FORGET FORGET +[Hera] [HADES][TEST ] [KRELTSC: 3837647793] Expected error occurred +[Hera] [HADES][TEST ] Testing FORGET ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3839095848] Expected: Should protect system words +[Hera] [HADES][TEST ] [KRELTSC: 3840008571] FORGET: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3840949854] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3842078583] Testing word: FENCE +[Hera] [HADES][TEST ] [KRELTSC: 3842819463] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3843591906] Running FENCE.basic: CREATE fnc1 FENCE CREATE fnc2 FORGET fnc +[Hera] [HADES][TEST ] [KRELTSC: 3845475459] Test passed +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3846843168] Expected: Should forget a word defined after FENCE +[Hera] [HADES][TEST ] [KRELTSC: 3847806039] Running FENCE.protects_older: CREATE fnc3 CREATE fnc4 FENCE F +[Hera] [HADES][TEST ] [KRELTSC: 3849504771] Expected error occurred +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3850961478] Expected: Should refuse to forget a word defined before FEN +[Hera] [HADES][TEST ] [KRELTSC: 3852032625] Running FENCE.forget_latest_keeps_predecessor: CREATE fnc5 FE +[Hera] [HADES][TEST ] [KRELTSC: 3854037159] Test passed +[Hera] [HADES][TEST ] Testing FENCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3855409446] Expected: Forgetting the newest word must not disturb an ol +[Hera] [HADES][TEST ] [KRELTSC: 3856481853] FENCE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3857410893] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3858515724] Testing word: IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 3859274370] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3860057922] Running IMMEDIATE.basic: : test3 42 ; IMMEDIATE test3 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 3862174470] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3863573826] Expected: Should execute immediately +[Hera] [HADES][TEST ] [KRELTSC: 3864478632] Running IMMEDIATE.already_immediate: : test4 43 ; IMMEDIATE I +[Hera] [HADES][TEST ] [KRELTSC: 3865879479] Test passed +[Hera] [HADES][TEST ] Testing IMMEDIATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3867275097] Expected: Should handle double immediate +[Hera] [HADES][TEST ] [KRELTSC: 3868264533] IMMEDIATE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3869367915] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3870462225] Testing word: FIND +[Hera] [HADES][TEST ] [KRELTSC: 3871199703] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3871947198] Running FIND.existing: FIND DUP . CR +[Hera] 35722304 +[Hera] [HADES][TEST ] [KRELTSC: 3873362787] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3874708845] Expected: Should find system word +[Hera] [HADES][TEST ] [KRELTSC: 3875572302] Running FIND.user_word: : test5 44 ; FIND test5 . CR +[Hera] 36056640 +[Hera] [HADES][TEST ] [KRELTSC: 3877207257] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3878595000] Expected: Should find user word +[Hera] [HADES][TEST ] [KRELTSC: 3879488781] Running FIND.nonexistent: FIND nonexistent . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 3880759302] Test passed +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3882156831] Expected: Should return 0 +[Hera] [HADES][TEST ] [KRELTSC: 3882956805] Running FIND.empty: FIND +[Hera] [HADES][TEST ] [KRELTSC: 3883821669] Expected error occurred +[Hera] [HADES][TEST ] Testing FIND ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3885300678] Expected: Should error (no token) +[Hera] [HADES][TEST ] [KRELTSC: 3886209873] FIND: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3887128833] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3888258381] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3889062912] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3889836678] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3890929707] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3892375032] Expected: Should set current to context +[Hera] [HADES][TEST ] [KRELTSC: 3893317470] Running DEFINITIONS.multiple: FORTH DEFINITIONS DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 3894444540] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3895863909] Expected: Should be idempotent +[Hera] [HADES][TEST ] [KRELTSC: 3896749962] DEFINITIONS: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3897747063] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3898834275] Testing word: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 3899580300] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3900354780] Running SMUDGE.during_def: : test6 SMUDGE 45 ; +[Hera] [HADES][TEST ] [KRELTSC: 3901648758] Test passed +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3903041037] Expected: Should hide incomplete def +[Hera] [HADES][TEST ] [KRELTSC: 3903921693] Running SMUDGE.outside_def: SMUDGE +[Hera] [HADES][TEST ] [KRELTSC: 3904873728] Expected error occurred +[Hera] [HADES][TEST ] Testing SMUDGE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3906310632] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 3907195341] SMUDGE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3908125599] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3909226251] Testing word: LATEST +[Hera] [HADES][TEST ] [KRELTSC: 3909961293] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3910800390] Running LATEST.basic: LATEST @ . CR +[Hera] 35803728 +[Hera] [HADES][TEST ] [KRELTSC: 3912119526] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3913459179] Expected: Should show latest word +[Hera] [HADES][TEST ] [KRELTSC: 3914339247] Running LATEST.after_def: : test7 46 ; LATEST @ . CR +[Hera] 35842912 +[Hera] [HADES][TEST ] [KRELTSC: 3916044636] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3917430048] Expected: Should update after def +[Hera] [HADES][TEST ] [KRELTSC: 3918291741] Running LATEST.after_forget: CREATE test8 FORGET test8 LATEST +[Hera] 35842912 +[Hera] [HADES][TEST ] [KRELTSC: 3920074704] Test passed +[Hera] [HADES][TEST ] Testing LATEST ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3921500919] Expected: Should update after forget +[Hera] [HADES][TEST ] [KRELTSC: 3922434327] LATEST: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3923410995] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3924490920] Testing word: >BODY +[Hera] [HADES][TEST ] [KRELTSC: 3925223253] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3926042127] Running >BODY.basic: CREATE test9 ' test9 >BODY . CR +[Hera] 36058152 +[Hera] [HADES][TEST ] [KRELTSC: 3928041852] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3929431632] Expected: Should get param field +[Hera] [HADES][TEST ] [KRELTSC: 3930280872] Running >BODY.variable: VARIABLE var1 ' var1 >BODY . CR +[Hera] 36058616 +[Hera] [HADES][TEST ] [KRELTSC: 3932187063] Test passed +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3933561849] Expected: Should get var storage +[Hera] [HADES][TEST ] [KRELTSC: 3934415310] Running >BODY.nonexistent: ' NONEXISTENT >BODY +[Hera] [HADES][ERROR] [KRELTSC: 3935417073] ': word 'NONEXISTENT' not found +[Hera] [HADES][TEST ] [KRELTSC: 3936451575] Expected error occurred +[Hera] [HADES][TEST ] Testing >BODY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3937920441] Expected: Should handle missing word +[Hera] [HADES][TEST ] [KRELTSC: 3938829636] >BODY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3939742317] ▶ Testing module: src/test_runner/modules/dictionary_manipula +[Hera] [HADES][TEST ] [KRELTSC: 3940837257] Testing word: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 3941567028] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3942338295] Running HIDDEN.basic: : test10 HIDDEN 47 ; +[Hera] [HADES][TEST ] [KRELTSC: 3943730259] Test passed +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3945139506] Expected: Should hide word +[Hera] [HADES][TEST ] [KRELTSC: 3945990951] Running HIDDEN.outside_def: HIDDEN +[Hera] [HADES][TEST ] [KRELTSC: 3946948950] Expected error occurred +[Hera] [HADES][TEST ] Testing HIDDEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3948435204] Expected: Should error outside def +[Hera] [HADES][TEST ] [KRELTSC: 3949325604] HIDDEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 3950282994] === Dictionary Manipulation Words Summary: 0 passed, 0 failed, +[Hera] [HADES][INFO ] [KRELTSC: 3951397359] +[Hera] === Testing Module: Vocabulary Words === +[Hera] [HADES][INFO ] [KRELTSC: 3952587492] Running Vocabulary Words Tests (Module 15)... +[Hera] [HADES][TEST ] [KRELTSC: 3953538435] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 3954640305] Testing word: VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 3955427343] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 3956161797] Running VOCABULARY.basic: VOCABULARY TEST-VOC1 TEST-VOC1 DEFI +[Hera] [HADES][TEST ] [KRELTSC: 3961423074] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3962830032] Expected: Should create vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 3963591576] Running VOCABULARY.create_and_switch: VOCABULARY MYVOC MYVOC +[Hera] 36063136 +[Hera] [HADES][TEST ] [KRELTSC: 3968554884] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3970000860] Expected: Should create and switch +[Hera] [HADES][TEST ] [KRELTSC: 3970876875] Running VOCABULARY.word_isolation: VOCABULARY ISOLATED ISOLAT +[Hera] [HADES][TEST ] [KRELTSC: 3978811494] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3979868004] Expected: Should create word in isolated vocab +[Hera] [HADES][TEST ] [KRELTSC: 3980627973] Running VOCABULARY.cross_vocab_access: VOCABULARY V1 V1 DEFIN +[Hera] 11 +[Hera] [HADES][TEST ] [KRELTSC: 3988472460] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3989531763] Expected: Should access word across vocabs +[Hera] [HADES][TEST ] [KRELTSC: 3990367647] Running VOCABULARY.multiple_vocabs: VOCABULARY VA VOCABULARY +[Hera] [HADES][TEST ] [KRELTSC: 3995470773] Test passed +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 3996795957] Expected: Should create multiple vocabs +[Hera] [HADES][TEST ] [KRELTSC: 3997601475] Running VOCABULARY.duplicate: VOCABULARY TESTVOC VOCABULARY T +[Hera] [HADES][ERROR] [KRELTSC: 3998880165] VOCABULARY: duplicate 'TESTVOC' +[Hera] [HADES][TEST ] [KRELTSC: 3999737343] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4001221602] Expected: Should handle duplicate +[Hera] [HADES][TEST ] [KRELTSC: 4002104652] Running VOCABULARY.empty_name: VOCABULARY +[Hera] [HADES][ERROR] [KRELTSC: 4003048119] VOCABULARY: missing name +[Hera] [HADES][TEST ] [KRELTSC: 4003870080] Expected error occurred +[Hera] [HADES][TEST ] Testing VOCABULARY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4005401295] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 4006303896] VOCABULARY: 7 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4007332455] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4008404337] Testing word: FORTH +[Hera] [HADES][TEST ] [KRELTSC: 4009113108] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4009884270] Running FORTH.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 4013618490] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4014954132] Expected: Should select FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 4015821495] Running FORTH.persistence: FORTH : TEST1 42 ; TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4017339144] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4018725060] Expected: Should find word in FORTH +[Hera] [HADES][TEST ] [KRELTSC: 4019744715] Running FORTH.from_other: VOCABULARY OTHER-VOC OTHER-VOC FORT +[Hera] [HADES][TEST ] [KRELTSC: 4024546638] Test passed +[Hera] [HADES][TEST ] Testing FORTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4025903364] Expected: Should return to FORTH +[Hera] [HADES][TEST ] [KRELTSC: 4026634416] FORTH: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4027353897] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4028177286] Testing word: DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 4028971191] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4029830007] Running DEFINITIONS.basic: FORTH DEFINITIONS +[Hera] [HADES][TEST ] [KRELTSC: 4033634451] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4035099558] Expected: Should set current vocabulary +[Hera] [HADES][TEST ] [KRELTSC: 4036049199] Running DEFINITIONS.new_vocab: VOCABULARY TEST-VOC6 TEST-VOC6 +[Hera] [HADES][TEST ] [KRELTSC: 4040919162] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4042323222] Expected: Should set new current +[Hera] [HADES][TEST ] [KRELTSC: 4043148291] Running DEFINITIONS.word_creation: VOCABULARY TEST-VOC7 TEST- +[Hera] [HADES][TEST ] [KRELTSC: 4047969954] Test passed +[Hera] [HADES][TEST ] Testing DEFINITIONS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4049352279] Expected: Should create in correct vocab +[Hera] [HADES][TEST ] [KRELTSC: 4050167646] DEFINITIONS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4051018083] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4052074194] Testing word: CONTEXT +[Hera] [HADES][TEST ] [KRELTSC: 4052888952] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4053741783] Running CONTEXT.basic: CONTEXT @ . CR +[Hera] 36069120 +[Hera] [HADES][TEST ] [KRELTSC: 4055110710] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4056496206] Expected: Should show current context +[Hera] [HADES][TEST ] [KRELTSC: 4057431462] Running CONTEXT.modify: CONTEXT @ 1+ CONTEXT ! +[Hera] [HADES][TEST ] [KRELTSC: 4058511681] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4059939639] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 4061017653] Running CONTEXT.initial: FORTH CONTEXT @ . CR +[Hera] 35813536 +[Hera] [HADES][TEST ] [KRELTSC: 4065045012] Test passed +[Hera] [HADES][TEST ] Testing CONTEXT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4066424880] Expected: Should show FORTH vocab +[Hera] [HADES][TEST ] [KRELTSC: 4067400015] CONTEXT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4068553293] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4069838577] Testing word: CURRENT +[Hera] [HADES][TEST ] [KRELTSC: 4070740338] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4071676476] Running CURRENT.basic: CURRENT @ . CR +[Hera] 36069120 +[Hera] [HADES][TEST ] [KRELTSC: 4073207880] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4074619584] Expected: Should show current vocab +[Hera] [HADES][TEST ] [KRELTSC: 4075496523] Running CURRENT.after_def: VOCABULARY TEST-VOC8 TEST-VOC8 DEF +[Hera] 36065824 +[Hera] [HADES][TEST ] [KRELTSC: 4080829599] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4082202390] Expected: Should show new vocab +[Hera] [HADES][TEST ] [KRELTSC: 4083039933] Running CURRENT.protect: CURRENT @ 1+ CURRENT ! +[Hera] [HADES][INFO ] [KRELTSC: 4083975798] L8[TABLE]: Config 3 → 4 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] [HADES][TEST ] [KRELTSC: 4084918278] Test passed +[Hera] [HADES][TEST ] Testing CURRENT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4086294933] Expected: Should allow modification (impl-defined effect) +[Hera] [HADES][TEST ] [KRELTSC: 4087371141] CURRENT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4088430339] ▶ Testing module: src/test_runner/modules/vocabulary_words_te +[Hera] [HADES][TEST ] [KRELTSC: 4089542352] Testing word: ORDER +[Hera] [HADES][TEST ] [KRELTSC: 4090334619] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4091159667] Running ORDER.basic: ORDER +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4093407381] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4094785947] Expected: Should list search order +[Hera] [HADES][TEST ] [KRELTSC: 4095692286] Running ORDER.multiple: VOCABULARY TEST-VOC9 TEST-VOC9 DEFINI +[Hera] Search order: +[Hera] + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4101505359] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4102627389] Expected: Should show all vocabs +[Hera] [HADES][TEST ] [KRELTSC: 4103288700] Running ORDER.after_forth: TEST-VOC9 FORTH ORDER +[Hera] Search order: + + +[Hera] Current: + + +[Hera] [HADES][TEST ] [KRELTSC: 4107525828] Test passed +[Hera] [HADES][TEST ] Testing ORDER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4108911114] Expected: Should show FORTH only +[Hera] [HADES][TEST ] [KRELTSC: 4109781732] ORDER: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4110800883] === Vocabulary Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 4111861971] +[Hera] === Testing Module: System Words === +[Hera] [HADES][INFO ] [KRELTSC: 4112984568] Running System Words Tests (Module 18)... +[Hera] [HADES][WARN ] [KRELTSC: 4113919656] Some system tests marked as unimplemented due to system-level e +[Hera] [HADES][TEST ] [KRELTSC: 4115024466] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4116145719] Testing word: QUIT +[Hera] [HADES][TEST ] [KRELTSC: 4116870807] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4117653603] Running QUIT.in_definition: : BAD-WORD QUIT ; +[Hera] [HADES][TEST ] [KRELTSC: 4119035382] Expected error occurred +[Hera] [HADES][TEST ] Testing QUIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4120608597] Expected: Should prevent compilation +[Hera] [HADES][TEST ] [KRELTSC: 4121537721] QUIT: 1 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4122520752] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4123628250] Testing word: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 4124376186] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4125184854] Running ABORT.basic: ABORT +[Hera] [HADES][TEST ] [KRELTSC: 4126152009] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4127470620] Expected: Should clear stacks and return to QUIT +[Hera] [HADES][TEST ] [KRELTSC: 4128462114] Running ABORT.with_data: 1 2 3 ABORT DEPTH . CR +[Hera] [HADES][TEST ] [KRELTSC: 4129477653] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4130855190] Expected: Should clear stack +[Hera] [HADES][TEST ] [KRELTSC: 4131742755] Running ABORT.in_definition_runtime: : BAD-WORD ABORT ; 123 +[Hera] [HADES][TEST ] [KRELTSC: 4133304504] Test passed +[Hera] [HADES][TEST ] Testing ABORT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4134642015] Expected: ABORT may appear in a definition; when executed i +[Hera] [HADES][TEST ] [KRELTSC: 4135733532] ABORT: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4136676705] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4137774312] Testing word: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 4138501962] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4139265102] Running ABORT".condition_true: -1 ABORT" Error" + +[Hera] [HADES][TEST ] [KRELTSC: 4140676470] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4142038488] Expected: Should abort with message (no error; stacks clear +[Hera] [HADES][TEST ] [KRELTSC: 4143109425] Running ABORT".condition_false: 0 ABORT" Error" +[Hera] [HADES][TEST ] [KRELTSC: 4144108164] Test passed +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4145471043] Expected: Should not abort +[Hera] [HADES][TEST ] [KRELTSC: 4146288951] Running ABORT".empty_stack: ABORT" +[Hera] [HADES][TEST ] [KRELTSC: 4147205454] Expected error occurred +[Hera] [HADES][TEST ] Testing ABORT" ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4148703825] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4149623604] ABORT": 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4150612641] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4151714028] Testing word: BYE +[Hera] [HADES][TEST ] [KRELTSC: 4152458037] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4153231530] BYE: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4154214204] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4155324915] Testing word: COLD +[Hera] [HADES][TEST ] [KRELTSC: 4156109223] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4156868688] COLD: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4157799954] ▶ Testing module: src/test_runner/modules/system_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 4158872550] Testing word: WARM +[Hera] [HADES][TEST ] [KRELTSC: 4159616895] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4160400447] WARM: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4161404667] === System Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 4162500489] +[Hera] === Testing Module: Defining Words === +[Hera] [HADES][INFO ] [KRELTSC: 4163681865] Running Defining Words Tests (Module 13)... +[Hera] [HADES][TEST ] [KRELTSC: 4164679050] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4165747635] Testing word: : +[Hera] [HADES][TEST ] [KRELTSC: 4166447019] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4167223893] Running :.basic: : TEST1 42 ; TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4168803975] Test passed +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4170139155] Expected: Should define and execute +[Hera] [HADES][TEST ] [KRELTSC: 4171069245] Running :.empty_name: : +[Hera] [HADES][TEST ] [KRELTSC: 4171892109] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4173306333] Expected: Should handle empty definition +[Hera] [HADES][TEST ] [KRELTSC: 4174239069] Running :.nested: : TEST3 : ; +[Hera] [HADES][ERROR] [KRELTSC: 4175376051] Nested ':' inside a definition is not allowed +[Hera] [HADES][TEST ] [KRELTSC: 4176354525] Expected error occurred +[Hera] [HADES][TEST ] Testing : ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4177777947] Expected: Should prevent nested definition +[Hera] [HADES][TEST ] [KRELTSC: 4178734749] :: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4179689703] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4180760367] Testing word: ; +[Hera] [HADES][TEST ] [KRELTSC: 4181480205] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4182296370] Running ;.alone: ; +[Hera] [HADES][TEST ] [KRELTSC: 4183178664] Expected error occurred +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4184652045] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4185614874] Running ;.immediate: : TEST4 42 ; IMMEDIATE TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4187309028] Test passed +[Hera] [HADES][TEST ] Testing ; ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4188668022] Expected: Should handle immediate +[Hera] [HADES][TEST ] [KRELTSC: 4189577721] ;: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4190523855] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4191636939] Testing word: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 4192394073] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4193160825] Running CONSTANT.basic: 42 CONSTANT MEANING MEANING . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4195177161] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4196622570] Expected: Should create constant +[Hera] [HADES][TEST ] [KRELTSC: 4197510387] Running CONSTANT.zero: 0 CONSTANT ZERO ZERO . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4199072829] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4200468048] Expected: Should handle zero +[Hera] [HADES][TEST ] [KRELTSC: 4201301202] Running CONSTANT.negative: -1 CONSTANT MINUS MINUS . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 4202906274] Test passed +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4204278645] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4205134290] Running CONSTANT.empty_stack: CONSTANT +[Hera] [HADES][TEST ] [KRELTSC: 4206084477] Expected error occurred +[Hera] [HADES][TEST ] Testing CONSTANT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4207618674] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4208561805] CONSTANT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4209559704] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4210671276] Testing word: VARIABLE +[Hera] [HADES][TEST ] [KRELTSC: 4211412387] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4212179307] Running VARIABLE.basic: VARIABLE VAR1 42 VAR1 ! VAR1 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4214071428] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4215486387] Expected: Should create variable +[Hera] [HADES][TEST ] [KRELTSC: 4216367043] Running VARIABLE.multiple: VARIABLE VAR2 VARIABLE VAR3 +[Hera] [HADES][TEST ] [KRELTSC: 4217953068] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4219352844] Expected: Should create multiple +[Hera] [HADES][TEST ] [KRELTSC: 4220242047] Running VARIABLE.store_fetch: VARIABLE VAR4 -99 VAR4 ! VAR4 @ +[Hera] -99 +[Hera] [HADES][TEST ] [KRELTSC: 4221980889] Test passed +[Hera] [HADES][TEST ] Testing VARIABLE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4223368758] Expected: Should store/fetch +[Hera] [HADES][TEST ] [KRELTSC: 4224204831] VARIABLE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4225126269] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4226233011] Testing word: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 4226953563] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4227722646] Running CREATE.basic: CREATE OBJ1 +[Hera] [HADES][TEST ] [KRELTSC: 4228945497] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4230334710] Expected: Should create word +[Hera] [HADES][TEST ] [KRELTSC: 4231157259] Running CREATE.with_data: CREATE OBJ2 42 , OBJ2 @ . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4232792529] Test passed +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4234161162] Expected: Should allow data +[Hera] [HADES][TEST ] [KRELTSC: 4234992258] Running CREATE.empty_name: CREATE +[Hera] [HADES][TEST ] [KRELTSC: 4235861406] Expected error occurred +[Hera] [HADES][TEST ] Testing CREATE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4237349760] Expected: Should handle empty name +[Hera] [HADES][TEST ] [KRELTSC: 4238270043] CREATE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4239206307] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4240322058] Testing word: DOES> +[Hera] [HADES][TEST ] [KRELTSC: 4241022681] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4241784981] Running DOES>.basic: : CONST CREATE , DOES> @ ; 42 CONST MEAN +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4244940021] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4246291581] Expected: Should define behavior +[Hera] [HADES][TEST ] [KRELTSC: 4247164110] Running DOES>.multiple: : ARRAY CREATE DOES> SWAP CELLS + ; C +[Hera] [HADES][TEST ] [KRELTSC: 4248966456] Test passed +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4250336349] Expected: Should work with arrays +[Hera] [HADES][TEST ] [KRELTSC: 4251237669] Running DOES>.outside: DOES> +[Hera] [HADES][ERROR] [KRELTSC: 4252094322] DOES>: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4252848957] Expected error occurred +[Hera] [HADES][TEST ] Testing DOES> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4254340545] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4255313328] DOES>: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4256284788] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4257403626] Testing word: [ +[Hera] [HADES][TEST ] [KRELTSC: 4258099293] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4258853130] Running [.basic: : TEST5 [ 42 ] LITERAL ; TEST5 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4260792564] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4262200299] Expected: Should enter interpret +[Hera] [HADES][TEST ] [KRELTSC: 4263102312] Running [.outside: [ +[Hera] [HADES][TEST ] [KRELTSC: 4263878745] Test passed +[Hera] [HADES][TEST ] Testing [ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4265220834] Expected: Should be allowed outside definition (no error) +[Hera] [HADES][TEST ] [KRELTSC: 4266313527] [: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4267226544] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4268304159] Testing word: ] +[Hera] [HADES][TEST ] [KRELTSC: 4269029310] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4269771030] Running ].basic: [ 42 ] . CR +[Hera] [HADES][TEST ] [KRELTSC: 4270764540] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4272173703] Expected: Should resume compile +[Hera] [HADES][TEST ] [KRELTSC: 4273070214] Running ].nested: : TEST6 [ ] 42 ; TEST6 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4274738118] Test passed +[Hera] [HADES][TEST ] Testing ] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4276076889] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4276909308] ]: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4277847714] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4278923481] Testing word: DEFER +[Hera] [HADES][TEST ] [KRELTSC: 4279662387] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4280442096] Running DEFER.basic: DEFER DF1 : DF1W 42 . CR ; ' DF1W IS DF1 +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4283022156] Test passed +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4284397950] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4285239819] Running DEFER.uninit: DEFER DF2 DF2 +[Hera] [HADES][ERROR] [KRELTSC: 4286457861] DEFER runtime: no target set for 'DF2' +[Hera] [HADES][TEST ] [KRELTSC: 4287378333] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4288844700] Expected: Should error: uninitialized deferred word +[Hera] [HADES][TEST ] [KRELTSC: 4289886174] DEFER: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4290845664] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4291935711] Testing word: IS +[Hera] [HADES][TEST ] [KRELTSC: 4292663970] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4293443217] Running IS.basic: DEFER IS1 : IS1W 99 . CR ; ' IS1W IS IS1 IS +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4295781126] Test passed +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4297143018] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4297976697] Running IS.not_defer: 42 IS DUP +[Hera] [HADES][ERROR] [KRELTSC: 4298897736] IS: 'DUP' was not created by DEFER +[Hera] [HADES][TEST ] [KRELTSC: 4299799203] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4301199399] Expected: Should error: DUP is not a DEFER word +[Hera] [HADES][TEST ] [KRELTSC: 4302211683] Running IS.not_found: 42 IS NOSUCH +[Hera] [HADES][ERROR] [KRELTSC: 4303122852] IS: word 'NOSUCH' not found +[Hera] [HADES][TEST ] [KRELTSC: 4303954179] Expected error occurred +[Hera] [HADES][TEST ] Testing IS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4305430416] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4306328439] IS: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4307256807] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4308341436] Testing word: DEFER@ +[Hera] [HADES][TEST ] [KRELTSC: 4309064046] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4309887099] Running DEFER@.basic: DEFER DFA1 : DFA1W 7 . CR ; ' DFA1W IS +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 4312314846] Test passed +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4313679216] Expected: Should print: -1 +[Hera] [HADES][TEST ] [KRELTSC: 4314521673] Running DEFER@.not_found: DEFER@ NOSUCH2 +[Hera] [HADES][ERROR] [KRELTSC: 4315508526] DEFER@: word 'NOSUCH2' not found +[Hera] [HADES][TEST ] [KRELTSC: 4316391030] Expected error occurred +[Hera] [HADES][TEST ] Testing DEFER@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4317898137] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4318844901] DEFER@: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4319796432] ▶ Testing module: src/test_runner/modules/defining_words_test +[Hera] [HADES][TEST ] [KRELTSC: 4320888747] Testing word: ['] +[Hera] [HADES][TEST ] [KRELTSC: 4321605519] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4322410743] Running ['].compile_xt: : BKT1 ['] DUP ; 77 BKT1 EXECUTE . . +[Hera] 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 4324686282] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4326069552] Expected: Should print: 77 77 +[Hera] [HADES][TEST ] [KRELTSC: 4326926919] Running ['].pin_like: : BKT2 ['] DROP ; 1 2 BKT2 EXECUTE . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4328781093] Test passed +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4330232046] Expected: Should print: 1 +[Hera] [HADES][TEST ] [KRELTSC: 4331052621] Running ['].not_found: : BKT3 ['] NOSUCHWORD ; +[Hera] [HADES][ERROR] [KRELTSC: 4332378015] [']': word 'NOSUCHWORD' not found +[Hera] [HADES][TEST ] [KRELTSC: 4333232862] Expected error occurred +[Hera] [HADES][TEST ] Testing ['] ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4334658531] Expected: Should error: word not found +[Hera] [HADES][TEST ] [KRELTSC: 4335578436] [']: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4336538640] === Defining Words Summary: 0 passed, 0 failed, 0 skipped, 0 er +[Hera] [HADES][INFO ] [KRELTSC: 4337628057] +[Hera] === Testing Module: Control Words === +[Hera] [HADES][INFO ] [KRELTSC: 4338766362] Running Control Words Tests (Module 12)... +[Hera] [HADES][TEST ] [KRELTSC: 4339725012] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4340848701] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 4341574629] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4342350159] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4345007331] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4346336379] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 4347216405] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 4349087526] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4350425205] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 4351325748] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; +[Hera] [HADES][INFO ] [KRELTSC: 4366017012] L8[TABLE]: Config 4 → 5 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4367101452] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4368152523] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4368810033] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4370243136] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4371418359] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4372345026] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 4373231226] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4373968389] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4375438515] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4376380071] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4377339750] Testing word: IF +[Hera] [HADES][TEST ] [KRELTSC: 4378054632] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4378905489] Running IF.true: : TEST1 IF 42 ELSE 24 THEN ; -1 TEST1 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4380899943] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4382402892] Expected: Should take true branch +[Hera] [HADES][TEST ] [KRELTSC: 4383298500] Running IF.false: : TEST2 IF 42 ELSE 24 THEN ; 0 TEST2 . CR +[Hera] 24 +[Hera] [HADES][TEST ] [KRELTSC: 4385189739] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4386615891] Expected: Should take false branch +[Hera] [HADES][TEST ] [KRELTSC: 4387516224] Running IF.nested: : TEST3 IF IF 1 ELSE 2 THEN ELSE 3 THEN ; +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4389385980] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4390753836] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4391607108] Running IF.no_else: : TEST4 IF 42 THEN ; -1 TEST4 . CR +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4393320393] Test passed +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4394679744] Expected: Should work without ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4395567771] Running IF.empty_stack: IF +[Hera] [HADES][ERROR] [KRELTSC: 4396380660] IF: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4397094261] Expected error occurred +[Hera] [HADES][TEST ] Testing IF ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4398571170] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4399508190] IF: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4400500104] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4401596325] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4402329813] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4403095263] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 4404035874] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4404766527] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4406221008] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4407096813] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4408514313] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 4409202210] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4410686238] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4411560552] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4412481486] Testing word: ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4413228120] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4413981579] Running ELSE.alone: ELSE +[Hera] [HADES][ERROR] [KRELTSC: 4414922148] ELSE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4415667501] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4417115283] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4417988841] Running ELSE.double: : BAD IF 1 ELSE ELSE 2 THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4419381582] ELSE: missing IF +[Hera] [HADES][TEST ] [KRELTSC: 4420094931] Expected error occurred +[Hera] [HADES][TEST ] Testing ELSE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4421562789] Expected: Should prevent double ELSE +[Hera] [HADES][TEST ] [KRELTSC: 4422568647] ELSE: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4423487019] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4424575680] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 4425302574] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4426067646] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 4427125038] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4427838492] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4429258890] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4430171319] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4431598143] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 4432284003] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 4433001951] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4434418401] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 4435288641] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4436227068] Testing word: THEN +[Hera] [HADES][TEST ] [KRELTSC: 4436936301] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4437718908] Running THEN.alone: THEN +[Hera] [HADES][ERROR] [KRELTSC: 4438592382] THEN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4439330868] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4440812838] Expected: Should error outside IF +[Hera] [HADES][TEST ] [KRELTSC: 4441702083] Running THEN.extra: : BAD IF 1 THEN THEN ; +[Hera] [HADES][ERROR] [KRELTSC: 4443022206] CF: underflow +[Hera] [HADES][ERROR] [KRELTSC: 4443738873] THEN: unmatched +[Hera] [HADES][TEST ] [KRELTSC: 4444472088] Expected error occurred +[Hera] [HADES][TEST ] Testing THEN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4445911911] Expected: Should prevent extra THEN +[Hera] [HADES][TEST ] [KRELTSC: 4446800001] THEN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4447718415] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4448799180] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4449534453] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4450311012] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4452747642] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4454138220] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 4454994642] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4457535180] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4458911058] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 4459757190] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 4460658090] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4461399264] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4462844505] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4463762982] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4464727386] Testing word: BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4465455015] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4466240919] Running BEGIN.until: : TEST5 0 BEGIN 1+ DUP 5 = UNTIL ; TEST5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4468303392] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4469667699] Expected: Should loop until true +[Hera] [HADES][TEST ] [KRELTSC: 4470536553] Running BEGIN.while: : TEST6 0 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] [HADES][INFO ] [KRELTSC: 4472356182] L8[TABLE]: Config 5 → 6 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4473978012] Test passed +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4475369661] Expected: Should loop while true +[Hera] [HADES][TEST ] [KRELTSC: 4476245928] Running BEGIN.alone: BEGIN +[Hera] [HADES][ERROR] [KRELTSC: 4477099536] BEGIN: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4477855956] Expected error occurred +[Hera] [HADES][TEST ] Testing BEGIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4479350211] Expected: Should error outside definition +[Hera] [HADES][TEST ] [KRELTSC: 4480294455] BEGIN: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4481275239] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4482351111] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 4483112844] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4483903095] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4485989697] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4487323176] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4488178275] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 4489624986] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4491012183] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 4491883095] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 4492855437] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4493603646] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4495050882] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4495967448] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4496915787] Testing word: UNTIL +[Hera] [HADES][TEST ] [KRELTSC: 4497644508] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4498392675] Running UNTIL.basic: : TEST8 BEGIN DUP 1- DUP 0= UNTIL ; 5 TE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4500438075] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4501863744] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4502695218] Running UNTIL.immediate: : TEST9 BEGIN 1 UNTIL ; IMMEDIATE +[Hera] [HADES][TEST ] [KRELTSC: 4504170867] Test passed +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4505540088] Expected: Should be immediate +[Hera] [HADES][TEST ] [KRELTSC: 4506421584] Running UNTIL.no_begin: UNTIL +[Hera] [HADES][ERROR] [KRELTSC: 4507293420] UNTIL: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4508048706] Expected error occurred +[Hera] [HADES][TEST ] Testing UNTIL ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4509507114] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4510442055] UNTIL: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4511404569] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4512532584] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4513257798] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4514010333] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4516102374] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4517446269] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 4518258675] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4520113731] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4521472305] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 4522389732] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 4523307957] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4524041046] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4525508253] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4526416209] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4527389685] Testing word: WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4528124160] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4528887258] Running WHILE.basic: : TEST10 BEGIN DUP 5 < WHILE 1+ REPEAT ; +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4530992760] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4532372880] Expected: Should count up +[Hera] [HADES][TEST ] [KRELTSC: 4533219474] Running WHILE.zero_times: : TEST11 BEGIN DUP 0< WHILE 1+ REPE +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4535068167] Test passed +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4536439908] Expected: Should handle zero iterations +[Hera] [HADES][TEST ] [KRELTSC: 4537345638] Running WHILE.no_begin: WHILE +[Hera] [HADES][ERROR] [KRELTSC: 4538227092] WHILE: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4538967552] Expected error occurred +[Hera] [HADES][TEST ] Testing WHILE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4540545639] Expected: Should error without BEGIN +[Hera] [HADES][TEST ] [KRELTSC: 4541443641] WHILE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4542375705] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4543482027] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 4544262786] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4545053394] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] [HADES][INFO ] [KRELTSC: 4546757796] L8[TABLE]: Config 6 → 7 regime=7 score=26214 L1=0 L2=0 L3=0 L +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4548576669] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4549959939] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 4550832258] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 4551796683] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4552547433] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4554014850] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4554921714] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4555892145] Testing word: REPEAT +[Hera] [HADES][TEST ] [KRELTSC: 4556621832] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4557390117] Running REPEAT.basic: : TEST12 BEGIN DUP 5 < WHILE 1+ REPEAT +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4559570925] Test passed +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4560962406] Expected: Should terminate loop +[Hera] [HADES][TEST ] [KRELTSC: 4561800243] Running REPEAT.no_while: REPEAT +[Hera] [HADES][ERROR] [KRELTSC: 4562622561] REPEAT: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4563381585] Expected error occurred +[Hera] [HADES][TEST ] Testing REPEAT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4564855617] Expected: Should error without WHILE +[Hera] [HADES][TEST ] [KRELTSC: 4565740662] REPEAT: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4566723441] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4567811178] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 4568507265] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4569286974] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4572011829] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4573339470] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4574200974] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] -5 -4 -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 4576187364] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4577569437] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4578485814] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4579836093] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4581167010] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 4582083324] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; +[Hera] 0 1 2 1 2 3 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4584522621] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4585868238] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4586717331] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4587629508] Testing word: DO +[Hera] [HADES][TEST ] [KRELTSC: 4588322865] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4589092242] Running DO.basic: : TEST13 5 0 DO I . LOOP ; TEST13 CR +[Hera] 0 1 2 3 [HADES][INFO ] [KRELTSC: 4591176492] L8[TABLE]: Config 7 → 8 regime=7 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4592415219] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4593762348] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4594635318] Running DO.negative: : TEST14 -1 -5 DO I . LOOP ; TEST14 CR +[Hera] -5 -4 -3 -2 +[Hera] [HADES][TEST ] [KRELTSC: 4596613203] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4597952121] Expected: Should handle negative +[Hera] [HADES][TEST ] [KRELTSC: 4598834352] Running DO.empty: : TEST15 0 0 DO LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4600195698] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4601577729] Expected: Should handle empty range +[Hera] [HADES][TEST ] [KRELTSC: 4602467352] Running DO.nested: : TEST16 3 0 DO 3 0 DO J I + . LOOP LOOP ; +[Hera] 0 1 2 1 2 3 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4604854401] Test passed +[Hera] [HADES][TEST ] Testing DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4606257768] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4607122632] DO: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4608064923] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4609200057] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 4609937451] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4610724762] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4613298249] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4614679104] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4615541679] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4617064116] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4618459944] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 4619351331] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOO +[Hera] 0 1 2 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4621608873] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4623008838] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4623896529] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4624833948] Testing word: ?DO +[Hera] [HADES][TEST ] [KRELTSC: 4625581422] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4626374277] Running ?DO.basic: : TEST17 5 0 ?DO I . LOOP ; TEST17 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4628424024] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4629739926] Expected: Should count 0 to 4 +[Hera] [HADES][TEST ] [KRELTSC: 4630592127] Running ?DO.skip: : TEST18 1 1 ?DO I . LOOP ; +[Hera] [HADES][TEST ] [KRELTSC: 4631971197] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4633308267] Expected: Should skip when equal +[Hera] [HADES][TEST ] [KRELTSC: 4634194572] Running ?DO.nested: : TEST19 3 0 ?DO 3 I ?DO J I + . LOOP LOO +[Hera] [HADES][INFO ] [KRELTSC: 4635781878] L8[TABLE]: Config 8 → 9 regime=7 score=6553 L1=0 L2=0 L3=0 L4 +[Hera] 0 1 2 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4637743635] Test passed +[Hera] [HADES][TEST ] Testing ?DO ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4639160379] Expected: Should handle nesting +[Hera] [HADES][TEST ] [KRELTSC: 4640171151] ?DO: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4641229635] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4642364559] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4643095674] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4643881032] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4646078514] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4647492192] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 4648341327] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 4649295420] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4650023007] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4651457181] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 4652340084] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4653298335] Testing word: LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4654013910] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4654813002] Running LOOP.basic: : TEST20 5 0 DO I . LOOP ; TEST20 CR +[Hera] 0 1 2 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4656904665] Test passed +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4658272521] Expected: Should increment by 1 +[Hera] [HADES][TEST ] [KRELTSC: 4659123693] Running LOOP.no_do: LOOP +[Hera] [HADES][ERROR] [KRELTSC: 4659954621] LOOP: compile-only +[Hera] [HADES][TEST ] [KRELTSC: 4660700058] Expected error occurred +[Hera] [HADES][TEST ] Testing LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4662172851] Expected: Should error without DO +[Hera] [HADES][TEST ] [KRELTSC: 4663073982] LOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4664018898] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4665118983] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4665861879] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4666659942] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] 0 2 4 6 8 +[Hera] [HADES][TEST ] [KRELTSC: 4669233702] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4670642844] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 4671481353] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST2 +[Hera] 10 9 8 7 6 5 4 3 2 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 4673767413] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4675219185] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4676062965] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TE +[Hera] 0 3 6 9 +[Hera] [HADES][TEST ] [KRELTSC: 4678069872] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4679445750] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 4680349800] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4681293960] Testing word: +LOOP +[Hera] [HADES][TEST ] [KRELTSC: 4682025537] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4682810916] Running +LOOP.basic: : TEST21 10 0 DO I . 2 +LOOP ; TEST21 CR +[Hera] [HADES][INFO ] [KRELTSC: 4684648773] L8[TABLE]: Config 9 → 10 regime=7 score=6553 L1=0 L2=0 L3=0 L +[Hera] 0 2 4 6 8 +[Hera] [HADES][TEST ] [KRELTSC: 4686267642] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4687668846] Expected: Should count by 2 +[Hera] [HADES][TEST ] [KRELTSC: 4688561619] Running +LOOP.negative: : TEST22 0 10 DO I . -1 +LOOP ; TEST2 +[Hera] 10 9 8 7 6 5 4 3 2 1 0 +[Hera] [HADES][TEST ] [KRELTSC: 4690828296] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4692186156] Expected: Should count down +[Hera] [HADES][TEST ] [KRELTSC: 4693018008] Running +LOOP.variable: : TEST23 10 0 DO I . DUP +LOOP ; 3 TE +[Hera] 0 3 6 9 +[Hera] [HADES][TEST ] [KRELTSC: 4695015948] Test passed +[Hera] [HADES][TEST ] Testing +LOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4696357218] Expected: Should use stack value +[Hera] [HADES][TEST ] [KRELTSC: 4697227479] +LOOP: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4698164268] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4699250241] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 4699947105] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4700715180] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4702659003] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4704027258] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4704913983] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4706710680] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4708053441] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4708852848] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4710628419] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4711993398] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4712832579] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4714742886] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4716120654] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4716977643] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4717914369] Testing word: I +[Hera] [HADES][TEST ] [KRELTSC: 4718595609] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4719409716] Running I.basic: : TI 4 0 DO I . LOOP CR ; TI +[Hera] 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4721528763] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4722897207] Expected: Should print: 0 1 2 3 +[Hera] [HADES][TEST ] [KRELTSC: 4723779123] Running I.single: : TI1 1 0 DO I . LOOP CR ; TI1 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 4725718872] L8[TABLE]: Config 10 → 11 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 4726863057] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4728193827] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4729034499] Running I.offset: : TI2 5 3 DO I . LOOP CR ; TI2 +[Hera] 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4730848563] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4732209762] Expected: Should print: 3 4 +[Hera] [HADES][TEST ] [KRELTSC: 4733048838] Running I.in_expr: : TI3 3 0 DO I 2 * . LOOP CR ; TI3 +[Hera] 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4734955722] Test passed +[Hera] [HADES][TEST ] Testing I ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4736316795] Expected: Should print: 0 2 4 +[Hera] [HADES][TEST ] [KRELTSC: 4737198060] I: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4738140225] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4739265111] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 4739984151] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4740767913] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4743016278] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4744376364] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4745290746] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; +[Hera] 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4747432389] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4748794743] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4749688734] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4750717398] Testing word: J +[Hera] [HADES][TEST ] [KRELTSC: 4751448597] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4752231666] Running J.basic: : TJ 2 0 DO 3 0 DO J . LOOP LOOP CR ; TJ +[Hera] 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4754423814] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4755775605] Expected: Should print: 0 0 0 1 1 1 +[Hera] [HADES][TEST ] [KRELTSC: 4756653510] Running J.paired: : TJ2 2 0 DO 2 0 DO J I + . LOOP LOOP CR ; +[Hera] 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4758789630] Test passed +[Hera] [HADES][TEST ] Testing J ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4760169519] Expected: Should print: 0 1 1 2 +[Hera] [HADES][TEST ] [KRELTSC: 4761064833] J: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4762017834] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4763121426] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 4763863839] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4764670764] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4766518932] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4767878220] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 4768682394] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] [HADES][INFO ] [KRELTSC: 4770293493] L8[TABLE]: Config 11 → 12 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4771816224] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4773196869] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4774025529] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4775880081] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4777294872] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 4778137140] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4779940725] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4781394891] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4782249297] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4783233084] Testing word: EXIT +[Hera] [HADES][TEST ] [KRELTSC: 4783955400] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4784749536] Running EXIT.early_return: : TEX 5 EXIT 99 ; TEX . CR +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 4786557279] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4787951049] Expected: Should print: 5 +[Hera] [HADES][TEST ] [KRELTSC: 4788773136] Running EXIT.cond_exit_pos: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4790637327] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4792021458] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4792816749] Running EXIT.cond_exit_neg: : TEX2 DUP 0> IF EXIT THEN NEGATE +[Hera] 4 +[Hera] [HADES][TEST ] [KRELTSC: 4794671406] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4796040543] Expected: Should print: 4 +[Hera] [HADES][TEST ] [KRELTSC: 4796840139] Running EXIT.no_skipped: : TEX3 1 2 EXIT 3 ; TEX3 . . CR +[Hera] 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4798582089] Test passed +[Hera] [HADES][TEST ] Testing EXIT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4799958303] Expected: Should print: 2 1 +[Hera] [HADES][TEST ] [KRELTSC: 4800783288] EXIT: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4801708716] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4802793030] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 4803527421] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4804297260] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LO +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4806872616] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4808245407] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4809070518] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4810945545] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4812309705] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4813112346] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 4815194139] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4816570521] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 4817402625] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4818385299] Testing word: LEAVE +[Hera] [HADES][TEST ] [KRELTSC: 4819159989] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4819950996] Running LEAVE.basic: : TLV 0 5 0 DO I 3 = IF LEAVE THEN 1+ LO +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4822108032] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4823520009] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4824332205] Running LEAVE.at_start: : TLV2 0 5 0 DO LEAVE 1+ LOOP ; TLV2 +[Hera] [HADES][INFO ] [KRELTSC: 4826017812] L8[TABLE]: Config 12 → 13 regime=7 score=6553 L1=0 L2=0 L3=0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4827540249] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4828914174] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4829721708] Running LEAVE.qdloop: : TLV3 0 5 0 ?DO I 2 = IF LEAVE THEN 1+ +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 4831820217] Test passed +[Hera] [HADES][TEST ] Testing LEAVE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4833184986] Expected: Should print: 2 +[Hera] [HADES][TEST ] [KRELTSC: 4833996657] LEAVE: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4834913727] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4836000204] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 4836733230] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4837509033] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EX +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4839713508] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4841095392] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4841922036] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EX +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4844000343] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4845407658] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4846247805] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4847273634] Testing word: UNLOOP +[Hera] [HADES][TEST ] [KRELTSC: 4848060042] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4848857370] Running UNLOOP.early_exit: : TUL 5 0 DO I 2 = IF UNLOOP 42 EX +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4851018228] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4852424241] Expected: Should print: 42 +[Hera] [HADES][TEST ] [KRELTSC: 4853257794] Running UNLOOP.full_loop: : TUL2 5 0 DO I 9 = IF UNLOOP 77 EX +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4855383267] Test passed +[Hera] [HADES][TEST ] Testing UNLOOP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4856804820] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4857638247] UNLOOP: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4858620942] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4859730267] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 4860516339] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4861309425] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AG +[Hera] 3 [HADES][INFO ] [KRELTSC: 4863760356] L8[TABLE]: Config 13 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 + +[Hera] [HADES][TEST ] [KRELTSC: 4864737528] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4866090453] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4866928857] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4869093768] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4870469268] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4871284005] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4872229194] Testing word: AGAIN +[Hera] [HADES][TEST ] [KRELTSC: 4872977844] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4873767843] Running AGAIN.basic: : TAG 0 BEGIN 1+ DUP 3 = IF EXIT THEN AG +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4875857028] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4877243427] Expected: Should print: 3 +[Hera] [HADES][TEST ] [KRELTSC: 4878050394] Running AGAIN.countdown: : CD 10 BEGIN 1- DUP 0= IF EXIT THEN +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4880282757] Test passed +[Hera] [HADES][TEST ] Testing AGAIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4881626715] Expected: Should print: 0 +[Hera] [HADES][TEST ] [KRELTSC: 4882424610] AGAIN: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4883379438] ▶ Testing module: src/test_runner/modules/control_words_test. +[Hera] [HADES][TEST ] [KRELTSC: 4884464886] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 4885207257] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4886006055] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 4889237598] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4890628974] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 4891462611] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4893698796] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4895026038] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4895843589] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 99 +[Hera] [HADES][INFO ] [KRELTSC: 4898504940] L8[TABLE]: Config 14 → 0 regime=6 score=26214 L1=0 L2=0 L3=0 +[Hera] [HADES][TEST ] [KRELTSC: 4899618906] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4900962864] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4901773485] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF +[Hera] 88 +[Hera] [HADES][TEST ] [KRELTSC: 4903970526] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4905409173] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4906248732] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCA +[Hera] 55 +[Hera] [HADES][TEST ] [KRELTSC: 4908406041] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4910133501] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4910965227] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4911928350] Testing word: CASE +[Hera] [HADES][TEST ] [KRELTSC: 4912666122] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4913467335] Running CASE.match_1: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 10 +[Hera] [HADES][TEST ] [KRELTSC: 4915908795] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4917305043] Expected: Should print: 10 +[Hera] [HADES][TEST ] [KRELTSC: 4918138848] Running CASE.match_2: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4920331710] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4921725963] Expected: Should print: 20 +[Hera] [HADES][TEST ] [KRELTSC: 4922577576] Running CASE.default: : TC CASE 1 OF 10 ENDOF 2 OF 20 ENDOF 9 +[Hera] 99 +[Hera] [HADES][TEST ] [KRELTSC: 4924817142] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4926229749] Expected: Should print: 99 +[Hera] [HADES][TEST ] [KRELTSC: 4927066494] Running CASE.zero_case: : TC CASE 0 OF 88 ENDOF 1 OF 77 ENDOF +[Hera] 88 +[Hera] [HADES][TEST ] [KRELTSC: 4929302196] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4930723791] Expected: Should print: 88 +[Hera] [HADES][TEST ] [KRELTSC: 4931534097] Running CASE.neg_case: : TC CASE -1 OF 55 ENDOF 44 SWAP ENDCA +[Hera] 55 +[Hera] [HADES][TEST ] [KRELTSC: 4933630317] Test passed +[Hera] [HADES][TEST ] Testing CASE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4935004809] Expected: Should print: 55 +[Hera] [HADES][TEST ] [KRELTSC: 4935882819] CASE: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4936884456] === Control Words Summary: 0 passed, 0 failed, 0 skipped, 0 err +[Hera] [HADES][INFO ] [KRELTSC: 4937978283] +[Hera] === Testing Module: StarForth Words === +[Hera] [HADES][INFO ] [KRELTSC: 4939177467] Running StarForth Words Tests (Module 17: StarForth Extensions) +[Hera] [HADES][TEST ] [KRELTSC: 4940323647] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4941432405] Testing word: ENTROPY@ +[Hera] [HADES][TEST ] [KRELTSC: 4942199850] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4942992768] Running ENTROPY@.after_execution: : TESTWORD 1 1 + DROP ; TES +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 4945059420] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4946439540] Expected: Should show execution count > 0 +[Hera] [HADES][TEST ] [KRELTSC: 4947378471] Running ENTROPY@.zero_initial: : NEWWORD ; ' NEWWORD ENTROPY@ +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4949166831] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4950554910] Expected: Should show 0 for unused word +[Hera] [HADES][TEST ] [KRELTSC: 4951452030] Running ENTROPY@.multiple_calls: : ENTTEST 1 DROP ; ENTTEST E +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 4953339804] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4954757934] Expected: Should increment with each call +[Hera] [HADES][TEST ] [KRELTSC: 4955720574] Running ENTROPY@.null_addr: 0 ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4956709863] ENTROPY@: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4957520022] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4959024609] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4960044684] Running ENTROPY@.empty_stack: ENTROPY@ +[Hera] [HADES][ERROR] [KRELTSC: 4961005644] ENTROPY@: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4961932983] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4963406217] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4964318499] ENTROPY@: 5 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4965348990] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4966459827] Testing word: ENTROPY! +[Hera] [HADES][TEST ] [KRELTSC: 4967228469] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4968011370] Running ENTROPY!.set_entropy: : ENTSET ; 42 ' ENTSET ENTROPY! +[Hera] 42 +[Hera] [HADES][TEST ] [KRELTSC: 4970039403] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4971450897] Expected: Should set entropy to 42 +[Hera] [HADES][TEST ] [KRELTSC: 4972323174] Running ENTROPY!.overwrite: : ENTOV ; 10 ' ENTOV ENTROPY! 20 +[Hera] [HADES][INFO ] [KRELTSC: 4973911908] L8[TABLE]: Config 0 → 14 regime=7 score=6553 L1=0 L2=0 L3=0 L +[Hera] 20 +[Hera] [HADES][TEST ] [KRELTSC: 4975388964] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4976792478] Expected: Should overwrite previous value +[Hera] [HADES][TEST ] [KRELTSC: 4977734013] Running ENTROPY!.zero_entropy: : ENTZERO ; 0 ' ENTZERO ENTROP +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 4979440599] Test passed +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4980840816] Expected: Should set entropy to 0 +[Hera] [HADES][TEST ] [KRELTSC: 4981693500] Running ENTROPY!.null_addr: 42 0 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4982682012] ENTROPY!: null dictionary entry +[Hera] [HADES][TEST ] [KRELTSC: 4983535242] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4985071959] Expected: Should handle null address +[Hera] [HADES][TEST ] [KRELTSC: 4985962380] Running ENTROPY!.one_arg: 42 ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4986938271] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4987762206] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4989267486] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4990167987] Running ENTROPY!.empty_stack: ENTROPY! +[Hera] [HADES][ERROR] [KRELTSC: 4991100492] ENTROPY!: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4991952042] Expected error occurred +[Hera] [HADES][TEST ] Testing ENTROPY! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 4993473933] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 4994420592] ENTROPY!: 6 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 4995451629] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 4996587225] Testing word: WORD-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 4997389341] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 4998191709] Running WORD-ENTROPY.display_all: 1 DUP DUP DUP DROP DROP DRO +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 1 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 119 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 305 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 121 + +[Hera] :: 129 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] MOD: 38 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 176 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 18 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 43 + +[Hera] MAX: 26 + +[Hera] MIN: 4 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 19 + +[Hera] 1-: 79 + +[Hera] 1+: 84 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 20 + +[Hera] MOD: 38 + +[Hera] /: 35 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 135 + +[Hera] CELLS: 18 + +[Hera] ERASE: 11 + +[Hera] MOVE: 11 + +[Hera] FILL: 23 + +[Hera] 2!: 17 + +[Hera] 2@: 14 + +[Hera] -!: 17 + +[Hera] +!: 35 + +[Hera] C!: 51 + +[Hera] C@: 97 + +[Hera] !: 111 + +[Hera] @: 182 + +[Hera] R@: 47 + +[Hera] R>: 64 + +[Hera] >R: 66 + +[Hera] ROLL: 10 + +[Hera] PICK: 16 + +[Hera] DEPTH: 79 + +[Hera] -ROT: 18 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 51 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6794 + +[Hera] Total words: 518 + +[Hera] Average executions per word: 13 + +[Hera] [HADES][TEST ] [KRELTSC: 5068024059] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5069470392] Expected: Should display all word entropy stats +[Hera] [HADES][TEST ] [KRELTSC: 5070471819] Running WORD-ENTROPY.after_execution: : WDENT 1 2 + DROP ; WD +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] WDENT: 2 + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 2 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 121 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 309 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 122 + +[Hera] :: 130 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] MOD: 38 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 176 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 18 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 43 + +[Hera] MAX: 26 + +[Hera] MIN: 4 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 19 + +[Hera] 1-: 79 + +[Hera] 1+: 84 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 20 + +[Hera] MOD: 38 + +[Hera] /: 35 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 138 + +[Hera] CELLS: 18 + +[Hera] ERASE: 11 + +[Hera] MOVE: 11 + +[Hera] FILL: 23 + +[Hera] 2!: 17 + +[Hera] 2@: 14 + +[Hera] -!: 17 + +[Hera] +!: 35 + +[Hera] C!: 51 + +[Hera] C@: 97 + +[Hera] !: 111 + +[Hera] @: 182 + +[Hera] R@: 47 + +[Hera] R>: 64 + +[Hera] >R: 66 + +[Hera] ROLL: 10 + +[Hera] PICK: 16 + +[Hera] DEPTH: 79 + +[Hera] -ROT: 18 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 54 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6811 + +[Hera] Total words: 519 + +[Hera] Average executions per word: 13 + +[Hera] [HADES][TEST ] [KRELTSC: 5140586052] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5142053490] Expected: Should show defined word entropy +[Hera] [HADES][TEST ] [KRELTSC: 5142994815] Running WORD-ENTROPY.stack_preserved: DEPTH WORD-ENTROPY DEPT +[Hera] Word Usage Statistics (Execution Heat Counts): + +[Hera] ============================================= + +[Hera] WDENT: 2 + +[Hera] DEFER@: 2 + +[Hera] IS: 5 + +[Hera] DEFER: 4 + +[Hera] WORD-ENTROPY: 3 + +[Hera] ENTROPY!: 7 + +[Hera] ENTROPY@: 8 + +[Hera] ENDCASE: 10 + +[Hera] ENDOF: 18 + +[Hera] OF: 18 + +[Hera] CASE: 10 + +[Hera] EXIT: 121 + +[Hera] UNLOOP: 6 + +[Hera] J: 58 + +[Hera] I: 212 + +[Hera] LEAVE: 6 + +[Hera] +LOOP: 6 + +[Hera] LOOP: 48 + +[Hera] DO: 42 + +[Hera] ?DO: 10 + +[Hera] UNTIL: 8 + +[Hera] AGAIN: 4 + +[Hera] REPEAT: 10 + +[Hera] WHILE: 10 + +[Hera] BEGIN: 20 + +[Hera] THEN: 32 + +[Hera] ELSE: 14 + +[Hera] IF: 32 + +[Hera] (LEAVE): 6 + +[Hera] (+LOOP): 40 + +[Hera] (LOOP): 152 + +[Hera] (DO): 48 + +[Hera] (?DO): 12 + +[Hera] (0BRANCH): 142 + +[Hera] (BRANCH): 72 + +[Hera] DOES>: 3 + +[Hera] does_rt: 1 + +[Hera] LITERAL: 1 + +[Hera] LIT: 309 + +[Hera] FENCE: 3 + +[Hera] FORGET: 7 + +[Hera] ]: 3 + +[Hera] [: 4 + +[Hera] IMMEDIATE: 6 + +[Hera] CONSTANT: 4 + +[Hera] VARIABLE: 5 + +[Hera] CREATE: 23 + +[Hera] ;: 122 + +[Hera] :: 130 + +[Hera] ABORT": 3 + +[Hera] ABORT: 4 + +[Hera] QUIT: 1 + +[Hera] EXECUTE: 2 + +[Hera] ORDER: 3 + +[Hera] FORTH: 10 + +[Hera] CURRENT: 4 + +[Hera] CONTEXT: 5 + +[Hera] DEFINITIONS: 15 + +[Hera] VOCABULARY: 15 + +[Hera] ': 16 + +[Hera] FIND: 4 + +[Hera] >BODY: 2 + +[Hera] HIDDEN: 2 + +[Hera] SMUDGE: 2 + +[Hera] LATEST: 7 + +[Hera] SP@: 8 + +[Hera] SP!: 5 + +[Hera] PAD: 15 + +[Hera] 2,: 7 + +[Hera] C,: 10 + +[Hera] ,: 21 + +[Hera] ALLOT: 9 + +[Hera] ALIGN: 1 + +[Hera] HERE: 109 + +[Hera] SCR: 3 + +[Hera] THRU: 17 + +[Hera] LIST: 5 + +[Hera] LOAD: 5 + +[Hera] FLUSH: 3 + +[Hera] EMPTY-BUFFERS: 4 + +[Hera] SAVE-BUFFERS: 3 + +[Hera] UPDATE: 7 + +[Hera] BUFFER: 4 + +[Hera] BLOCK: 12 + +[Hera] SPACES: 10 + +[Hera] SPACE: 7 + +[Hera] TYPE: 43 + +[Hera] CR: 659 + +[Hera] EMIT: 15 + +[Hera] BLANK: 2 + +[Hera] SKIP: 4 + +[Hera] SCAN: 5 + +[Hera] SEARCH: 4 + +[Hera] COMPARE: 5 + +[Hera] CMOVE>: 4 + +[Hera] CMOVE: 6 + +[Hera] -TRAILING: 4 + +[Hera] LITERAL: 1 + +[Hera] [']: 3 + +[Hera] BL: 19 + +[Hera] SOURCE: 2 + +[Hera] >IN: 5 + +[Hera] S": 37 + +[Hera] (s"): 4 + +[Hera] WORD: 15 + +[Hera] SPAN: 4 + +[Hera] EXPECT: 4 + +[Hera] COUNT: 14 + +[Hera] OCTAL: 6 + +[Hera] HEX: 7 + +[Hera] DECIMAL: 14 + +[Hera] BASE: 9 + +[Hera] SIGN: 3 + +[Hera] HOLD: 2 + +[Hera] #>: 16 + +[Hera] #S: 11 + +[Hera] #: 5 + +[Hera] <#: 17 + +[Hera] .: 901 + +[Hera] D2/: 5 + +[Hera] D2*: 5 + +[Hera] D0<: 7 + +[Hera] D0=: 7 + +[Hera] 2R@: 3 + +[Hera] 2R>: 7 + +[Hera] 2>R: 7 + +[Hera] 2ROT: 6 + +[Hera] 2OVER: 6 + +[Hera] 2SWAP: 7 + +[Hera] 2DUP: 6 + +[Hera] 2DROP: 6 + +[Hera] D=: 7 + +[Hera] D<: 8 + +[Hera] DMIN: 6 + +[Hera] DMAX: 6 + +[Hera] DABS: 7 + +[Hera] DNEGATE: 6 + +[Hera] D-: 8 + +[Hera] D+: 7 + +[Hera] S>D: 7 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] MOD: 38 + +[Hera] M/MOD: 7 + +[Hera] M*: 8 + +[Hera] M+: 7 + +[Hera] FALSE: 18 + +[Hera] TRUE: 30 + +[Hera] WITHIN: 31 + +[Hera] U>: 25 + +[Hera] U<: 25 + +[Hera] <=: 31 + +[Hera] >=: 31 + +[Hera] >: 30 + +[Hera] <: 74 + +[Hera] <>: 26 + +[Hera] =: 176 + +[Hera] 0<>: 22 + +[Hera] 0>: 27 + +[Hera] 0<: 24 + +[Hera] 0=: 66 + +[Hera] NOT: 18 + +[Hera] XOR: 32 + +[Hera] OR: 22 + +[Hera] AND: 43 + +[Hera] MAX: 26 + +[Hera] MIN: 4 + +[Hera] NEGATE: 30 + +[Hera] ABS: 25 + +[Hera] 2/: 31 + +[Hera] 2*: 31 + +[Hera] 2-: 10 + +[Hera] 2+: 19 + +[Hera] 1-: 79 + +[Hera] 1+: 84 + +[Hera] */MOD: 8 + +[Hera] */: 10 + +[Hera] /MOD: 20 + +[Hera] MOD: 38 + +[Hera] /: 35 + +[Hera] *: 50 + +[Hera] -: 34 + +[Hera] +: 138 + +[Hera] CELLS: 18 + +[Hera] ERASE: 11 + +[Hera] MOVE: 11 + +[Hera] FILL: 23 + +[Hera] 2!: 17 + +[Hera] 2@: 14 + +[Hera] -!: 17 + +[Hera] +!: 35 + +[Hera] C!: 51 + +[Hera] C@: 97 + +[Hera] !: 111 + +[Hera] @: 182 + +[Hera] R@: 47 + +[Hera] R>: 64 + +[Hera] >R: 66 + +[Hera] ROLL: 10 + +[Hera] PICK: 16 + +[Hera] DEPTH: 80 + +[Hera] -ROT: 18 + +[Hera] OVER: 22 + +[Hera] SWAP: 41 + +[Hera] DUP: 144 + +[Hera] DROP: 54 + +[Hera] ------------------------------------- + +[Hera] Total executions: 6813 + +[Hera] Total words: 519 + +[Hera] Average executions per word: 13 + +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5212928952] Test passed +[Hera] [HADES][TEST ] Testing WORD-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5214366339] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 5215269969] WORD-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5216292816] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5217388953] Testing word: RESET-ENTROPY +[Hera] [HADES][TEST ] [KRELTSC: 5218207890] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5219014899] Running RESET-ENTROPY.reset_defined: : RESETTEST 1 DROP ; RES +[Hera] [HADES][TEST ] [KRELTSC: 5221053495] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5222436576] Expected: Should reset all entropy counters +[Hera] [HADES][TEST ] [KRELTSC: 5223378993] Running RESET-ENTROPY.double_reset: RESET-ENTROPY RESET-ENTRO +[Hera] [HADES][TEST ] [KRELTSC: 5224569882] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5225998785] Expected: Should handle multiple resets +[Hera] [HADES][TEST ] [KRELTSC: 5226895212] Running RESET-ENTROPY.after_usage: 1 DUP DUP DUP DROP DROP DR +[Hera] [HADES][TEST ] [KRELTSC: 5228111868] Test passed +[Hera] [HADES][TEST ] Testing RESET-ENTROPY ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5229527352] Expected: Should reset after word usage +[Hera] [HADES][TEST ] [KRELTSC: 5230437177] RESET-ENTROPY: 3 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5231444484] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5232528252] Testing word: TOP-WORDS +[Hera] [HADES][TEST ] [KRELTSC: 5233303194] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5234087943] Running TOP-WORDS.display_top5: : TOPTEST 1 DROP ; TOPTEST TO +[Hera] Top 5 most frequently used words: + +[Hera] ================================== + +[Hera] 1. DROP: 6 + +[Hera] 2. TOPTEST: 5 + +[Hera] 3. EXIT: 5 + +[Hera] 4. LIT: 5 + +[Hera] 5. TOP-WORDS: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5239047177] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5240433660] Expected: Should display top 5 hot words +[Hera] [HADES][TEST ] [KRELTSC: 5241391764] Running TOP-WORDS.display_top10: 10 TOP-WORDS +[Hera] Top 10 most frequently used words: + +[Hera] ================================== + +[Hera] 1. DROP: 6 + +[Hera] 2. TOPTEST: 5 + +[Hera] 3. EXIT: 5 + +[Hera] 4. LIT: 5 + +[Hera] 5. TOP-WORDS: 2 + +[Hera] 6. ;: 1 + +[Hera] 7. :: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5245812705] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5247226236] Expected: Should display top 10 words +[Hera] [HADES][TEST ] [KRELTSC: 5248162227] Running TOP-WORDS.after_reset: RESET-ENTROPY 5 TOP-WORDS +[Hera] Top 5 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 1 + +[Hera] [HADES][TEST ] [KRELTSC: 5250860853] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5252229213] Expected: Should handle display after reset +[Hera] [HADES][TEST ] [KRELTSC: 5253192525] Running TOP-WORDS.single_word: 1 TOP-WORDS +[Hera] Top 1 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 2 + +[Hera] [HADES][TEST ] [KRELTSC: 5255585790] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5256969102] Expected: Should display top 1 word +[Hera] [HADES][TEST ] [KRELTSC: 5257850976] Running TOP-WORDS.large_count: 100 TOP-WORDS +[Hera] Top 100 most frequently used words: + +[Hera] ================================== + +[Hera] 1. TOP-WORDS: 3 + +[Hera] [HADES][TEST ] [KRELTSC: 5260254720] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5261680494] Expected: Should handle large count +[Hera] [HADES][TEST ] [KRELTSC: 5262583221] Running TOP-WORDS.zero_count: 0 TOP-WORDS +[Hera] TOP-WORDS: invalid count 0 + +[Hera] [HADES][TEST ] [KRELTSC: 5264017542] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5265446277] Expected: Should handle zero count +[Hera] [HADES][TEST ] [KRELTSC: 5266332015] Running TOP-WORDS.negative_count: -5 TOP-WORDS +[Hera] TOP-WORDS: invalid count -5 + +[Hera] [HADES][TEST ] [KRELTSC: 5267869131] Test passed +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5269272939] Expected: Should handle negative count +[Hera] [HADES][TEST ] [KRELTSC: 5270208552] Running TOP-WORDS.empty_stack: TOP-WORDS +[Hera] [HADES][ERROR] [KRELTSC: 5271175329] TOP-WORDS: data stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5272009932] Expected error occurred +[Hera] [HADES][TEST ] Testing TOP-WORDS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5273540937] Expected: Should cause stack underflow +[Hera] [HADES][TEST ] [KRELTSC: 5274443643] TOP-WORDS: 8 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5275433436] ▶ Testing module: src/test_runner/modules/starforth_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5276513760] Testing word: (- +[Hera] [HADES][TEST ] [KRELTSC: 5277232590] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5278023093] Running (-.comment_line: (- This is a comment +[Hera] 1 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5279468103] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5280297960] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5281680768] Expected: Should ignore rest of line +[Hera] [HADES][TEST ] [KRELTSC: 5282601744] Running (-.mid_line: 1 (- comment here +[Hera] 2 + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5283890871] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5284677279] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5286045849] Expected: Should work mid-expression +[Hera] [HADES][TEST ] [KRELTSC: 5286963318] Running (-.no_stack_effect: DEPTH (- comment +[Hera] DEPTH = . CR +[Hera] [HADES][WARN ] [KRELTSC: 5288290371] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5289107082] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5290500369] Expected: Should not affect stack +[Hera] [HADES][TEST ] [KRELTSC: 5291400198] Running (-.multiple: 1 (- first +[Hera] 2 (- second +[Hera] + . CR +[Hera] [HADES][WARN ] [KRELTSC: 5292969696] (- comment not terminated +[Hera] [HADES][TEST ] [KRELTSC: 5293760346] Test passed +[Hera] [HADES][TEST ] Testing (- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5295099285] Expected: Should handle multiple comments +[Hera] [HADES][TEST ] [KRELTSC: 5296069590] (-: 4 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5297017845] === StarForth Words Summary: 0 passed, 0 failed, 0 skipped, 0 e +[Hera] [HADES][INFO ] [KRELTSC: 5298111672] +[Hera] === Testing Module: ACL Words === +[Hera] [HADES][INFO ] [KRELTSC: 5299257117] Running ACL Words Tests (Module 24)... +[Hera] [HADES][WARN ] [KRELTSC: 5303399850] ACL: denied '__acl_deny_test__' +[Hera] [HADES][INFO ] [KRELTSC: 5305373976] SKIP: STRICT mode test (ACL.4th not loaded) +[Hera] [HADES][INFO ] [KRELTSC: 5306489727] SKIP: ACL-TTL-COMPUTE (ACL.4th not loaded) +[Hera] [HADES][WARN ] [KRELTSC: 5307834147] vm_create_word: cannot shadow pinned word '__acl_shadow_target_ +[Hera] [HADES][TEST ] [KRELTSC: 5312408031] === ACL Words Summary: 29 passed, 0 failed, 0 skipped, 0 errors +[Hera] [HADES][INFO ] [KRELTSC: 5313504819] +[Hera] === Testing Module: Mama FORTH Words === +[Hera] [HADES][INFO ] [KRELTSC: 5314656459] Running Mama FORTH Words Tests (Capsule System M7.1)... +[Hera] [HADES][TEST ] [KRELTSC: 5315736258] Testing word: CAPSULE-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 5316540474] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5317353951] CAPSULE-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5318414283] Testing word: CAPSULE@ +[Hera] [HADES][TEST ] [KRELTSC: 5319180006] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5319997389] CAPSULE@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5320972041] Testing word: CAPSULE-FLAGS@ +[Hera] [HADES][TEST ] [KRELTSC: 5321798958] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5322594081] CAPSULE-FLAGS@: 0 passed, 0 failed, 3 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5323639797] Testing word: CAPSULE-LEN@ +[Hera] [HADES][TEST ] [KRELTSC: 5324443068] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5325225486] CAPSULE-LEN@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5326248018] Testing word: CAPSULE-HASH@ +[Hera] [HADES][TEST ] [KRELTSC: 5327060907] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5327872179] CAPSULE-HASH@: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5328893178] Testing word: MAMA-VM-ID +[Hera] [HADES][TEST ] [KRELTSC: 5329693320] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5330485356] MAMA-VM-ID: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5331488400] Testing word: VM-COUNT +[Hera] [HADES][TEST ] [KRELTSC: 5332255509] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5333046642] VM-COUNT: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5334037989] Testing word: CAPSULE-BIRTH +[Hera] [HADES][TEST ] [KRELTSC: 5334844389] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5335634892] CAPSULE-BIRTH: 0 passed, 0 failed, 2 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5336666748] Testing word: CAPSULE-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5337461766] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5338248741] CAPSULE-RUN: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5339237295] Testing word: CAPSULE-TEST +[Hera] [HADES][TEST ] [KRELTSC: 5339982585] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5340765612] CAPSULE-TEST: 0 passed, 0 failed, 1 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5341840077] === Mama FORTH Words Summary: 0 passed, 0 failed, 0 skipped, 0 +[Hera] [HADES][INFO ] [KRELTSC: 5342944971] +[Hera] === Testing Module: Q48.16 Words === +[Hera] [HADES][INFO ] [KRELTSC: 5344100097] Running Q48.16 Words Tests (Module 25)... +[Hera] [HADES][TEST ] [KRELTSC: 5345068764] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5346153834] Testing word: Q.+ +[Hera] [HADES][TEST ] [KRELTSC: 5346874890] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5347655880] Running Q.+.basic: 1 Q.FROM-INT 2 Q.FROM-INT Q.+ Q.TO-INT . C +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5349270381] Test passed +[Hera] [HADES][TEST ] Testing Q.+ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5350645923] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5353057290] Q.+: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5354036583] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5355109788] Testing word: Q.- +[Hera] [HADES][TEST ] [KRELTSC: 5355842037] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5356635753] Running Q.-.basic: 5 Q.FROM-INT 2 Q.FROM-INT Q.- Q.TO-INT . C +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5358170622] Test passed +[Hera] [HADES][TEST ] Testing Q.- ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5359536840] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][INFO ] [KRELTSC: 5361500277] L8[TABLE]: Config 14 → 0 regime=3 score=26214 L1=0 L2=0 L3=0 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5363204175] Q.-: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5364123345] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5365327128] Testing word: Q.* +[Hera] [HADES][TEST ] [KRELTSC: 5366047554] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5366820816] Running Q.*.basic: 3 Q.FROM-INT 4 Q.FROM-INT Q.* Q.TO-INT . C +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 5368360515] Test passed +[Hera] [HADES][TEST ] Testing Q.* ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5369708694] Expected: Should print: 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] 12 +[Hera] [HADES][TEST ] [KRELTSC: 5372093055] Q.*: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5373038517] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5374091541] Testing word: Q./ +[Hera] [HADES][TEST ] [KRELTSC: 5374814130] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5375593041] Running Q./.basic: 10 Q.FROM-INT 2 Q.FROM-INT Q./ Q.TO-INT . +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 5377189776] Test passed +[Hera] [HADES][TEST ] Testing Q./ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5378564310] Expected: Should print: 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] 5 +[Hera] [HADES][TEST ] [KRELTSC: 5381030004] Running Q./.by_zero: 5 Q.FROM-INT 0 Q.FROM-INT Q./ Q.TO-INT . +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5382462624] Test passed +[Hera] [HADES][TEST ] Testing Q./ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5383803642] Expected: Should print: 0 (division by zero yields q=0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5386395042] Q./: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5387306463] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5388354846] Testing word: Q.ABS +[Hera] [HADES][TEST ] [KRELTSC: 5389125441] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5389897905] Running Q.ABS.basic: 3 Q.FROM-INT Q.NEG Q.ABS Q.TO-INT . CR +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5391378027] Test passed +[Hera] [HADES][TEST ] Testing Q.ABS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5392732065] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5395056828] Q.ABS: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5396008506] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5397065457] Testing word: Q.NEG +[Hera] [HADES][TEST ] [KRELTSC: 5397808248] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5398600620] Running Q.NEG.basic: 5 Q.FROM-INT Q.NEG Q.TO-INT . CR +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 5399949282] Test passed +[Hera] [HADES][TEST ] Testing Q.NEG ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5401316046] Expected: Should print: -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] -5 +[Hera] [HADES][TEST ] [KRELTSC: 5403631884] Q.NEG: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5404563360] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5405644713] Testing word: Q.LOG +[Hera] [HADES][TEST ] [KRELTSC: 5406373098] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5407119627] Running Q.LOG.of_one: Q.1 Q.LOG Q.TO-INT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5408511738] Test passed +[Hera] [HADES][TEST ] Testing Q.LOG ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5409872076] Expected: Should print: 0 (ln 1.0 = 0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][INFO ] [KRELTSC: 5411712222] L8[TABLE]: Config 0 → 1 regime=3 score=26214 L1=0 L2=0 L3=0 L +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5413429749] Q.LOG: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5414396904] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5415473868] Testing word: Q.EXP +[Hera] [HADES][TEST ] [KRELTSC: 5416242510] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5417016696] Running Q.EXP.of_zero: Q.0 Q.EXP Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5418456687] Test passed +[Hera] [HADES][TEST ] Testing Q.EXP ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5419842645] Expected: Should print: 1 (e^0 = 1) +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5422283517] Q.EXP: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5423234355] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5424344100] Testing word: Q.SQRT +[Hera] [HADES][TEST ] [KRELTSC: 5425111398] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5425862820] Running Q.SQRT.of_four: 4 Q.FROM-INT Q.SQRT Q.TO-INT . CR +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 5427466296] Test passed +[Hera] [HADES][TEST ] Testing Q.SQRT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5428809372] Expected: Should print: 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] 2 +[Hera] [HADES][TEST ] [KRELTSC: 5431167714] Q.SQRT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5432123340] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5433185142] Testing word: Q.SIN +[Hera] [HADES][TEST ] [KRELTSC: 5433930075] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5434749831] Running Q.SIN.of_zero: Q.0 Q.SIN Q.TO-INT . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5436212439] Test passed +[Hera] [HADES][TEST ] Testing Q.SIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5437596507] Expected: Should print: 0 (sin 0 = 0) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5439967323] Q.SIN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5440919904] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5441965347] Testing word: Q.COS +[Hera] [HADES][TEST ] [KRELTSC: 5442697911] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5443493160] Running Q.COS.of_zero: Q.0 Q.COS Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5444988885] Test passed +[Hera] [HADES][TEST ] Testing Q.COS ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5446396305] Expected: Should print: 1 (cos 0 = 1) +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5448759603] Q.COS: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5449718358] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5450759034] Testing word: Q.FROM-INT +[Hera] [HADES][TEST ] [KRELTSC: 5451522699] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5452313832] Running Q.FROM-INT.round_trip: 7 Q.FROM-INT Q.TO-INT . CR +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5453656173] Test passed +[Hera] [HADES][TEST ] Testing Q.FROM-INT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5455059666] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5457325692] Q.FROM-INT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5458315191] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5459359941] Testing word: Q.TO-INT +[Hera] [HADES][TEST ] [KRELTSC: 5460091392] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5460862050] Running Q.TO-INT.of_one: Q.1 Q.TO-INT . CR +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5462116947] Test passed +[Hera] [HADES][TEST ] Testing Q.TO-INT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5463514497] Expected: Should print: 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] 1 +[Hera] [HADES][TEST ] [KRELTSC: 5465773908] Q.TO-INT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5466751227] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5467778085] Testing word: Q.1 +[Hera] [HADES][TEST ] [KRELTSC: 5468514072] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5469271227] Running Q.1.raw_value: Q.1 . CR +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5470488933] Test passed +[Hera] [HADES][TEST ] Testing Q.1 ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5471840493] Expected: Should print: 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5474249151] Q.1: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5475166641] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5476217208] Testing word: Q.0 +[Hera] [HADES][TEST ] [KRELTSC: 5476969554] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5477743005] Running Q.0.raw_value: Q.0 . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5478891684] Test passed +[Hera] [HADES][TEST ] Testing Q.0 ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5480285811] Expected: Should print: 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5482537830] Q.0: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5483478651] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5484537009] Testing word: Q.SCALE +[Hera] [HADES][TEST ] [KRELTSC: 5485285302] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5486054532] Running Q.SCALE.raw_value: Q.SCALE . CR +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5487336414] Test passed +[Hera] [HADES][TEST ] Testing Q.SCALE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5488728294] Expected: Should print: 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] 65536 +[Hera] [HADES][TEST ] [KRELTSC: 5491142937] Q.SCALE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5492120130] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5493188190] Testing word: Q.= +[Hera] [HADES][TEST ] [KRELTSC: 5493916365] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5494686099] Running Q.=.equal: Q.1 Q.1 Q.= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5495960316] Test passed +[Hera] [HADES][TEST ] Testing Q.= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5497330188] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 [HADES][INFO ] [KRELTSC: 5498811885] L8[TABLE]: Config 1 → 2 regime=3 score=26214 L1=0 L2=0 L3=0 L + +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5500671309] Running Q.=.not_equal: Q.1 Q.0 Q.= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5501901048] Test passed +[Hera] [HADES][TEST ] Testing Q.= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5503229781] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5505557358] Q.=: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5506490703] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5507548641] Testing word: Q.< +[Hera] [HADES][TEST ] [KRELTSC: 5508288975] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5509205982] Running Q.<.true: Q.0 Q.1 Q.< . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5510565690] Test passed +[Hera] [HADES][TEST ] Testing Q.< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5511947280] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5514397581] Running Q.<.false: Q.1 Q.0 Q.< . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5515561380] Test passed +[Hera] [HADES][TEST ] Testing Q.< ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5516903385] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5519240118] Q.<: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5520166806] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5521222581] Testing word: Q.> +[Hera] [HADES][TEST ] [KRELTSC: 5521940844] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5522683299] Running Q.>.true: Q.1 Q.0 Q.> . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5523955416] Test passed +[Hera] [HADES][TEST ] Testing Q.> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5525320038] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5527715487] Running Q.>.false: Q.0 Q.1 Q.> . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5528899152] Test passed +[Hera] [HADES][TEST ] Testing Q.> ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5530247772] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5532595320] Q.>: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5533524108] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5534553654] Testing word: Q.0= +[Hera] [HADES][TEST ] [KRELTSC: 5535306441] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5536073088] Running Q.0=.true: Q.0 Q.0= . CR +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5537372757] Test passed +[Hera] [HADES][TEST ] Testing Q.0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5538701112] Expected: Should print: -1 (true) +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] -1 +[Hera] [HADES][TEST ] [KRELTSC: 5541066804] Running Q.0=.false: Q.1 Q.0= . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5542252296] Test passed +[Hera] [HADES][TEST ] Testing Q.0= ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5543631450] Expected: Should print: 0 (false) +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5545946112] Q.0=: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5546878722] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5547933699] Testing word: Q.MAX +[Hera] [HADES][TEST ] [KRELTSC: 5548670862] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5549458698] Running Q.MAX.basic: 3 Q.FROM-INT 7 Q.FROM-INT Q.MAX Q.TO-INT +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5550980715] Test passed +[Hera] [HADES][TEST ] Testing Q.MAX ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5552354661] Expected: Should print: 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] 7 +[Hera] [HADES][INFO ] [KRELTSC: 5554484859] L8[TABLE]: Config 2 → 3 regime=3 score=26214 L1=0 L2=0 L3=0 L +[Hera] 7 +[Hera] [HADES][TEST ] [KRELTSC: 5555952255] Q.MAX: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5556882849] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5557942005] Testing word: Q.MIN +[Hera] [HADES][TEST ] [KRELTSC: 5558682696] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5559440061] Running Q.MIN.basic: 3 Q.FROM-INT 7 Q.FROM-INT Q.MIN Q.TO-INT +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5560919679] Test passed +[Hera] [HADES][TEST ] Testing Q.MIN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5562268530] Expected: Should print: 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5564600202] Q.MIN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5565550872] ▶ Testing module: src/test_runner/modules/q48_words_test.c +[Hera] [HADES][TEST ] [KRELTSC: 5566598604] Testing word: Q.PRINT +[Hera] [HADES][TEST ] [KRELTSC: 5567352357] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5568145044] Running Q.PRINT.of_one: Q.1 Q.PRINT CR +[Hera] 1.5u +[Hera] [HADES][TEST ] [KRELTSC: 5569698414] Test passed +[Hera] [HADES][TEST ] Testing Q.PRINT ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5571120429] Expected: Should print: 1.00000 +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] 1.5u +[Hera] [HADES][TEST ] [KRELTSC: 5573495949] Q.PRINT: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5574465708] === Q48.16 Words Summary: 0 passed, 0 failed, 0 skipped, 0 erro +[Hera] [HADES][INFO ] [KRELTSC: 5575571169] +[Hera] === Testing Module: Inference Engine Words === +[Hera] [HADES][INFO ] [KRELTSC: 5576792109] Running Inference Engine Words Tests (Module 26)... +[Hera] [HADES][TEST ] [KRELTSC: 5577815796] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5578913109] Testing word: Q.VARIANCE +[Hera] [HADES][TEST ] [KRELTSC: 5579692776] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5580458856] Running Q.VARIANCE.three_cells: 100 HERE ! 200 HERE 8 + ! 300 +[Hera] 6666 +[Hera] [HADES][TEST ] [KRELTSC: 5582374623] Test passed +[Hera] [HADES][TEST ] Testing Q.VARIANCE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5583806781] Expected: Should print population variance of {100,200,300} +[Hera] [HADES][TEST ] [KRELTSC: 5584903674] Q.VARIANCE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5585944539] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5587052457] Testing word: INFER-DECAY-SLOPE +[Hera] [HADES][TEST ] [KRELTSC: 5587926015] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5588769123] Running INFER-DECAY-SLOPE.three_cells: 300 HERE ! 200 HERE 8 +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5590907427] Test passed +[Hera] [HADES][TEST ] Testing INFER-DECAY-SLOPE ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5592360354] Expected: Should print decay slope for a decreasing traject +[Hera] [HADES][TEST ] [KRELTSC: 5593434084] INFER-DECAY-SLOPE: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5594486772] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5595611574] Testing word: INFER-WINDOW-WIDTH +[Hera] [HADES][TEST ] [KRELTSC: 5596455375] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5597253039] Running INFER-WINDOW-WIDTH.three_cells: 100 HERE ! 200 HERE 8 +[Hera] 3 +[Hera] [HADES][TEST ] [KRELTSC: 5598947487] Test passed +[Hera] [HADES][TEST ] Testing INFER-WINDOW-WIDTH ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5600456085] Expected: Should print an inferred window width (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5601524796] INFER-WINDOW-WIDTH: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5602585590] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5603690862] Testing word: INFER-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5604466959] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5605237260] Running INFER-RUN.basic: INFER-RUN +[Hera] [HADES][TEST ] [KRELTSC: 5609721663] Test passed +[Hera] [HADES][TEST ] Testing INFER-RUN ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5611098759] Expected: Should run without error +[Hera] [HADES][TEST ] [KRELTSC: 5611949700] INFER-RUN: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5612689635] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5613512604] Testing word: INFER-WINDOW@ +[Hera] [HADES][TEST ] [KRELTSC: 5614207914] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5614987056] Running INFER-WINDOW@.after_run: INFER-RUN INFER-WINDOW@ . CR +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5617525914] Test passed +[Hera] [HADES][TEST ] Testing INFER-WINDOW@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5619003054] Expected: Should print last adaptive_window_width (no error +[Hera] [HADES][TEST ] [KRELTSC: 5620098498] INFER-WINDOW@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5621079429] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5622193731] Testing word: INFER-DECAY@ +[Hera] [HADES][TEST ] [KRELTSC: 5622984780] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5623764447] Running INFER-DECAY@.after_run: INFER-RUN INFER-DECAY@ Q.TO-I +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5626110882] Test passed +[Hera] [HADES][TEST ] Testing INFER-DECAY@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5627522565] Expected: Should print last adaptive_decay_slope (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5628619416] INFER-DECAY@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5629635312] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5630730063] Testing word: INFER-VARIANCE@ +[Hera] [HADES][TEST ] [KRELTSC: 5631511851] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5632294773] Running INFER-VARIANCE@.after_run: INFER-RUN INFER-VARIANCE@ +[Hera] 1169 +[Hera] [HADES][TEST ] [KRELTSC: 5634687114] Test passed +[Hera] [HADES][TEST ] Testing INFER-VARIANCE@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5636154762] Expected: Should print last window_variance_q48 (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5637217824] INFER-VARIANCE@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5638260852] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5639370366] Testing word: INFER-FIT@ +[Hera] [HADES][TEST ] [KRELTSC: 5640161709] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5640953409] Running INFER-FIT@.after_run: INFER-RUN INFER-FIT@ Q.TO-INT . +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5643365301] Test passed +[Hera] [HADES][TEST ] Testing INFER-FIT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5644821504] Expected: Should print last slope_fit_quality_q48 (no error +[Hera] [HADES][TEST ] [KRELTSC: 5645908443] INFER-FIT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5646923751] ▶ Testing module: src/test_runner/modules/inference_words_tes +[Hera] [HADES][TEST ] [KRELTSC: 5647977930] Testing word: INFER-EARLY-EXIT@ +[Hera] [HADES][TEST ] [KRELTSC: 5648816712] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5649577227] Running INFER-EARLY-EXIT@.after_run: INFER-RUN INFER-EARLY-EX +[Hera] 0 +[Hera] [HADES][TEST ] [KRELTSC: 5653563741] Test passed +[Hera] [HADES][TEST ] Testing INFER-EARLY-EXIT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5655061083] Expected: Should print 0 or 1 (no error) +[Hera] [HADES][TEST ] [KRELTSC: 5655953751] INFER-EARLY-EXIT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5656787304] === Inference Engine Words Summary: 0 passed, 0 failed, 0 skipp +[Hera] [HADES][INFO ] [KRELTSC: 5657613843] +[Hera] === Testing Module: Physics Freeze Words === +[Hera] [HADES][INFO ] [KRELTSC: 5658688791] Running Physics Freeze Words Tests (Module 27)... +[Hera] [HADES][TEST ] [KRELTSC: 5659784529] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5661037305] Testing word: FREEZE-WORD +[Hera] [HADES][TEST ] [KRELTSC: 5661844629] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5662674864] Running FREEZE-WORD.basic: : __freeze_test_word__ ; S" __free +[Hera] 245 +[Hera] [HADES][TEST ] [KRELTSC: 5664760458] Test passed +[Hera] [HADES][TEST ] Testing FREEZE-WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5666157798] Expected: Should print: -1 (word is now frozen) +[Hera] [HADES][TEST ] [KRELTSC: 5667153765] FREEZE-WORD: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5668160820] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5669253366] Testing word: UNFREEZE-WORD +[Hera] [HADES][TEST ] [KRELTSC: 5670066360] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5670870030] Running UNFREEZE-WORD.basic: : __unfreeze_test_word__ ; S" __ +[Hera] 270 +[Hera] [HADES][TEST ] [KRELTSC: 5672886534] Test passed +[Hera] [HADES][TEST ] Testing UNFREEZE-WORD ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5674333665] Expected: Should print: 0 (freeze cleared) +[Hera] [HADES][TEST ] [KRELTSC: 5675262600] UNFREEZE-WORD: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5676293091] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5677371714] Testing word: FROZEN? +[Hera] [HADES][TEST ] [KRELTSC: 5678134203] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5678896797] Running FROZEN?.not_frozen: : __frozen_test_word__ ; S" __fro +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5680753008] Test passed +[Hera] [HADES][TEST ] Testing FROZEN? ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5682173637] Expected: Should print: 0 (freshly defined word is not froz +[Hera] [HADES][TEST ] [KRELTSC: 5683266918] Running FROZEN?.not_found: S" __nonexistent_freeze_xyz__" FRO +[Hera] 245 +[Hera] [HADES][TEST ] [KRELTSC: 5684694750] Test passed +[Hera] [HADES][TEST ] Testing FROZEN? ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5686107441] Expected: Should print: 0 (not-found treated as not frozen) +[Hera] [HADES][TEST ] [KRELTSC: 5687151351] FROZEN?: 2 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5688110589] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5689149207] Testing word: HEAT! +[Hera] [HADES][TEST ] [KRELTSC: 5689834710] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5690672631] Running HEAT!.basic: : __heat_store_test_word__ ; 999 S" __he +[Hera] 249 +[Hera] [HADES][TEST ] [KRELTSC: 5692986663] Test passed +[Hera] [HADES][TEST ] Testing HEAT! ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5694376002] Expected: Should print: 999 +[Hera] [HADES][TEST ] [KRELTSC: 5695203129] HEAT!: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5696148213] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5697221733] Testing word: HEAT@ +[Hera] [HADES][TEST ] [KRELTSC: 5697941025] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5698711515] Running HEAT@.of_fresh_word: : __heat_fetch_test_word__ ; S" +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5700548154] Test passed +[Hera] [HADES][TEST ] Testing HEAT@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5701959018] Expected: Should print: 0 (freshly defined word has zero he +[Hera] [HADES][TEST ] [KRELTSC: 5703085752] HEAT@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5703986022] ▶ Testing module: src/test_runner/modules/physics_freeze_word +[Hera] [HADES][TEST ] [KRELTSC: 5705051667] Testing word: DECAY-RATE@ +[Hera] [HADES][TEST ] [KRELTSC: 5705881503] ------------------------ +[Hera] [HADES][TEST ] [KRELTSC: 5706656718] Running DECAY-RATE@.basic: DECAY-RATE@ . CR +[Hera] 224 +[Hera] [HADES][TEST ] [KRELTSC: 5708108175] Test passed +[Hera] [HADES][TEST ] Testing DECAY-RATE@ ... PASS +[Hera] [HADES][TEST ] [KRELTSC: 5709529182] Expected: Should print the compile-time DECAY_RATE_PER_US_Q +[Hera] [HADES][TEST ] [KRELTSC: 5710727988] DECAY-RATE@: 1 passed, 0 failed, 0 stubs, 0 errors +[Hera] [HADES][TEST ] [KRELTSC: 5711790336] === Physics Freeze Words Summary: 0 passed, 0 failed, 0 skipped +[Hera] [HADES][INFO ] [KRELTSC: 5712900585] FINAL TEST SUMMARY: +[Hera] [HADES][INFO ] [KRELTSC: 5713639281] Total tests run: 1050 +[Hera] [HADES][INFO ] [KRELTSC: 5714414664] Passed: 1012 +[Hera] [HADES][INFO ] [KRELTSC: 5715210207] Failed: 0 +[Hera] [HADES][INFO ] [KRELTSC: 5715968937] Stubs (not yet implemented): 38 +[Hera] [HADES][INFO ] [KRELTSC: 5716839450] Errors: 0 +[Hera] [HADES][INFO ] [KRELTSC: 5717639634] ALL IMPLEMENTED TESTS PASSED! +[Hera] [HADES][INFO ] [KRELTSC: 5718514704] Contract checks (A4'/A1): all passed +[Hera] [HADES][INFO ] [KRELTSC: 5719433601] ============================================== +[Hera] PARITY:M7.1a word_count=532 here=0x00000000000000d8 latest_id=701 hash=0x7e41c4035bee764d +[Hera] PARITY:OK +[Hera] POST: PASSED +[Hera] [HAL][exec] regions frozen: +[Hera] kernel.text: [0x000000003d70e000, 0x000000003d75d5ea) +[Hera] VM: parity bootstrap complete +[Hera] PCI: init... +[Hera] PCI: ECAM mapped (amd64) +[Hera] virtio-rng: found device +[Hera] rng: backend = virtio-rng +[Hera] entropy: ready +[Hera] virtio-blk: found device +[Hera] Artemis: virtio-blk attached +[Hera] virtio-input: no device on PCI bus 0 +[Hera] Init: Mama birth... +[Hera] [HADES][WARN ] [KRELTSC: 5885201028] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 5890173891] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6068193012] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6071854719] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6366641631] ( Unterminated comment +[Hera] [HADES][WARN ] [KRELTSC: 6585892509] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6588438423] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6602540427] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6605016138] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6607555710] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6610034067] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6612792774] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6615381612] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6617810682] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6620302836] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6623064084] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6625517682] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6628028001] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6630777951] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6633294360] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6635826792] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6638471238] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6641259366] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6643801143] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6646377360] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6648944148] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6651490188] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6654276027] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6656873979] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6659453262] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6671482629] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6673937319] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6676286967] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6679065750] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6681933090] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6685087878] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6687546621] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6690484836] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6702753876] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6705773970] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6708711345] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6712198731] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6724179210] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6726650973] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6729498321] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6732367446] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6736041543] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6739370715] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6751989321] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6762427413] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6771543870] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6781152735] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6790266231] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6799514043] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6820793133] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6830270622] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6839505687] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6848780967] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6858398295] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6867633822] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6887690355] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6897201402] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6906650100] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6916008015] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6925119747] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6934397442] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6943968843] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6952883847] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6961835979] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6970880805] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6979877142] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6988778307] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 6997758306] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7018195107] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7027184388] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7036216761] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7045218768] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7054300617] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7063447713] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[Hera] [HADES][WARN ] [KRELTSC: 7072636074] vm_dictionary_track_entry: out of stable IDs, disabling metrics + +[Hera] ================================================ +[Hera] LithosAnanke — FORTH-79 bare-metal kernel +[Hera] Stadium step one: Hera alone +[Hera] ================================================ +[Hera] Hera [live] +[Hera] ================================================ + +[Hera] (no identity) +[Hera] PARITY:MAMA_INIT capsule_id=0x1ef4939ed32ec1e6 mode=m capsule_hash=0x1ef4939ed32ec1e6 dict_hash=0x452d5d6f8ba81d19 +[Hera] Init: Mama birth OK +[Hera] ACL: CAPSULE-BIRTH pinned STRICT +[Hera] ACL: BIRTH pinned STRICT +[Hera] Starting heartbeat... +[Hera] APIC Timer: started (LVT=0x00020020 ICR=10089873) +[Hera] I/O APIC: keyboard IRQ1 unmasked +[Hera] Heartbeat running. +[Hera] Stadium words: promotions=705 evictions=0 +[Hera] Stadium conservation: resident_sum=47641 reservoir=17895 sum=65536 (Q48_ONE=65536) +[Hera] Stadium quota grant self-test: OK +[Hera] Hera reservoir=17895 +[Hera] test-vm reservoir=65536 +[Hera] Startup: birthing Hermes (fleet foundation)... +[Hermes] (no identity) +[Hermes] PARITY:BIRTH vm_id=0xbc2ca8d118904a3b-0xa5c18737a93e539d capsule_id=0x2df61924448a6812 mode=p capsule_hash=0x2df61924448a6812 dict_hash=0x1ca2a49663ad28f7 +[Hera] BIRTH: Hermes live +[Hera] Startup: Hermes live +[Hera] Startup: birthing Artemis (fleet foundation)... +[Artemis] Artemis: LithosAnanke disk -- resuming +[Artemis] Artemis: persist-read... +[Artemis] PASS: persist-read +[Artemis] Artemis ready +[Artemis] Artemis: 22998 data blocks +[Artemis] K-total=[HADES][WARN ] [KRELTSC: 9673854456] INFERENCE: Output validation failed, ignoring results +[Artemis] 0.5u +[Artemis] ARTEMIS-K=1.5u +[Artemis] (no identity) +[Artemis] [HADES][WARN ] [KRELTSC: 15099910413] ( Unterminated comment +[Artemis] PARITY:BIRTH vm_id=0xe9d4524e32e842d2-0xa7c734250974dd94 capsule_id=0xf55edc4e76a8c294 mode=p capsule_hash=0xf55edc4e76a8c294 dict_hash=0x5da47458b01b32d5 +[Hera] BIRTH: Artemis live +[Hera] Startup: Artemis live +[Hera] Heartbeat: 374 ticks, trust=0x00010000, variance=0x00000000 +[Hera] blkio_usb: MSC device ready +[Hera] Zuse: identity confirmed from attached thumbdrive +[Hera] LithosAnanke v2.0.0 +[Hera] StarForth Version 3.1.0 + +[Hera] StarForth CLI +[Hera] FORTH-79 interpreter type BYE or power off to exit + +[zuse@Hera] ok> S" multiuser-doe.4th" EXEC +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30784016634] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30795838941] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30805618494] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30814559832] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30824043033] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30832758579] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30841730136] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30850635795] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30859327527] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30868321050] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30880256946] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30893518257] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30905099316] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30920643978] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30942690618] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30965019288] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 30987245100] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31009502622] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31031475636] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31054680573] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31077156201] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31099443837] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31121618934] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31143926121] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31166240637] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31190298552] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31212515397] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31235199975] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31257084831] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31279058202] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31301298105] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31323816237] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31345772325] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31367702814] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31389673203] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31411586346] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31433495331] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31455516519] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31478091939] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31500183456] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31522394904] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31546723026] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31568952282] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31591417179] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] [HADES][WARN ] [KRELTSC: 31613711745] vm_dictionary_track_entry: out of stable IDs, disabling metrics +[zuse@Hera] ok +[zuse@Hera] ok>  +[zuse@Hera] ok +[zuse@Hera] ok> 1 0 0 2 0 0 S" amd64" DOE-PERSIST-TRIAL +[zuse@Hera] ok +[zuse@Hera] ok>  +[zuse@Hera] ok +[zuse@Hera] ok> 2 0 1 2 0 0 S" amd64" DOE-PERSIST-TRIAL +[zuse@Hera] ok +[zuse@Hera] ok>  +[zuse@Hera] ok +[zuse@Hera] ok> 3 5 0 8 1 1 S" amd64" DOE-PERSIST-TRIAL +[zuse@Hera] ok +[zuse@Hera] ok>  +[zuse@Hera] ok +[zuse@Hera] ok> BYE +[zuse@Hera] BYE: reaping children +[zuse@Hera] PARITY:KILL vm_id=0xbc2ca8d118904a3b-0xa5c18737a93e539d name=Hermes +[zuse@Hera] PARITY:KILL vm_id=0xe9d4524e32e842d2-0xa7c734250974dd94 name=Artemis +[zuse@Hera] BYE: cold restart diff --git a/scripts/build_multiuser_doe_report.sh b/scripts/build_multiuser_doe_report.sh new file mode 100755 index 00000000..250d41c5 --- /dev/null +++ b/scripts/build_multiuser_doe_report.sh @@ -0,0 +1,96 @@ +#!/usr/bin/env bash +# build_multiuser_doe_report.sh — full pipeline: disk -> CSV -> R/SVG -> PDF +# +# Chains: extract_doe_region.py (spool DOE-PERSIST-TRIAL records off +# disk/artemis.img) -> analyse_multiuser_doe.R (tables + SVG charts + +# auto-generated summary fragment) -> svg_to_pdf.py (SVG -> PDF for +# \includegraphics) -> pdflatex (twice, for cross-references) -> +# multiuser_doe_report.pdf. +# +# Safe to re-run at any point, including while a multi-day campaign is +# still executing on a separate QEMU instance: every step is read-only +# with respect to disk/artemis.img, and analyse_multiuser_doe.R degrades +# to a "no data yet" placeholder rather than failing when the DoE region +# has 0 trials so far. +# +# Usage: +# scripts/build_multiuser_doe_report.sh [--loop] [--csv PATH] +# +# --loop Attach disk/artemis.img via losetup instead of reading +# the file directly (needs sudo). See extract_doe_region.py. +# --csv PATH Skip disk extraction entirely and analyse an existing +# CSV instead (e.g. to smoke-test this pipeline against +# an old per-tick run CSV, or a CSV saved from a previous +# extraction). + +set -euo pipefail + +REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" +cd "$REPO_ROOT" + +ANALYSIS_DIR="experiments/bare_metal/analysis" +RUNS_DIR="experiments/bare_metal/runs" +REPORT_DIR="$ANALYSIS_DIR/report" +CSV_OUT="$RUNS_DIR/multiuser-doe-trials.csv" + +USE_LOOP=0 +CSV_OVERRIDE="" + +while [ $# -gt 0 ]; do + case "$1" in + --loop) USE_LOOP=1; shift ;; + --csv) CSV_OVERRIDE="$2"; shift 2 ;; + *) echo "Unknown argument: $1" >&2; exit 1 ;; + esac +done + +echo "=== [1/4] Extracting trial records ===" +if [ -n "$CSV_OVERRIDE" ]; then + echo " Using existing CSV: $CSV_OVERRIDE (skipping disk extraction)" + CSV_OUT="$CSV_OVERRIDE" +elif [ -f disk/artemis.img ]; then + mkdir -p "$RUNS_DIR" + if [ "$USE_LOOP" -eq 1 ]; then + python3 scripts/extract_doe_region.py --img disk/artemis.img --loop -o "$CSV_OUT" + else + python3 scripts/extract_doe_region.py --img disk/artemis.img -o "$CSV_OUT" + fi +else + echo " disk/artemis.img not found -- writing an empty CSV so the report" >&2 + echo " still builds with a 'no data yet' placeholder." >&2 + mkdir -p "$RUNS_DIR" + echo "isa,run_id,cfg,rep,nw,mode,fail_count,fleet_k_q48,fleet_conserved,switch_count_cumulative" > "$CSV_OUT" +fi + +echo "" +echo "=== [2/4] Running R analysis (tables + charts + summary fragment) ===" +Rscript "$ANALYSIS_DIR/analyse_multiuser_doe.R" "$CSV_OUT" + +echo "" +echo "=== [3/4] Converting SVG charts to PDF ===" +python3 "$ANALYSIS_DIR/svg_to_pdf.py" + +echo "" +echo "=== [4/4] Building PDF report ===" +mkdir -p "$REPORT_DIR/sections" +if [ ! -f "$REPORT_DIR/sections/multiuser_summary_autogen.tex" ]; then + echo "No trial data has been persisted to the DoE region yet." \ + > "$REPORT_DIR/sections/multiuser_summary_autogen.tex" +fi + +cd "$REPORT_DIR" +pdflatex -interaction=nonstopmode -halt-on-error multiuser_doe_report.tex >/tmp/multiuser_doe_report_latex1.log 2>&1 || { + echo "pdflatex (pass 1) failed -- see /tmp/multiuser_doe_report_latex1.log" >&2 + tail -40 /tmp/multiuser_doe_report_latex1.log >&2 + exit 1 +} +pdflatex -interaction=nonstopmode -halt-on-error multiuser_doe_report.tex >/tmp/multiuser_doe_report_latex2.log 2>&1 || { + echo "pdflatex (pass 2) failed -- see /tmp/multiuser_doe_report_latex2.log" >&2 + tail -40 /tmp/multiuser_doe_report_latex2.log >&2 + exit 1 +} +cd "$REPO_ROOT" + +echo "" +echo "=== Done ===" +echo " PDF: $REPORT_DIR/multiuser_doe_report.pdf" diff --git a/scripts/extract_doe_region.py b/scripts/extract_doe_region.py new file mode 100755 index 00000000..a83b87d8 --- /dev/null +++ b/scripts/extract_doe_region.py @@ -0,0 +1,194 @@ +#!/usr/bin/env python3 +""" +extract_doe_region.py -- spool the DOE-PERSIST-TRIAL binary ring off +disk/artemis.img into a CSV, for the multiuser/multitasking DoE campaign +report (FABRIC-3.md §XXXV.10). + +Reads the SAME devblock_from_top-addressed ring doe_region.c writes +(include/starkernel/doe_region.h has the authoritative layout: control +header at devblock_from_top=98, slot devblocks growable from 99, 64-byte +doe_trial_slot_t records, 64 slots/devblock). Two access modes: + + --img PATH Read the image file directly (default). No privilege + needed, works on a plain regular file. This is what + "reading the drive" reduces to when the image is + just a file, which is the normal QEMU-dev case. + + --loop PATH Attach PATH via losetup first (needs sudo), read the + resulting /dev/loopN node, then detach it again on + exit -- the literal "mount the virtual drive on a + loop device" step for when this runs against a real + block device or a copy pulled off real hardware. The + ring is raw binary at a fixed byte offset, not a + filesystem -- there is nothing to `mount` in the + POSIX-filesystem sense, so this attaches the loop + device and reads it exactly like a regular file. + +Either mode is read-only and never modifies the image. Safe to run +against a live campaign's artemis.img (the ring's control header CRC +means a torn read mid-write is simply rejected as "ring not yet +initialized" by the same discipline doe_region.c itself uses -- see +doe_region_ctrl_read()); worst case is missing the very latest record +until the next run of this script. +""" + +import argparse +import csv +import struct +import subprocess +import sys +from contextlib import contextmanager +from pathlib import Path + +DEVBLOCK_SIZE = 4096 + +# Mirrors include/starkernel/doe_region.h and include/starkernel/log_region.h +ARTEMIS_SIG_DEVBLOCK_FROM_TOP = 64 +LOG_REGION_DEVBLOCK_FROM_TOP_BASE = ARTEMIS_SIG_DEVBLOCK_FROM_TOP + 1 # 65 +LOG_REGION_MAX_DEVBLOCKS = 32 +DOE_REGION_DEVBLOCK_FROM_TOP_BASE = ( + LOG_REGION_DEVBLOCK_FROM_TOP_BASE + 1 + LOG_REGION_MAX_DEVBLOCKS +) # 98 + +DOE_SLOT_SIZE = 64 +DOE_SLOTS_PER_DEVBLOCK = DEVBLOCK_SIZE // DOE_SLOT_SIZE # 64 +DOE_REGION_MAGIC = 0x44454F44 # 'DOED' +DOE_REGION_VERSION_0 = 0 + +# doe_region_ctrl_t: magic(u64) devblocks(u32) head_slot(u32) tail_slot(u32) +# record_count(u32) hdr_crc(u64), little-endian, rest is padding to 4096. +CTRL_FMT = " int: + idx = total_devblocks - 1 - devblock_from_top + if idx < 0: + raise ValueError( + f"devblock_from_top={devblock_from_top} exceeds total_devblocks={total_devblocks}" + ) + return idx * DEVBLOCK_SIZE + + +@contextmanager +def loop_attach(img_path: Path): + """Attach img_path via losetup (read-only), yield the /dev/loopN path, + detach on exit. Requires sudo -- the literal 'mount on a loop device' + step; nothing here is a filesystem mount.""" + result = subprocess.run( + ["sudo", "losetup", "--find", "--show", "--read-only", str(img_path)], + capture_output=True, text=True, check=True, + ) + loop_dev = result.stdout.strip() + print(f" attached {img_path} -> {loop_dev}", file=sys.stderr) + try: + yield loop_dev + finally: + subprocess.run(["sudo", "losetup", "--detach", loop_dev], check=False) + print(f" detached {loop_dev}", file=sys.stderr) + + +def read_ring(dev_path: str): + """Returns a list of dicts, one per live trial record, in ring order + (oldest first). Empty list if the ring has never been written.""" + size = Path(dev_path).stat().st_size if not dev_path.startswith("/dev/") else None + if size is None: + with open(dev_path, "rb") as f: + f.seek(0, 2) + size = f.tell() + + total_devblocks = size // DEVBLOCK_SIZE + if total_devblocks <= DOE_REGION_DEVBLOCK_FROM_TOP_BASE: + raise ValueError( + f"image too small ({size} bytes, {total_devblocks} devblocks) " + f"for the DOE region fence (needs > {DOE_REGION_DEVBLOCK_FROM_TOP_BASE})" + ) + + ctrl_off = dft_to_offset(DOE_REGION_DEVBLOCK_FROM_TOP_BASE, total_devblocks) + with open(dev_path, "rb") as f: + f.seek(ctrl_off) + ctrl_raw = f.read(DEVBLOCK_SIZE) + + magic, devblocks, head_slot, tail_slot, record_count, hdr_crc = struct.unpack_from( + CTRL_FMT, ctrl_raw, 0 + ) + magic_lo = magic & 0xFFFFFFFF + version = (magic >> 32) & 0xFF + if magic_lo != DOE_REGION_MAGIC or version != DOE_REGION_VERSION_0: + print(" DOE region not yet initialized (no trials persisted yet)", file=sys.stderr) + return [] + + total_slots = devblocks * DOE_SLOTS_PER_DEVBLOCK + records = [] + with open(dev_path, "rb") as f: + idx = head_slot + for _ in range(record_count): + slot_devblock_dft = DOE_REGION_DEVBLOCK_FROM_TOP_BASE + 1 + (idx // DOE_SLOTS_PER_DEVBLOCK) + slot_off_in_devblock = (idx % DOE_SLOTS_PER_DEVBLOCK) * DOE_SLOT_SIZE + blk_off = dft_to_offset(slot_devblock_dft, total_devblocks) + f.seek(blk_off + slot_off_in_devblock) + raw = f.read(SLOT_SIZE) + (fleet_k_q48, switch_count, run_id, cfg, rep, nw, mode, + fail_count, fleet_conserved, isa_raw) = struct.unpack(SLOT_FMT, raw) + isa = isa_raw.split(b"\x00", 1)[0].decode("ascii", errors="replace") + records.append({ + "isa": isa, + "run_id": run_id, + "cfg": cfg, + "rep": rep, + "nw": nw, + "mode": mode, + "fail_count": fail_count, + "fleet_k_q48": fleet_k_q48, + "fleet_conserved": fleet_conserved, + "switch_count_cumulative": switch_count, + }) + idx = (idx + 1) % total_slots + + print(f" ring: devblocks={devblocks} head={head_slot} tail={tail_slot} " + f"record_count={record_count} -> {len(records)} records read", file=sys.stderr) + return records + + +def main(): + ap = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter) + ap.add_argument("--img", default="disk/artemis.img", help="Path to the disk image (default: disk/artemis.img)") + ap.add_argument("--loop", action="store_true", help="Attach --img via losetup first (needs sudo)") + ap.add_argument("-o", "--out", default=None, help="Output CSV path (default: stdout)") + args = ap.parse_args() + + img_path = Path(args.img) + if not img_path.exists(): + print(f"extract_doe_region: image not found: {img_path}", file=sys.stderr) + sys.exit(1) + + if args.loop: + with loop_attach(img_path) as loop_dev: + records = read_ring(loop_dev) + else: + records = read_ring(str(img_path)) + + fieldnames = ["isa", "run_id", "cfg", "rep", "nw", "mode", "fail_count", + "fleet_k_q48", "fleet_conserved", "switch_count_cumulative"] + + out_f = open(args.out, "w", newline="") if args.out else sys.stdout + try: + writer = csv.DictWriter(out_f, fieldnames=fieldnames) + writer.writeheader() + for rec in records: + writer.writerow(rec) + finally: + if args.out: + out_f.close() + print(f" wrote {len(records)} rows -> {args.out}", file=sys.stderr) + + +if __name__ == "__main__": + main()