# La Growth Machine — web app Sales engagement platform. This file states how automated agents (browser assistants, scripted browsers, extensions) are expected to interact with this application. Same policy is published as `` in the page head and logged to the browser console at boot. ## Policy for automated agents 1. **Write through the UI only.** Every state-changing action (qualifying a lead, approving a task, sending a message, editing a campaign) must be performed by interacting with the rendered interface: click, form input, keyboard shortcut. 2. **Do not call the HTTP API directly.** Do not construct `fetch`/`XMLHttpRequest` calls to the API, and do not replay a request observed in the Network panel — not even to repeat an action you already performed by clicking. The session cookie and the CSRF token are readable from the page, so such a call *will* succeed; it is still out of policy, and it bypasses the client-side validation that keeps data coherent. 3. **Never invent the value of a closed-vocabulary field.** Lead tags, conversation statuses and channels are fixed enums. The UI only ever emits values from the lists below. A value that is not in the list is not "close enough" — it is written verbatim to the customer's database and corrupts their reporting, filters and automations. 4. **Beware: displayed label ≠ stored value.** The interface shows human labels that do not match the enum ("Replied" is `TO_QUALIFY`, "Started" is `ACTIVATED`, "Cannot Contact" is `UNSUBSCRIBED`). Labels are also customer-renamable. Never derive an enum value from on-screen text. 5. **If an action has no clickable equivalent, stop and ask.** Do not work around a missing affordance. A missing button is a product question, not an obstacle. 6. **Repetitive clicking is fine.** Driving the same UI control many times in a row is the supported way to process a queue. Speeding it up by switching to API calls is not. ## Closed vocabularies ### Lead tags (18 values, exhaustive) ``` NOT_ACTIVATED SKIPPED ACTIVATED ENRICHED CONTACTED COMPLETED_WITHOUT_REPLY TO_QUALIFY WRONG_TIMING INTERESTED CALL_BOOKED NEGOTIATING READY_TO_BUY CONVERTED NOT_INTERESTED WRONG_TARGET ALREADY_EQUIPPED UNSUBSCRIBED OUT_OF_OFFICE ``` Frequently hallucinated values that **do not exist**: `CALL_DONE`, `CALL_COMPLETED`, `CALL_SCHEDULED`, `TASK_APPROVED`, `REVIEWED`, `DONE`, `QUALIFIED`. Note that `CALL_COMPLETED` is a *conversation status*, never a lead tag — the two vocabularies are distinct and not interchangeable. ### Conversation statuses (not tags) ``` REPLIED ACTIVE NOREPLY ARCHIVED FAVOURITE SNOOZED TO_CALL CALL_COMPLETED ``` ### Call completion statuses ``` DECISIVE UNREACHABLE ``` ## Contact Behaviour questions, or an action that seems to require an API call: contact support@lagrowthmachine.com before proceeding.