From 44bdca813443b4978d141f259d329a34efbced13 Mon Sep 17 00:00:00 2001 From: Chihvane <56425205+Chihvane@users.noreply.github.com> Date: Tue, 9 Jun 2026 17:00:30 +0800 Subject: [PATCH] Optimize public repository layout --- .../engineering/scripts/check_public_repo.sh | 54 ++- .internal/repository/legal/LICENSE.md | 2 + CITATION.cff | 43 ++ LICENSE | 395 ++++++++++++++++++ LICENSE-CODE | 28 ++ README.en.md | 41 +- README.md | 51 ++- README.zh-CN.md | 103 +++-- assets/social-preview/README.md | 8 + assets/social-preview/og.png | Bin 0 -> 79142 bytes assets/social-preview/og.svg | 21 + chapter1/final-draft-v3/en/index.md | 5 +- chapter1/final-draft-v3/index.md | 8 +- docs/README.md | 20 + docs/owner-actions.md | 43 ++ docs/publishing.md | 25 ++ docs/repository-map.md | 50 +++ 17 files changed, 796 insertions(+), 101 deletions(-) create mode 100644 CITATION.cff create mode 100644 LICENSE create mode 100644 LICENSE-CODE create mode 100644 assets/social-preview/README.md create mode 100644 assets/social-preview/og.png create mode 100644 assets/social-preview/og.svg create mode 100644 docs/README.md create mode 100644 docs/owner-actions.md create mode 100644 docs/publishing.md create mode 100644 docs/repository-map.md diff --git a/.internal/engineering/scripts/check_public_repo.sh b/.internal/engineering/scripts/check_public_repo.sh index be7d122..eda044b 100755 --- a/.internal/engineering/scripts/check_public_repo.sh +++ b/.internal/engineering/scripts/check_public_repo.sh @@ -22,6 +22,16 @@ required_files=( README.md README.en.md README.zh-CN.md + LICENSE + LICENSE-CODE + CITATION.cff + docs/README.md + docs/repository-map.md + docs/publishing.md + docs/owner-actions.md + assets/social-preview/README.md + assets/social-preview/og.svg + assets/social-preview/og.png .github/workflows/pages.yml .github/workflows/public-check.yml .github/pull_request_template.md @@ -106,7 +116,7 @@ unexpected_root_entries=() while IFS= read -r entry; do name="${entry#./}" case "$name" in - .git|.gitignore|.internal|README.md|README.en.md|README.zh-CN.md|.github|chapter1|chapter2) + .git|.gitignore|.internal|README.md|README.en.md|README.zh-CN.md|LICENSE|LICENSE-CODE|CITATION.cff|.github|assets|docs|chapter1|chapter2) ;; *) unexpected_root_entries+=("$name") @@ -116,7 +126,27 @@ done < <(find . -mindepth 1 -maxdepth 1 -print) if ((${#unexpected_root_entries[@]} > 0)); then printf '%s\n' "${unexpected_root_entries[@]}" - fail "Unexpected root-level entries found. Keep root visible topology to README language entries, .github/, chapter1/, chapter2/, and hidden internals." + fail "Unexpected root-level entries found. Keep root visible topology to README language entries, LICENSE/CITATION files, .github/, assets/, docs/, chapter1/, chapter2/, and hidden internals." +fi + +public_internal_links=() +while IFS= read -r path; do + case "$path" in + .internal/*|tmp/*|output/*) + ;; + *) + if [[ "$path" == *.md || "$path" == *.html ]]; then + if rg -q '\]\([^)]*\.internal/' "$path"; then + public_internal_links+=("$path") + fi + fi + ;; + esac +done < <(git ls-files --cached --others --exclude-standard) + +if ((${#public_internal_links[@]} > 0)); then + printf '%s\n' "${public_internal_links[@]}" + fail "Public Markdown/HTML must not link into .internal/." fi forbidden_tracked=() @@ -182,12 +212,24 @@ if ! rg -q 'README.en.md' README.md || ! rg -q 'README.zh-CN.md' README.md; then fail "README.md must expose English and Simplified Chinese language entries." fi -if ! rg -q '.internal/unpublished/wiki/Home.md' README.md; then - fail "README.md must link to the wiki source." +if ! rg -q 'docs/repository-map.md' README.md; then + fail "README.md must link to the public repository map." +fi + +if ! rg -q 'docs/owner-actions.md' README.md; then + fail "README.md must link to public owner actions." +fi + +if ! rg -q 'Creative Commons Attribution 4.0 International Public License' LICENSE; then + fail "Root LICENSE must contain the CC BY 4.0 legal code." +fi + +if ! rg -q 'MIT License' LICENSE-CODE; then + fail "Root LICENSE-CODE must contain the MIT license." fi -if ! rg -q '.internal/repository/policy/PUBLIC_RELEASE.md' README.md; then - fail "README.md must link to public release setup." +if ! rg -q '^license: CC-BY-4.0$' CITATION.cff; then + fail "CITATION.cff must declare license: CC-BY-4.0." fi if ((failures > 0)); then diff --git a/.internal/repository/legal/LICENSE.md b/.internal/repository/legal/LICENSE.md index 287207a..9e32648 100644 --- a/.internal/repository/legal/LICENSE.md +++ b/.internal/repository/legal/LICENSE.md @@ -1,5 +1,7 @@ # License +NOTE: The repository root LICENSE (CC BY 4.0) and LICENSE-CODE (MIT) are the canonical public license terms. This internal note is non-authoritative. + Copyright (c) 2026 constitutional_runtime authors. This repository is publicly readable as the mission, article, whitepaper, and diff --git a/CITATION.cff b/CITATION.cff new file mode 100644 index 0000000..ca972b0 --- /dev/null +++ b/CITATION.cff @@ -0,0 +1,43 @@ +cff-version: 1.2.0 +message: "If you reference or build on this work, please cite it as below." +title: "constitutional_runtime: A Governed Runtime Architecture for Persistent Multi-Agent Task Execution" +abstract: >- + Public worldview, concept vocabulary, essay series, and technical whitepaper + for a governed persistent multi-agent runtime. It argues that reliable + long-running AI work requires a governed runtime in which mission ownership, + authority relations, evidence gates, state transitions, audit receipts, and + lawful closure are explicit runtime objects, organized around three + adjudicating spines: Constitutional Runtime (CR), Constitutional Kernel (CK), + and Mission Kernel (MK). +type: software +authors: + - family-names: "Chihvane" + # TODO(owner): add given-names if you want full-name citation, and ORCID if available. + # orcid: "https://orcid.org/0000-0000-0000-0000" +repository-code: "https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel" +url: "https://chihvane.github.io/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/" +license: CC-BY-4.0 +version: "chapter2-v7.3" +date-released: "2026-06-09" +keywords: + - multi-agent systems + - ai governance + - ai safety + - agent architecture + - large language models + - runtime architecture + - mission kernel + - constitutional runtime +references: + - type: article + title: "Chapter 1: Structural Instability in Agent OS" + authors: + - family-names: "Chihvane" + date-released: "2026-05-14" + notes: "Final v3. Canonical PDFs (zh/en) in chapter1/final-draft-v3/." + - type: article + title: "Chapter 2: The Problem Is Not Capability, But Organization Structure" + authors: + - family-names: "Chihvane" + date-released: "2026-06-09" + notes: "Final v7.3. Source package in chapter2/final-draft-v7.3/." diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..4ea99c2 --- /dev/null +++ b/LICENSE @@ -0,0 +1,395 @@ +Attribution 4.0 International + +======================================================================= + +Creative Commons Corporation ("Creative Commons") is not a law firm and +does not provide legal services or legal advice. Distribution of +Creative Commons public licenses does not create a lawyer-client or +other relationship. Creative Commons makes its licenses and related +information available on an "as-is" basis. Creative Commons gives no +warranties regarding its licenses, any material licensed under their +terms and conditions, or any related information. Creative Commons +disclaims all liability for damages resulting from their use to the +fullest extent possible. + +Using Creative Commons Public Licenses + +Creative Commons public licenses provide a standard set of terms and +conditions that creators and other rights holders may use to share +original works of authorship and other material subject to copyright +and certain other rights specified in the public license below. The +following considerations are for informational purposes only, are not +exhaustive, and do not form part of our licenses. + + Considerations for licensors: Our public licenses are + intended for use by those authorized to give the public + permission to use material in ways otherwise restricted by + copyright and certain other rights. Our licenses are + irrevocable. Licensors should read and understand the terms + and conditions of the license they choose before applying it. + Licensors should also secure all rights necessary before + applying our licenses so that the public can reuse the + material as expected. Licensors should clearly mark any + material not subject to the license. This includes other CC- + licensed material, or material used under an exception or + limitation to copyright. More considerations for licensors: + wiki.creativecommons.org/Considerations_for_licensors + + Considerations for the public: By using one of our public + licenses, a licensor grants the public permission to use the + licensed material under specified terms and conditions. If + the licensor's permission is not necessary for any reason--for + example, because of any applicable exception or limitation to + copyright--then that use is not regulated by the license. Our + licenses grant only permissions under copyright and certain + other rights that a licensor has authority to grant. Use of + the licensed material may still be restricted for other + reasons, including because others have copyright or other + rights in the material. A licensor may make special requests, + such as asking that all changes be marked or described. + Although not required by our licenses, you are encouraged to + respect those requests where reasonable. More considerations + for the public: + wiki.creativecommons.org/Considerations_for_licensees + +======================================================================= + +Creative Commons Attribution 4.0 International Public License + +By exercising the Licensed Rights (defined below), You accept and agree +to be bound by the terms and conditions of this Creative Commons +Attribution 4.0 International Public License ("Public License"). To the +extent this Public License may be interpreted as a contract, You are +granted the Licensed Rights in consideration of Your acceptance of +these terms and conditions, and the Licensor grants You such rights in +consideration of benefits the Licensor receives from making the +Licensed Material available under these terms and conditions. + + +Section 1 -- Definitions. + + a. Adapted Material means material subject to Copyright and Similar + Rights that is derived from or based upon the Licensed Material + and in which the Licensed Material is translated, altered, + arranged, transformed, or otherwise modified in a manner requiring + permission under the Copyright and Similar Rights held by the + Licensor. For purposes of this Public License, where the Licensed + Material is a musical work, performance, or sound recording, + Adapted Material is always produced where the Licensed Material is + synched in timed relation with a moving image. + + b. Adapter's License means the license You apply to Your Copyright + and Similar Rights in Your contributions to Adapted Material in + accordance with the terms and conditions of this Public License. + + c. Copyright and Similar Rights means copyright and/or similar rights + closely related to copyright including, without limitation, + performance, broadcast, sound recording, and Sui Generis Database + Rights, without regard to how the rights are labeled or + categorized. For purposes of this Public License, the rights + specified in Section 2(b)(1)-(2) are not Copyright and Similar + Rights. + + d. Effective Technological Measures means those measures that, in the + absence of proper authority, may not be circumvented under laws + fulfilling obligations under Article 11 of the WIPO Copyright + Treaty adopted on December 20, 1996, and/or similar international + agreements. + + e. Exceptions and Limitations means fair use, fair dealing, and/or + any other exception or limitation to Copyright and Similar Rights + that applies to Your use of the Licensed Material. + + f. Licensed Material means the artistic or literary work, database, + or other material to which the Licensor applied this Public + License. + + g. Licensed Rights means the rights granted to You subject to the + terms and conditions of this Public License, which are limited to + all Copyright and Similar Rights that apply to Your use of the + Licensed Material and that the Licensor has authority to license. + + h. Licensor means the individual(s) or entity(ies) granting rights + under this Public License. + + i. Share means to provide material to the public by any means or + process that requires permission under the Licensed Rights, such + as reproduction, public display, public performance, distribution, + dissemination, communication, or importation, and to make material + available to the public including in ways that members of the + public may access the material from a place and at a time + individually chosen by them. + + j. Sui Generis Database Rights means rights other than copyright + resulting from Directive 96/9/EC of the European Parliament and of + the Council of 11 March 1996 on the legal protection of databases, + as amended and/or succeeded, as well as other essentially + equivalent rights anywhere in the world. + + k. You means the individual or entity exercising the Licensed Rights + under this Public License. Your has a corresponding meaning. + + +Section 2 -- Scope. + + a. License grant. + + 1. Subject to the terms and conditions of this Public License, + the Licensor hereby grants You a worldwide, royalty-free, + non-sublicensable, non-exclusive, irrevocable license to + exercise the Licensed Rights in the Licensed Material to: + + a. reproduce and Share the Licensed Material, in whole or + in part; and + + b. produce, reproduce, and Share Adapted Material. + + 2. Exceptions and Limitations. For the avoidance of doubt, where + Exceptions and Limitations apply to Your use, this Public + License does not apply, and You do not need to comply with + its terms and conditions. + + 3. Term. The term of this Public License is specified in Section + 6(a). + + 4. Media and formats; technical modifications allowed. The + Licensor authorizes You to exercise the Licensed Rights in + all media and formats whether now known or hereafter created, + and to make technical modifications necessary to do so. The + Licensor waives and/or agrees not to assert any right or + authority to forbid You from making technical modifications + necessary to exercise the Licensed Rights, including + technical modifications necessary to circumvent Effective + Technological Measures. For purposes of this Public License, + simply making modifications authorized by this Section 2(a) + (4) never produces Adapted Material. + + 5. Downstream recipients. + + a. Offer from the Licensor -- Licensed Material. Every + recipient of the Licensed Material automatically + receives an offer from the Licensor to exercise the + Licensed Rights under the terms and conditions of this + Public License. + + b. No downstream restrictions. You may not offer or impose + any additional or different terms or conditions on, or + apply any Effective Technological Measures to, the + Licensed Material if doing so restricts exercise of the + Licensed Rights by any recipient of the Licensed + Material. + + 6. No endorsement. Nothing in this Public License constitutes or + may be construed as permission to assert or imply that You + are, or that Your use of the Licensed Material is, connected + with, or sponsored, endorsed, or granted official status by, + the Licensor or others designated to receive attribution as + provided in Section 3(a)(1)(A)(i). + + b. Other rights. + + 1. Moral rights, such as the right of integrity, are not + licensed under this Public License, nor are publicity, + privacy, and/or other similar personality rights; however, to + the extent possible, the Licensor waives and/or agrees not to + assert any such rights held by the Licensor to the limited + extent necessary to allow You to exercise the Licensed + Rights, but not otherwise. + + 2. Patent and trademark rights are not licensed under this + Public License. + + 3. To the extent possible, the Licensor waives any right to + collect royalties from You for the exercise of the Licensed + Rights, whether directly or through a collecting society + under any voluntary or waivable statutory or compulsory + licensing scheme. In all other cases the Licensor expressly + reserves any right to collect such royalties. + + +Section 3 -- License Conditions. + +Your exercise of the Licensed Rights is expressly made subject to the +following conditions. + + a. Attribution. + + 1. If You Share the Licensed Material (including in modified + form), You must: + + a. retain the following if it is supplied by the Licensor + with the Licensed Material: + + i. identification of the creator(s) of the Licensed + Material and any others designated to receive + attribution, in any reasonable manner requested by + the Licensor (including by pseudonym if + designated); + + ii. a copyright notice; + + iii. a notice that refers to this Public License; + + iv. a notice that refers to the disclaimer of + warranties; + + v. a URI or hyperlink to the Licensed Material to the + extent reasonably practicable; + + b. indicate if You modified the Licensed Material and + retain an indication of any previous modifications; and + + c. indicate the Licensed Material is licensed under this + Public License, and include the text of, or the URI or + hyperlink to, this Public License. + + 2. You may satisfy the conditions in Section 3(a)(1) in any + reasonable manner based on the medium, means, and context in + which You Share the Licensed Material. For example, it may be + reasonable to satisfy the conditions by providing a URI or + hyperlink to a resource that includes the required + information. + + 3. If requested by the Licensor, You must remove any of the + information required by Section 3(a)(1)(A) to the extent + reasonably practicable. + + 4. If You Share Adapted Material You produce, the Adapter's + License You apply must not prevent recipients of the Adapted + Material from complying with this Public License. + + +Section 4 -- Sui Generis Database Rights. + +Where the Licensed Rights include Sui Generis Database Rights that +apply to Your use of the Licensed Material: + + a. for the avoidance of doubt, Section 2(a)(1) grants You the right + to extract, reuse, reproduce, and Share all or a substantial + portion of the contents of the database; + + b. if You include all or a substantial portion of the database + contents in a database in which You have Sui Generis Database + Rights, then the database in which You have Sui Generis Database + Rights (but not its individual contents) is Adapted Material; and + + c. You must comply with the conditions in Section 3(a) if You Share + all or a substantial portion of the contents of the database. + +For the avoidance of doubt, this Section 4 supplements and does not +replace Your obligations under this Public License where the Licensed +Rights include other Copyright and Similar Rights. + + +Section 5 -- Disclaimer of Warranties and Limitation of Liability. + + a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE + EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS + AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF + ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS, + IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION, + WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR + PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS, + ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT + KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT + ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU. + + b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE + TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, + NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT, + INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES, + COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR + USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR + DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR + IN PART, THIS LIMITATION MAY NOT APPLY TO YOU. + + c. The disclaimer of warranties and limitation of liability provided + above shall be interpreted in a manner that, to the extent + possible, most closely approximates an absolute disclaimer and + waiver of all liability. + + +Section 6 -- Term and Termination. + + a. This Public License applies for the term of the Copyright and + Similar Rights licensed here. However, if You fail to comply with + this Public License, then Your rights under this Public License + terminate automatically. + + b. Where Your right to use the Licensed Material has terminated under + Section 6(a), it reinstates: + + 1. automatically as of the date the violation is cured, provided + it is cured within 30 days of Your discovery of the + violation; or + + 2. upon express reinstatement by the Licensor. + + For the avoidance of doubt, this Section 6(b) does not affect any + right the Licensor may have to seek remedies for Your violations + of this Public License. + + c. For the avoidance of doubt, the Licensor may also offer the + Licensed Material under separate terms or conditions or stop + distributing the Licensed Material at any time; however, doing so + will not terminate this Public License. + + d. Sections 1, 5, 6, 7, and 8 survive termination of this Public + License. + + +Section 7 -- Other Terms and Conditions. + + a. The Licensor shall not be bound by any additional or different + terms or conditions communicated by You unless expressly agreed. + + b. Any arrangements, understandings, or agreements regarding the + Licensed Material not stated herein are separate from and + independent of the terms and conditions of this Public License. + + +Section 8 -- Interpretation. + + a. For the avoidance of doubt, this Public License does not, and + shall not be interpreted to, reduce, limit, restrict, or impose + conditions on any use of the Licensed Material that could lawfully + be made without permission under this Public License. + + b. To the extent possible, if any provision of this Public License is + deemed unenforceable, it shall be automatically reformed to the + minimum extent necessary to make it enforceable. If the provision + cannot be reformed, it shall be severed from this Public License + without affecting the enforceability of the remaining terms and + conditions. + + c. No term or condition of this Public License will be waived and no + failure to comply consented to unless expressly agreed to by the + Licensor. + + d. Nothing in this Public License constitutes or may be interpreted + as a limitation upon, or waiver of, any privileges and immunities + that apply to the Licensor or You, including from the legal + processes of any jurisdiction or authority. + + +======================================================================= + +Creative Commons is not a party to its public +licenses. Notwithstanding, Creative Commons may elect to apply one of +its public licenses to material it publishes and in those instances +will be considered the “Licensor.” The text of the Creative Commons +public licenses is dedicated to the public domain under the CC0 Public +Domain Dedication. Except for the limited purpose of indicating that +material is shared under a Creative Commons public license or as +otherwise permitted by the Creative Commons policies published at +creativecommons.org/policies, Creative Commons does not authorize the +use of the trademark "Creative Commons" or any other trademark or logo +of Creative Commons without its prior written consent including, +without limitation, in connection with any unauthorized modifications +to any of its public licenses or any other arrangements, +understandings, or agreements concerning use of licensed material. For +the avoidance of doubt, this paragraph does not form part of the +public licenses. + +Creative Commons may be contacted at creativecommons.org. diff --git a/LICENSE-CODE b/LICENSE-CODE new file mode 100644 index 0000000..85c9365 --- /dev/null +++ b/LICENSE-CODE @@ -0,0 +1,28 @@ +MIT License + +Copyright (c) 2026 Chihvane + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +---- + +Scope note: This MIT license applies ONLY to source code, scripts, and build +automation in this repository (e.g. Python, Shell, SCSS, CI config). All prose, +essays, whitepaper chapters, diagrams, and other written/visual content are +licensed separately under CC BY 4.0 (see the root LICENSE file). diff --git a/README.en.md b/README.en.md index 3f436f0..5973c55 100644 --- a/README.en.md +++ b/README.en.md @@ -1,10 +1,22 @@ # constitutional_runtime +**Constitutional Runtime is a governed runtime architecture for persistent multi-agent task execution. It separates capability from ownership, role from authority, memory from evidence, and local completion from lawful closure.** + +Long-running AI work cannot become reliable only by giving a single agent more memory, more tools, or a larger context window. It needs a governed runtime where **mission ownership, authority relations, evidence gates, state transitions, audit receipts, and lawful closure** become explicit runtime objects. + +## Read Now + +- [Chapter 1 Final v3](./chapter1/final-draft-v3/): structural instability in Agent OS, with Chinese and English canonical PDFs. +- [Chapter 2 Final v7.3](./chapter2/final-draft-v7.3/): why the root problem is organization structure, not capability. +- [Citation evidence](./chapter1/references/) and [reuse terms](./LICENSE): source support, licensing, and citation metadata. + [English](./README.en.md) | [简体中文](./README.zh-CN.md) [![Public Readiness](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml) [![Deploy GitHub Pages](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml) +## Repository Role + > A public worldview, concept system, article series, diagrams, evidence index, and whitepaper repository for governed persistent multi-agent runtime architecture. **Series:** *From Single-Agent OS to Constitutional Runtime: Why I Rebuilt My AI System* @@ -21,14 +33,6 @@ Repository slug: persistent--multi-agent--constitutional-runtime-kernel--mission-kernel ``` -## One-Sentence Thesis - -Long-running AI work cannot become reliable only by giving a single agent more memory, more tools, or a larger context window. It needs a governed runtime where **mission ownership, authority relations, evidence gates, state transitions, audit receipts, and lawful closure** become explicit runtime objects. - -## One-Sentence Definition - -**Constitutional Runtime is a governed runtime architecture for persistent multi-agent task execution. It separates capability from ownership, role from authority, memory from evidence, and local completion from lawful closure.** - Its goal is not to create "more agents." Its goal is to preserve, across long-running work: ```text @@ -245,9 +249,9 @@ Recommended path: 4. [Chapter 2 Version Map](./chapter2/) 5. [Chapter 2 Final v7.3](./chapter2/final-draft-v7.3/) 6. [Chapter 1 Reference Evidence](./chapter1/references/) -7. [Series Outline](./.internal/unpublished/series/outline.md) -8. [Whitepaper Outline](./.internal/unpublished/whitepaper/outline.md) -9. [Wiki Home](./.internal/unpublished/wiki/Home.md) +7. [Repository Map](./docs/repository-map.md) +8. [Public Publishing Notes](./docs/publishing.md) +9. [Owner Action Checklist](./docs/owner-actions.md) ## Public GitHub Configuration @@ -259,7 +263,7 @@ This repository uses the same public-facing conventions readers expect from acti - active public readiness workflow: [.github/workflows/public-check.yml](./.github/workflows/public-check.yml) - active GitHub Pages workflow: [.github/workflows/pages.yml](./.github/workflows/pages.yml) - CODEOWNERS: [.github/CODEOWNERS](./.github/CODEOWNERS) -- public release setup: [.internal/repository/policy/PUBLIC_RELEASE.md](./.internal/repository/policy/PUBLIC_RELEASE.md) +- public owner actions: [docs/owner-actions.md](./docs/owner-actions.md) Run the public readiness check before publishing or opening release-oriented pull requests: @@ -369,4 +373,15 @@ A public architecture, article, and whitepaper repository for a governed persist ## License / Reuse -Reuse terms are recorded in [.internal/repository/legal/LICENSE.md](./.internal/repository/legal/LICENSE.md). Until broader reuse rights are explicitly granted, treat this repository as public documentation and whitepaper draft material. When citing the project, cite the canonical Chapter 1 PDFs, the Chapter 1 GitHub Pages editions, or the Chapter 2 v7.3 package artifacts. +This repository uses a dual-track license: + +- **Written and visual content** — all essays, whitepaper chapters, diagrams, glossary entries, and publication packages — is licensed under **[Creative Commons Attribution 4.0 International (CC BY 4.0)](./LICENSE)**. You may share, quote, translate, and adapt it, including commercially, as long as you give appropriate credit. +- **Code** — scripts, build automation, and CI configuration — is licensed under the **[MIT License](./LICENSE-CODE)**. + +When citing this project, use the "Cite this repository" button powered by [`CITATION.cff`](./CITATION.cff), or: + +> Chihvane, "constitutional_runtime", 2026, +> https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel +> Licensed under CC BY 4.0. + +For chapter-level citation, cite the canonical Chapter 1 PDFs, Chapter 1 GitHub Pages editions, Chapter 2 v7.3 package artifacts, or tagged GitHub Releases when available. diff --git a/README.md b/README.md index efe0d70..b72a530 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,14 @@ # constitutional_runtime -[English](./README.en.md) | [简体中文](./README.zh-CN.md) +**Constitutional Runtime is a governed runtime architecture for persistent multi-agent task execution. It separates capability from ownership, role from authority, memory from evidence, and local completion from lawful closure.** -[![Public Readiness](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml) -[![Deploy GitHub Pages](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml) +Long-running AI work cannot become reliable only by giving one agent more memory, more tools, or a larger context window. It needs a governed runtime where mission ownership, authority relations, evidence gates, audit receipts, state transitions, and lawful closure are explicit runtime objects. -> Public mission, essays, diagrams, evidence indexes, and whitepaper drafts for a governed persistent multi-agent runtime. -> -> 面向受治理的持久化多智能体运行时的公开世界观、文章、图表、证据索引与白皮书草稿仓库。 +## Read Now + +- [Chapter 1 version map](./chapter1/): structural instability in Agent OS, with Chinese and English canonical PDFs. +- [Chapter 2 version map](./chapter2/): why the root problem is organization structure, not capability. +- [Citation evidence index](./chapter1/references/citation-evidence-index.md) and [reuse terms](./LICENSE) for quoting, translating, and citing the project. ## Choose A Language @@ -16,27 +17,24 @@ | English | [README.en.md](./README.en.md) | | 简体中文 | [README.zh-CN.md](./README.zh-CN.md) | +[![Public Readiness](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml) +[![Deploy GitHub Pages](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml) + +> Public mission, essays, diagrams, evidence indexes, and whitepaper drafts for a governed persistent multi-agent runtime. +> +> 面向受治理的持久化多智能体运行时的公开世界观、文章、图表、证据索引与白皮书草稿仓库。 + ## What This Repository Is This is the public documentation and publication home for `constitutional_runtime`. -It argues that long-running AI work cannot become reliable only by giving one agent more memory, more tools, or a larger context window. It needs a governed runtime where mission ownership, authority relations, evidence gates, audit receipts, state transitions, and lawful closure are explicit runtime objects. - 本仓库不是实现源码仓库。它公开的是概念、文章、白皮书路线、图表、引用证据与发布包;私有源码、私有 prompt、内部日志、凭证和运行痕迹不在这里公开。 -## Start Reading +## Public Orientation -- [English overview](./README.en.md) -- [中文总览](./README.zh-CN.md) -- [Chapter 1 version map](./chapter1/) -- [Chapter 1 Chinese final PDF](./chapter1/final-draft-v3/package-v3/chapter1.pdf) -- [Chapter 1 English final PDF](./chapter1/final-draft-v3/package-v3-en/chapter1.pdf) -- [Chapter 2 version map](./chapter2/) -- [Chapter 2 v7.3 GitHub Pages edition](./chapter2/final-draft-v7.3/github-pages.md) -- [Chapter 2 v7.3 Markdown source](./chapter2/final-draft-v7.3/package-v7.3/chapter2.md) -- [Citation evidence index](./chapter1/references/citation-evidence-index.md) -- [Wiki source](./.internal/unpublished/wiki/Home.md) -- [Public release setup](./.internal/repository/policy/PUBLIC_RELEASE.md) +- [Repository map](./docs/repository-map.md) +- [Public publishing notes](./docs/publishing.md) +- [Owner action checklist](./docs/owner-actions.md) ## Public GitHub Configuration @@ -79,3 +77,16 @@ Run the public readiness check before publishing: ```bash make -f .internal/engineering/Makefile check ``` + +## License / Reuse + +This repository uses a dual-track license: + +- **Written and visual content** is licensed under [Creative Commons Attribution 4.0 International (CC BY 4.0)](./LICENSE). +- **Code, scripts, build automation, and CI configuration** are licensed under the [MIT License](./LICENSE-CODE). + +When citing this project, use [CITATION.cff](./CITATION.cff) or cite: + +> Chihvane, "constitutional_runtime", 2026, +> https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel +> Licensed under CC BY 4.0. diff --git a/README.zh-CN.md b/README.zh-CN.md index 944dc9e..f666fcb 100644 --- a/README.zh-CN.md +++ b/README.zh-CN.md @@ -1,10 +1,22 @@ # constitutional_runtime +**Constitutional Runtime 是一种用于持久化多智能体任务执行的受治理运行时架构。它将 capability 与 ownership、role 与 authority、memory 与 evidence、local completion 与 lawful closure 分开。** + +长期运行的 AI 工作,不能只靠给单个 agent 更多记忆、更多工具或更大的上下文窗口来变得可靠。它需要一个受治理的运行时,使 **mission ownership、authority relations、evidence gates、state transitions、audit receipts 与 lawful closure** 成为显式的运行时对象。 + +## 现在阅读 + +- [Chapter 1 Final v3](./chapter1/final-draft-v3/):Agent OS 的结构性失稳,包含中英文 canonical PDF。 +- [Chapter 2 Final v7.3](./chapter2/final-draft-v7.3/):为什么根本问题是组织结构,而不是能力。 +- [引用证据](./chapter1/references/) 与 [复用许可](./LICENSE):用于引用、翻译、改编与 citation。 + [English](./README.en.md) | [简体中文](./README.zh-CN.md) [![Public Readiness](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/public-check.yml) [![Deploy GitHub Pages](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml/badge.svg)](https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel/actions/workflows/pages.yml) +## 仓库角色 + > 一个面向持久化多智能体运行时的公开世界观、概念系统、系列文章与技术白皮书仓库。 **系列:** *From Single-Agent OS to Constitutional Runtime: Why I Rebuilt My AI System* @@ -19,14 +31,6 @@ `persistent--multi-agent--constitutional-runtime-kernel--mission-kernel` -## 一句话论点 - -长期运行的 AI 工作,不能只靠给单个 agent 更多记忆、更多工具或更大的上下文窗口来变得可靠。它需要一个受治理的运行时,使 **mission ownership、authority relations、evidence gates、state transitions、audit receipts 与 lawful closure** 成为显式的运行时对象。 - -## 一句话定义 - -**Constitutional Runtime 是一种用于持久化多智能体任务执行的受治理运行时架构。它将 capability 与 ownership、role 与 authority、memory 与 evidence、local completion 与 lawful closure 分开。** - 它的目的不是制造“更多 agent”,而是让长期 AI 工作持续保存: ```text @@ -600,8 +604,8 @@ Chapter 1 final release 有两个 canonical language editions。每个语言版 | Edition | Canonical PDF | Web Edition | Platform Package | |---|---|---|---| -| Chinese | [chapter1.pdf](./chapter1/final-draft-v3/package-v3/chapter1.pdf) | [GitHub Pages Markdown](./chapter1/final-draft-v3/github-pages.md) | [Publishing package](./.internal/unpublished/publishing/chapter-01/) | -| English | [chapter1.pdf](./chapter1/final-draft-v3/package-v3-en/chapter1.pdf) | [GitHub Pages Markdown](./chapter1/final-draft-v3/en/github-pages.md) | [Publishing package](./.internal/unpublished/publishing/chapter-01/en/) | +| Chinese | [chapter1.pdf](./chapter1/final-draft-v3/package-v3/chapter1.pdf) | [GitHub Pages Markdown](./chapter1/final-draft-v3/github-pages.md) | [Publishing package](./chapter1/final-draft-v3/package-v3/) | +| English | [chapter1.pdf](./chapter1/final-draft-v3/package-v3-en/chapter1.pdf) | [GitHub Pages Markdown](./chapter1/final-draft-v3/en/github-pages.md) | [Publishing package](./chapter1/final-draft-v3/package-v3-en/) | Source packages: @@ -640,15 +644,14 @@ Chapter 2 v7.3 目前发布为中文源稿包。你提供的 Pandoc HTML 已保 推荐阅读顺序: -1. [Series Outline](./.internal/unpublished/series/outline.md) -2. [Chapter 1 Version Map](./chapter1/) -3. [Chapter 1 Final v3](./chapter1/final-draft-v3/) -4. [Chapter 2 Version Map](./chapter2/) -5. [Chapter 2 Final v7.3](./chapter2/final-draft-v7.3/) -6. [Chapter 1 Reference Evidence](./chapter1/references/) -7. [Whitepaper Outline](./.internal/unpublished/whitepaper/outline.md) -8. [Glossary](./.internal/repository/concepts/glossary.md) -9. [Wiki Home](./.internal/unpublished/wiki/Home.md) +1. [Chapter 1 Version Map](./chapter1/) +2. [Chapter 1 Final v3](./chapter1/final-draft-v3/) +3. [Chapter 2 Version Map](./chapter2/) +4. [Chapter 2 Final v7.3](./chapter2/final-draft-v7.3/) +5. [Chapter 1 Reference Evidence](./chapter1/references/) +6. [Repository Map](./docs/repository-map.md) +7. [Public Publishing Notes](./docs/publishing.md) +8. [Owner Action Checklist](./docs/owner-actions.md) ## 发布输出 @@ -659,34 +662,19 @@ Chapter 2 v7.3 目前发布为中文源稿包。你提供的 Pandoc HTML 已保 - [Chinese GitHub Pages edition](./chapter1/final-draft-v3/github-pages.md) - [English GitHub Pages edition](./chapter1/final-draft-v3/en/github-pages.md) - [Chapter 2 v7.3 GitHub Pages edition](./chapter2/final-draft-v7.3/github-pages.md) -- Shared styling: [.internal/engineering/assets/main.scss](./.internal/engineering/assets/main.scss) +- Shared styling is maintained by the repository's Pages workflow. ### GitHub Wiki -GitHub Wiki 源稿保存在 [.internal/unpublished/wiki/](./.internal/unpublished/wiki/),便于发布前 review。 - -Start pages: - -- [Wiki Home](./.internal/unpublished/wiki/Home.md) -- [Wiki Sidebar](./.internal/unpublished/wiki/_Sidebar.md) -- [Public Release Checklist](./.internal/unpublished/wiki/Public-Release-Checklist.md) -- [Wiki Sync Guide](./.internal/unpublished/publishing/wiki-sync.md) - -GitHub 会把 wiki 页面存放在单独的 `*.wiki.git` 仓库中。只有在 `make -f .internal/engineering/Makefile check` 通过后,才应从 `.internal/unpublished/wiki/` 发布。 +GitHub Wiki 源稿属于发布前 authoring material,不从公开 README 直接链接。公开读者应从本 README、[Repository Map](./docs/repository-map.md) 与 chapter version maps 进入。 ### Substack -- [Chinese Substack paste edition](./.internal/unpublished/publishing/chapter-01/substack/chapter1.substack.md) -- [English Substack paste edition](./.internal/unpublished/publishing/chapter-01/en/substack/chapter1.substack.md) - -Substack 不保留 custom CSS 或 pandoc div blocks,所以 Substack 版本将 definition/example boxes 展平为普通 Markdown,并使用明确的 figure-upload markers。 +Substack paste editions are prepared as internal publishing artifacts before publication. The public source of record remains the chapter package and canonical PDF for the matching language edition. ### Hugging Face -- [Chinese Hugging Face README edition](./.internal/unpublished/publishing/chapter-01/hugging-face/README.md) -- [English Hugging Face README edition](./.internal/unpublished/publishing/chapter-01/en/hugging-face/README.md) - -每个 Hugging Face package 都包含对应的 final PDF 与 figure assets。 +Hugging Face README editions are prepared as platform packages. Each public package should point back to the chapter version map and canonical chapter artifact. ## 引用证据 @@ -761,20 +749,21 @@ raw reference PDF corpus 默认不提交到仓库。这样可以保持公开仓 从这里开始: ```text -.internal/unpublished/series/outline.md chapter1/final-draft-v3/ -.internal/unpublished/whitepaper/outline.md -.internal/repository/concepts/glossary.md -.internal/unpublished/wiki/Home.md +chapter2/final-draft-v7.3/ +chapter1/references/ +docs/repository-map.md +docs/publishing.md ``` ### 发布 -使用生成好的平台发布包: +使用公开发布包: ```text -.internal/unpublished/publishing/chapter-01/ -.internal/unpublished/publishing/chapter-01/en/ +chapter1/final-draft-v3/package-v3/ +chapter1/final-draft-v3/package-v3-en/ +chapter2/final-draft-v7.3/package-v7.3/ ``` ### 验证引用 @@ -819,16 +808,13 @@ GitHub Actions 的公开入口保存在 `.github/workflows/`。`.internal/engine ## 公开发布设置 -公开发布配置记录在 [.internal/repository/policy/PUBLIC_RELEASE.md](./.internal/repository/policy/PUBLIC_RELEASE.md)。 +公开发布操作请参考 [Owner Action Checklist](./docs/owner-actions.md)。 Required local/public files include: -- [Environment metadata template](./.internal/engineering/site/.env.example) -- [License](./.internal/repository/legal/LICENSE.md) -- [Contribution guide](./.internal/repository/policy/CONTRIBUTING.md) -- [Security policy](./.internal/repository/policy/SECURITY.md) -- [Support policy](./.internal/repository/policy/SUPPORT.md) -- [Citation metadata](./.internal/repository/legal/CITATION.cff) +- [Content license](./LICENSE) +- [Code license](./LICENSE-CODE) +- [Citation metadata](./CITATION.cff) - [Active public readiness workflow](./.github/workflows/public-check.yml) - [Active GitHub Pages workflow](./.github/workflows/pages.yml) - [Bilingual issue template](./.github/ISSUE_TEMPLATE/docs_issue.yml) @@ -1159,4 +1145,15 @@ Mission is the unit of governance. ## License / Reuse -复用条款见 [.internal/repository/legal/LICENSE.md](./.internal/repository/legal/LICENSE.md)。在更宽泛的复用权利被明确授予之前,请将本仓库视为公开 documentation 与 whitepaper draft。引用本项目时,请引用 Chapter 1 的 canonical PDFs / GitHub Pages editions,或 Chapter 2 v7.3 的 package artifacts。 +本仓库采用双轨许可: + +- **文字与图示内容** —— 所有文章、白皮书章节、图表、术语表与发布包 —— 采用 **[知识共享 署名 4.0 国际 (CC BY 4.0)](./LICENSE)** 许可。在适当署名的前提下,你可以自由分享、引用、翻译并改编,包括商业用途。 +- **代码** —— 脚本、构建自动化与 CI 配置 —— 采用 **[MIT 许可](./LICENSE-CODE)**。 + +引用本项目时,请使用仓库页的 "Cite this repository" 按钮(由 [`CITATION.cff`](./CITATION.cff) 提供),或: + +> Chihvane, "constitutional_runtime", 2026, +> https://github.com/Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel +> 采用 CC BY 4.0 许可。 + +按章引用时,请引用各章 canonical PDF、Chapter 2 v7.3 package artifacts,或可用的 GitHub Release 标签。 diff --git a/assets/social-preview/README.md b/assets/social-preview/README.md new file mode 100644 index 0000000..7173c3f --- /dev/null +++ b/assets/social-preview/README.md @@ -0,0 +1,8 @@ +# Social Preview + +This directory stores the public Open Graph preview asset for the repository. + +- `og.svg`: reproducible source +- `og.png`: 1280 x 640 export for GitHub repository settings + +Owner action: upload `og.png` in GitHub repository settings under Social preview. diff --git a/assets/social-preview/og.png b/assets/social-preview/og.png new file mode 100644 index 0000000000000000000000000000000000000000..4b6628b27c77b825c558ce53c15f1379817ba339 GIT binary patch literal 79142 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

`Z`(Z-<8$|J6Dkgm4F#(AK>+XjyY#i2QyOjd@?+ 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 E05AazR{#J2 literal 0 HcmV?d00001 diff --git a/assets/social-preview/og.svg b/assets/social-preview/og.svg new file mode 100644 index 0000000..adb4738 --- /dev/null +++ b/assets/social-preview/og.svg @@ -0,0 +1,21 @@ + + constitutional_runtime social preview + From Single-Agent OS to Constitutional Runtime: a governed runtime for persistent multi-agent AI. + + + constitutional_runtime + From Single-Agent OS + to Constitutional Runtime + A governed runtime for persistent multi-agent AI + + + CR - current truth + + CK - authority law + + MK - mission lifecycle + + + Public whitepaper + essay series + github.com/Chihvane + diff --git a/chapter1/final-draft-v3/en/index.md b/chapter1/final-draft-v3/en/index.md index a28a334..cbd6510 100644 --- a/chapter1/final-draft-v3/en/index.md +++ b/chapter1/final-draft-v3/en/index.md @@ -32,9 +32,8 @@ This PDF is the canonical source for both final formatting and final text. ## Platform Editions - [GitHub Pages edition](./github-pages.md): styled web edition with definition/example boxes preserved -- [Substack package](../../../.internal/unpublished/publishing/chapter-01/en/substack/): flattened paste edition plus figure assets -- [Hugging Face package](../../../.internal/unpublished/publishing/chapter-01/en/hugging-face/): README edition plus figure assets and canonical PDF -- [Conversion manifest](../../../.internal/unpublished/publishing/chapter-01/en/conversion-manifest.md): source hashes and conversion rules +- Substack and Hugging Face editions are prepared as platform-specific publication artifacts before release. Public readers should use the canonical PDF and GitHub Pages edition listed above. +- Conversion manifests are maintained as release engineering artifacts and are not part of the public navigation surface. ## Publication Rule diff --git a/chapter1/final-draft-v3/index.md b/chapter1/final-draft-v3/index.md index 45bcd0d..2ddc2d0 100644 --- a/chapter1/final-draft-v3/index.md +++ b/chapter1/final-draft-v3/index.md @@ -46,12 +46,8 @@ These PDFs are the canonical sources for final formatting and final text. - [Chinese GitHub Pages edition](./github-pages.md): styled web edition with definition/example boxes preserved - [English GitHub Pages edition](./en/github-pages.md): styled web edition with definition/example boxes preserved -- [Chinese Substack package](../../.internal/unpublished/publishing/chapter-01/substack/): flattened paste edition plus figure assets -- [English Substack package](../../.internal/unpublished/publishing/chapter-01/en/substack/): flattened paste edition plus figure assets -- [Chinese Hugging Face package](../../.internal/unpublished/publishing/chapter-01/hugging-face/): README edition plus figure assets and canonical PDF -- [English Hugging Face package](../../.internal/unpublished/publishing/chapter-01/en/hugging-face/): README edition plus figure assets and canonical PDF -- [Chinese conversion manifest](../../.internal/unpublished/publishing/chapter-01/conversion-manifest.md): source hashes and conversion rules -- [English conversion manifest](../../.internal/unpublished/publishing/chapter-01/en/conversion-manifest.md): source hashes and conversion rules +- Substack and Hugging Face editions are prepared as platform-specific publication artifacts before release. Public readers should use the canonical PDFs and GitHub Pages editions listed above. +- Conversion manifests are maintained as release engineering artifacts and are not part of the public navigation surface. ## Publication Rule diff --git a/docs/README.md b/docs/README.md new file mode 100644 index 0000000..7c5e15a --- /dev/null +++ b/docs/README.md @@ -0,0 +1,20 @@ +--- +layout: page +title: Public Docs +--- + +# Public Docs + +This directory holds public-facing orientation pages for readers, citers, and release reviewers. It does not mirror private authoring material or operational traces. + +## Start Here + +- [Repository map](./repository-map.md) +- [Public publishing notes](./publishing.md) +- [Owner action checklist](./owner-actions.md) + +For the actual series text, start with: + +- [Chapter 1 version map](../chapter1/) +- [Chapter 2 version map](../chapter2/) +- [Chapter 1 reference evidence](../chapter1/references/) diff --git a/docs/owner-actions.md b/docs/owner-actions.md new file mode 100644 index 0000000..9c0a9a0 --- /dev/null +++ b/docs/owner-actions.md @@ -0,0 +1,43 @@ +--- +layout: page +title: Owner Action Checklist +--- + +# Owner Action Checklist + +Some discoverability actions are GitHub repository settings rather than files. They are documented here so the Owner can apply them after reviewing the branch. + +## Repository Description + +```bash +REPO=Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel + +gh repo edit "$REPO" \ + --description "Constitutional Runtime - a governed runtime architecture for persistent multi-agent AI: mission ownership, authority, evidence gates, audit receipts, and lawful closure as explicit runtime objects. Public whitepaper + essay series." +``` + +## Topics + +```bash +REPO=Chihvane/persistent--multi-agent--constitutional-runtime-kernel--mission-kernel + +gh repo edit "$REPO" \ + --add-topic ai-agents \ + --add-topic multi-agent-systems \ + --add-topic ai-governance \ + --add-topic ai-safety \ + --add-topic llm \ + --add-topic agent-architecture \ + --add-topic agentic-ai \ + --add-topic whitepaper \ + --add-topic ai-alignment \ + --add-topic runtime-architecture +``` + +## Social Preview + +TODO(owner): In GitHub repository settings, upload `assets/social-preview/og.png` as the custom social preview image. + +## Releases + +TODO(owner): After reviewing release assets, create tagged GitHub Releases for published chapters. Chapter 1 can attach both final PDFs. Chapter 2 should wait until the Owner decides whether a canonical PDF is needed for v7.3. diff --git a/docs/publishing.md b/docs/publishing.md new file mode 100644 index 0000000..aef8aab --- /dev/null +++ b/docs/publishing.md @@ -0,0 +1,25 @@ +--- +layout: page +title: Public Publishing Notes +--- + +# Public Publishing Notes + +This page records the public-facing publication status of the repository. It avoids internal authoring paths and points readers to stable public artifacts. + +## Published Chapters + +| Chapter | Status | Canonical / Source Artifacts | +|---|---|---| +| Chapter 1 | Final v3, Chinese and English | [Version map](../chapter1/final-draft-v3/), [Chinese PDF](../chapter1/final-draft-v3/package-v3/chapter1.pdf), [English PDF](../chapter1/final-draft-v3/package-v3-en/chapter1.pdf) | +| Chapter 2 | Final v7.3, Chinese source package | [Version map](../chapter2/final-draft-v7.3/), [Markdown](../chapter2/final-draft-v7.3/package-v7.3/chapter2.md), [HTML](../chapter2/final-draft-v7.3/package-v7.3/chapter2.html) | + +## Current Canonical Rule + +For Chapter 1, each language edition's PDF is the final authority for both text and layout. + +For Chapter 2 v7.3, the supplied HTML source and repository-readable Markdown package are published together. A future PDF can be added as the layout authority without changing the source package identity. + +## Chapter 2 English Translation + +Chapter 2 English translation is intentionally not part of this layout optimization pass. Until the Owner approves an English edition, the Chinese v7.3 package remains the source of record. diff --git a/docs/repository-map.md b/docs/repository-map.md new file mode 100644 index 0000000..eadc7d3 --- /dev/null +++ b/docs/repository-map.md @@ -0,0 +1,50 @@ +--- +layout: page +title: Repository Map +--- + +# Repository Map + +`constitutional_runtime` is a public documentation, essay, diagram, evidence, and whitepaper repository. It is not the private implementation source tree. + +```text +. +├── README.md +├── README.en.md +├── README.zh-CN.md +├── LICENSE +├── LICENSE-CODE +├── CITATION.cff +├── .github/ +├── assets/ +│ └── social-preview/ +├── docs/ +├── chapter1/ +│ ├── README.md +│ ├── README.zh-CN.md +│ ├── final-draft-v3/ +│ │ ├── package-v3/ +│ │ ├── package-v3-en/ +│ │ ├── github-pages.md +│ │ └── en/ +│ └── references/ +├── chapter2/ +│ ├── README.md +│ ├── README.zh-CN.md +│ └── final-draft-v7.3/ +│ ├── package-v7.3/ +│ └── github-pages.md +└── .internal/ +``` + +## Public Entries + +- Root READMEs provide language selection, current thesis, reading order, license, and citation. +- `chapter1/` and `chapter2/` hold published chapter packages and version maps. +- `docs/` holds reader-facing orientation pages. +- `assets/` holds public visual assets such as the social preview image. +- `.github/` holds issue templates, PR template, CODEOWNERS, and Actions workflows. + +## Private Boundary + +`.internal/` remains private-by-design authoring and release-support material. Public pages should not link into it. If internal material becomes public, publish a sanitized public copy instead of exposing the internal path.