# Softanza · The Governed Software Platform of the AI Age > Declare what you know. A court keeps it. The AI model comes last. By Mansour Ayouni. First of the AYOUNI books. This book runs: every code block was run inside the Softanza library at the commit named below, and judged against the `#-->` promise lines it carries. A draft is marked as a draft. Edition: proof copy (42 draft, 0 review, 0 published; 42 pages). Built 2026-10-17 04:50 UTC+01:00. Library commit 93d7a39bdd040f82eae21d949460d69c32a75c70. Blocks ran on the runtime of the former host language, version 1.27; Haro does not run the library yet. ## Files - book.json: the whole book as data, one entry per chapter, preface and appendix; book.schema.json describes it - llms-full-book.txt: every page as text, with the verdict of the last run under each code block - agents/.md: one page as text (the slug is in book.json) - en/index.html, fr/index.html: the reader (status.html, the builder's page, is in the repository and not on the public site) ## Rules for an agent - A draft is a draft: a chapter whose status is draft is not the author's final word, and 'the author read it' is a status that only the author sets. - You may quote any cell of a table. You may not turn an absent cell into a present one. - Rely on the stage words: built means the code, a guard and a run; designed means a document and nothing that runs; absent means that the record was searched, and the chapter says how far. - Rely on a promise only with its verdict, and only at the library commit named in this file. - A number printed in the book was read from a file or a run at the date its page gives; a number the book could not read is null. - The blocks ran on the runtime of the former host language, version 1.27; Haro does not run the library yet. - Never name the products of other repositories: the book describes them, and says 'the interface constitution' for the one it quotes. ## Pages - 0. Preface [draft, spine] agents/preface.md; guards: none; run: 1 of 1 blocks kept ### Part I · The age, the crafter, the method - 1. Change arrives faster than trust [draft, spine] agents/ch1-change-arrives-faster-than-trust.md; guards: service_registry_narrated (93), safeworld_narrated (76), governance_crossing_narrated (31); run: 2 of 2 blocks kept principle: Change arrives faster than trust. - 2. The software crafter [draft, spine] agents/ch2-the-software-crafter.md; guards: agentfile_narrated (88), service_registry_narrated (93), graphrule_object_narrated (34), semantic_resolver_narrated (83), 00_orgchart_narrated (10); run: 9 of 9 blocks kept principle: A crafter is whoever declares what they know about a world, and owns what they declare: the artefact is theirs, in plain text, and it does not expire. - 3. The method, from first principles [draft, spine] agents/ch3-the-method-from-first-principles.md; guards: modality_narrated (45), wisecoding_narrated (13), wisecoding_rich_narrated (52); run: 5 of 5 blocks kept principle: You declare a world in a language made for it, and you govern how that world changes. - 4. The platform in one picture [draft, spine] agents/ch4-the-platform-in-one-picture.md; guards: 00_stzapp_narrated (3), 06_stzsuperapp_narrated (21), full_scope_model_narrated (62), 01_platform_narrated (31), threat_model_narrated (11); run: 8 of 8 blocks kept principle: Nothing is believed, everything is judged. ### Part II · Programming, rethought - 5. Law: the code adheres to the way a person thinks, and the court judges it whoever wrote it [draft, spine] agents/ch5-law-the-code-adheres-to-the-way-a-person-thinks.md; guards: coderule_narrated (77), testoor_promises_narrated (46), 05_containsemptystrings (5), 466_keeping_the_history_of_updates_of_a_softanza_objec (2); run: 9 of 9 blocks kept principle: What you think is what you write. - 6. The mental model, and the metaphors [draft] agents/ch6-the-mental-model-and-the-metaphors.md; guards: 00_yielder_narrated (8), 597_walker_basics (6), 611_checkw (1), 621_perform (2), 483_w_and_wf_forms_in_conditional_code (2), 495_walking_until_and_until_before (4); run: 7 of 7 blocks kept principle: Say the problem in plain words, ask the same questions in the same order of any object, and when you would write a loop, name the move you are making: walk, check, yield or perform. - 7. The writing style, and the seven goals [draft] agents/ch7-the-writing-style-and-the-seven-goals.md; guards: coderule_narrated (77), 602_l_function (6), 59_use_of_the_l_small_function (8), 527_identifying_lists_inside_a_string (32), 48_replacebymany (1), 483_w_and_wf_forms_in_conditional_code (2), 28_numberofoccurrenceofcharleftside (8), 646_content (1), 972_narration_viz-finding_a_recurring_substring (7), testoor_promises_narrated (46); run: 9 of 9 blocks kept principle: What you think is what you write. - 8. Functions as linguistic expressions, and scope [draft] agents/ch8-functions-as-linguistic-expressions-and-scope.md; guards: 00_regex_narrated (28), 972_narration_viz-finding_a_recurring_substring (7), full_scope_model_narrated (62), system_scope_model_narrated (62), delivery_narrated (34); run: 13 of 13 blocks kept principle: A function's name is a sentence, and its prefixes, suffixes and parameters are a grammar that the library can read. - 9. Patterns of thought: the Softanzuter, Reaxis and the engines [draft] agents/ch9-patterns-of-thought.md; guards: 00_overflow_narrated (17), 60_reaxis_on_reactor_narrated (9), piagent_narrated (14), 00_grid_narrated (24), test_timeline_regression (20), 01_deeplist_narrated (16); run: 8 of 8 blocks kept principle: A Softanzuter is a computational representation of a thinking machine, based on one or many Regexuters, enabling it to identify and react to patterns of thought. - 10. Programming becomes refinement [draft] agents/ch10-programming-becomes-refinement.md; guards: refinablecode_narrated (17), refine_deepening_narrated (24), gate_deepening_narrated (19); run: 9 of 9 blocks kept principle: Stop trying to govern the intelligence, and govern the change. ### Part III · Languages, rethought - 11. Law: a language is declared and closed, and whatever speaks it, person or model, is judged by it [draft, spine] agents/ch11-law-a-language-is-declared-and-closed.md; guards: multilingual_pack_narrated (45), semantic_resolver_narrated (83), literate_templates_narrated (10), question_narrated (21), structuredoutput_narrated (73), schema_grammar_narrated (28), constrained_decoding_narrated (50); run: 11 of 11 blocks kept principle: A language is declared and closed, and whatever speaks it, a person or a model, is judged by it. - 12. A language, declared [draft] agents/ch12-a-language-declared.md; guards: structuredoutput_narrated (73), schema_grammar_narrated (28), constrained_decoding_narrated (50), 483_w_and_wf_forms_in_conditional_code (2), calc_column_engine_narrated (14); run: 8 of 8 blocks kept principle: Declaring a language is as easy as declaring a variable. - 13. Natural, and executable: two directions, one discipline [draft] agents/ch13-natural-and-executable.md; guards: nnl_narrated (87), multilingual_pack_narrated (45), semantic_resolver_narrated (83), question_narrated (21), literate_templates_narrated (10), truthchain_narrated (12), interrogative_narrated (11); run: 17 of 17 blocks kept principle: A sentence runs because every word of it is in a dictionary the library owns. What the library does not know, it refuses, with the reason. - 14. Knowledge programming [draft] agents/ch14-knowledge-programming.md; guards: knowledge_integration_narrated (19), provenance_survives_save_narrated (23), program_narrated (21); run: 13 of 13 blocks kept principle: A system is a file. Adding a line to it makes the system know more, and nothing is coded or trained. - 15. Pattern languages [draft] agents/ch15-pattern-languages.md; guards: 00_regex_narrated (28), 00_numbrex_narrated (15), tablex_narrated (95), 00_matrex_narrated (8), 00_graphex_narrated (27); run: 13 of 13 blocks kept principle: A pattern is a rule about the shape of data, written as data. The same habit serves every kind of data. - 16. Seven languages, one door [draft] agents/ch16-seven-languages-one-door.md; guards: 51_extercode_narrated (11), governance_narrated (19), virtual_environment_twin_narrated (38), pycodegraph_narrated (48), jscodegraph_narrated (13); run: 10 of 10 blocks kept principle: A facet is a syntax of one grammar, and never a runtime. A door is a runtime, and never a syntax. The door is one, and it is the answer to "what about language X". ### Part IV · Intelligence, rethought - 17. Law: programmatic by default, the model last, admission over generation [draft, spine] agents/ch17-law-programmatic-by-default.md; guards: dlm_narrated (16), wisecoding_narrated (13), knowledge_integration_narrated (19), agentgraph_narrated (11), piagent_narrated (14), ownagentstack_narrated (10); run: 8 of 8 blocks kept principle: The mind is programmatic by default; a model is one faculty among others, the last one called, and what it says is a proposal that the court admits or refuses. - 18. The five registers, and conversations that ask [draft] agents/ch18-the-five-registers.md; guards: wisecoding_narrated (13), wisecoding_rich_narrated (52), ownagentstack_narrated (10), tutor_gaps_narrated (29); run: 15 of 15 blocks kept principle: A reply may come in any of five forms. Whatever the form, it is only a candidate, and the world's rules decide whether it becomes knowledge. - 19. The domain language model [draft] agents/ch19-the-domain-language-model.md; guards: dlm_narrated (16), structuredoutput_narrated (73), schema_grammar_narrated (28), knowledge_integration_narrated (19), constrained_decoding_narrated (50); run: 7 of 7 blocks kept principle: The next thing the model says is a checkable unit of your world, a fact your rules admit or refuse, never a token. - 20. Agents that cannot hurt you [draft] agents/ch20-agents-that-cannot-hurt-you.md; guards: safeworld_narrated (76), agentfile_narrated (88), agentloop_engine_narrated (54), containment_drill_narrated (27), virtual_system_twin_narrated (48); run: 9 of 9 blocks kept principle: Do not build safe agents. Build a safe world, and let ordinary agents loose inside it. - 21. The court: promises, perception, security and performance [draft] agents/ch21-the-court.md; guards: testoor_promises_narrated (46), threat_model_narrated (11), security_ledger_narrated (35), secretstore_narrated (26), secret_narrated (53), stopwatch_narrated (35), tracing_tail_narrated (26), governed_loop_narrated (31), security_sentinel_narrated (33); run: 7 of 7 blocks kept principle: A claim is only as good as the court that can refuse it. And where no court can see, the record says so. - 22. Compared, honestly [draft] agents/ch22-compared-honestly.md; guards: numeric_exactness_narrated (39), numeric_no_loss_narrated (31), semantic_resolver_narrated (83), engine_is_optimised_narrated (7); run: 5 of 5 blocks kept principle: A comparison is worth nothing until the other side's version and the date are on the page, the other side has been run, and the loss is printed beside the win. ### Part V · The platform, assembled - 23. A world, a constellation, a platform, and the architect [draft] agents/ch23-a-world-a-constellation-a-platform.md; guards: 06_stzsuperapp_narrated (21), 01_platform_narrated (31), full_scope_model_narrated (62), 04_stzapp_pursue_narrated (11), 05_stzapp_live_narrated (11); run: 10 of 10 blocks kept principle: The solution is declared as worlds, bonds and an envelope before any of it is built, and every crossing between them is governed. - 24. Rehearse, then commit [draft] agents/ch24-rehearse-then-commit.md; guards: service_registry_narrated (93), service_delivery_narrated (60), virtual_system_twin_narrated (48), virtual_environment_twin_narrated (38), emulator_narrated (39), deployment_narrated (63), full_scope_model_narrated (62); run: 11 of 11 blocks kept principle: Reality is reached through exactly one door: rehearse on what touches nothing, commit through a governed actor, and let production refuse anything that is fake. - 25. Your users keep their medium [draft] agents/ch25-your-users-keep-their-medium.md; guards: sms_port_narrated (53), wisecoding_rich_narrated (52), sound_convergence_narrated (26), sound_listener_narrated (21), sound_semantics_narrated (41), payments_webhooks_narrated (51); run: 11 of 11 blocks kept principle: A new medium adds renderings, never verbs. - 26. The environment [draft] agents/ch26-the-environment.md; guards: gui_stzui_narrated (58), gui_profile_narrated (35), gui_tier_agreement_narrated (24), gui_accessibility_narrated (37), 05_stzapp_live_narrated (11), emulator_narrated (39); run: 10 of 10 blocks kept principle: Declare the interface once. Every shell is a projection of it, and a projection may add renderings, never verbs. - 27. The engine beneath: three layers, one engine, Haro [draft] agents/ch27-the-engine-beneath.md; guards: engine_is_optimised_narrated (7), engine_senses_narrated (36), wasm_narrated (23), threat_model_narrated (11); run: 9 of 9 blocks kept principle: Every feature is implemented once, in the engine. The surface is the promise, and the runtime is the part you measure, and never assert. ### Part VI · Software crafters, forged - 28. A restaurant in Lyon [draft] agents/ch28-a-restaurant-in-lyon.md; guards: 06_stzsuperapp_narrated (21), service_delivery_narrated (60), payments_port_narrated (49), judgment_narrated (41), graphrule_object_narrated (34); run: 5 of 5 blocks kept principle: Deliver small, fast and useful, and let the foundations mature in parallel without ever blocking a delivery. - 29. A bank in Niamey [draft] agents/ch29-a-bank-in-niamey.md; guards: orgrule_narrated (22), 14_bceao_governance (1), 15_multiple_validators (1), 13_segregation_of_duties (1), rulereport_narrated (23), 36_import_from_stzorg (3); run: 6 of 6 blocks kept principle: An organisation can be judged by its own chart, under a regulator's rules, by a program that reads the chart as data: the chart says what is, the rule says what must be, and the verdict names the rule and the place. - 30. An organisation in the field [draft] agents/ch30-an-organisation-in-the-field.md; guards: graphruleset_narrated (25), gg_rule_governance (29), wisecoding_narrated (13), governance_narrated (19), governance_lineage_narrated (37), 01_platform_narrated (31); run: 7 of 7 blocks kept principle: The AI agent proposes, and a person decides. - 31. What the projects show, and what comes next [draft] agents/ch31-what-the-projects-show.md; guards: service_registry_narrated (93), full_scope_model_narrated (62), payments_live_adapter_narrated (125), sound_mu5_narrated (20), deployment_narrated (63), orgrule_narrated (22), 14_bceao_governance (1), governance_narrated (19); run: 5 of 5 blocks kept principle: A project shows exactly what a document, a file, a run and a named person reach, and the page says where they stop. ### Part VII · What comes next - 32. Many minds on one body of work [draft, spine] agents/ch32-many-minds-on-one-body-of-work.md; guards: coderule_narrated (77), codegraph_narrated (28), coderule_project_narrated (13); run: 3 of 3 blocks kept principle: Every law cites the incident that earned it. A new law without a dated failure behind it is a preference, and belongs in a style guide instead. - 33. The next line: a solution on its own engine [draft, spine] agents/ch33-the-next-line.md; guards: full_scope_model_narrated (62), virtual_system_twin_narrated (48), service_delivery_narrated (60); run: 3 of 3 blocks kept principle: The record carries a solution only when it ran on its own engine and a named person said what they saw. ### Appendices - Appendix A The register of innovations [draft] agents/app-a-the-register-of-innovations.md; guards: none; run: no code - Appendix B The fourteen house rules [draft] agents/app-b-the-fourteen-house-rules.md; guards: coderule_narrated (77); run: 2 of 2 blocks kept - Appendix C The twenty-two verbs and the constitution [draft] agents/app-c-the-twenty-two-verbs-and-the-constitution.md; guards: none; run: no code - Appendix D The glossary: words name states, never people [draft] agents/app-d-the-glossary.md; guards: none; run: no code - Appendix E The guards and fixtures cited, by chapter [draft] agents/app-e-the-guards-and-fixtures-cited.md; guards: none; run: no code - Appendix F The narrations the book argues from [draft] agents/app-f-the-narrations-the-book-argues-from.md; guards: none; run: no code - Appendix G The book as data, for the agent that reads it [draft] agents/app-g-the-book-as-data.md; guards: none; run: no code - Appendix H The project's history: from Ring to Haro [draft] agents/app-h-the-projects-history.md; guards: none; run: no code