Activity Phrase API

The canonical parser returns the activity text before a redirection clause. Bundle generation and validation use the same parser so phrase supervision cannot drift.

The activity a cross-reference redirects (Req 8): its text before the redirection.

"Growing soybeans--are classified in Industry 111110" sends soybean growing to 111110, and its activity phrase is "Growing soybeans". The redirection table's build (data.redirections) takes each row's phrase from here, and the bundle loader (supervision.artifacts) recomputes every non-withheld row's phrase from here and refuses a mismatch. The module imports only the standard library, so the loader can import it without the build.

activity_phrase(text)

The activity a cross-reference redirects: its text before the redirection, or None.