Back to Prompt Library
implementation
Build the application
Inspect the original prompt language first, then copy or adapt it once you know how it fits your workflow.
Linked challenge: Build an IFC Mutation and Scripted Patch Validator
Format
Code-aware
Lines
78
Sections
11
Linked challenge
Build an IFC Mutation and Scripted Patch Validator
Prompt source
Original prompt text with formatting preserved for inspection.
78 lines
11 sections
No variables
1 code block
## Build
Evaluate automated BIM modification patches using IfcOpenShell ifcedit primitives. Validate spatial relationships, attribute types, and entity integrity before applying changes to live facility models.
## User
BIM automation engineer
## Workflow
1. Ingest proposed ifcedit modification payloads targeting architectural IFC entities.
2. Inspect target element global IDs and verify presence in the baseline IFC model.
3. Validate property set modifications against standard IFC schema type requirements.
4. Generate a transactional dry-run report summarizing entity modifications and attribute rollbacks.
## Interface
Terminal CLI and web dashboard showing diff view of IFC entities, property change table, and execution authorization switch.
## Data
Download open-source IFC sample models from the official IfcOpenShell repository test suite, placed in a local mock project directory.
Starter examples below are synthetic. They are not downloaded records.
## Source
[IfcOpenShell](https://raw.githubusercontent.com/IfcOpenShell/IfcOpenShell/v0.8.0/README.md)
Utilizes the ifcedit CLI wrapper for ifcopenshell.api model mutation functions documented in the IfcOpenShell ecosystem table.
## Tools
langgraph, ifcopenshell, fastapi.
LangGraph manages the multi-step state graph verifying model existence, validating schema types, and staging dry-run executions.
Requires an API-hosted or local reasoning model capable of analyzing schema inheritance and generating verified JSON patch graphs.
## Deliverables
Submit runnable source, pinned dependencies, setup commands, a working interface, example outputs, and a recorded end-to-end demo. Include tests and an action log.
## Acceptance
- Verifies that each entity identified by GUID exists in the target IFC structure.
- Blocks operations attempting to assign non-schema attributes to IfcPropertySet instances.
- Produces a reversible patch plan detailing created, modified, and deleted entities.
- Requires engineer approval before executing any write command to disk.
## Starter Examples
```json
[
{
"input": {
"model_guid": "2O2Fr$t4X7Zf8NOew3FL9r",
"mutations": [
{
"action": "edit_property",
"entity_type": "IfcDoor",
"property_set": "Pset_DoorCommon",
"property_name": "FireRating",
"new_value": "FD60"
}
]
},
"expected_output": {
"validation_status": "APPROVED",
"target_entity": "2O2Fr$t4X7Zf8NOew3FL9r",
"schema_check": "PASS",
"applied_patch_summary": "Pset_DoorCommon.FireRating updated to FD60",
"rollback_snapshot_id": "snap-98231"
}
},
{
"input": {
"model_guid": "UNKNOWN_GUID_0000000000",
"mutations": [
{
"action": "edit_property",
"entity_type": "IfcWall",
"property_set": "Pset_WallCommon",
"property_name": "LoadBearing",
"new_value": "True"
}
]
},
"expected_output": {
"validation_status": "REJECTED",
"target_entity": "UNKNOWN_GUID_0000000000",
"schema_check": "FAIL",
"applied_patch_summary": "Target entity not found in active model registry",
"rollback_snapshot_id": null
}
}
]
```
## Safety
Executes strictly in dry-run mode with simulated write operations; original BIM files remain unchanged.
Use mock external writes. Require human review before any real deployment.Adaptation plan
Keep the source stable, then change the prompt in a predictable order so the next run is easier to evaluate.
Keep stable
Hold the task contract and output shape stable so generated implementations remain comparable.
Tune next
Update libraries, interfaces, and environment assumptions to match the stack you actually run.
Verify after
Test failure handling, edge cases, and any code paths that depend on hidden context or secrets.