RFDs
Request-for-Discussion documents: design records numbered rather than dated, so a document keeps its identity when its title changes.
RFD 1000 carries the format and the list of states a document may be in. The state on a row is what the document itself declares, and the gate in scripts/check-rfd-structure.py reads that list out of RFD 1000 rather than restating it, so the two cannot disagree.
A retraction stays in place next to what it retracts. Several documents here exist only to withdraw an earlier number, which is the point: a reader who knows which roads are dead ends is better off than one who only knows the current answer.
| RFD | Title | State | Scope |
|---|---|---|---|
| 2142 | RFD 2142: Zero-trust service TLS via OpenBao PKI | prediscussion | weftspun-bao, spot-broker, weft-warp-burrito |
| 2141 | RFD 2141: FDB TLS rotation without data loss | prediscussion | weftspun-fdb (3 machines, double), weftspun-bao (FDB client) |
| 2140 | RFD 2140: OpenBao on FoundationDB | discussion | weftspun-bao on Fly.io; the OpenBao fork at weftspun/openbao |
| 2139 | RFD 2139: MaskScore QAFT and extraction budget | discussion | Qwen3-Omni, Wan-VACE, Pixal3D, VoxHammer, MoGe-3, Vast.ai budget |
| 2138 | RFD 2138: interactor-shuttle merges spot-broker and uro | discussion | spot-broker (weftspun) and uro (v-sekai) become one service under the sides convention |
| 2137 | RFD 2137: RFD reports share one sheet | discussion | any RFD published as a page; the PERT sheet’s design system |
| 2136 | RFD 2136: The gacha critical path, as a ladder | discussion |
the gacha demo; page.qmd beside this file carries the figure
|
| 2135 | RFD 2135: Checks run where the credentials already are | discussion | weftspun-fdb’s machine checks; any later production check |
| 2134 | RFD 2134: Cluster TLS is decided before data, and certificates carry v3 extensions | discussion | weftspun-fdb on Fly; spot-broker as the first client; any later FDB client |
| 2133 | RFD 2133: The pool rents from the spot book, gated on requirements first | discussion |
the gacha demo’s pool activity; scratchpad tooling pending a home
|
| 1173 | RFD 1173: A multimodal avatar pipeline | discussion | Qwen3-Omni, Wan-VACE, MaskScore, Pixal3D/VoxHammer, EditScore |
| 1172 | RFD 1172: A diffusion LM does not land on the NPU | discussion | the XDNA1 NPU in the 7840U laptop, and the dLLM candidates of 2026 |
| 1171 | RFD 1171: The presence loop, and every role in it | ideation | 3-interactor |
| 1170 | RFD 1170: A cleanroom presence loop, and which components swap | ideation |
3-interactor/anny,3-interactor/llama-cpp-npu-vision-upstream
|
| 1169 | RFD 1169: The audio tower for Qwen3-VL, and which half compiles | ideation | 3-interactor/llama-cpp-npu-vision-upstream |
| 1168 | RFD 1168: Segment the 3D latent with rf-detr, and treat masking as corruption | ideation |
3-interactor/rf-detr-cpp,3-interactor/voxhammer-upstream
|
| 1167 | RFD 1167: The ladder, and which rung each model is on | ideation | 2-contract/manuals-weftspun |
| 1166 | RFD 1166: How the accelerator candidates were scored | abandoned | 2-contract/manuals-weftspun |
| 1165 | RFD 1165: Fine-tuning exhausts the desk card, and batch size is the lever | ideation | 3-interactor/rf-detr-cpp/scripts/compile_hef.py |
| 1164 | RFD 1164: A calibration set is training data | ideation | 3-interactor/rf-detr-cpp/scripts/prep_calibration.py |
| 1163 | RFD 1163: The flow rents a card, the accelerator stays on the desk | ideation |
7-service/service-livebook,3-interactor/rf-detr-cpp
|
| 1162 | RFD 1162: VoxHammer holds no weights, so it inherits a placement | abandoned | 3-interactor/voxhammer-image-mesh-editing`, |
| 1161 | RFD 1161: Kimodo is the smallest catalog model, and it is a decoder | abandoned | 3-interactor/kimodo-text-to-motion |
| 1160 | RFD 1160: SkinTokens fits at every precision | abandoned | 3-interactor/skintokens-auto-rig |
| 1159 | RFD 1159: TRELLIS.2 sits exactly on the ceiling at bf16 | abandoned | 3-interactor/trellis2-image-to-textured-mesh |
| 1158 | RFD 1158: See-Through is the largest model that fits at eight bits | abandoned | 3-interactor/seethrough-layerdiff |
| 1157 | RFD 1157: EditScore needs its own encoder, not a stock one | ideation | 3-interactor/editscore |
| 1156 | RFD 1156: OmniGen2 fits as stages, not as a pipeline | abandoned |
3-interactor/omnigen2,5-repository/omnigen2-base-df5dca8a
|
| 1155 | RFD 1155: Gemma 4 reaches the device as towers, not as a decoder | abandoned | 3-interactor/gemma4-composer |
| 1154 | RFD 1154: Pixal3D fits only at four bits, as a whole | abandoned | 3-interactor/pixal3d-image-to-textured-mesh |
| 1153 | RFD 1153: Judging matte quality | published | |
| 1152 | RFD 1152: Background removal for photographic corpora | published | |
| 1151 | RFD 1151: Which axes the survey weights | discussion | 6-datasource/anny-render-corpus/render_mtoon_frames.py`, |
| 1150 | RFD 1150: Shade colour is solved per tone, not multiplied | discussion | 6-datasource/anny-render-corpus/anime_materials.usda`, |
| 1149 | RFD 1149: MToon shades against the key light | discussion | 6-datasource/anny-render-corpus/mtoon.py`, |
| 1148 | RFD 1148: The runtime that reaches the device | discussion |
pixi.toml,3-interactor/litert-upstream
|
| 1147 | RFD 1147: What EditScore costs and returns | published | fourloops-plan.usda |
| 1146 | RFD 1146: The latent-to-Pixal3D loop | published | fourloops-plan.usda |
| 1145 | RFD 1145: The stylized-to-OmniGen2 loop | published | fourloops-plan.usda |
| 1144 | RFD 1144: The image-to-OmniGen2 loop | published | fourloops-plan.usda |
| 1143 | RFD 1143: The keypoints-to-ANNY loop | published | fourloops-plan.usda |
| 1142 | RFD 1142: The Mac against the UGen300 | discussion | scripts/ane_bench.py |
| 1141 | RFD 1141: Publishing artifacts | discussion | anything produced that outlives the machine that made it |
| 1140 | RFD 1140: Rented GPUs on RunPod | discussion | work that does not fit the desk card |
| 1139 | RFD 1139: Scale, up, forward and handedness are measured | discussion | 6-datasource/anny-render-corpus/check_conventions.py |
| 1138 | RFD 1138: Where a range of motion comes from | prediscussion |
2-contract/swing-twist-kusudama,3-interactor/physics
|
| 1137 | RFD 1137: A frame set is delivered as one CineForm clip | discussion |
7-service/service-cineform,1-transport/transport-cineform-tui
|
| 1136 | RFD 1136: Views are named in the ecosystem’s camera vocabulary | discussion | 7-service/service-livebook/priv/python/weft_loop.py |
| 1135 | RFD 1135: One Python environment per Elixir app | discussion | 7-service/service-livebook |
| 1134 | RFD 1134: A loop notebook is tested in the browser | discussion | 7-service/service-livebook |
| 1133 | RFD 1133: Models excluded from conversion | discussion | |
| 1132 | RFD 1132: Priority list of converted models | discussion | |
| 1131 | RFD 1131: Emulating the operators an edge compiler refuses | discussion |
3-interactor/rf-detr-cpp,2-contract/lean-deform-exact,5-repository/hailo-model-zoo
|
| 1130 | RFD 1130: What the UGen300 actually delivers | discussion | 3-interactor/rf-detr-cpp |
| 1129 | RFD 1129: Which operators the Hailo-10H will not take | discussion | 3-interactor/rf-detr-cpp |
| 1128 | RFD 1128: Does the cascade survive four bits | discussion | 3-interactor/pixal3d-image-to-textured-mesh |
| 1126 | RFD 1126: Unroll the descent, do not replace it | discussion |
3-interactor/rf-detr-cpp,4-entities/anny-pose-retarget-work
|
| 1125 | RFD 1125: Two prose gates, marked per section | discussion |
1000-conventions/README.md,tropes-removal-model
|
| 1124 | RFD 1124: The RFD structure gate reads a CommonMark AST | committed |
scripts/check-rfd-structure.py,scripts/check-rfd-numbers.py`,
|
| 1123 | RFD 1123: CineForm in Godot, both directions | discussion |
entities-godot/modules/cineform,6-datasource/dataflow-coco-gemx`,
|
| 1122 | RFD 1122: The wholebody gap, and the renderer that closes it | discussion |
3-interactor/rf-detr-cpp,6-datasource/rf-detr-keypoint-data`,
|
| 1121 | RFD 1121: Layers come from geometry, and the missing categories come from a multiview rebuild | discussion |
2-contract/hm08-partition, and under3-interactor/:seethrough-torch`,
|
| 1120 | RFD 1120: Split apps/ into their own repos | committed |
weftspun-3d-studio'sapps/,deploy/,scripts/, andthirdparty/
|
| 1119 | RFD 1119: Target hardware stays generic | discussion | the backend GPU host, the XR headset target |
| 1118 | RFD 1118: XR embody, view toggle, and Move stay input, not menu state | committed | sceneManagerXr*.js |
| 1117 | RFD 1117: Text-to-image chains into Image-to-3D, one URL resolver | committed | the Krea 2 Turbo completed row, the Image-to-3D form, |
| 1116 | RFD 1116: Tasks panel, Clear unloads the model, done stays separate | committed | Tasks panel toolbar, the completed-task list |
| 1115 | RFD 1115: VRM animation playback, one mixer, normalized bones | committed |
animationManager.js,loadMixamoAnimation.js`,
|
| 1114 | RFD 1114: App chrome layout invariants | committed |
App.jsx,App.css,TaskProgressBar.{jsx,css}`,
|
| 1113 | RFD 1113: Image preview stays 250px, the expand modal stays separate | committed | src/components/expandedImagePreview.css`, |
| 1112 | RFD 1112: The Cursor rules, kept in the open | discussion | rules/ |
| 1111 | RFD 1111: The 3DAIGC-API reference, not restated here | committed |
3DAIGC-API(DGX, port 7842),weftspun-3d-studio`’s own
|
| 1110 | RFD 1110: RepoResident, a file-based operating harness for coding agents | committed |
CLAUDE.md,AGENTS.md,.agent/(STATE.md,MAP.md,PROJECT.md`,
|
| 1109 | RFD 1109: Payment rails and the phygital registry, not part of the moat | abandoned | RFD 1106’s own proprietary-area table |
| 1108 | RFD 1108: Floor-anchor in both AR and VR, opaque sky only in VR | committed |
src/library/sceneManager.js,enableVR(),initialize()
|
| 1107 | RFD 1107: The world package format, splats plus optional props | published |
worlds/*/world.manifest.json,worldSceneLoader.js,iwsdkWorldPackage.js
|
| 1106 | RFD 1106: The open/proprietary boundary, in public words | published | licensing, trademark, the hosted service boundary |
| 1105 | RFD 1105: Webcam avatar control, off during WebXR | published |
src/library/webcamAvatarDriver.js,xrExpressionTrackingDriver.js
|
| 1104 | RFD 1104: Uploaded VRM, rotate the scene root, never the hips | committed |
src/library/vrmLoader.js,rigBoneUtils.js,VRMExporter.js
|
| 1103 | RFD 1103: Loot assets from a CDN, not a full clone, on Vercel | published |
vercel.json,src/library/lootAssetsConfig.js
|
| 1102 | RFD 1102: The supported 3DAIGC task catalog, one live source | published |
TaskManager.jsx,src/library/aiModelsCatalog.js
|
| 1101 |
RFD 1101: Two SSH hosts only, DGX-Local and DGX-Remote
|
abandoned |
~/.ssh/config,~/.ssh/config-cursor,scripts/-dgx-
|
| 1100 | RFD 1100: Publishing to the Open Metaverse Browser’s spatial fabric | abandoned |
spatialFabricAdapter.js,useSpatialFabric.js,3DAIGC-API's/api/v1/spatial-fabric/*
|
| 1099 | RFD 1099: One cheat sheet, every operator command, machine plus folder plus command | published |
every operator script under scripts/, on both the Surface and the DGX
|
| 1098 | RFD 1098: Two deploy modes, one build that fails on a secret leak | abandoned |
vercel.json,scripts/verify-public-build-env.mjs
|
| 1096 | RFD 1096: OpenXR face tracking, native and web, on Android XR | discussion |
src/library/xrExpressionTrackingDriver.js,openxrFaceParameterMap.js,native/android-xr-face-bridge/
|
| 1095 | RFD 1095: A voice XR path, beside Task Manager, same backend | published |
/home/sifr/xr-ai,3DAIGC-API/mcp` (DGX-only)
|
| 1094 | RFD 1094: Multiple photos, routed by count, not by user choice | committed |
image-to-splat,image-to-world`, avatar mesh generation
|
| 1093 | RFD 1093: Loot assets, fetched, never committed | published |
public/loot-assets/,scripts/loot-assets-paths.mjs,scripts/ensure-loot-assets.mjs
|
| 1092 | RFD 1092: Kimodo backend integration | committed |
KimodoMotionPromptBar.jsx,taskManager.js`, the DGX-side Kimodo ops
|
| 1091 | RFD 1091: A local IWSDK fork, linked, not published | abandoned |
AlfaOmegaGrafx/immersive-web-sdk, this project's ownpackage.json
|
| 1090 |
RFD 1090: IWSDK, a separate /xr lab, Galaxy XR as the source of truth
|
abandoned |
@iwsdk/*,src/pages/IwsdkImmersive.jsx,src/library/iwsdkWorld.js
|
| 1089 | RFD 1089: HY-World 2.0, a quality path beside the fast one | discussion |
config/models.yaml, a newhyworld2_image_to_world_adapter.py
|
| 1088 | RFD 1088: HTTPS for local WebXR development | published | the Vite dev server, `certs/ |
| 1087 | RFD 1087: MindLink, a write-as-you-go memory protocol for an AI session | abandoned |
.brain/MEMORY.md,.brain/SESSION.md,.brain/LOG.md,.brain/SHARED.md
|
| 1086 | RFD 1086: Dev machine topology, and the two-machine sync rule | published | an editor workstation, a CUDA-capable GPU host, `scripts/sync-* |
| 1085 | RFD 1085: A code map, not a copied API reference | published | the browser client, `src/ |
| 1084 | RFD 1084: The avatar pipeline, image to downloaded VRM | published |
src/library/avatarPipelineCatalog.js,taskManager.js,avatarPipelineExport.js
|
| 1083 | RFD 1083: The API avatar rig export contract | committed |
src/library/aigcRigContract.js,3DAIGC-API/core/utils/aigc_rig_contract.py
|
| 1082 | RFD 1082: A companion APK relays face weights past Chrome’s own gap | discussion |
native/android-xr-face-bridge/,com.weftspun.xrfacebridge
|
| 1080 | RFD 1080: What the three Fly deploys cost | published | the deploy target |
| 1079 | RFD 1079: AppSignal observability, and versitygw’s removal | published | apps/weftspun_studio/ |
| 1078 | RFD 1078: An H2O/FoundationDB game-state server | moved | |
| 1077 | RFD 1077: An H2O edge, not yet a CDN | prediscussion |
the deploy target, apps/weftspun_studio/, `apps/usd_viewer_app/
|
| 1076 | RFD 1076: usd_viewer_app, its own app, reached through a port | prediscussion |
usd_viewer_app/,lib/weftspun_studio/ports/gallery_source.ex`,
|
| 1075 | RFD 1075: GitHub OAuth login, gated on weftspun org membership | prediscussion | weftspun_studio`, the upload-admin routes |
| 1074 | RFD 1074: A caption label over each billboard card | moved | |
| 1073 | RFD 1073: A billboard gallery of the RFD 1064 dataset, in one USD stage | prediscussion | RFD 1064’s dataset, `apps/usd_viewer_app/ |
| 1070 | RFD 1070: Keep options open | published | decisions/ |
| 1067 | RFD 1067: CockroachDB, reranked against FoundationDB | abandoned |
weftspun_studio/,character_taxonomy/
|
| 1066 | RFD 1066: Differential Mamba for caption encoding | abandoned | RFD 1065’s trait resolve step |
| 1065 | RFD 1065: Taskweft domain schema in essential tuple normal form | discussion |
RFD 1064’s domain.ex and its 15,000 problem.ex files
|
| 1064 | RFD 1064: Character Concept Generator | prediscussion | To be determined |
| 1063 | RFD 1063: STE enforcement moves to the plugin | discussion |
decisions/,scripts/ci.sh,.pre-commit-config.yaml
|
| 1062 | RFD 1062: A Fly.io toplevel, and the 4090 as a worker node | abandoned |
weftspun_studio/,deploy/quadlet/`, the deploy target
|
| 1061 | RFD 1061: GLB upload prep moves to idtx_core, later | discussion |
thirdparty/3d_studio/src/library/glbCompress.js,thirdparty/fabric-flow-adapters/
|
| 1060 | RFD 1060: A thirdparty/ reset | committed | the repository root |
| 1059 | RFD 1059: Continuous integration, in one step | published |
scripts/ci.sh,.github/workflows/main.yml
|
| 1058 | RFD 1058: Zero trust networking | published |
weftspun_studio/,scripts/deploy-weftspun-quadlet.sh
|
| 1057 | RFD 1057: Open work | published | the repository |
| 1056 | RFD 1056: Develop in a dev container | discussion | .devcontainer/ |
| 1055 | RFD 1055: BEAM workers, local first | discussion | weftspun_studio/`, every model image |
| 1054 | RFD 1054: The planner inside the studio core | published | weftspun_studio/ |
| 1053 | RFD 1053: OpenUSD as the internal format | discussion | |
| 1052 | RFD 1052: Model image for triposplat_image_to_splat | abandoned | |
| 1051 | RFD 1051: Model image for worldmirror2_reconstruct | abandoned | |
| 1050 | RFD 1050: Model image for lingbot_map_environment_scan | abandoned | |
| 1049 | RFD 1049: Model image for weftspun_image_to_world | abandoned | |
| 1048 | RFD 1048: Model image for voxhammer_image_mesh_editing | discussion | |
| 1047 | RFD 1047: Model image for voxhammer_text_mesh_editing | discussion | |
| 1046 | RFD 1046: Model image for skintokens_auto_rig | discussion | |
| 1045 | RFD 1045: Model image for kimodo_text_to_motion | discussion | |
| 1044 | RFD 1044: Model image for seethrough_layer_decomposition | discussion | |
| 1043 | RFD 1043: Model image for qwen_q4_k_m_image_edit | discussion | |
| 1042 | RFD 1042: Model image for krea2_turbo_text_to_image | discussion | |
| 1041 | RFD 1041: Model image for p3sam_mesh_segmentation | discussion | |
| 1040 | RFD 1040: Model image for pixal3d_image_to_textured_mesh | discussion | |
| 1039 | RFD 1039: Model image for trellis2_image_mesh_painting | discussion | |
| 1038 | RFD 1038: Model image for trellis2_image_to_textured_mesh | discussion | |
| 1037 | RFD 1037: Composite models as taskweft domains | discussion | |
| 1036 | RFD 1036: Model packaging convention | discussion | |
| 1035 | RFD 1035: Legacy model identifiers | published | |
| 1034 | RFD 1034: Krea memory cross-check | published | |
| 1033 | RFD 1033: Geometric algorithms in the catalog | published | |
| 1031 | RFD 1031: Geometry refinement and alpha wrap | discussion | |
| 1030 | RFD 1030: See-Through component models | published | |
| 1029 | RFD 1029: FOSS model replacements | published | |
| 1028 | RFD 1028: Model license gate | published | |
| 1027 | RFD 1027: GPU tier per model | discussion | |
| 1026 | RFD 1026: bf16 memory per model | published | |
| 1025 | RFD 1025: Model memory arithmetic | published | |
| 1023 | RFD 1023: Ports and adapters, in the headless content style | discussion |
src/core/,src/chain/
|
| 1022 | RFD 1022: A hexagonal client for the headless studio API | discussion | src/core/ |
| 1021 | RFD 1021: A shared holographic algebra library | published |
weftspun_studio/,weftspun/elixir-holographic-reduced-representation
|
| 1020 | RFD 1020: CockroachDB persistence for catalog facts | committed | weftspun_studio/ |
| 1019 | RFD 1019: Strangler fig for the studio core | discussion | weftspun_studio/ |
| 1018 | RFD 1018: M3 documentation removal | discussion | m3/ |
| 1017 | RFD 1017: Fork rebrand to Weftspun | published | all files |
| 1016 | RFD 1016: Deep learning model inventory | published | |
| 1015 | RFD 1015: Phygital passport | abandoned | |
| 1014 | RFD 1014: Batch processing | published | |
| 1013 | RFD 1013: Public demo deploy | published | |
| 1012 | RFD 1012: Wallet, minting, and x402 | abandoned | |
| 1011 | RFD 1011: Spatial fabric publish | published | |
| 1010 | RFD 1010: WebXR and IWSDK lab | published | |
| 1009 | RFD 1009: Viewport and scene rendering | published | |
| 1008 | RFD 1008: Appearance trait extraction and remix | discussion | |
| 1007 | RFD 1007: Motion validation (Kimodo) | discussion | |
| 1006 | RFD 1006: Layer decomposition (See-Through) | discussion | |
| 1005 | RFD 1005: Avatar and VRM pipeline | published | |
| 1004 | RFD 1004: AIGC task catalog | published | |
| 1003 | RFD 1003: Task Manager job lifecycle | published | |
| 1002 | RFD 1002: Studio pipeline graph | published | |
| 1001 | RFD 1001: App shell and routing | published | |
| 1000 | RFD 1000: Conventions | published | all files |
No matching items