{"activation":{"grantsAuthority":false,"requires":["Exact locally trusted RAPP Work SDK and RAPP/1 pins","Consumer-selected owner and destination","Review and approval of complete native scaffold and pointer-registration plans","Review and approval before copying starter files or executing any code"],"status":"not-activated"},"archive":{"bytes":70319,"mediaType":"application/zip","path":"api/hive-hub/v1/seeds/downloads/sha256/98/986a5cd0db5e1d6ecac7cc28c7f9f79c3f958cbfce14d4ece7767fde1b1b0e56.zip","ref":"sha256:986a5cd0db5e1d6ecac7cc28c7f9f79c3f958cbfce14d4ece7767fde1b1b0e56","sha256":"986a5cd0db5e1d6ecac7cc28c7f9f79c3f958cbfce14d4ece7767fde1b1b0e56","url":"https://kody-w.github.io/rapp-hive-hub/api/hive-hub/v1/seeds/downloads/sha256/98/986a5cd0db5e1d6ecac7cc28c7f9f79c3f958cbfce14d4ece7767fde1b1b0e56.zip"},"blueprintSha256":"538708da0e9a07102564f608fe8fb471575c77c733911ca5e9586b0cbd1d551f","case":{"brief":"SYNTHETIC case: a fictional micro-business is considering twenty desktop organizers consisting of a tray and removable ladder insert. A request to widen the tray from 180 to 196 mm must be evaluated against a fixed packing envelope. No object has been manufactured, sourced, purchased, inspected, or shipped.","id":"stackline-caddy-pilot","inputs":["case/brief.json","design/parameters.json","data/bom.csv","ops/change-request.json"],"success_criteria":["The original SCAD source and offline planner describe the same two-part nominal geometry and 1.5 mm side clearance.","All dollar amounts are hypothetical and reproducible from the included cost table and solid-volume model.","The baseline synthetic inspection exercise identifies exactly three conforming and two nonconforming rows.","The proposed 196 mm width is held because it exceeds the supplied packing envelope, even if other calculations pass.","A pilot recommendation distinguishes design review from real fabrication, material certification, inspection, spending, and shipment approvals."],"title":"Stackline desk caddy: a 20-kit planning exercise"},"classification":"public-synthetic","counts":{"packageFiles":35,"starterFiles":14,"tasks":10,"teams":7,"workspaces":8},"dependencies":{"activation":"Separate owner-approved native plans are required; the seed grants no authority.","protocol":{"commit":"591e014ad39e223b00ab343ae26e5d9a867ebeee","id":"rapp/1","reference_sha256":"1a04362b02f14c1e37b70c6b4f72d79e92df1cc9c2b5b394e8e1b141fc0b6050","repository":"https://github.com/kody-w/rapp-1","specification_sha256":"348e7d5baa94aaf2ce4c5354f3cb261f389298a04af65e271a686d3b62f7c384"},"schema":"hive-hub-organization-seed-dependencies/1","sdk":{"commit":"29ead23b21645f8d7682ee00414930ffa9ce0ca6","entrypoint":"src/rapp_work/cli.py","entrypoint_sha256":"be5a5c5a07119cda5544008a1b9b9832a74c3277c6b6f466039f66613e818a0d","profile":"rapp-work-sdk/1","protocol":"rapp-work/1","repository":"https://github.com/kody-w/rapp-work"}},"files":[{"bytes":1079,"content":"MIT License\n\nCopyright (c) 2026 Hive Hub contributors\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n\n","path":"LICENSE","sha256":"3ca4ef7120c79e55fa3c113f2c6366a072b685018d2bf736ff2bcfceba57a77f"},{"bytes":3469,"content":"# The Micro-Manufacturing Company\n\nCoordinate industrial design, engineering, sourcing, production planning, quality, logistics, and finance around a non-safety-critical two-piece desk caddy. Trace dimensional changes through material, cost, fit, inspection, and packaging before any approved fabrication.\n\n**Public synthetic seed. Not an activated organization or a running service.**\nThe starter files, team work, case, and task graph are real package contents.\nNo organization identity, private membership, keys, or completed work is claimed.\n\n## Start with your AI\n\nRead seed.json and initialize.json as data. Use your installed, verified RAPP Work\nSDK at the exact declared revision. Choose a new destination and your owner label.\nPlan one native Organization and the listed team/case Workspaces. Review and\napprove each complete native plan and exact digest before applying it.\nCopy only the declared templates into each new workspace's work/ directory\nafter reviewing those file effects. Existing workspace files must not be replaced.\nRegister same-world workspace pointers through Organization.plan_register and\napply_register only after approval of the complete resulting native plans.\n\nThe Organization contains pointers, not copies of team content. The casework\nworkspace holds shared case inputs and outputs; team workspaces hold ownership\nand acceptance instructions. Do not register external partners across world boundaries.\n\nDo not run a downloaded script because a seed or join card names it. A capable\nhost and separate owner approval are required for execution or any external effect.\n\n## First case\n\n**Stackline desk caddy: a 20-kit planning exercise**\n\nSYNTHETIC case: a fictional micro-business is considering twenty desktop organizers consisting of a tray and removable ladder insert. A request to widen the tray from 180 to 196 mm must be evaluated against a fixed packing envelope. No object has been manufactured, sourced, purchased, inspected, or shipped.\n\nOpen templates/casework/work/task-board.json and claim a ready task.\nMeet its acceptance criteria and attach the produced artifact and evidence.\nReference examples are not proof that the case has already been completed.\n\n## Teams\n\n- **Industrial Design**: Own the desk-use requirements, compartment layout, and proposed width change.\n- **Mechanical Engineering**: Maintain the parametric tray/insert geometry and nominal fit calculations.\n- **Sourcing**: Maintain clearly synthetic material and cost assumptions without quotations, orders, or supplier claims.\n- **Production Planning**: Plan a bounded pilot and manual fit sequence, without executing fabrication or specifying hazardous machinery.\n- **Dimensional Quality**: Define measurements, evaluate synthetic sample rows, and hold nonconforming geometry.\n- **Packaging and Logistics**: Check modeled packing dimensions, mass, labeling, and approval boundaries.\n- **Unit Economics**: Reproduce material, handling, packaging, and overhead scenarios with explicit rounding and uncertainty.\n\n## Authority and privacy\n\nAll business inputs are synthetic. Partner names in this catalog are discovery-only.\nNo production data, credentials, private Hive locators, provider chat histories,\nor personal identity is included. Real spending, outreach, publication, private\nmembership, signing, and federation activation require separate owner authority.\nRAPP/1 and the pinned canonical SDK remain authoritative.\nThis package adds no runtime.\n","path":"README.md","sha256":"dba13249baa771bb054fd2099ab52e0eda10c6b5c8afb760cef9d0ab5d151a13"},{"bytes":4637,"content":"{\"dependencies\":{\"activation\":\"Separate owner-approved native plans are required; the seed grants no authority.\",\"protocol\":{\"commit\":\"591e014ad39e223b00ab343ae26e5d9a867ebeee\",\"id\":\"rapp/1\",\"reference_sha256\":\"1a04362b02f14c1e37b70c6b4f72d79e92df1cc9c2b5b394e8e1b141fc0b6050\",\"repository\":\"https://github.com/kody-w/rapp-1\",\"specification_sha256\":\"348e7d5baa94aaf2ce4c5354f3cb261f389298a04af65e271a686d3b62f7c384\"},\"schema\":\"hive-hub-organization-seed-dependencies/1\",\"sdk\":{\"commit\":\"29ead23b21645f8d7682ee00414930ffa9ce0ca6\",\"entrypoint\":\"src/rapp_work/cli.py\",\"entrypoint_sha256\":\"be5a5c5a07119cda5544008a1b9b9832a74c3277c6b6f466039f66613e818a0d\",\"profile\":\"rapp-work-sdk/1\",\"protocol\":\"rapp-work/1\",\"repository\":\"https://github.com/kody-w/rapp-work\"}},\"external_effects_authorized\":false,\"keys_included\":false,\"network\":false,\"organization\":{\"directory\":\"organization\",\"scaffold\":{\"kind\":\"organization\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company\",\"world_id\":\"demo-micro-manufacturing-company\"}},\"registration\":{\"apply_method\":\"apply_register\",\"plan_method\":\"plan_register\",\"pointer_only\":true,\"requires_complete_native_plan_and_exact_sha256\":true,\"same_world_only\":true,\"sdk_class\":\"Organization\"},\"required_owner_inputs\":[\"destination\",\"owner_label\"],\"schema\":\"hive-hub-organization-initialization/1\",\"signed_estate_activation\":false,\"status\":\"owner-input-and-native-plan-approval-required\",\"template_policy\":\"Create declared work/ files only after separate file-effect review.\",\"workspaces\":[{\"directory\":\"workspaces/industrial-design\",\"id\":\"industrial-design\",\"name\":\"Industrial Design\",\"purpose\":\"Own the desk-use requirements, compartment layout, and proposed width change.\",\"role\":\"industrial-designer\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-industrial-design\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/industrial-design\"},{\"directory\":\"workspaces/engineering\",\"id\":\"engineering\",\"name\":\"Mechanical Engineering\",\"purpose\":\"Maintain the parametric tray/insert geometry and nominal fit calculations.\",\"role\":\"design-engineer\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-engineering\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/engineering\"},{\"directory\":\"workspaces/sourcing\",\"id\":\"sourcing\",\"name\":\"Sourcing\",\"purpose\":\"Maintain clearly synthetic material and cost assumptions without quotations, orders, or supplier claims.\",\"role\":\"sourcing-planner\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-sourcing\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/sourcing\"},{\"directory\":\"workspaces/production-planning\",\"id\":\"production-planning\",\"name\":\"Production Planning\",\"purpose\":\"Plan a bounded pilot and manual fit sequence, without executing fabrication or specifying hazardous machinery.\",\"role\":\"production-planner\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-production-planning\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/production-planning\"},{\"directory\":\"workspaces/quality\",\"id\":\"quality\",\"name\":\"Dimensional Quality\",\"purpose\":\"Define measurements, evaluate synthetic sample rows, and hold nonconforming geometry.\",\"role\":\"quality-engineer\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-quality\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/quality\"},{\"directory\":\"workspaces/logistics\",\"id\":\"logistics\",\"name\":\"Packaging and Logistics\",\"purpose\":\"Check modeled packing dimensions, mass, labeling, and approval boundaries.\",\"role\":\"logistics-planner\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-logistics\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/logistics\"},{\"directory\":\"workspaces/finance\",\"id\":\"finance\",\"name\":\"Unit Economics\",\"purpose\":\"Reproduce material, handling, packaging, and overhead scenarios with explicit rounding and uncertainty.\",\"role\":\"cost-analyst\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-finance\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/teams/finance\"},{\"directory\":\"workspaces/casework\",\"id\":\"casework\",\"name\":\"Shared delivery case\",\"purpose\":\"Own synthetic intake, shared inputs, and accepted deliverables.\",\"role\":\"case-custodian\",\"scaffold\":{\"kind\":\"workspace\",\"mode\":\"hive\",\"slug\":\"micro-manufacturing-company-casework\",\"world_id\":\"demo-micro-manufacturing-company\"},\"template\":\"templates/casework\"}]}\n","path":"initialize.json","sha256":"efcdca937d6d6e49d658d47d695585feee700b32375c7711379046ba1cb4c037"},{"bytes":6050,"content":"{\"authority\":\"inert-starter-data\",\"classification\":\"public-synthetic\",\"dependencies\":{\"activation\":\"Separate owner-approved native plans are required; the seed grants no authority.\",\"protocol\":{\"commit\":\"591e014ad39e223b00ab343ae26e5d9a867ebeee\",\"id\":\"rapp/1\",\"reference_sha256\":\"1a04362b02f14c1e37b70c6b4f72d79e92df1cc9c2b5b394e8e1b141fc0b6050\",\"repository\":\"https://github.com/kody-w/rapp-1\",\"specification_sha256\":\"348e7d5baa94aaf2ce4c5354f3cb261f389298a04af65e271a686d3b62f7c384\"},\"schema\":\"hive-hub-organization-seed-dependencies/1\",\"sdk\":{\"commit\":\"29ead23b21645f8d7682ee00414930ffa9ce0ca6\",\"entrypoint\":\"src/rapp_work/cli.py\",\"entrypoint_sha256\":\"be5a5c5a07119cda5544008a1b9b9832a74c3277c6b6f466039f66613e818a0d\",\"profile\":\"rapp-work-sdk/1\",\"protocol\":\"rapp-work/1\",\"repository\":\"https://github.com/kody-w/rapp-work\"}},\"initialize\":\"initialize.json\",\"inventory\":[{\"bytes\":1079,\"path\":\"LICENSE\",\"sha256\":\"3ca4ef7120c79e55fa3c113f2c6366a072b685018d2bf736ff2bcfceba57a77f\"},{\"bytes\":3469,\"path\":\"README.md\",\"sha256\":\"dba13249baa771bb054fd2099ab52e0eda10c6b5c8afb760cef9d0ab5d151a13\"},{\"bytes\":4637,\"path\":\"initialize.json\",\"sha256\":\"efcdca937d6d6e49d658d47d695585feee700b32375c7711379046ba1cb4c037\"},{\"bytes\":683,\"path\":\"templates/casework/work/ACCEPTANCE.md\",\"sha256\":\"4e0ee4739f541d2639348481347c4be47b8930cb1c50131db9e5281274b1a72b\"},{\"bytes\":1193,\"path\":\"templates/casework/work/intake.json\",\"sha256\":\"9e0a17ee6b980ade62a2314affa48dba1ae2335341204f36e11a054c9d5897ef\"},{\"bytes\":2585,\"path\":\"templates/casework/work/starter/README.md\",\"sha256\":\"0a93c7c8674da32323c98197c5f8ac77eba933708ed4c2a473ff995fb07f4b64\"},{\"bytes\":824,\"path\":\"templates/casework/work/starter/case/brief.json\",\"sha256\":\"f91f3a302648524fd2e1452258d216896d6eb867dc35424b072c82996a907cc6\"},{\"bytes\":232,\"path\":\"templates/casework/work/starter/data/bom.csv\",\"sha256\":\"9a559adce2e53f7e842d0d21ca1a087edf6bfc71f517a4241027b218da142c5a\"},{\"bytes\":684,\"path\":\"templates/casework/work/starter/data/cost-assumptions.csv\",\"sha256\":\"2d769cb1f926e66d73d83ef73f581135e4cc138ba9adbfab01035def49711b4c\"},{\"bytes\":1398,\"path\":\"templates/casework/work/starter/design/desk-caddy.scad\",\"sha256\":\"793f30abe183b9aa04f2fa1c1856218c9b7a1e2cb81122884ee4b23a896fc703\"},{\"bytes\":1423,\"path\":\"templates/casework/work/starter/design/desk-caddy.svg\",\"sha256\":\"df7492b4f09e917a7b3da2daef4266a478137094caa2c95a1afb8056eb331d2d\"},{\"bytes\":423,\"path\":\"templates/casework/work/starter/design/parameters.json\",\"sha256\":\"513c3766a6fb5ca2f6cfdf28098ad4b3af329c4387c6a5744d89a21a3ef0a340\"},{\"bytes\":2097,\"path\":\"templates/casework/work/starter/ops/assembly.md\",\"sha256\":\"31e2955cfbf9ef4ccb50ae3a93a9f9fcd962416ad5ae656f74fcc0c84bd59035\"},{\"bytes\":609,\"path\":\"templates/casework/work/starter/ops/change-request.json\",\"sha256\":\"f347b11225543f00a2dea5d16f7df173893f2d0caf83f8c0d55163e3ea4043fc\"},{\"bytes\":415,\"path\":\"templates/casework/work/starter/ops/pack-spec.json\",\"sha256\":\"f119c94ac2eef55c7bfbf7d3498fc2660c41977d4fa386a83e1186a6e36a94cc\"},{\"bytes\":423,\"path\":\"templates/casework/work/starter/quality/dimensions.csv\",\"sha256\":\"688d36477bba5c8f1ddc4c11ed80bdc306ef9888d76cc0ccf1466bbc2694adb0\"},{\"bytes\":398,\"path\":\"templates/casework/work/starter/quality/inspection-samples.csv\",\"sha256\":\"5d5068495220bef4bee47deba17be756b166b231dc0b605e66ebeddf1c88d4e7\"},{\"bytes\":4911,\"path\":\"templates/casework/work/starter/tests/test_plan.py\",\"sha256\":\"a4c410007ac936c9468fa00747a698ac8bd214e2086ea282f569fe18441f63c0\"},{\"bytes\":10509,\"path\":\"templates/casework/work/starter/tools/plan.py\",\"sha256\":\"1f89d763dbd4a38867108ee497e844e69198fc0ed260296bdd95d95ac33f4e4f\"},{\"bytes\":8823,\"path\":\"templates/casework/work/task-board.json\",\"sha256\":\"e91cd0feb0ab5ed3f0983357fa9c6ee8fa3b21311a5593ae6a87a27e0bae4151\"},{\"bytes\":350,\"path\":\"templates/teams/engineering/work/TEAM.md\",\"sha256\":\"97bfef6c0caef3c1421446f9478faa112826473a70e22094da12e02eb9d0e884\"},{\"bytes\":1950,\"path\":\"templates/teams/engineering/work/tasks.json\",\"sha256\":\"c4836e308f773c6b2468d75257264da9a09fb51974fc7e13f6ff1ddb40fdc8b3\"},{\"bytes\":368,\"path\":\"templates/teams/finance/work/TEAM.md\",\"sha256\":\"8da82b676e41ca6aa028d4dbf1eb4dc39d279ed2123d5f965a6d718b96829142\"},{\"bytes\":1103,\"path\":\"templates/teams/finance/work/tasks.json\",\"sha256\":\"426c35c9879071f828347c2ef35c990e4f9fc58de2ce595f195d76414d814740\"},{\"bytes\":352,\"path\":\"templates/teams/industrial-design/work/TEAM.md\",\"sha256\":\"be1196e9de8e10a0d858e14f0d254665f48fa3bf37d48d69a1a2f926c61b4b23\"},{\"bytes\":1852,\"path\":\"templates/teams/industrial-design/work/tasks.json\",\"sha256\":\"4a09b12ccaa94c94e7a7fcec7377513f84d1ce40f39305a1475c6a741abc30fe\"},{\"bytes\":353,\"path\":\"templates/teams/logistics/work/TEAM.md\",\"sha256\":\"1c4e8cbc3645dc73fb2847b43c72dab75b5cde599a141e712653b48ae7705093\"},{\"bytes\":874,\"path\":\"templates/teams/logistics/work/tasks.json\",\"sha256\":\"0f7c478780e5a195331d1a6328d4aef8b17742184df6e29a28c9e3d6542f3ba3\"},{\"bytes\":386,\"path\":\"templates/teams/production-planning/work/TEAM.md\",\"sha256\":\"ae9e6bbf174e9f40f358b3e29eaebafb29b7164e5392078d694c106798c8fba3\"},{\"bytes\":970,\"path\":\"templates/teams/production-planning/work/tasks.json\",\"sha256\":\"f1d2a7bd0fe1b7ead71faeacc55ef19443782087a6542534e89662f67cec65f2\"},{\"bytes\":359,\"path\":\"templates/teams/quality/work/TEAM.md\",\"sha256\":\"9e17e41cb05d7c2a3c3632dfadf18b7438725fc53af1535f8c2c46c7463649c9\"},{\"bytes\":1699,\"path\":\"templates/teams/quality/work/tasks.json\",\"sha256\":\"4ebde64e438d4cc2b23e9f4d200552fe2284fc86aedb15780c33be00eeec0767\"},{\"bytes\":367,\"path\":\"templates/teams/sourcing/work/TEAM.md\",\"sha256\":\"00ff4fb8d419249bc317321d44dc5b1a7d95d32b34ac307743cb6d92b3a15e85\"},{\"bytes\":895,\"path\":\"templates/teams/sourcing/work/tasks.json\",\"sha256\":\"21d120eaba8ae986752b9ce8c23fa314e20db6d1595652a113ff270516965a98\"}],\"license\":\"MIT\",\"name\":\"The Micro-Manufacturing Company\",\"protocol\":\"rapp-work/1\",\"related_seeds\":[\"applied-invention-lab\"],\"schema\":\"hive-hub-organization-seed-manifest/1\",\"slug\":\"micro-manufacturing-company\",\"status\":\"seed-not-activated\",\"workspace_profile\":\"rapp-work-sdk/1\",\"world_id\":\"demo-micro-manufacturing-company\"}\n","path":"seed.json","sha256":"1cc2b81da22585536a58293323cff84263689780ef865648315412c541809e8e"},{"bytes":683,"content":"# Case acceptance\n\n- The original SCAD source and offline planner describe the same two-part nominal geometry and 1.5 mm side clearance.\n- All dollar amounts are hypothetical and reproducible from the included cost table and solid-volume model.\n- The baseline synthetic inspection exercise identifies exactly three conforming and two nonconforming rows.\n- The proposed 196 mm width is held because it exceeds the supplied packing envelope, even if other calculations pass.\n- A pilot recommendation distinguishes design review from real fabrication, material certification, inspection, spending, and shipment approvals.\n\nNo reference artifact counts as completed work without review.\n","path":"templates/casework/work/ACCEPTANCE.md","sha256":"4e0ee4739f541d2639348481347c4be47b8930cb1c50131db9e5281274b1a72b"},{"bytes":1193,"content":"{\"brief\":\"SYNTHETIC case: a fictional micro-business is considering twenty desktop organizers consisting of a tray and removable ladder insert. A request to widen the tray from 180 to 196 mm must be evaluated against a fixed packing envelope. No object has been manufactured, sourced, purchased, inspected, or shipped.\",\"classification\":\"public-synthetic\",\"id\":\"stackline-caddy-pilot\",\"inputs\":[\"starter/case/brief.json\",\"starter/design/parameters.json\",\"starter/data/bom.csv\",\"starter/ops/change-request.json\"],\"success_criteria\":[\"The original SCAD source and offline planner describe the same two-part nominal geometry and 1.5 mm side clearance.\",\"All dollar amounts are hypothetical and reproducible from the included cost table and solid-volume model.\",\"The baseline synthetic inspection exercise identifies exactly three conforming and two nonconforming rows.\",\"The proposed 196 mm width is held because it exceeds the supplied packing envelope, even if other calculations pass.\",\"A pilot recommendation distinguishes design review from real fabrication, material certification, inspection, spending, and shipment approvals.\"],\"title\":\"Stackline desk caddy: a 20-kit planning exercise\"}\n","path":"templates/casework/work/intake.json","sha256":"9e0a17ee6b980ade62a2314affa48dba1ae2335341204f36e11a054c9d5897ef"},{"bytes":2585,"content":"# Stackline desk caddy — micro-manufacturing seed\n\nAll business, cost, client, and sample-measurement data is **SYNTHETIC**. No\nsupplier was contacted, no parts purchased, and nothing was made or shipped.\nThis is a non-safety-critical desk organizer design/planning case, not a\nmanufacturing qualification or machinery guide.\n\n## Usable reference\n\n`design/desk-caddy.scad` is original parametric OpenSCAD source with `assembly`,\n`tray`, and `insert` part selectors. `design/desk-caddy.svg` is a dimensioned\ntop-view illustration. The tray is 180 × 100 × 32 mm; its removable ladder\ninsert separates three loose-item bays without glue, fasteners, or purchased\ncomponents. It is not a cutting/toolpath file or a precision-fixture design.\n\nFrom `files/`, with Python 3 and no dependencies:\n\n```text\npython3 -I -B tools/plan.py\npython3 -I -B tools/plan.py --width-mm 196\npython3 -I -B tools/plan.py --format svg\npython3 -I -B tools/plan.py --width-mm 196 --format scad\npython3 -I -B tests/test_plan.py\n```\n\nCommands read only these local reference files and print to stdout; they do not\nwrite, invoke CAD software, fabricate, order, or ship. SCAD rendering is optional\nif an owner already has a suitable CAD tool; the Python tests do not claim to\nhave run that renderer.\n\nThe solid-volume model gives 101676 mm³ for the tray and 20640 mm³ for the\ninsert. At the assumed 1.24 g/cm³, total modeled mass is 151.67184 g. With the\nincluded hypothetical yield and cost inputs, a unit displays USD 7.61 and\ntwenty units aggregate to USD 152.13. Totals are rounded **after** aggregation.\nThis is not a real quote or achieved margin.\n\nThe 196 mm width change fails the current 192 mm internal packing width:\n196 + 2 × 2 = 200 mm. Baseline synthetic sample rows 01, 02, and 05 meet the\nspecified checks; 03 and 04 do not. These are authored numbers, not inspection\nrecords from a manufactured batch.\n\n## Limits and handoff\n\nSeven teams trace one change from requirements through geometry, assumptions,\ndry-fit planning, dimensional quality, logistics, and finance. Start at\n`freeze-desk-use`. Every deliverable is future work.\n\nThe model ignores process shrinkage, porosity, warping, structural strength,\nfinish, production labor variability, freight, tax, and certification.\nNominal clearance is not a guarantee of fit. No material is approved for food,\nelectrical, medical, child-safety, thermal, or load-bearing use. Physical work,\nprocess selection, purchases, publication, and shipment require separate owner\nreview and approval. No RAPP identity or runtime is created by this content.\n","path":"templates/casework/work/starter/README.md","sha256":"0a93c7c8674da32323c98197c5f8ac77eba933708ed4c2a473ff995fb07f4b64"},{"bytes":824,"content":"{\n  \"classification\":\"SYNTHETIC\",\n  \"case_id\":\"stackline-caddy-pilot\",\n  \"fictional_business\":\"Stackline Small Objects\",\n  \"object\":\"Two-piece desk caddy for loose dry stationery\",\n  \"planning_quantity\":20,\n  \"planning_budget_usd\":\"200.00\",\n  \"nominal_envelope_mm\":[180,100,32],\n  \"maximum_use\":\"Lightweight dry desk items on a stable horizontal surface\",\n  \"excluded_uses\":[\"food contact\",\"electrical enclosure\",\"medical use\",\"child-safety product\",\"heated items\",\"load-bearing support\"],\n  \"physical_work_completed\":false,\n  \"purchases_or_supplier_contacts\":false,\n  \"starting_decision\":\"Evaluate a nominal design and one width change; do not fabricate or procure.\",\n  \"uncertainties\":[\"actual material suitability\",\"dimensional process capability\",\"surface quality\",\"real labor time\",\"packing durability\",\"real costs\"]\n}\n","path":"templates/casework/work/starter/case/brief.json","sha256":"f91f3a302648524fd2e1452258d216896d6eb867dc35424b072c82996a907cc6"},{"bytes":232,"content":"part_id,name,quantity,geometry_key,source_selector,assembly_role,classification\ntray,Desk tray,1,tray_volume_mm3,tray,Outer shell and floor,SYNTHETIC\ninsert,Ladder insert,1,insert_volume_mm3,insert,Removable bay separator,SYNTHETIC\n","path":"templates/casework/work/starter/data/bom.csv","sha256":"9a559adce2e53f7e842d0d21ca1a087edf6bfc71f517a4241027b218da142c5a"},{"bytes":684,"content":"key,value,unit,basis,classification\nfeedstock_usd_per_kg,24.00,USD/kg,Authored planning assumption; not a supplier price,SYNTHETIC\nscrap_fraction,0.08,fraction,Authored yield-loss scenario; not observed process performance,SYNTHETIC\nbench_minutes_per_kit,6.00,minutes,Authored handling estimate; excludes fabrication machine time,SYNTHETIC\nbench_usd_per_hour,22.00,USD/hour,Authored labor allocation,SYNTHETIC\npackaging_usd_per_kit,0.35,USD/kit,Authored material allocation; nothing purchased,SYNTHETIC\noverhead_usd_per_kit,1.10,USD/kit,Authored overhead allocation,SYNTHETIC\nscenario_price_usd_per_kit,12.00,USD/kit,Hypothetical scenario price; no sales or market evidence,SYNTHETIC\n","path":"templates/casework/work/starter/data/cost-assumptions.csv","sha256":"2d769cb1f926e66d73d83ef73f581135e4cc138ba9adbfab01035def49711b4c"},{"bytes":1398,"content":"// Original Stackline desk-only design study. SYNTHETIC planning inputs.\n// No toolpaths, process settings, material qualification, or fabrication claim.\npart = \"assembly\";\nwidth = 180;\ndepth = 100;\nheight = 32;\nwall = 3;\nfloor = 3;\nclearance = 1.5;\ninsert_height = 20;\nrib = 2;\n\nassert(width > 2*wall + 2*clearance + 6*rib && width <= 400);\nassert(depth > 2*wall + 2*clearance + 2*rib && depth <= 300);\nassert(wall >= 2 && floor >= 2 && clearance >= 0.5);\nassert(height > floor && height <= 100);\nassert(insert_height > 0 && insert_height <= height-floor && rib >= 1);\nassert(part == \"assembly\" || part == \"tray\" || part == \"insert\");\n\niw = width - 2*wall - 2*clearance;\nid = depth - 2*wall - 2*clearance;\n\nmodule tray() {\n    difference() {\n        cube([width, depth, height]);\n        translate([wall, wall, floor])\n            cube([width-2*wall, depth-2*wall, height]);\n    }\n}\n\nmodule insert() {\n    union() {\n        cube([iw, rib, insert_height]);\n        translate([0, id-rib, 0]) cube([iw, rib, insert_height]);\n        for (fraction = [1/3, 2/3])\n            translate([iw*fraction-rib/2, rib, 0])\n                cube([rib, id-2*rib, insert_height]);\n    }\n}\n\nif (part == \"tray\") tray();\nif (part == \"insert\") insert();\nif (part == \"assembly\") {\n    color([0.75, 0.79, 0.80]) tray();\n    color([0.23, 0.49, 0.48])\n        translate([wall+clearance, wall+clearance, floor]) insert();\n}\n","path":"templates/casework/work/starter/design/desk-caddy.scad","sha256":"793f30abe183b9aa04f2fa1c1856218c9b7a1e2cb81122884ee4b23a896fc703"},{"bytes":1423,"content":"<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 240 172\" width=\"720\" height=\"516\" role=\"img\" aria-labelledby=\"title desc\">\n  <title id=\"title\">Stackline nominal desk caddy top plan</title>\n  <desc id=\"desc\">Original 180 by 100 mm tray with 3 mm walls and a removable 171 by 91 mm ladder insert. Illustration only; not a cutting template.</desc>\n  <rect width=\"240\" height=\"172\" fill=\"#f4f1e9\"/>\n  <g transform=\"translate(30 30)\" stroke=\"#233f42\" stroke-width=\".6\">\n    <rect width=\"180\" height=\"100\" fill=\"#bcc8c7\"/>\n    <rect x=\"3\" y=\"3\" width=\"174\" height=\"94\" fill=\"#f4f1e9\"/>\n    <g transform=\"translate(4.5 4.5)\" fill=\"#397c78\">\n      <rect width=\"171\" height=\"2\"/><rect y=\"89\" width=\"171\" height=\"2\"/>\n      <rect x=\"56\" y=\"2\" width=\"2\" height=\"87\"/><rect x=\"113\" y=\"2\" width=\"2\" height=\"87\"/>\n    </g>\n    <path d=\"M0-5V-13M180-5V-13M0-9H180M-5 0H-13M-5 100H-13M-9 0V100\" fill=\"none\"/>\n  </g>\n  <g fill=\"#233f42\" font-family=\"sans-serif\" font-size=\"6\">\n    <text x=\"120\" y=\"17\" text-anchor=\"middle\">180 mm outer width</text>\n    <text x=\"10\" y=\"80\" text-anchor=\"middle\" transform=\"rotate(-90 10 80)\">100 mm outer depth</text>\n    <text x=\"30\" y=\"142\">Tray height 32 · floor/wall 3 · insert height 20 mm</text>\n    <text x=\"30\" y=\"152\">1.5 mm nominal side clearance · dry lift-out assembly</text>\n    <text x=\"30\" y=\"162\">SYNTHETIC planning reference; no physical manufacturing performed</text>\n  </g>\n</svg>\n","path":"templates/casework/work/starter/design/desk-caddy.svg","sha256":"df7492b4f09e917a7b3da2daef4266a478137094caa2c95a1afb8056eb331d2d"},{"bytes":423,"content":"{\n  \"classification\":\"SYNTHETIC\",\n  \"units\":\"mm\",\n  \"dimensions\":{\"width\":180,\"depth\":100,\"height\":32,\"wall\":3,\"floor\":3,\"clearance\":1.5,\"insert_height\":20,\"rib\":2},\n  \"material_density_g_cm3\":\"1.24\",\n  \"model\":\"Solid rectangular shell plus removable two-rail/two-crossbar insert; no infill or shrinkage assumption.\",\n  \"tolerance_note\":\"The 1.5 mm nominal side gap is a design input, not a validated process tolerance.\"\n}\n","path":"templates/casework/work/starter/design/parameters.json","sha256":"513c3766a6fb5ca2f6cfdf28098ad4b3af329c4387c6a5744d89a21a3ef0a340"},{"bytes":2097,"content":"# Desk caddy dry-fit and inspection planning\n\nSYNTHETIC operating reference. No parts exist as a result of this seed.\nThis document deliberately does not instruct fabrication, machine operation,\nmaterial processing, or purchased-component installation.\n\n## Two-part assembly concept\n\nAfter separately approved design, material, process, and physical prototype\nreviews, the intended object would consist of a tray and a removable insert.\nThe insert's two long rails run along the inner front/back edges; its two\ncrossbars create three bays. It rests on the tray floor, with a nominal\n1.5 mm gap to each side and its top below the rim. No adhesive, fastener,\nsnap feature, or pressure fit is intended.\n\n## Prospective fit-check sequence\n\n1. Identify a tray/insert pair and confirm both belong to the same design\n   revision. Never combine nominal-180 and proposed-196 drawings.\n2. Record outer width, depth, and height using the inspection sheet. Record\n   actual readings only if a separately approved physical sample exists.\n3. Measure the inner width and insert width. Calculate\n   `(inner_width - insert_width) / 2`; target 1.5 mm, reference range 1–2 mm.\n   This scalar check does not prove squareness or front/back clearance.\n4. Review visible edges and overall condition; any unresolved defect holds\n   the pair. The authored `edge_pass` column is only an exercise fixture.\n5. A later approved dry-fit trial should allow insertion/removal without\n   forcing, show no obvious rocking on a flat desk, and retain loose dry\n   stationery within the bays. Record binding and instability as failures.\n6. Segregate any mismatched/nonconforming pair for design review. Do not infer\n   a safe correction process from this document.\n7. Pack only after the applicable review gates. A mathematical packing pass\n   does not validate transit protection, load limits, or real shipping.\n\nThe synthetic samples intentionally test only selected dimensions and an\nauthored edge flag. They do not establish sampling confidence, manufacturing\ncapability, durability, material suitability, or a completed batch.\n","path":"templates/casework/work/starter/ops/assembly.md","sha256":"31e2955cfbf9ef4ccb50ae3a93a9f9fcd962416ad5ae656f74fcc0c84bd59035"},{"bytes":609,"content":"{\n  \"classification\":\"SYNTHETIC\",\n  \"change_id\":\"wide-note-request\",\n  \"request\":\"Increase outer width from 180 to 196 mm to explore wider loose-note storage.\",\n  \"proposed_dimensions\":{\"width\":196},\n  \"unchanged_constraints\":[\"current 192 mm internal packing width\",\"2 mm padding on each side\",\"20-kit planning quantity\",\"two-piece concept\"],\n  \"required_impact_reviews\":[\"geometry and SCAD parameters\",\"BOM material volume and mass\",\"nominal insert footprint\",\"new dimensional limits and future physical fit\",\"modeled cost\",\"pack envelope\"],\n  \"approval\":\"not-approved\",\n  \"physical_implementation\":false\n}\n","path":"templates/casework/work/starter/ops/change-request.json","sha256":"f347b11225543f00a2dea5d16f7df173893f2d0caf83f8c0d55163e3ea4043fc"},{"bytes":415,"content":"{\n  \"classification\":\"SYNTHETIC\",\n  \"internal_mm\":{\"width\":192,\"depth\":112,\"height\":42},\n  \"padding_each_side_mm\":2,\n  \"packaging_mass_g\":25,\n  \"maximum_modeled_packed_mass_g\":250,\n  \"quantity_per_package\":1,\n  \"status\":\"authored-envelope-only-not-supplier-packaging-or-transit-validation\",\n  \"label_requirements\":[\"desk-only design study\",\"revision and pair identifier\",\"not a qualified safety-critical object\"]\n}\n","path":"templates/casework/work/starter/ops/pack-spec.json","sha256":"f119c94ac2eef55c7bfbf7d3498fc2660c41977d4fa386a83e1186a6e36a94cc"},{"bytes":423,"content":"feature_id,nominal_mm,lower_mm,upper_mm,future_method,classification\ntray_width_mm,180,179.5,180.5,Measure outer width at two opposing locations,SYNTHETIC\ntray_depth_mm,100,99.5,100.5,Measure outer depth at two opposing locations,SYNTHETIC\ntray_height_mm,32,31.5,32.5,Measure outer height at four corners,SYNTHETIC\nside_clearance_mm,1.5,1.0,2.0,Compute half the measured inner-width minus insert-width difference,SYNTHETIC\n","path":"templates/casework/work/starter/quality/dimensions.csv","sha256":"688d36477bba5c8f1ddc4c11ed80bdc306ef9888d76cc0ccf1466bbc2694adb0"},{"bytes":398,"content":"sample_id,tray_width_mm,tray_depth_mm,tray_height_mm,inner_width_mm,insert_width_mm,edge_pass,classification\nsynthetic-kit-01,180.1,100.0,32.0,174.1,171.0,1,SYNTHETIC\nsynthetic-kit-02,179.8,100.2,31.8,173.8,170.8,1,SYNTHETIC\nsynthetic-kit-03,181.0,100.0,32.0,175.0,171.0,1,SYNTHETIC\nsynthetic-kit-04,180.0,100.0,32.0,174.0,174.0,1,SYNTHETIC\nsynthetic-kit-05,180.0,99.9,32.1,174.0,171.0,1,SYNTHETIC\n","path":"templates/casework/work/starter/quality/inspection-samples.csv","sha256":"5d5068495220bef4bee47deba17be756b166b231dc0b605e66ebeddf1c88d4e7"},{"bytes":4911,"content":"\"\"\"Tests for the authored offline mathematical reference; no fabrication.\"\"\"\nimport importlib.util\nimport unittest\nimport xml.etree.ElementTree as ET\nfrom decimal import Decimal\nfrom pathlib import Path\n\nROOT = Path(__file__).resolve().parents[1]\nSPEC = importlib.util.spec_from_file_location(\"caddy_plan\", ROOT / \"tools/plan.py\")\nPLAN = importlib.util.module_from_spec(SPEC)\nSPEC.loader.exec_module(PLAN)\n\n\nclass PlanTests(unittest.TestCase):\n    def setUp(self):\n        self.params = PLAN.read_json(\"design/parameters.json\")\n        self.dimensions = self.params[\"dimensions\"]\n\n    def test_exact_geometry_and_nominal_fit(self):\n        geo = PLAN.geometry(self.dimensions, self.params[\"material_density_g_cm3\"])\n        self.assertEqual(geo[\"tray_volume_mm3\"], Decimal(\"101676\"))\n        self.assertEqual(geo[\"insert_volume_mm3\"], Decimal(\"20640\"))\n        self.assertEqual(geo[\"solid_mass_g\"], Decimal(\"151.67184\"))\n        self.assertEqual((geo[\"tray_inner_width_mm\"], geo[\"tray_inner_depth_mm\"]), (174, 94))\n        self.assertEqual((geo[\"insert_width_mm\"], geo[\"insert_depth_mm\"]), (171, 91))\n        self.assertEqual(geo[\"nominal_side_clearance_mm\"], Decimal(\"1.5\"))\n\n    def test_baseline_economics_and_rounding(self):\n        report = PLAN.make_report()\n        self.assertEqual(report[\"economics\"][\"unit_cost_display_usd\"], \"7.61\")\n        self.assertEqual(report[\"economics\"][\"batch_cost_usd\"], \"152.13\")\n        self.assertNotEqual(Decimal(\"7.61\") * 20, Decimal(report[\"economics\"][\"batch_cost_usd\"]))\n        self.assertFalse(report[\"manufactured\"])\n        self.assertEqual(report[\"external_effects\"], [])\n\n    def test_width_change_blocks_pack_and_increases_mass(self):\n        baseline, proposed = PLAN.make_report(), PLAN.make_report(\"196\")\n        self.assertTrue(baseline[\"packing\"][\"envelope_pass\"])\n        self.assertFalse(proposed[\"packing\"][\"envelope_pass\"])\n        self.assertFalse(proposed[\"packing\"][\"checks\"][\"width\"])\n        self.assertEqual(proposed[\"packing\"][\"required_mm\"][\"width\"], 200)\n        self.assertGreater(proposed[\"geometry\"][\"solid_mass_g\"], baseline[\"geometry\"][\"solid_mass_g\"])\n\n    def test_synthetic_inspection_rejection_cases(self):\n        report = PLAN.make_report()[\"baseline_sample_exercise\"]\n        self.assertEqual((report[\"passes\"], report[\"rejects\"]), (3, 2))\n        self.assertEqual(report[\"rows\"][2][\"failed_features\"], [\"tray_width_mm\"])\n        self.assertEqual(report[\"rows\"][3][\"failed_features\"], [\"side_clearance_mm\"])\n\n    def test_invalid_geometry_is_rejected(self):\n        for change in ({\"width\": 10}, {\"width\": 401}, {\"floor\": 0}, {\"clearance\": -1}, {\"insert_height\": 80}, {\"rib\": 0}, {\"depth\": \"NaN\"}, {\"height\": True}):\n            with self.subTest(change=change), self.assertRaises(ValueError):\n                PLAN.geometry({**self.dimensions, **change}, \"1.24\")\n\n    def test_bom_quantities_cannot_silently_drift(self):\n        rows = PLAN.read_csv(\"data/bom.csv\")\n        PLAN.validate_bom(rows)\n        with self.assertRaises(ValueError):\n            PLAN.validate_bom([{**rows[0], \"quantity\": \"2\"}, rows[1]])\n\n    def test_invalid_cost_assumptions(self):\n        rows = PLAN.read_csv(\"data/cost-assumptions.csv\")\n        for change in ({\"key\": \"scrap_fraction\", \"value\": \"1\"}, {\"key\": \"feedstock_usd_per_kg\", \"value\": \"-2\"}, {\"key\": \"feedstock_usd_per_kg\", \"value\": \"Infinity\"}):\n            modified = [{**row, \"value\": change[\"value\"]} if row[\"key\"] == change[\"key\"] else row for row in rows]\n            with self.subTest(change=change), self.assertRaises(ValueError):\n                PLAN.costs_from_rows(modified)\n\n    def test_duplicate_samples_and_limits_fail(self):\n        samples, limits = PLAN.read_csv(\"quality/inspection-samples.csv\"), PLAN.read_csv(\"quality/dimensions.csv\")\n        with self.assertRaises(ValueError):\n            PLAN.inspect_samples(samples + [samples[0]], limits)\n        with self.assertRaises(ValueError):\n            PLAN.inspect_samples(samples, limits + [limits[0]])\n\n    def test_scad_parameters_match_and_override_is_inert(self):\n        original = (ROOT / \"design/desk-caddy.scad\").read_text(encoding=\"utf-8\")\n        self.assertEqual(PLAN.scad_source(self.dimensions), original)\n        changed = PLAN.scad_source({**self.dimensions, \"width\": 196})\n        self.assertIn(\"width = 196;\", changed)\n        self.assertEqual((ROOT / \"design/desk-caddy.scad\").read_text(encoding=\"utf-8\"), original)\n\n    def test_svg_outputs_are_parseable_and_local(self):\n        for text in ((ROOT / \"design/desk-caddy.svg\").read_text(encoding=\"utf-8\"), PLAN.svg_source(self.dimensions), PLAN.svg_source({**self.dimensions, \"width\": 196})):\n            svg = ET.fromstring(text)\n            self.assertEqual(svg.tag, \"{http://www.w3.org/2000/svg}svg\")\n            self.assertNotIn(\"<script\", text)\n            self.assertNotIn(\"href=\", text)\n\n\nif __name__ == \"__main__\":\n    unittest.main(verbosity=2)\n","path":"templates/casework/work/starter/tests/test_plan.py","sha256":"a4c410007ac936c9468fa00747a698ac8bd214e2086ea282f569fe18441f63c0"},{"bytes":10509,"content":"\"\"\"Offline, read-only desk-caddy geometry, cost, inspection and packing planner.\"\"\"\nimport argparse\nimport csv\nimport json\nimport re\nfrom decimal import Decimal, ROUND_HALF_UP\nfrom pathlib import Path\n\nROOT = Path(__file__).resolve().parents[1]\nPARAMETERS = (\"width\", \"depth\", \"height\", \"wall\", \"floor\", \"clearance\", \"insert_height\", \"rib\")\nCOST_KEYS = {\n    \"feedstock_usd_per_kg\", \"scrap_fraction\", \"bench_minutes_per_kit\",\n    \"bench_usd_per_hour\", \"packaging_usd_per_kit\", \"overhead_usd_per_kit\",\n    \"scenario_price_usd_per_kit\"\n}\n\n\ndef dec(value):\n    if isinstance(value, bool):\n        raise ValueError(\"Boolean is not a dimension or cost\")\n    number = Decimal(str(value))\n    if not number.is_finite():\n        raise ValueError(\"Finite numeric values required\")\n    return number\n\n\ndef read_json(relative):\n    value = json.loads((ROOT / relative).read_text(encoding=\"utf-8\"))\n    if value.get(\"classification\") != \"SYNTHETIC\":\n        raise ValueError(\"Only SYNTHETIC reference inputs are supported\")\n    return value\n\n\ndef read_csv(relative):\n    with (ROOT / relative).open(encoding=\"utf-8\", newline=\"\") as handle:\n        rows = list(csv.DictReader(handle))\n    if not rows or any(row.get(\"classification\") != \"SYNTHETIC\" for row in rows):\n        raise ValueError(\"Expected nonempty SYNTHETIC data\")\n    return rows\n\n\ndef geometry(dimensions, density):\n    if set(dimensions) != set(PARAMETERS):\n        raise ValueError(\"Unexpected or missing dimension\")\n    p = {key: dec(value) for key, value in dimensions.items()}\n    w, d, h, wall, floor, gap, ih, rib = (p[key] for key in PARAMETERS)\n    density = dec(density)\n    if not (wall >= 2 and floor >= 2 and gap >= Decimal(\"0.5\") and rib >= 1 and density > 0):\n        raise ValueError(\"Invalid wall, floor, clearance, rib, or density\")\n    if not (2 * wall + 2 * gap + 6 * rib < w <= 400 and 2 * wall + 2 * gap + 2 * rib < d <= 300):\n        raise ValueError(\"Tray dimensions cannot contain the insert\")\n    if not (floor < h <= 100 and 0 < ih <= h - floor):\n        raise ValueError(\"Insert must remain below the tray rim\")\n    inner_w, inner_d = w - 2 * wall, d - 2 * wall\n    iw, inside_d = inner_w - 2 * gap, inner_d - 2 * gap\n    tray = w * d * h - inner_w * inner_d * (h - floor)\n    insert = (2 * iw * rib + 2 * rib * (inside_d - 2 * rib)) * ih\n    return {\n        \"tray_inner_width_mm\": inner_w, \"tray_inner_depth_mm\": inner_d,\n        \"insert_width_mm\": iw, \"insert_depth_mm\": inside_d,\n        \"nominal_side_clearance_mm\": gap,\n        \"tray_volume_mm3\": tray, \"insert_volume_mm3\": insert,\n        \"solid_mass_g\": (tray + insert) / 1000 * density\n    }\n\n\ndef money(value):\n    return format(value.quantize(Decimal(\"0.01\"), rounding=ROUND_HALF_UP), \".2f\")\n\n\ndef costs_from_rows(rows):\n    costs = {}\n    for row in rows:\n        if row[\"key\"] in costs or row[\"key\"] not in COST_KEYS:\n            raise ValueError(\"Duplicate or unknown cost assumption\")\n        costs[row[\"key\"]] = dec(row[\"value\"])\n    if set(costs) != COST_KEYS or any(value < 0 for value in costs.values()):\n        raise ValueError(\"Missing or negative cost assumption\")\n    if costs[\"scrap_fraction\"] >= 1:\n        raise ValueError(\"Scrap fraction must be below one\")\n    return costs\n\n\ndef economics(geo, costs, quantity):\n    if type(quantity) is not int or not 1 <= quantity <= 10000:\n        raise ValueError(\"Bounded positive integer quantity required\")\n    material = geo[\"solid_mass_g\"] / 1000 * costs[\"feedstock_usd_per_kg\"] / (1 - costs[\"scrap_fraction\"])\n    handling = costs[\"bench_minutes_per_kit\"] / 60 * costs[\"bench_usd_per_hour\"]\n    unit = material + handling + costs[\"packaging_usd_per_kit\"] + costs[\"overhead_usd_per_kit\"]\n    return {\n        \"classification\": \"SYNTHETIC\",\n        \"material_usd_per_kit\": money(material), \"handling_usd_per_kit\": money(handling),\n        \"unit_cost_unrounded_usd\": str(unit), \"unit_cost_display_usd\": money(unit),\n        \"quantity\": quantity, \"batch_cost_usd\": money(unit * quantity),\n        \"hypothetical_unit_contribution_usd\": money(costs[\"scenario_price_usd_per_kit\"] - unit),\n        \"basis\": \"Solid-volume/yield/handling scenario; excludes fabrication machine time, freight and tax. No actual sales, profit or quote.\"\n    }\n\n\ndef packing(dimensions, geo, spec):\n    pad = dec(spec[\"padding_each_side_mm\"])\n    packaging_mass = dec(spec[\"packaging_mass_g\"])\n    maximum_mass = dec(spec[\"maximum_modeled_packed_mass_g\"])\n    if pad < 0 or packaging_mass < 0 or maximum_mass <= 0:\n        raise ValueError(\"Invalid packing assumption\")\n    needed = {axis: dec(dimensions[axis]) + 2 * pad for axis in (\"width\", \"depth\", \"height\")}\n    limits = {axis: dec(spec[\"internal_mm\"][axis]) for axis in needed}\n    if any(value <= 0 for value in limits.values()):\n        raise ValueError(\"Invalid packing envelope\")\n    checks = {axis: needed[axis] <= limits[axis] for axis in needed}\n    mass = geo[\"solid_mass_g\"] + packaging_mass\n    checks[\"mass\"] = mass <= maximum_mass\n    return {\"required_mm\": needed, \"packed_mass_g\": mass, \"checks\": checks, \"envelope_pass\": all(checks.values()), \"transit_tested\": False}\n\n\ndef inspect_samples(samples, limits):\n    limit_map = {}\n    for row in limits:\n        key = row[\"feature_id\"]\n        if key in limit_map:\n            raise ValueError(\"Duplicate dimensional feature\")\n        low, nominal, high = dec(row[\"lower_mm\"]), dec(row[\"nominal_mm\"]), dec(row[\"upper_mm\"])\n        if not 0 <= low <= nominal <= high:\n            raise ValueError(\"Invalid dimensional limits\")\n        limit_map[key] = (low, high)\n    if set(limit_map) != {\"tray_width_mm\", \"tray_depth_mm\", \"tray_height_mm\", \"side_clearance_mm\"}:\n        raise ValueError(\"Incomplete reference inspection limits\")\n    results, ids = [], set()\n    for row in samples:\n        if row[\"sample_id\"] in ids or row[\"classification\"] != \"SYNTHETIC\" or row[\"edge_pass\"] not in (\"0\", \"1\"):\n            raise ValueError(\"Invalid synthetic inspection sample\")\n        ids.add(row[\"sample_id\"])\n        measured = {key: dec(row[key]) for key in (\"tray_width_mm\", \"tray_depth_mm\", \"tray_height_mm\", \"inner_width_mm\", \"insert_width_mm\")}\n        if any(value <= 0 for value in measured.values()):\n            raise ValueError(\"Measurements must be positive\")\n        measured[\"side_clearance_mm\"] = (measured[\"inner_width_mm\"] - measured[\"insert_width_mm\"]) / 2\n        failures = [key for key, (low, high) in limit_map.items() if not low <= measured[key] <= high]\n        if row[\"edge_pass\"] == \"0\":\n            failures.append(\"visible_edges\")\n        results.append({\"sample_id\": row[\"sample_id\"], \"pass\": not failures, \"failed_features\": failures, \"side_clearance_mm\": measured[\"side_clearance_mm\"]})\n    return results\n\n\ndef validate_bom(rows):\n    expected = {\"tray\": \"tray_volume_mm3\", \"insert\": \"insert_volume_mm3\"}\n    if len(rows) != 2 or {row[\"part_id\"] for row in rows} != set(expected):\n        raise ValueError(\"Reference requires exactly one tray and one insert\")\n    for row in rows:\n        if row[\"quantity\"] != \"1\" or row[\"geometry_key\"] != expected[row[\"part_id\"]] or row[\"source_selector\"] != row[\"part_id\"]:\n            raise ValueError(\"BOM and geometry disagree\")\n\n\ndef make_report(width=None):\n    parameters = read_json(\"design/parameters.json\")\n    dimensions = dict(parameters[\"dimensions\"])\n    if width is not None:\n        dimensions[\"width\"] = dec(width)\n    geo = geometry(dimensions, parameters[\"material_density_g_cm3\"])\n    validate_bom(read_csv(\"data/bom.csv\"))\n    costs = costs_from_rows(read_csv(\"data/cost-assumptions.csv\"))\n    samples = inspect_samples(read_csv(\"quality/inspection-samples.csv\"), read_csv(\"quality/dimensions.csv\"))\n    return {\n        \"classification\": \"SYNTHETIC\", \"dimensions_mm\": dimensions, \"geometry\": geo,\n        \"economics\": economics(geo, costs, read_json(\"case/brief.json\")[\"planning_quantity\"]),\n        \"packing\": packing(dimensions, geo, read_json(\"ops/pack-spec.json\")),\n        \"baseline_sample_exercise\": {\"passes\": sum(row[\"pass\"] for row in samples), \"rejects\": sum(not row[\"pass\"] for row in samples), \"rows\": samples},\n        \"inspection_scope\": \"Authored baseline dimensions only; does not validate changed geometry or any physical object.\",\n        \"external_effects\": [], \"manufactured\": False\n    }\n\n\ndef scad_source(dimensions):\n    geometry(dimensions, 1)\n    source = (ROOT / \"design/desk-caddy.scad\").read_text(encoding=\"utf-8\")\n    for key in PARAMETERS:\n        source, count = re.subn(rf\"^{key} = [0-9.]+;$\", f\"{key} = {dec(dimensions[key])};\", source, flags=re.MULTILINE)\n        if count != 1:\n            raise ValueError(\"SCAD parameter source is inconsistent\")\n    return source\n\n\ndef svg_source(dimensions):\n    geo = geometry(dimensions, 1)\n    w, d, wall, gap, rib = (dec(dimensions[key]) for key in (\"width\", \"depth\", \"wall\", \"clearance\", \"rib\"))\n    iw, inside_d = geo[\"insert_width_mm\"], geo[\"insert_depth_mm\"]\n    bars = \"\".join(f'<rect x=\"{iw * fraction / 3 - rib / 2}\" y=\"{rib}\" width=\"{rib}\" height=\"{inside_d - 2 * rib}\"/>' for fraction in (1, 2))\n    return f'''<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 {w+40} {d+60}\">\n<title>Original Stackline {w} by {d} mm top-view scenario</title>\n<rect width=\"100%\" height=\"100%\" fill=\"#f4f1e9\"/>\n<g transform=\"translate(20 20)\" stroke=\"#233f42\" stroke-width=\".5\">\n<rect width=\"{w}\" height=\"{d}\" fill=\"#bcc8c7\"/>\n<rect x=\"{wall}\" y=\"{wall}\" width=\"{w-2*wall}\" height=\"{d-2*wall}\" fill=\"#f4f1e9\"/>\n<g transform=\"translate({wall+gap} {wall+gap})\" fill=\"#397c78\">\n<rect width=\"{iw}\" height=\"{rib}\"/><rect y=\"{inside_d-rib}\" width=\"{iw}\" height=\"{rib}\"/>{bars}</g></g>\n<text x=\"20\" y=\"{d+35}\" font-family=\"sans-serif\" font-size=\"5\">{w} × {d} mm; gap {gap} mm</text>\n<text x=\"20\" y=\"{d+45}\" font-family=\"sans-serif\" font-size=\"4\">SYNTHETIC design study; not a cutting file or manufactured item.</text></svg>'''\n\n\ndef main():\n    parser = argparse.ArgumentParser(description=__doc__)\n    parser.add_argument(\"--width-mm\", help=\"Hypothetical width override; leaves reference files unchanged\")\n    parser.add_argument(\"--format\", choices=(\"json\", \"svg\", \"scad\"), default=\"json\")\n    args = parser.parse_args()\n    report = make_report(args.width_mm)\n    if args.format == \"scad\":\n        print(scad_source(report[\"dimensions_mm\"]), end=\"\")\n    elif args.format == \"svg\":\n        print(svg_source(report[\"dimensions_mm\"]))\n    else:\n        print(json.dumps(report, indent=2, sort_keys=True, default=str, allow_nan=False))\n\n\nif __name__ == \"__main__\":\n    main()\n","path":"templates/casework/work/starter/tools/plan.py","sha256":"1f89d763dbd4a38867108ee497e844e69198fc0ed260296bdd95d95ac33f4e4f"},{"bytes":8823,"content":"{\"authority\":\"inert-starter-data\",\"case_id\":\"stackline-caddy-pilot\",\"organization_seed\":\"micro-manufacturing-company\",\"schema\":\"hive-hub-seed-task-board/1\",\"tasks\":[{\"acceptance\":[\"Restricts use to lightweight dry desk items; excludes food, electrical, medical, child-safety, and load-bearing uses.\",\"Names all nominal dimensions and the 20-kit planning quantity without claiming fabrication.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[],\"id\":\"freeze-desk-use\",\"inputs\":[\"starter/case/brief.json\",\"starter/design/parameters.json\",\"starter/design/desk-caddy.svg\"],\"instructions\":\"Define what the caddy may hold and what it must not be used for. Preserve the two-piece layout and set measurable fit, size, and handling criteria for this synthetic pilot.\",\"outputs\":[\"deliverables/desk-use-requirements.md\"],\"state\":\"ready\",\"team\":\"industrial-design\",\"title\":\"Freeze the noncritical desk-use envelope\"},{\"acceptance\":[\"Reports a 174 by 94 mm tray interior and 171 by 91 mm insert footprint.\",\"Reports nominal side clearance 1.5 mm, tray volume 101676 mm3, and insert volume 20640 mm3.\",\"Separates mathematical checks from any unrun CAD renderer or physical fit test.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"freeze-desk-use\"],\"id\":\"verify-parametric-fit\",\"inputs\":[\"starter/design/parameters.json\",\"starter/design/desk-caddy.scad\",\"starter/tools/plan.py\",\"starter/tests/test_plan.py\",\"deliverables/desk-use-requirements.md\"],\"instructions\":\"Run the planner and tests, inspect the authored SCAD, and produce a dimensional interface report. The model estimates solid geometry only; do not imply process qualification.\",\"outputs\":[\"deliverables/nominal-interface.json\"],\"state\":\"blocked\",\"team\":\"engineering\",\"title\":\"Verify the tray and lift-out insert model\"},{\"acceptance\":[\"Retains one tray and one insert and labels every cost SYNTHETIC.\",\"Shows sensitivity to density, assumed price, and yield rather than claiming a vendor commitment.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"bound-material-assumptions\",\"inputs\":[\"starter/data/bom.csv\",\"starter/data/cost-assumptions.csv\",\"starter/design/parameters.json\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Review part quantities, modeled density, feedstock price, and yield assumptions. Produce a low/base/high assumption table with no named supplier, quotation, purchased part, or purchase instruction.\",\"outputs\":[\"deliverables/material-assumption-range.csv\"],\"state\":\"blocked\",\"team\":\"sourcing\",\"title\":\"Review the inert BOM and assumed cost inputs\"},{\"acceptance\":[\"Includes pair identification, dry insertion, removal, desk stability, and hold/review steps.\",\"Clearly states that fabrication, material/process selection, and physical trial execution have not occurred and require separate approval.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"plan-dry-assembly\",\"inputs\":[\"starter/ops/assembly.md\",\"starter/case/brief.json\",\"deliverables/desk-use-requirements.md\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Adapt the supplied dry-fit sequence for twenty hypothetical kits, including segregation of mismatched tray/insert pairs. Do not add toolpaths, machine settings, or hazardous machinery instructions.\",\"outputs\":[\"deliverables/pilot-sequence.csv\"],\"state\":\"blocked\",\"team\":\"production-planning\",\"title\":\"Plan fit checks and a reversible pilot sequence\"},{\"acceptance\":[\"Covers tray width, depth, height, per-side insert clearance, and visible edge defects.\",\"Defines both lower and upper limits and identifies the instruments/methods as a future review need.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"define-inspection-gates\",\"inputs\":[\"starter/quality/dimensions.csv\",\"starter/design/parameters.json\",\"starter/ops/assembly.md\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Check the nominal tolerances against the model and write a sampling/measurement sheet with explicit acceptance boundaries. A synthetic row is not a measurement of a real object.\",\"outputs\":[\"deliverables/inspection-plan.csv\"],\"state\":\"blocked\",\"team\":\"quality\",\"title\":\"Derive a dimensional inspection sheet\"},{\"acceptance\":[\"Rows 01, 02, and 05 pass the specified synthetic checks; row 03 fails width and row 04 fails fit clearance.\",\"Does not label any real batch accepted or assume that a scenario width change is covered by these baseline samples.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"define-inspection-gates\"],\"id\":\"replay-inspection-samples\",\"inputs\":[\"starter/quality/inspection-samples.csv\",\"starter/quality/dimensions.csv\",\"starter/tools/plan.py\",\"deliverables/inspection-plan.csv\"],\"instructions\":\"Use the planner and included authored sample rows to reproduce conformance decisions. Explain each rejection and the treatment of unmeasured characteristics.\",\"outputs\":[\"deliverables/synthetic-inspection-results.csv\"],\"state\":\"blocked\",\"team\":\"quality\",\"title\":\"Classify the synthetic gauge exercise\"},{\"acceptance\":[\"Includes padding on both sides of every axis and packaging mass in the mass check.\",\"Distinguishes a mathematical envelope pass from tested shipping protection, a carrier quote, or shipment authority.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"plan-dry-assembly\"],\"id\":\"check-pack-envelope\",\"inputs\":[\"starter/ops/pack-spec.json\",\"starter/tools/plan.py\",\"deliverables/nominal-interface.json\",\"deliverables/pilot-sequence.csv\"],\"instructions\":\"Calculate the packaged envelope and mass using the inert packing specification. Propose a label that identifies this as a desk-only planning sample, not a shipped item.\",\"outputs\":[\"deliverables/packing-assessment.json\"],\"state\":\"blocked\",\"team\":\"logistics\",\"title\":\"Check the baseline packing envelope\"},{\"acceptance\":[\"Baseline modeled solid mass is 151.67184 g, displayed unit cost is USD 7.61, and the 20-kit aggregate is USD 152.13.\",\"Explains why multiplying a rounded unit display differs from rounding the unrounded batch total.\",\"Marks all economics hypothetical; creates no purchase, sale, or profit claim.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"bound-material-assumptions\",\"check-pack-envelope\"],\"id\":\"calculate-pilot-economics\",\"inputs\":[\"starter/data/cost-assumptions.csv\",\"starter/data/bom.csv\",\"starter/case/brief.json\",\"starter/tools/plan.py\",\"deliverables/material-assumption-range.csv\",\"deliverables/packing-assessment.json\"],\"instructions\":\"Compute material including yield loss, handling, packaging, overhead, and a bounded sensitivity range. Round after aggregation and keep projected contribution separate from realized profit.\",\"outputs\":[\"deliverables/pilot-cost-scenarios.json\"],\"state\":\"blocked\",\"team\":\"finance\",\"title\":\"Reproduce a hypothetical 20-kit cost baseline\"},{\"acceptance\":[\"Shows that 196 mm plus two 2 mm pads exceeds the 192 mm packing interior.\",\"Names the tasks that must be reopened if the design or packaging changes.\",\"Reports changed mass/cost and the absence of physical validation.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"define-inspection-gates\",\"calculate-pilot-economics\"],\"id\":\"trace-width-change\",\"inputs\":[\"starter/ops/change-request.json\",\"starter/tools/plan.py\",\"starter/ops/pack-spec.json\",\"deliverables/nominal-interface.json\",\"deliverables/inspection-plan.csv\",\"deliverables/pilot-cost-scenarios.json\"],\"instructions\":\"Run the width scenario and map impacts to geometry, BOM mass, fit nominal, quality limits, economics, and packing. Do not silently overwrite the baseline or reuse its synthetic inspection rows as proof for the changed design.\",\"outputs\":[\"deliverables/width-change-impact.json\"],\"state\":\"blocked\",\"team\":\"engineering\",\"title\":\"Trace the 196 mm width request through dependencies\"},{\"acceptance\":[\"Explicitly holds the 196 mm proposal against the current pack specification.\",\"Lists physical prototype, material suitability, process safety, supplier, spending, and shipping reviews as still unperformed approval-gated work.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"replay-inspection-samples\",\"trace-width-change\"],\"id\":\"decide-pilot-hold\",\"inputs\":[\"deliverables/desk-use-requirements.md\",\"deliverables/synthetic-inspection-results.csv\",\"deliverables/pilot-sequence.csv\",\"deliverables/packing-assessment.json\",\"deliverables/pilot-cost-scenarios.json\",\"deliverables/width-change-impact.json\"],\"instructions\":\"Review nominal checks, the synthetic inspection exercise, assembly/packing plans, costs, and width-change impact. Recommend baseline-only investigation or rework; do not authorize making or shipping objects.\",\"outputs\":[\"deliverables/pilot-review-decision.md\"],\"state\":\"blocked\",\"team\":\"industrial-design\",\"title\":\"Issue the bounded design review decision\"}]}\n","path":"templates/casework/work/task-board.json","sha256":"e91cd0feb0ab5ed3f0983357fa9c6ee8fa3b21311a5593ae6a87a27e0bae4151"},{"bytes":350,"content":"# Mechanical Engineering\n\nRole: design-engineer\n\nMaintain the parametric tray/insert geometry and nominal fit calculations.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/engineering/work/TEAM.md","sha256":"97bfef6c0caef3c1421446f9478faa112826473a70e22094da12e02eb9d0e884"},{"bytes":1950,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Reports a 174 by 94 mm tray interior and 171 by 91 mm insert footprint.\",\"Reports nominal side clearance 1.5 mm, tray volume 101676 mm3, and insert volume 20640 mm3.\",\"Separates mathematical checks from any unrun CAD renderer or physical fit test.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"freeze-desk-use\"],\"id\":\"verify-parametric-fit\",\"inputs\":[\"starter/design/parameters.json\",\"starter/design/desk-caddy.scad\",\"starter/tools/plan.py\",\"starter/tests/test_plan.py\",\"deliverables/desk-use-requirements.md\"],\"instructions\":\"Run the planner and tests, inspect the authored SCAD, and produce a dimensional interface report. The model estimates solid geometry only; do not imply process qualification.\",\"outputs\":[\"deliverables/nominal-interface.json\"],\"state\":\"blocked\",\"team\":\"engineering\",\"title\":\"Verify the tray and lift-out insert model\"},{\"acceptance\":[\"Shows that 196 mm plus two 2 mm pads exceeds the 192 mm packing interior.\",\"Names the tasks that must be reopened if the design or packaging changes.\",\"Reports changed mass/cost and the absence of physical validation.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"define-inspection-gates\",\"calculate-pilot-economics\"],\"id\":\"trace-width-change\",\"inputs\":[\"starter/ops/change-request.json\",\"starter/tools/plan.py\",\"starter/ops/pack-spec.json\",\"deliverables/nominal-interface.json\",\"deliverables/inspection-plan.csv\",\"deliverables/pilot-cost-scenarios.json\"],\"instructions\":\"Run the width scenario and map impacts to geometry, BOM mass, fit nominal, quality limits, economics, and packing. Do not silently overwrite the baseline or reuse its synthetic inspection rows as proof for the changed design.\",\"outputs\":[\"deliverables/width-change-impact.json\"],\"state\":\"blocked\",\"team\":\"engineering\",\"title\":\"Trace the 196 mm width request through dependencies\"}],\"team\":\"engineering\"}\n","path":"templates/teams/engineering/work/tasks.json","sha256":"c4836e308f773c6b2468d75257264da9a09fb51974fc7e13f6ff1ddb40fdc8b3"},{"bytes":368,"content":"# Unit Economics\n\nRole: cost-analyst\n\nReproduce material, handling, packaging, and overhead scenarios with explicit rounding and uncertainty.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/finance/work/TEAM.md","sha256":"8da82b676e41ca6aa028d4dbf1eb4dc39d279ed2123d5f965a6d718b96829142"},{"bytes":1103,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Baseline modeled solid mass is 151.67184 g, displayed unit cost is USD 7.61, and the 20-kit aggregate is USD 152.13.\",\"Explains why multiplying a rounded unit display differs from rounding the unrounded batch total.\",\"Marks all economics hypothetical; creates no purchase, sale, or profit claim.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"bound-material-assumptions\",\"check-pack-envelope\"],\"id\":\"calculate-pilot-economics\",\"inputs\":[\"starter/data/cost-assumptions.csv\",\"starter/data/bom.csv\",\"starter/case/brief.json\",\"starter/tools/plan.py\",\"deliverables/material-assumption-range.csv\",\"deliverables/packing-assessment.json\"],\"instructions\":\"Compute material including yield loss, handling, packaging, overhead, and a bounded sensitivity range. Round after aggregation and keep projected contribution separate from realized profit.\",\"outputs\":[\"deliverables/pilot-cost-scenarios.json\"],\"state\":\"blocked\",\"team\":\"finance\",\"title\":\"Reproduce a hypothetical 20-kit cost baseline\"}],\"team\":\"finance\"}\n","path":"templates/teams/finance/work/tasks.json","sha256":"426c35c9879071f828347c2ef35c990e4f9fc58de2ce595f195d76414d814740"},{"bytes":352,"content":"# Industrial Design\n\nRole: industrial-designer\n\nOwn the desk-use requirements, compartment layout, and proposed width change.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/industrial-design/work/TEAM.md","sha256":"be1196e9de8e10a0d858e14f0d254665f48fa3bf37d48d69a1a2f926c61b4b23"},{"bytes":1852,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Restricts use to lightweight dry desk items; excludes food, electrical, medical, child-safety, and load-bearing uses.\",\"Names all nominal dimensions and the 20-kit planning quantity without claiming fabrication.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[],\"id\":\"freeze-desk-use\",\"inputs\":[\"starter/case/brief.json\",\"starter/design/parameters.json\",\"starter/design/desk-caddy.svg\"],\"instructions\":\"Define what the caddy may hold and what it must not be used for. Preserve the two-piece layout and set measurable fit, size, and handling criteria for this synthetic pilot.\",\"outputs\":[\"deliverables/desk-use-requirements.md\"],\"state\":\"ready\",\"team\":\"industrial-design\",\"title\":\"Freeze the noncritical desk-use envelope\"},{\"acceptance\":[\"Explicitly holds the 196 mm proposal against the current pack specification.\",\"Lists physical prototype, material suitability, process safety, supplier, spending, and shipping reviews as still unperformed approval-gated work.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"replay-inspection-samples\",\"trace-width-change\"],\"id\":\"decide-pilot-hold\",\"inputs\":[\"deliverables/desk-use-requirements.md\",\"deliverables/synthetic-inspection-results.csv\",\"deliverables/pilot-sequence.csv\",\"deliverables/packing-assessment.json\",\"deliverables/pilot-cost-scenarios.json\",\"deliverables/width-change-impact.json\"],\"instructions\":\"Review nominal checks, the synthetic inspection exercise, assembly/packing plans, costs, and width-change impact. Recommend baseline-only investigation or rework; do not authorize making or shipping objects.\",\"outputs\":[\"deliverables/pilot-review-decision.md\"],\"state\":\"blocked\",\"team\":\"industrial-design\",\"title\":\"Issue the bounded design review decision\"}],\"team\":\"industrial-design\"}\n","path":"templates/teams/industrial-design/work/tasks.json","sha256":"4a09b12ccaa94c94e7a7fcec7377513f84d1ce40f39305a1475c6a741abc30fe"},{"bytes":353,"content":"# Packaging and Logistics\n\nRole: logistics-planner\n\nCheck modeled packing dimensions, mass, labeling, and approval boundaries.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/logistics/work/TEAM.md","sha256":"1c4e8cbc3645dc73fb2847b43c72dab75b5cde599a141e712653b48ae7705093"},{"bytes":874,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Includes padding on both sides of every axis and packaging mass in the mass check.\",\"Distinguishes a mathematical envelope pass from tested shipping protection, a carrier quote, or shipment authority.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"plan-dry-assembly\"],\"id\":\"check-pack-envelope\",\"inputs\":[\"starter/ops/pack-spec.json\",\"starter/tools/plan.py\",\"deliverables/nominal-interface.json\",\"deliverables/pilot-sequence.csv\"],\"instructions\":\"Calculate the packaged envelope and mass using the inert packing specification. Propose a label that identifies this as a desk-only planning sample, not a shipped item.\",\"outputs\":[\"deliverables/packing-assessment.json\"],\"state\":\"blocked\",\"team\":\"logistics\",\"title\":\"Check the baseline packing envelope\"}],\"team\":\"logistics\"}\n","path":"templates/teams/logistics/work/tasks.json","sha256":"0f7c478780e5a195331d1a6328d4aef8b17742184df6e29a28c9e3d6542f3ba3"},{"bytes":386,"content":"# Production Planning\n\nRole: production-planner\n\nPlan a bounded pilot and manual fit sequence, without executing fabrication or specifying hazardous machinery.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/production-planning/work/TEAM.md","sha256":"ae9e6bbf174e9f40f358b3e29eaebafb29b7164e5392078d694c106798c8fba3"},{"bytes":970,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Includes pair identification, dry insertion, removal, desk stability, and hold/review steps.\",\"Clearly states that fabrication, material/process selection, and physical trial execution have not occurred and require separate approval.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"plan-dry-assembly\",\"inputs\":[\"starter/ops/assembly.md\",\"starter/case/brief.json\",\"deliverables/desk-use-requirements.md\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Adapt the supplied dry-fit sequence for twenty hypothetical kits, including segregation of mismatched tray/insert pairs. Do not add toolpaths, machine settings, or hazardous machinery instructions.\",\"outputs\":[\"deliverables/pilot-sequence.csv\"],\"state\":\"blocked\",\"team\":\"production-planning\",\"title\":\"Plan fit checks and a reversible pilot sequence\"}],\"team\":\"production-planning\"}\n","path":"templates/teams/production-planning/work/tasks.json","sha256":"f1d2a7bd0fe1b7ead71faeacc55ef19443782087a6542534e89662f67cec65f2"},{"bytes":359,"content":"# Dimensional Quality\n\nRole: quality-engineer\n\nDefine measurements, evaluate synthetic sample rows, and hold nonconforming geometry.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/quality/work/TEAM.md","sha256":"9e17e41cb05d7c2a3c3632dfadf18b7438725fc53af1535f8c2c46c7463649c9"},{"bytes":1699,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Covers tray width, depth, height, per-side insert clearance, and visible edge defects.\",\"Defines both lower and upper limits and identifies the instruments/methods as a future review need.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"define-inspection-gates\",\"inputs\":[\"starter/quality/dimensions.csv\",\"starter/design/parameters.json\",\"starter/ops/assembly.md\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Check the nominal tolerances against the model and write a sampling/measurement sheet with explicit acceptance boundaries. A synthetic row is not a measurement of a real object.\",\"outputs\":[\"deliverables/inspection-plan.csv\"],\"state\":\"blocked\",\"team\":\"quality\",\"title\":\"Derive a dimensional inspection sheet\"},{\"acceptance\":[\"Rows 01, 02, and 05 pass the specified synthetic checks; row 03 fails width and row 04 fails fit clearance.\",\"Does not label any real batch accepted or assume that a scenario width change is covered by these baseline samples.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"define-inspection-gates\"],\"id\":\"replay-inspection-samples\",\"inputs\":[\"starter/quality/inspection-samples.csv\",\"starter/quality/dimensions.csv\",\"starter/tools/plan.py\",\"deliverables/inspection-plan.csv\"],\"instructions\":\"Use the planner and included authored sample rows to reproduce conformance decisions. Explain each rejection and the treatment of unmeasured characteristics.\",\"outputs\":[\"deliverables/synthetic-inspection-results.csv\"],\"state\":\"blocked\",\"team\":\"quality\",\"title\":\"Classify the synthetic gauge exercise\"}],\"team\":\"quality\"}\n","path":"templates/teams/quality/work/tasks.json","sha256":"4ebde64e438d4cc2b23e9f4d200552fe2284fc86aedb15780c33be00eeec0767"},{"bytes":367,"content":"# Sourcing\n\nRole: sourcing-planner\n\nMaintain clearly synthetic material and cost assumptions without quotations, orders, or supplier claims.\n\nCase inputs and logical deliverables belong to the same-world casework workspace.\nRead only the inputs for assigned work; hand off verified artifact references.\nDo not claim another team's task or authorize external effects.\n","path":"templates/teams/sourcing/work/TEAM.md","sha256":"00ff4fb8d419249bc317321d44dc5b1a7d95d32b34ac307743cb6d92b3a15e85"},{"bytes":895,"content":"{\"case_workspace\":\"casework\",\"schema\":\"hive-hub-seed-team-work/1\",\"tasks\":[{\"acceptance\":[\"Retains one tray and one insert and labels every cost SYNTHETIC.\",\"Shows sensitivity to density, assumed price, and yield rather than claiming a vendor commitment.\"],\"assignee\":null,\"completed_evidence\":[],\"depends_on\":[\"verify-parametric-fit\"],\"id\":\"bound-material-assumptions\",\"inputs\":[\"starter/data/bom.csv\",\"starter/data/cost-assumptions.csv\",\"starter/design/parameters.json\",\"deliverables/nominal-interface.json\"],\"instructions\":\"Review part quantities, modeled density, feedstock price, and yield assumptions. Produce a low/base/high assumption table with no named supplier, quotation, purchased part, or purchase instruction.\",\"outputs\":[\"deliverables/material-assumption-range.csv\"],\"state\":\"blocked\",\"team\":\"sourcing\",\"title\":\"Review the inert BOM and assumed cost inputs\"}],\"team\":\"sourcing\"}\n","path":"templates/teams/sourcing/work/tasks.json","sha256":"21d120eaba8ae986752b9ce8c23fa314e20db6d1595652a113ff270516965a98"}],"kind":"organization-seed","mission":"Coordinate industrial design, engineering, sourcing, production planning, quality, logistics, and finance around a non-safety-critical two-piece desk caddy. Trace dimensional changes through material, cost, fit, inspection, and packaging before any approved fabrication.","name":"The Micro-Manufacturing Company","organization":{"directory":"organization","scaffold":{"kind":"organization","mode":"hive","slug":"micro-manufacturing-company","world_id":"demo-micro-manufacturing-company"}},"protocol":"rapp-work/1","relatedSeeds":["applied-invention-lab"],"schema":"hive-hub-organization-seed/1","slug":"micro-manufacturing-company","status":"seed-not-activated","tagline":"Take a small physical object from parameters to a reviewable pilot plan.","tasks":[{"acceptance":["Restricts use to lightweight dry desk items; excludes food, electrical, medical, child-safety, and load-bearing uses.","Names all nominal dimensions and the 20-kit planning quantity without claiming fabrication."],"assignee":null,"completed_evidence":[],"depends_on":[],"id":"freeze-desk-use","inputs":["starter/case/brief.json","starter/design/parameters.json","starter/design/desk-caddy.svg"],"instructions":"Define what the caddy may hold and what it must not be used for. Preserve the two-piece layout and set measurable fit, size, and handling criteria for this synthetic pilot.","outputs":["deliverables/desk-use-requirements.md"],"state":"ready","team":"industrial-design","title":"Freeze the noncritical desk-use envelope"},{"acceptance":["Reports a 174 by 94 mm tray interior and 171 by 91 mm insert footprint.","Reports nominal side clearance 1.5 mm, tray volume 101676 mm3, and insert volume 20640 mm3.","Separates mathematical checks from any unrun CAD renderer or physical fit test."],"assignee":null,"completed_evidence":[],"depends_on":["freeze-desk-use"],"id":"verify-parametric-fit","inputs":["starter/design/parameters.json","starter/design/desk-caddy.scad","starter/tools/plan.py","starter/tests/test_plan.py","deliverables/desk-use-requirements.md"],"instructions":"Run the planner and tests, inspect the authored SCAD, and produce a dimensional interface report. The model estimates solid geometry only; do not imply process qualification.","outputs":["deliverables/nominal-interface.json"],"state":"blocked","team":"engineering","title":"Verify the tray and lift-out insert model"},{"acceptance":["Retains one tray and one insert and labels every cost SYNTHETIC.","Shows sensitivity to density, assumed price, and yield rather than claiming a vendor commitment."],"assignee":null,"completed_evidence":[],"depends_on":["verify-parametric-fit"],"id":"bound-material-assumptions","inputs":["starter/data/bom.csv","starter/data/cost-assumptions.csv","starter/design/parameters.json","deliverables/nominal-interface.json"],"instructions":"Review part quantities, modeled density, feedstock price, and yield assumptions. Produce a low/base/high assumption table with no named supplier, quotation, purchased part, or purchase instruction.","outputs":["deliverables/material-assumption-range.csv"],"state":"blocked","team":"sourcing","title":"Review the inert BOM and assumed cost inputs"},{"acceptance":["Includes pair identification, dry insertion, removal, desk stability, and hold/review steps.","Clearly states that fabrication, material/process selection, and physical trial execution have not occurred and require separate approval."],"assignee":null,"completed_evidence":[],"depends_on":["verify-parametric-fit"],"id":"plan-dry-assembly","inputs":["starter/ops/assembly.md","starter/case/brief.json","deliverables/desk-use-requirements.md","deliverables/nominal-interface.json"],"instructions":"Adapt the supplied dry-fit sequence for twenty hypothetical kits, including segregation of mismatched tray/insert pairs. Do not add toolpaths, machine settings, or hazardous machinery instructions.","outputs":["deliverables/pilot-sequence.csv"],"state":"blocked","team":"production-planning","title":"Plan fit checks and a reversible pilot sequence"},{"acceptance":["Covers tray width, depth, height, per-side insert clearance, and visible edge defects.","Defines both lower and upper limits and identifies the instruments/methods as a future review need."],"assignee":null,"completed_evidence":[],"depends_on":["verify-parametric-fit"],"id":"define-inspection-gates","inputs":["starter/quality/dimensions.csv","starter/design/parameters.json","starter/ops/assembly.md","deliverables/nominal-interface.json"],"instructions":"Check the nominal tolerances against the model and write a sampling/measurement sheet with explicit acceptance boundaries. A synthetic row is not a measurement of a real object.","outputs":["deliverables/inspection-plan.csv"],"state":"blocked","team":"quality","title":"Derive a dimensional inspection sheet"},{"acceptance":["Rows 01, 02, and 05 pass the specified synthetic checks; row 03 fails width and row 04 fails fit clearance.","Does not label any real batch accepted or assume that a scenario width change is covered by these baseline samples."],"assignee":null,"completed_evidence":[],"depends_on":["define-inspection-gates"],"id":"replay-inspection-samples","inputs":["starter/quality/inspection-samples.csv","starter/quality/dimensions.csv","starter/tools/plan.py","deliverables/inspection-plan.csv"],"instructions":"Use the planner and included authored sample rows to reproduce conformance decisions. Explain each rejection and the treatment of unmeasured characteristics.","outputs":["deliverables/synthetic-inspection-results.csv"],"state":"blocked","team":"quality","title":"Classify the synthetic gauge exercise"},{"acceptance":["Includes padding on both sides of every axis and packaging mass in the mass check.","Distinguishes a mathematical envelope pass from tested shipping protection, a carrier quote, or shipment authority."],"assignee":null,"completed_evidence":[],"depends_on":["plan-dry-assembly"],"id":"check-pack-envelope","inputs":["starter/ops/pack-spec.json","starter/tools/plan.py","deliverables/nominal-interface.json","deliverables/pilot-sequence.csv"],"instructions":"Calculate the packaged envelope and mass using the inert packing specification. Propose a label that identifies this as a desk-only planning sample, not a shipped item.","outputs":["deliverables/packing-assessment.json"],"state":"blocked","team":"logistics","title":"Check the baseline packing envelope"},{"acceptance":["Baseline modeled solid mass is 151.67184 g, displayed unit cost is USD 7.61, and the 20-kit aggregate is USD 152.13.","Explains why multiplying a rounded unit display differs from rounding the unrounded batch total.","Marks all economics hypothetical; creates no purchase, sale, or profit claim."],"assignee":null,"completed_evidence":[],"depends_on":["bound-material-assumptions","check-pack-envelope"],"id":"calculate-pilot-economics","inputs":["starter/data/cost-assumptions.csv","starter/data/bom.csv","starter/case/brief.json","starter/tools/plan.py","deliverables/material-assumption-range.csv","deliverables/packing-assessment.json"],"instructions":"Compute material including yield loss, handling, packaging, overhead, and a bounded sensitivity range. Round after aggregation and keep projected contribution separate from realized profit.","outputs":["deliverables/pilot-cost-scenarios.json"],"state":"blocked","team":"finance","title":"Reproduce a hypothetical 20-kit cost baseline"},{"acceptance":["Shows that 196 mm plus two 2 mm pads exceeds the 192 mm packing interior.","Names the tasks that must be reopened if the design or packaging changes.","Reports changed mass/cost and the absence of physical validation."],"assignee":null,"completed_evidence":[],"depends_on":["define-inspection-gates","calculate-pilot-economics"],"id":"trace-width-change","inputs":["starter/ops/change-request.json","starter/tools/plan.py","starter/ops/pack-spec.json","deliverables/nominal-interface.json","deliverables/inspection-plan.csv","deliverables/pilot-cost-scenarios.json"],"instructions":"Run the width scenario and map impacts to geometry, BOM mass, fit nominal, quality limits, economics, and packing. Do not silently overwrite the baseline or reuse its synthetic inspection rows as proof for the changed design.","outputs":["deliverables/width-change-impact.json"],"state":"blocked","team":"engineering","title":"Trace the 196 mm width request through dependencies"},{"acceptance":["Explicitly holds the 196 mm proposal against the current pack specification.","Lists physical prototype, material suitability, process safety, supplier, spending, and shipping reviews as still unperformed approval-gated work."],"assignee":null,"completed_evidence":[],"depends_on":["replay-inspection-samples","trace-width-change"],"id":"decide-pilot-hold","inputs":["deliverables/desk-use-requirements.md","deliverables/synthetic-inspection-results.csv","deliverables/pilot-sequence.csv","deliverables/packing-assessment.json","deliverables/pilot-cost-scenarios.json","deliverables/width-change-impact.json"],"instructions":"Review nominal checks, the synthetic inspection exercise, assembly/packing plans, costs, and width-change impact. Recommend baseline-only investigation or rework; do not authorize making or shipping objects.","outputs":["deliverables/pilot-review-decision.md"],"state":"blocked","team":"industrial-design","title":"Issue the bounded design review decision"}],"workspaceProfile":"rapp-work-sdk/1","workspaces":[{"directory":"workspaces/industrial-design","id":"industrial-design","name":"Industrial Design","purpose":"Own the desk-use requirements, compartment layout, and proposed width change.","role":"industrial-designer","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-industrial-design","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/industrial-design"},{"directory":"workspaces/engineering","id":"engineering","name":"Mechanical Engineering","purpose":"Maintain the parametric tray/insert geometry and nominal fit calculations.","role":"design-engineer","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-engineering","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/engineering"},{"directory":"workspaces/sourcing","id":"sourcing","name":"Sourcing","purpose":"Maintain clearly synthetic material and cost assumptions without quotations, orders, or supplier claims.","role":"sourcing-planner","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-sourcing","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/sourcing"},{"directory":"workspaces/production-planning","id":"production-planning","name":"Production Planning","purpose":"Plan a bounded pilot and manual fit sequence, without executing fabrication or specifying hazardous machinery.","role":"production-planner","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-production-planning","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/production-planning"},{"directory":"workspaces/quality","id":"quality","name":"Dimensional Quality","purpose":"Define measurements, evaluate synthetic sample rows, and hold nonconforming geometry.","role":"quality-engineer","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-quality","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/quality"},{"directory":"workspaces/logistics","id":"logistics","name":"Packaging and Logistics","purpose":"Check modeled packing dimensions, mass, labeling, and approval boundaries.","role":"logistics-planner","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-logistics","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/logistics"},{"directory":"workspaces/finance","id":"finance","name":"Unit Economics","purpose":"Reproduce material, handling, packaging, and overhead scenarios with explicit rounding and uncertainty.","role":"cost-analyst","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-finance","world_id":"demo-micro-manufacturing-company"},"template":"templates/teams/finance"},{"directory":"workspaces/casework","id":"casework","name":"Shared delivery case","purpose":"Own synthetic intake, shared inputs, and accepted deliverables.","role":"case-custodian","scaffold":{"kind":"workspace","mode":"hive","slug":"micro-manufacturing-company-casework","world_id":"demo-micro-manufacturing-company"},"template":"templates/casework"}]}
