prefix when using it. */ define( 'MYBOT_TABLE_SUFFIX', 'mybot_' ); /** Option recording the database schema version. */ define( 'MYBOT_DB_VERSION_OPTION', 'mybot_db_version' ); /** Option recording which plugin version last upgraded the content defaults. */ define( 'MYBOT_CONTENT_DEFAULTS_OPTION', 'mybot_content_defaults_version' ); /** Option holding the knowledge indexing progress. */ define( 'MYBOT_INDEX_STATE_OPTION', 'mybot_index_state' ); /** Option holding the last reason a fallback reply was served, shown on the dashboard. */ define( 'MYBOT_DEGRADED_OPTION', 'mybot_last_degraded' ); /** * Option holding what the knowledge base did on the last answered question, shown on the * dashboard and on the settings screen next to the RAG controls. */ define( 'MYBOT_RAG_TRACE_OPTION', 'mybot_last_rag' ); /** * Option holding what happened to the last "question for a human" submission. * * The widget tells the visitor when a send fails, but the administrator never learned about it — * so "I filled the form and nothing appeared in the plugin" had no answer anywhere in WordPress. * This option is that answer: when the last request was saved, and why the last attempt failed. */ define( 'MYBOT_SUPPORT_TRACE_OPTION', 'mybot_support_trace' ); /** Transient holding indexing progress for the admin screen. */ define( 'MYBOT_INDEX_PROGRESS_TRANSIENT', 'mybot_index_progress' ); /** Transient holding the OpenRouter credit budget. */ define( 'MYBOT_BUDGET_TRANSIENT', 'mybot_openrouter_budget' ); /** * Transient prefix for the cached model lists. * * The provider ID and the filter are appended, so every provider caches its own catalogue: * mybot_models_openrouter_free, mybot_models_openai_all, mybot_models_gemini_all. */ define( 'MYBOT_MODELS_TRANSIENT', 'mybot_models_' ); /** Post meta key holding the indexing fingerprint of a post. */ define( 'MYBOT_INDEX_HASH_META', '_mybot_index_hash' ); /* * Add-on API version — the contract an add-on is written against, and NOT the plugin version. * * An add-on declares `requires_core` in plugin versions, because that is what its author can check. This * constant exists for the other direction: when the shape of the registry or of a seam changes, the number * here changes, and an add-on can refuse to boot instead of half-working. Bumping it is a promise that * something an add-on relies on has changed meaning, so it is a decision rather than a side effect of a * release. * * It starts at 1.0 because until this release nothing was ever promised to an add-on. */ define( 'MYBOT_ADDON_API', '1.0' );