# WebCode source presentation and target classification
`present_create` and `present_open` preserve a versionless document as Tool Messages: message 1 is complete `Documentation.md` and every later message is one ordered complete code chunk. The terminal Tool Result is only `Created <unpublished-id>.` or `Opened <version>.` and is never an edit target. `SourceLayout` records the originating call, tool call ID, and code-message count.
`classify_original_target` requires exactly one matching historical box. It accepts only a correlated original Tool Message from the active layout: index 1 is Documentation and indexes 2 through `1 + code_message_count` are Code. Missing, duplicate, malformed, foreign, out-of-layout, terminal-result, and ordinary boxes fail with a stable `TargetRejection`.
The package performs no history I/O, box allocation, authorization, persistence, mutation, checking, or publication. Presentation and classification are linear in the supplied document or history.