d2 emits SVG natively; its PNG path wants a ~150 MB headless-Chromium download and prompts interactively, so every PNG here was produced by an out-of-band magick step. There is no Chromium on this system. Dropping PNG removes the dependency rather than trading one format for another, and cuts docs/diagrams/ from 17 MB to 3.3 MB. SVG renders in Gitea and in clide (`clide draw --file <path>`, which takes .d2 source directly), and diffs as text. One PNG is kept on purpose: design/star-map-concentric.png has no .d2 source. Also renders the 7 star-map .d2 files for the first time. star-map-plan.md listed their renders as a deliverable in March and the step never ran; the new `make check-diagrams` is what surfaced it. New: docs/diagrams/data-flow/wiki-generator-flow.d2 — which way the arrows point for any file under wiki/. Every edge was read in the tool's own source rather than inferred. It records the trap that keeps costing us: scaffold_bodies.py writes a body page once and never overwrites it, and the generator then reads that frontmatter directly — so a hand-edit there is not reverted, it is obeyed, and silently changes world generation. Two rendering traps found the expensive way and now written down: - A d2 `|md` block becomes an SVG <foreignObject>. ImageMagick and flutter_svg both silently drop it, so the legend was in the file and invisible in every viewer except a browser. Plain labels render as real <text> everywhere. - Container boxes fight the layout engine. Grouping nodes whose flow-depths differ forces long edge routes; this diagram went from an unreadable 2.4:1 sprawl to a legible 0.75:1 by deleting five containers and changing nothing else. Colour classes carry the grouping instead. make diagrams / make check-diagrams render and gate. Repo-specific rules in .claude/rules/diagrams.md; d2 syntax and the traps live in the user-scope d2-diagram skill, whose PNG default was flipped to SVG to match. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
119 lines
46 KiB
XML
119 lines
46 KiB
XML
<?xml version="1.0" encoding="utf-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" data-d2-version="v0.8.1-HEAD" preserveAspectRatio="xMinYMin meet" viewBox="0 0 2397 1935"><svg class="d2-3871895981 d2-svg" width="2397" height="1935" viewBox="-91 -101 2397 1935"><rect x="-91.000000" y="-101.000000" width="2397.000000" height="1935.000000" rx="0.000000" fill="#FFFFFF" class=" fill-N7" stroke-width="0" /><style type="text/css"><![CDATA[
|
|
.d2-3871895981 .text {
|
|
font-family: "d2-3871895981-font-regular";
|
|
}
|
|
@font-face {
|
|
font-family: d2-3871895981-font-regular;
|
|
src: url("data:application/font-woff;base64,d09GRgABAAAAABW4AAoAAAAAIIQAAguFAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgXd/Vo2NtYXAAAAFUAAAA9gAAAWAo4yxuZ2x5ZgAAAkwAAA46AAATzIrpfshoZWFkAAAQiAAAADYAAAA2G4Ue32hoZWEAABDAAAAAJAAAACQKhAYGaG10eAAAEOQAAADjAAABEIDFDntsb2NhAAARyAAAAIoAAACKuIqzpm1heHAAABJUAAAAIAAAACAAXAD2bmFtZQAAEnQAAAMjAAAIFAbDVU1wb3N0AAAVmAAAAB0AAAAg/9EAMgADAgkBkAAFAAACigJYAAAASwKKAlgAAAFeADIBIwAAAgsFAwMEAwICBGAAAvcAAAADAAAAAAAAAABBREJPAEAAIP//Au7/BgAAA9gBESAAAZ8AAAAAAeYClAAAACAAA3iclM9JTpMBHMbh57PVam211Q7Ofq1DrWO1Tq1jVy7cGLWBsCEsCSfgAFyAi7CAhIQp4SINnIM0f5IvwJ53/yS/F4mcBCX55D96UnkVqbaOrhdeeuW1voGhX/74Z2zWnHmLlm2mtdZqBCfi2Zno+Who5Le/xmYysWDpVMShpqqGuqKyQkzjKKaxH3uxGzuxHVsxiY1Yj5WDzmQtazzfEgOffffDz6zkQ1b1Rs9b7/S998kFOXkXXVJw2RVFV5WUXXNdRdUNN9V8U9fQdMttd9x1z30PPJRqaXvksSeeZt+7nmf/v/pixDEAAAD//wEAAP//XWo2ewAAeJyMWH1wG+WZf95Xa60dyZZlSdaH9b22Vt+ytVqtbNmSLUuy/CFLkeIkdmI7H04cxyRNzAFNMQmUQHLAceoVBgYCpZQ54A4OAjMBhrnjhhTOXAtcZzpQCkk794fLHLQ9fL5rofXqZley4tC7m/trd+R3n4/f83t+z/Ma6mASALP4AZBAAyigBTQAjNKm7LDRNEVyDMdRWglHIyU5iT7hSwgNh4hwmOhKfJY4deYM2n0aP7BxQ8/Z+fm3Zm65hf+L1U/5IHrvU8AgAcAmXIIGUAKoSIZ2OGhKKpWoGBVFU+SPLG9ZWqzNhML686szVydjv42jb8zNcce6u4/xU7i0cWJlBQBAAlMAuB2XQAkGoITYmGBrq0YtJTXiQ0pJmGCYDTkoSrn5MnV58FB3VyA6Gj8xcnr/jpFs9tDSxMz0ziVcsqZ7unIKQjae7N/pRqd6gt2dG+vxRF83ACAIlddxG74AJoA6u8PBhsJhJtiqJR0Oyi6VatStrUwwzGmlUlQo3DE6drbYu9foMyTcsWkmuCcWGLH46QPy7Q8vHn240GUNG+0DNxcKpxJOe8gXBAAs5hLCJagXMBEz0ailFF2L+6mHH3/swYnRG2+88cZRXHr2wmN/l7x3efkuMbYpAHQVl0Am1kdj0zAaSmPTTKFv8R99+SXqwqX0e0O/Gaqd/amI/bWzSvHkV1/hUvpqmv95LV8HvgDW/y1fIV2WYhmlVIr27rx7bPz8ruS00a9PBBMH2JMLVL/q3g8tC9WUGXPY0D5wc2H5O5qWv03xn9s81VhwHJdALmasZBBDqigJqZkqSpBy5t1fT//wJC7xr6Dhr/ijaOKuf9mM/8e4BHWVb2yaqSKy4NLGK0J6VZu34ZJQJ0bJqFpbtUw4zKkYJaUMhTmKlFASmmpt1Sin5k7LtXJCrpEvHxqvlxChZW45REhIXOKftKfs9pQdzWycQAveRc+D/HNox4OeRS//UM2HD5dAVfGhZRwOVskoa5Z3/nqIkJC5nb8ZIgjB3tz54GIIFTdOoMfOdR0J8c8CFvE9hC+A4muMEolLB8Ni2e0isdBY4czQ0JlC8XQmc7oY3dV5dPfuo5275TseWVh4aPv2hxYWHtkxPHiq8K377/9W4dQg1PgkEzmh3tIZFKW81gqvjxyP3X3DDQd2FnftnMGl9onM/Bz/R5QZSA9xNRtWXIIm0G7tLhUl2Wrm3cEj0Xzy6ZnHbzmeLRSyx3GJ2p4cm1by/4o0/GdoMt4/EKrUxl1eR7/FF8AnZkxzYs+wIYeDpv34eoYJeWu1ZiyggZpTN3uC1CwzkDF1WWYsfS52Jhqdo3zmYT83aAsaph197eE5Oevt6fBFO+1OY5Or0Z3oDOZ8vvawyRbyWlwGmbPZN9AVmggCgl3ldezHJUHPROSVjLLSv2HxVSpFg4OLsaIr5fGmXfnYUXl4eQHdwd+W2+Nw7MmhO/kzC8thQAIq+CtcAhsAI9nCtWtvEkpS0TZS8uS9O1MN6gZCppPtGdsj18mJhpZtqfz5uYMNinqCbKnfj0v8o+xRll0MoUP8o6HFytvGCXSvY9jhGHbwNwECBQBawyXQAzAqCaOtuuIYiYqq6ihJKt54ae9ko1ZBNGnku3a//MbefY1tzUSTQT6LiqjvmVavyeRtfYZ/g794UceYzYzuolgfHwD6oqoNLLKxNg2yaXxokn8bPcn/NZoOYl26a+PTIajwF11Ea2CAdgCtXaAvFxJLR9JiITVKSgiGFmRCFIw3+7b/5aNKj9M9YrLaD/ZM5pOkxL69lYpRp/YH5cMD+QmlJUJZ1d2trmN7+A96jO6E3XJO0RtwdQCGQnkd/QGvgKqqSDRFUkpGQ1Z8VXqm0jKC+iOXfdgqIRMFbMs5Zw9EZ9O9uWjK0k9Z43KbKYhX3txtou8+Wbw5lpqfyh+0W8tGbYWj/vI6egGtgfH/0j1B5lv6j/QOLMY6U3q3JmDypujioL2ntd2Wl/cu5QtLvXZtWKULTESK8yY1Z7IJmAXK6+ijzRwqmInGaZbZBItja45+v+d4dD/njlmJYpKUGMf0/b2WbjMdd6Tld53K3RgzG4qvb0S6ja7UIG/UBoqRXQcBi/H/M1oDHViuy0BoXFttSElsIlRIO3A0Fp/jpg8hzL9atytNRdtMltyPEBHvZrbL+5Zy+aXY8pFGfUN2r0YZVpuRYySbE3EyA6A4/mllJ6BYjg1VcaLsGnGm7EskUsNad3NLmzE5P49+EKvLjuxqIOPymewgPy3Ob1/Zij5Ha9AFfZCtsYh1bHmIRhkNVR3odrpSg2rNJcFrMqmq6pHdUTnzX5MnHLYWvV2lo4M7utTtjc/OKbWd+SBtb2zp6JqZmOg9Pubu6/V4evvC6R1MYEeTrdmgG/1lMm7pbiVkTqPF30iokx523E3WxZtZS2jMpZS1qbVmrs83FkAX4yzb28uycf58n8NuIAiVW0P7RWwKAOhDvFJV3k2OChNI5KeyUJBQ2WB2qODt7Ih24JU352yB/dP8j5ErGXN08E9AuQwpAHgZX8IOSACAFAaXoWZ7Fa/UZqZKmJk0qSlsl7y/5wevTd2/B6/wZgSX+Sv/dvT26jfldfgZXhG0Q8BYlLsqEZ71uwpNDQRJyupb5d0sPrzxgEqJUIwgKr7wF2hN1DclI+iMUI3rsiFrz0KSlFjHPJG4wjHuHR0ueP3hZMEbCCfRapoKdHldoc0UR/knqo9NrNBaFauqj61YJUkJNV4DSzR2HVZVzv87WgMFtP2Ps7TGEaSIzsfj89Hew/H44d54NhuPjY9X+7V3qZBf6k3OF3ccObKjOA+i5jDoD2it2q/XohOZ6KC1GtVWzREiteU8MweisxH7oB3fIkpOvN0Wexe/HDE6z50s3BwzGyaeQtLrNEfQBQZ9tOmnjuVE8zXyc4xSslUX0N2EadRdEYd+G65PvF8Thnef3210iuJgMvk3skh6TRk2uTOD1qobZiWbqrJVgNZnXCZts1ytsAzq0epuf3hbhiCCMX6lwiNjeR3didbALfJo6/wWx/fXpndleP8kNEO5rElPZ6eNabMn3JM537jRqQ9b/R5zZxuV9LlyctrI6W0+i96u3dZoY13RnFUbUuncRq1JI2u0cX464RT968rrKIWPC3NX5DHFchwjik2Nz5+N92XGtqXuvNPmbjTLm9UB+VQGNcbqzp8f5Nd8XQ1EjJSJtkbL6+g9tCrw7rqeUFal+JfZTNHT6YjaBVzsY/L90yjEf5iM0R40yRvGnJ2AhB5E/4RWofFr81/y+gsTe2VaGSHTbtu7/Tm0yn/enqGoTDtS8wYhDwB8Ca3+//aG753bkalvIon65obR/FiDsp6oV5BD49+eSzcoGoj65m1JtMr/yj5otw/akX7LmwHVUcmOjhTF/xEQNAGgF9GquDdw9Ja9gdRe2xuavvfdyQGZrpGQtcqiO7/7+ORQo6GJaNTJE/yniyq3Wu1WLX7xnydbvRqNR3tSxFFeDogYtG3lBMddB0cTnmo2yZvr1Q2usEJ2eeKgTC8jZOptu/KvKAOpn0iJAVwX9bWjX/H/YcnYbRkratxY6xzzCb3hLa+jt/A9INuseqjaglv7+st9x47tmz12bDaSTEYiqZT8+Se+/8wz33/i+cSZ++679db77jsjxpoDQK/g06J2CiOXDYc5QaBzf/Vn3gFD/GwSfcDWa5s33k5W+N4OgH6I7xFyY9gYrrY6XRMBQdgZjXPf3enePmfSGHDuiU0eHrxpzBDRv9a17zs3MVzaZw142fmJ3lvP5TAxBAgM5XX0D/ieP+0hiq0t/ddcbN5kPx87bHWbxiM9I/TkWDJnjzLOQZO3YypSvKE/1JOPzMo5Kmz297OObmvcGrYFwu2mEOWbyPaMqInGYiJS8AKGzvI6ekfE0gmA7FJy07nkTzeda4sVqrNkzPVDfYH+aCg215P6Rjw02uZXRcy+kQA25+niwdAEyji90wey8dgw/1zyzw/ffmGINjHaNuaWQx2egwf69oZEPL1Cv+DTYr/EMCcsmE0S8qKUzsb5N9Gj3RmnmvjmG8/uGmIyd517pLIjuMrraAXfAxbwQreImRjplvVArISmojaSrfcmSVWcRNX8qneGozgzFe4sMMX9RqfaFLQy00or1cN6o65kXSTVmfM7mJzclw+6B7qaCX0m2DXi2jdiiwYURLO3zxMY96Ejpn4qkIgEHEGKfzve5Qo5WvRpL5uq6LizvI7+cRNfVUVPRDRVtUqHrxN3MfabolHrkKU+0+cf2M1kDX41Zxb2C3PeWTgYmmDic92p4+jvY8NO3/T+7MbvaWNIawx987DDKwKbPD9/+4Xq3XegvA6vwhLIru+U2/QUpddRlJxqM1GUqY0SzgbKO+FtWIIWAC0dDtNSO7Xlk0G1pxNhKdZR7XprR/pvOlVxJzIZ2ywhX/9+EPYT0Rf6GNPAAqAFkApPQJBHL8Az+CXhfq6iaYYkDzZLdkua0QtP7937dLks/B1N4pfAAREAICEClbuHCz5GCmQACQDHMhrX6sfxeOX3X+DfIV3ld5vGhd/7RXe34B9J4FV0ByZF/4qqFn0bfVp+TTirZW0aOfrkNMeJ+08eNeBPBN5pK8ulVuSE9oNYOh1jerq7e148dOXs2atzutkrS0tXZgGBo5yHK9VvaJFVQgU1aumkeJ6JpdMvVk/r5q6ePXsFENjhCHofewX8xX+NsOJw0vzs0qWBS5eOXI5dvhy7LMRJl7/AOUwK96w6WmgDmkMaFPe8w4+gS+94ULPC/3rydT//O6K288FTaFXIS9j5CgW0KsyR8jt4BDh8SfCn3FI8ncWi01kseMSk15nNOr0J/hsAAP//AQAA///Kj0C9AAAAAQAAAAILhbWsYMdfDzz1AAMD6AAAAADYXaChAAAAAN1mLzb+Ov7bCG8DyAAAAAMAAgAAAAAAAAABAAAD2P7vAAAImP46/joIbwABAAAAAAAAAAAAAAAAAAAARHicLMqxLkNhAMXx/zl3bTQx0CDNDQ0u2mu4ISIGEROJ5lvE5wFEPIeY7HabhzDXYjF4AyO+RJp2qrS50zn55+dHrhiAczKfE31I5Ruim0R9E31L5ROivoj+JPqB6Ccq7xF9QPQCW77nMptn0aLpZboaUbkgaEDP25T6pacObY3oOicw5FQ/BCaE7IjgNYLbMxtm/pqgZ1YUaDnnTB80/E5Lr8xNvxI7Slwo0VFiSYnduhVKbDLmmDFlvX290Nc+RZZTTJv+aKgkqGRdiVXfscGQAJO3fwAAAP//AQAA//+rXzaaAAAAACwALABQAIYAtgDUAOoA/gEwAUoBWgGMAa4B3gIAAigCbAKQAsoC+AMOA0YDegOoA9oEDgQwBJwEvgTKBOQFAAUyBVQFgAW0BegGCAZIBm4GkAasBuYHEgdCB2gHgAeqB+gIKAhCCJgI2AjuCQ4JGgkqCTYJQglOCVgJZAl+CZgJrAnECdAJ5gAAAAEAAABEAIwADABmAAcAAQAAAAAAAAAAAAAAAAAEAAN4nJyU3U4bVxSFPwfbbVQ1FxWKyA06l22VjN0IogSuTAmKVYRTj9Mfqao0eMY/Yjwz8gxQqj5Ar/sWfYtc9Tn6EFWvq7O8DTaqFIEQsM6cvfdZZ6+1D7DJv2xQqz8E/mr+YLjGdnPP8AMeNZ8a3uC48bfh+kpMg7jxm+EmXzb6hj/iff0Pwx+zU//Z8EO26keGP+F5fdPwpxuOfww/Yof3C1yDl/xuuMYWheEHbPKT4Q0eYzVrdR7TNtzgM7YNN9kGBkypSJmSMcYxYsqYc+YklIQkzJkyIiHG0aVDSqWvGZGQY/y/XyNCKuZEqjihwpESkhJRMrGKvyor561OHGk1t70OFRMiTpVxRkSGI2dMTkbCmepUVBTs0aJFyVB8CypKAkqmpATkzBnToscRxwyYMKXEcaRKnllIzoiKSyKd7yzCd2ZIQkZprM7JiMXTiV+i7C7HOHoUil2tfLxW4SmO75TtueWK/YpAv26F2fq5SzYRF+pnqq6k2rmUghPt+nM7fCtcsYe7V3/WmXy4R7H+V6p8yrn0j6VUJiYZzm3RIZSDQvcEx4HWXUJ15Hu6DHhDj3cMtO7Qp0+HEwZ0ea3cHn0cX9PjhENldIUXe0dyzAk/4viGrmJ87cT6s1As4RcKc3cpjnPdY0ahnnvmge6a6IZ3V9jPUL7mjlI5Q82Rj3TSL9OcRYzNFYUYztTLpTdK619sjpjpLl7bm30/DRc2e8spviLXDHu3Ljh55RaMPqRqcMszl/oJiIjJOVXEkJwZLSquxPstEeekOA7VvTeakorOdY4/50ouSZiJQZdMdeYU+huZb0LjPlzzvbO3JFa+Z3p2fav7nOLUqxuN3ql7y73QupysKNAyVfMVNw3FNTPvJ5qpVf6hcku9bjnP6JNI9VQ3uP0OPCegzQ677DPROUPtXNgb0dY70eYV++rBGYmiRnJ1YhV2CXjBLru84sVazQ6HHNBj/w4cF1k9Dnh9a2ddp2UVZ3X+FJu2+DqeXa9e3luvz+/gyy80UTcvY1/a+G5fWLUb/58QMfNc3NbqndwTgv8AAAD//wEAAP//B1tMMAB4nGJgZgCD/+cYjBiwAAAAAAD//wEAAP//LwECAwAAAA==");
|
|
}
|
|
.d2-3871895981 .text-bold {
|
|
font-family: "d2-3871895981-font-bold";
|
|
}
|
|
@font-face {
|
|
font-family: d2-3871895981-font-bold;
|
|
src: url("data:application/font-woff;base64,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");
|
|
}
|
|
.d2-3871895981 .text-italic {
|
|
font-family: "d2-3871895981-font-italic";
|
|
}
|
|
@font-face {
|
|
font-family: d2-3871895981-font-italic;
|
|
src: url("data:application/font-woff;base64,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");
|
|
}]]></style><style type="text/css"><![CDATA[.shape {
|
|
shape-rendering: geometricPrecision;
|
|
stroke-linejoin: round;
|
|
}
|
|
.connection {
|
|
stroke-linecap: round;
|
|
stroke-linejoin: round;
|
|
}
|
|
.blend {
|
|
mix-blend-mode: multiply;
|
|
opacity: 0.5;
|
|
}
|
|
|
|
.d2-3871895981 .fill-N1{fill:#0A0F25;}
|
|
.d2-3871895981 .fill-N2{fill:#676C7E;}
|
|
.d2-3871895981 .fill-N3{fill:#9499AB;}
|
|
.d2-3871895981 .fill-N4{fill:#CFD2DD;}
|
|
.d2-3871895981 .fill-N5{fill:#DEE1EB;}
|
|
.d2-3871895981 .fill-N6{fill:#EEF1F8;}
|
|
.d2-3871895981 .fill-N7{fill:#FFFFFF;}
|
|
.d2-3871895981 .fill-B1{fill:#0D32B2;}
|
|
.d2-3871895981 .fill-B2{fill:#0D32B2;}
|
|
.d2-3871895981 .fill-B3{fill:#E3E9FD;}
|
|
.d2-3871895981 .fill-B4{fill:#E3E9FD;}
|
|
.d2-3871895981 .fill-B5{fill:#EDF0FD;}
|
|
.d2-3871895981 .fill-B6{fill:#F7F8FE;}
|
|
.d2-3871895981 .fill-AA2{fill:#4A6FF3;}
|
|
.d2-3871895981 .fill-AA4{fill:#EDF0FD;}
|
|
.d2-3871895981 .fill-AA5{fill:#F7F8FE;}
|
|
.d2-3871895981 .fill-AB4{fill:#EDF0FD;}
|
|
.d2-3871895981 .fill-AB5{fill:#F7F8FE;}
|
|
.d2-3871895981 .stroke-N1{stroke:#0A0F25;}
|
|
.d2-3871895981 .stroke-N2{stroke:#676C7E;}
|
|
.d2-3871895981 .stroke-N3{stroke:#9499AB;}
|
|
.d2-3871895981 .stroke-N4{stroke:#CFD2DD;}
|
|
.d2-3871895981 .stroke-N5{stroke:#DEE1EB;}
|
|
.d2-3871895981 .stroke-N6{stroke:#EEF1F8;}
|
|
.d2-3871895981 .stroke-N7{stroke:#FFFFFF;}
|
|
.d2-3871895981 .stroke-B1{stroke:#0D32B2;}
|
|
.d2-3871895981 .stroke-B2{stroke:#0D32B2;}
|
|
.d2-3871895981 .stroke-B3{stroke:#E3E9FD;}
|
|
.d2-3871895981 .stroke-B4{stroke:#E3E9FD;}
|
|
.d2-3871895981 .stroke-B5{stroke:#EDF0FD;}
|
|
.d2-3871895981 .stroke-B6{stroke:#F7F8FE;}
|
|
.d2-3871895981 .stroke-AA2{stroke:#4A6FF3;}
|
|
.d2-3871895981 .stroke-AA4{stroke:#EDF0FD;}
|
|
.d2-3871895981 .stroke-AA5{stroke:#F7F8FE;}
|
|
.d2-3871895981 .stroke-AB4{stroke:#EDF0FD;}
|
|
.d2-3871895981 .stroke-AB5{stroke:#F7F8FE;}
|
|
.d2-3871895981 .background-color-N1{background-color:#0A0F25;}
|
|
.d2-3871895981 .background-color-N2{background-color:#676C7E;}
|
|
.d2-3871895981 .background-color-N3{background-color:#9499AB;}
|
|
.d2-3871895981 .background-color-N4{background-color:#CFD2DD;}
|
|
.d2-3871895981 .background-color-N5{background-color:#DEE1EB;}
|
|
.d2-3871895981 .background-color-N6{background-color:#EEF1F8;}
|
|
.d2-3871895981 .background-color-N7{background-color:#FFFFFF;}
|
|
.d2-3871895981 .background-color-B1{background-color:#0D32B2;}
|
|
.d2-3871895981 .background-color-B2{background-color:#0D32B2;}
|
|
.d2-3871895981 .background-color-B3{background-color:#E3E9FD;}
|
|
.d2-3871895981 .background-color-B4{background-color:#E3E9FD;}
|
|
.d2-3871895981 .background-color-B5{background-color:#EDF0FD;}
|
|
.d2-3871895981 .background-color-B6{background-color:#F7F8FE;}
|
|
.d2-3871895981 .background-color-AA2{background-color:#4A6FF3;}
|
|
.d2-3871895981 .background-color-AA4{background-color:#EDF0FD;}
|
|
.d2-3871895981 .background-color-AA5{background-color:#F7F8FE;}
|
|
.d2-3871895981 .background-color-AB4{background-color:#EDF0FD;}
|
|
.d2-3871895981 .background-color-AB5{background-color:#F7F8FE;}
|
|
.d2-3871895981 .color-N1{color:#0A0F25;}
|
|
.d2-3871895981 .color-N2{color:#676C7E;}
|
|
.d2-3871895981 .color-N3{color:#9499AB;}
|
|
.d2-3871895981 .color-N4{color:#CFD2DD;}
|
|
.d2-3871895981 .color-N5{color:#DEE1EB;}
|
|
.d2-3871895981 .color-N6{color:#EEF1F8;}
|
|
.d2-3871895981 .color-N7{color:#FFFFFF;}
|
|
.d2-3871895981 .color-B1{color:#0D32B2;}
|
|
.d2-3871895981 .color-B2{color:#0D32B2;}
|
|
.d2-3871895981 .color-B3{color:#E3E9FD;}
|
|
.d2-3871895981 .color-B4{color:#E3E9FD;}
|
|
.d2-3871895981 .color-B5{color:#EDF0FD;}
|
|
.d2-3871895981 .color-B6{color:#F7F8FE;}
|
|
.d2-3871895981 .color-AA2{color:#4A6FF3;}
|
|
.d2-3871895981 .color-AA4{color:#EDF0FD;}
|
|
.d2-3871895981 .color-AA5{color:#F7F8FE;}
|
|
.d2-3871895981 .color-AB4{color:#EDF0FD;}
|
|
.d2-3871895981 .color-AB5{color:#F7F8FE;}.appendix text.text{fill:#0A0F25}.md{--color-fg-default:#0A0F25;--color-fg-muted:#676C7E;--color-fg-subtle:#9499AB;--color-canvas-default:#FFFFFF;--color-canvas-subtle:#EEF1F8;--color-border-default:#0D32B2;--color-border-muted:#0D32B2;--color-neutral-muted:#EEF1F8;--color-accent-fg:#0D32B2;--color-accent-emphasis:#0D32B2;--color-attention-subtle:#676C7E;--color-danger-fg:red;}.sketch-overlay-B1{fill:url(#streaks-darker-d2-3871895981);mix-blend-mode:lighten}.sketch-overlay-B2{fill:url(#streaks-darker-d2-3871895981);mix-blend-mode:lighten}.sketch-overlay-B3{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-B4{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-B5{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-B6{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-AA2{fill:url(#streaks-dark-d2-3871895981);mix-blend-mode:overlay}.sketch-overlay-AA4{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-AA5{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-AB4{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-AB5{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-N1{fill:url(#streaks-darker-d2-3871895981);mix-blend-mode:lighten}.sketch-overlay-N2{fill:url(#streaks-dark-d2-3871895981);mix-blend-mode:overlay}.sketch-overlay-N3{fill:url(#streaks-normal-d2-3871895981);mix-blend-mode:color-burn}.sketch-overlay-N4{fill:url(#streaks-normal-d2-3871895981);mix-blend-mode:color-burn}.sketch-overlay-N5{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-N6{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.sketch-overlay-N7{fill:url(#streaks-bright-d2-3871895981);mix-blend-mode:darken}.light-code{display: block}.dark-code{display: none}]]></style><g class="bnBjX2NvbnZv"><g class="shape" ><ellipse rx="224.000000" ry="74.500000" cx="948.000000" cy="74.500000" stroke="#c8d8f0" fill="#2a3040" class="shape" style="stroke-width:2;" /></g><text x="948.000000" y="72.000000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="948.000000" dy="0.000000">NPC-to-NPC Conversation</tspan><tspan x="948.000000" dy="18.500000">(authored at full fidelity by copy team)</tspan></text></g><g class="bXVybXVy"><g class="shape" ><path d="M 1461 270 L 1595 270 L 1595 289 L 1729 289 L 1729 363 L 1461 363 Z" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="1595.000000" y="323.300000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1595.000000" dy="0.000000">Universal Murmur Asset (D-072)</tspan><tspan x="1595.000000" dy="18.500000">single asset plays everywhere</tspan></text></g><g class="em9uZV9hbWJpZW50"><g class="shape" ><path d="M 948 579 C 947 579 946 579 945 579 L 794 534 C 792 534 792 533 794 532 L 945 487 C 947 487 949 487 951 487 L 1102 532 C 1104 532 1104 533 1102 534 L 951 579 C 950 579 949 579 948 579 Z" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="948.000000" y="538.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px">Zone Ambient Level</text></g><g class="Y29uc3BpY3VvdXNuZXNz"><g class="shape" ><rect x="10.000000" y="723.000000" width="1093.000000" height="142.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="556.500000" y="710.000000" fill="#c8d0e0" class="text" style="text-anchor:middle;font-size:28px">Conversation Conspicuousness</text></g><g class="c2VydmVyX29jY2x1c2lvbg=="><g class="shape" ><rect x="1143.000000" y="723.000000" width="1062.000000" height="142.000000" rx="4.000000" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /></g><text x="1674.000000" y="682.000000" fill="#c8d0e0" class="text" style="text-anchor:middle;font-size:28px"><tspan x="1674.000000" dy="0.000000">Server-side Occlusion Filter (D-078)</tspan><tspan x="1674.000000" dy="32.000000">per-word probability roll</tspan></text></g><g class="bGlzdGVuX2ZvY3Vz"><g class="shape" ><rect x="1815.000000" y="484.000000" width="250.000000" height="98.000000" rx="4.000000" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /></g><text x="1940.000000" y="522.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1940.000000" dy="0.000000">ListeningFocus Boost (D-071)</tspan><tspan x="1940.000000" dy="17.666667">World SFX +2 to +3dB</tspan><tspan x="1940.000000" dy="17.666667">stationary 30+ ticks</tspan></text></g><g class="bm9fYW1iaWVudF9kaXA="><g class="shape" ><rect x="1789.000000" y="276.000000" width="301.000000" height="82.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;stroke-dasharray:8.000000,7.892511;" /></g><text x="1939.500000" y="314.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1939.500000" dy="0.000000">No Ambient Dip for Eavesdrop</tspan><tspan x="1939.500000" dy="18.500000">(opposite of direct conversation dip)</tspan></text></g><g class="b2NjbHVkZWRfdGV4dA=="><g class="shape" ><path d="M 1584 1006 H 1765 C 1766 1006 1767 1006 1768 1007 L 1785 1023 C 1786 1024 1786 1025 1786 1026 V 1109 C 1786 1109 1786 1109 1786 1109 H 1584 C 1583 1109 1583 1109 1583 1109 V 1007 C 1583 1006 1583 1006 1584 1006 Z" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /><path d="M 1785 1109 H 1584 C 1583 1109 1583 1109 1583 1108 V 1007 C 1583 1006 1583 1006 1584 1006 H 1764 C 1765 1006 1765 1006 1765 1007 V 1024 C 1765 1025 1766 1026 1767 1026 H 1785 C 1786 1026 1786 1026 1786 1027 V 1108 C 1785 1109 1786 1109 1785 1109 Z" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1684.500000" y="1055.000000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1684.500000" dy="0.000000">Pre-occluded text</tspan><tspan x="1684.500000" dy="18.500000">(words → "..." per roll)</tspan></text></g><g class="cGFzc2l2ZV9wYW5lbA=="><g class="shape" ><rect x="1212.000000" y="1250.000000" width="862.000000" height="142.000000" rx="4.000000" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /></g><text x="1643.000000" y="1209.000000" fill="#c8d0e0" class="text" style="text-anchor:middle;font-size:28px"><tspan x="1643.000000" dy="0.000000">Passive Dialogue Panel (D-078)</tspan><tspan x="1643.000000" dy="32.000000">(D-061 box, read-only)</tspan></text></g><g class="bW9ub2xvZ3VlX2NoYW5uZWw="><g class="shape" ><rect x="1023.000000" y="1587.000000" width="630.000000" height="142.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1338.000000" y="1546.000000" fill="#c8d0e0" class="text" style="text-anchor:middle;font-size:28px"><tspan x="1338.000000" dy="0.000000">Monologue Channel</tspan><tspan x="1338.000000" dy="32.000000">(D-016 — separate pipeline)</tspan></text></g><g class="a2dfZW50cnk="><g class="shape" ><path d="M 1703 1607 C 1703 1583 1862 1583 1880 1583 C 1898 1583 2057 1583 2057 1607 V 1709 C 2057 1733 1898 1733 1880 1733 C 1862 1733 1703 1733 1703 1709 V 1607 Z" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /><path d="M 1703 1607 C 1703 1631 1862 1631 1880 1631 C 1898 1631 2057 1631 2057 1607" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /></g><text x="1880.000000" y="1659.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1880.000000" dy="0.000000">KnowledgeGraph entry</tspan><tspan x="1880.000000" dy="17.666667">(KnowsOf confidence unless</tspan><tspan x="1880.000000" dy="17.666667">ListeningFocus + proximity → KnowsDetails)</tspan></text></g><g class="Y29uc3BpY3VvdXNuZXNzLmJhcg=="><g class="shape" ><rect x="40.000000" y="753.000000" width="296.000000" height="82.000000" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="188.000000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="188.000000" dy="0.000000">Bar (high ambient)</tspan><tspan x="188.000000" dy="18.500000">hidden in murmur, needs proximity</tspan></text></g><g class="Y29uc3BpY3VvdXNuZXNzLndvcmtwbGFjZQ=="><g class="shape" ><rect x="396.000000" y="753.000000" width="322.000000" height="82.000000" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="557.000000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="557.000000" dy="0.000000">Workplace (moderate)</tspan><tspan x="557.000000" dy="18.500000">semi-conspicuous, distance-dependent</tspan></text></g><g class="Y29uc3BpY3VvdXNuZXNzLmNvcnJpZG9y"><g class="shape" ><rect x="778.000000" y="753.000000" width="295.000000" height="82.000000" stroke="#c8d8f0" fill="#2a3040" style="stroke-width:2;" /></g><text x="925.500000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="925.500000" dy="0.000000">Corridor (low ambient)</tspan><tspan x="925.500000" dy="18.500000">conspicuous, audible from distance</tspan></text></g><g class="c2VydmVyX29jY2x1c2lvbi5mYWN0b3Jz"><g class="shape" ><rect x="1173.000000" y="753.000000" width="278.000000" height="82.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1312.000000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1312.000000" dy="0.000000">Factors: distance · ambient noise</tspan><tspan x="1312.000000" dy="18.500000">· ListeningFocus stance</tspan></text></g><g class="c2VydmVyX29jY2x1c2lvbi5zdG9jaGFzdGlj"><g class="shape" ><rect x="1511.000000" y="753.000000" width="346.000000" height="82.000000" stroke="#c8d8f0" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1684.000000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1684.000000" dy="0.000000">Stochastic per word</tspan><tspan x="1684.000000" dy="18.500000">(same scene can yield different fragments)</tspan></text></g><g class="c2VydmVyX29jY2x1c2lvbi5zZWVkZWQ="><g class="shape" ><rect x="1917.000000" y="753.000000" width="258.000000" height="82.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="2046.000000" y="791.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="2046.000000" dy="0.000000">Seedable RNG per tick</tspan><tspan x="2046.000000" dy="18.500000">→ deterministic replay (D-010)</tspan></text></g><g class="cGFzc2l2ZV9wYW5lbC5zcGVha2VyX2xhYmVs"><g class="shape" ><rect x="1242.000000" y="1288.000000" width="283.000000" height="66.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1383.500000" y="1326.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px">Speaker format (e.g. Kael to Mira)</text></g><g class="cGFzc2l2ZV9wYW5lbC5yZWR1Y2VkX29wYWNpdHk="><g class="shape" ><rect x="1585.000000" y="1280.000000" width="198.000000" height="82.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1684.000000" y="1318.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1684.000000" dy="0.000000">Reduced opacity (0.9)</tspan><tspan x="1684.000000" dy="18.500000">vs active dialogue</tspan></text></g><g class="cGFzc2l2ZV9wYW5lbC5ub19yZXNwb25zZXM="><g class="shape" ><rect x="1856.000000" y="1288.000000" width="188.000000" height="66.000000" stroke="#333340" fill="#1a1e24" style="stroke-width:2;" /></g><text x="1950.000000" y="1326.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px">No response options</text></g><g class="bW9ub2xvZ3VlX2NoYW5uZWwud2l0bmVzc190cmlnZ2Vy"><g class="shape" ><rect x="1053.000000" y="1617.000000" width="239.000000" height="82.000000" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="1172.500000" y="1655.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1172.500000" dy="0.000000">witness_interaction trigger</tspan><tspan x="1172.500000" dy="18.500000">→ character's reaction</tspan></text></g><g class="bW9ub2xvZ3VlX2NoYW5uZWwuc2VwYXJhdGU="><g class="shape" ><rect x="1352.000000" y="1617.000000" width="271.000000" height="82.000000" stroke="#333340" fill="#2a3040" style="stroke-width:2;" /></g><text x="1487.500000" y="1655.500000" fill="#c8d0e0" class="text-bold" style="text-anchor:middle;font-size:16px"><tspan x="1487.500000" dy="0.000000">Character reaction</tspan><tspan x="1487.500000" dy="18.500000">(thought · never quoted speech)</tspan></text></g><g class="KG5wY19jb252byAtJmd0OyBtdXJtdXIpWzBd"><marker id="mk-d2-3871895981-3962577600" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="#333340" class="connection" stroke-width="2" /> </marker><path d="M 1139.957711 114.409106 C 1503.599976 190.399994 1595.000000 221.600006 1595.000000 266.000000" stroke="#333340" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-3962577600)" mask="url(#d2-3871895981)" /><text x="1392.000000" y="173.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">audio</text></g><g class="KG5wY19jb252byAtJmd0OyB6b25lX2FtYmllbnQpWzBd"><marker id="mk-d2-3871895981-1961329247" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="#c8d8f0" class="connection" stroke-width="2" /> </marker><path d="M 885.697434 147.517670 C 843.400024 196.800003 832.500000 230.899994 832.500000 263.000000 C 832.500000 295.100006 847.799988 438.399994 906.134361 495.209280" stroke="#c8d8f0" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-1961329247)" mask="url(#d2-3871895981)" /><text x="835.500000" y="332.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">text goes through</text></g><g class="KG11cm11ciAtJmd0OyB6b25lX2FtYmllbnQpWzBd"><path d="M 1595.000000 365.000000 C 1595.000000 411.399994 1485.599976 442.000000 1051.944006 515.333052" stroke="#333340" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-3962577600)" mask="url(#d2-3871895981)" /><text x="1347.000000" y="471.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">conspicuousness shaped by</text></g><g class="KHpvbmVfYW1iaWVudCAtJmd0OyBjb25zcGljdW91c25lc3MpWzBd"><marker id="mk-d2-3871895981-3488378134" markerWidth="10.000000" markerHeight="12.000000" refX="7.000000" refY="6.000000" viewBox="0.000000 0.000000 10.000000 12.000000" orient="auto" markerUnits="userSpaceOnUse"> <polygon points="0.000000,0.000000 10.000000,6.000000 0.000000,12.000000" fill="#0D32B2" class="connection fill-B1" stroke-width="2" /> </marker><path d="M 865.073589 556.537531 C 619.000000 625.200012 557.000000 650.500000 557.000000 678.500000" stroke="#0D32B2" fill="none" class="connection stroke-B1" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-3488378134)" mask="url(#d2-3871895981)" /></g><g class="KHpvbmVfYW1iaWVudCAtJmd0OyBzZXJ2ZXJfb2NjbHVzaW9uKVswXQ=="><path d="M 1044.962952 551.383168 C 1418.000000 624.200012 1511.750000 644.900024 1511.750000 650.500000" stroke="#333340" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-3962577600)" mask="url(#d2-3871895981)" /><text x="1282.500000" y="603.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">noise penalty</text></g><g class="KGxpc3Rlbl9mb2N1cyAtJmd0OyBzZXJ2ZXJfb2NjbHVzaW9uKVswXQ=="><path d="M 1939.500000 583.500000 C 1939.500000 630.299988 1939.500000 658.700012 1939.500000 719.500000" stroke="#c8d8f0" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-1961329247)" mask="url(#d2-3871895981)" /><text x="1939.500000" y="658.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">probability curve shift</text></g><g class="KG5vX2FtYmllbnRfZGlwIC0mZ3Q7IGxpc3Rlbl9mb2N1cylbMF0="><path d="M 1939.500000 360.500000 C 1939.500000 410.500000 1939.500000 435.700012 1939.500000 480.500000" stroke="#333340" fill="none" class="connection" style="stroke-width:2;stroke-dasharray:8.000000,7.892511;" marker-end="url(#mk-d2-3871895981-3962577600)" mask="url(#d2-3871895981)" /><text x="1939.500000" y="427.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">instead of dip</text></g><g class="KHNlcnZlcl9vY2NsdXNpb24gLSZndDsgb2NjbHVkZWRfdGV4dClbMF0="><path d="M 1684.000000 866.500000 C 1684.000000 929.299988 1684.000000 957.599976 1684.000000 1002.000000" stroke="#c8d8f0" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-1961329247)" mask="url(#d2-3871895981)" /><text x="1684.500000" y="941.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">pre-occluded text sent to client</text></g><g class="KG9jY2x1ZGVkX3RleHQgLSZndDsgcGFzc2l2ZV9wYW5lbClbMF0="><path d="M 1684.000000 1111.000000 C 1684.000000 1157.400024 1684.000000 1171.900024 1684.000000 1177.500000" stroke="#c8d8f0" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-1961329247)" mask="url(#d2-3871895981)" /><text x="1684.500000" y="1151.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">client renders exactly what it receives</text></g><g class="KHBhc3NpdmVfcGFuZWwgLSZndDsgbW9ub2xvZ3VlX2NoYW5uZWwpWzBd"><path d="M 1487.750000 1393.500000 C 1487.750000 1456.300049 1487.750000 1481.699951 1487.750000 1514.500000" stroke="#333340" fill="none" class="connection" style="stroke-width:2;stroke-dasharray:8.000000,7.892511;" marker-end="url(#mk-d2-3871895981-3962577600)" mask="url(#d2-3871895981)" /><text x="1487.500000" y="1461.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">triggers witness_interaction</text></g><g class="KHBhc3NpdmVfcGFuZWwgLSZndDsga2dfZW50cnkpWzBd"><path d="M 1880.250000 1393.500000 C 1880.250000 1456.300049 1880.199951 1543.000000 1880.019995 1579.000050" stroke="#c8d8f0" fill="none" class="connection" style="stroke-width:2;" marker-end="url(#mk-d2-3871895981-1961329247)" mask="url(#d2-3871895981)" /><text x="1880.000000" y="1493.000000" fill="#676C7E" class="text-italic fill-N2" style="text-anchor:middle;font-size:16px">overheard info enters KG</text></g><mask id="d2-3871895981" maskUnits="userSpaceOnUse" x="-91" y="-101" width="2397" height="1935">
|
|
<rect x="-91" y="-101" width="2397" height="1935" fill="white"></rect>
|
|
<rect x="1371.000000" y="157.000000" width="42" height="21" fill="black"></rect>
|
|
<rect x="776.000000" y="316.000000" width="119" height="21" fill="black"></rect>
|
|
<rect x="1254.000000" y="455.000000" width="186" height="21" fill="black"></rect>
|
|
<rect x="1236.000000" y="587.000000" width="93" height="21" fill="black"></rect>
|
|
<rect x="1865.000000" y="642.000000" width="149" height="21" fill="black"></rect>
|
|
<rect x="1893.000000" y="411.000000" width="93" height="21" fill="black"></rect>
|
|
<rect x="1581.000000" y="925.000000" width="207" height="21" fill="black"></rect>
|
|
<rect x="1560.000000" y="1135.000000" width="249" height="21" fill="black"></rect>
|
|
<rect x="1394.000000" y="1445.000000" width="187" height="21" fill="black"></rect>
|
|
<rect x="1797.000000" y="1477.000000" width="166" height="21" fill="black"></rect>
|
|
</mask></svg></svg>
|