docs(php-sdk): refresh SDK-owned pages against main (556084c..fba2089)
Covers the 79 commits since the last verified watermark, excluding the
287 auto-generated packages/Types/lib/Generated files.
New surface:
- Configuration: debugToken (forced debug_token= + _conv_low_cache=1,
full PSR-16 config-cache bypass, log redaction incl. PSR-18 exception
messages, never sent to the track endpoint); the Comparisons operator
set now that exists/not_exists/doesNotExist landed; the fixed
ConvertAgent/1.0 User-Agent applied after the header merge.
- CodeExamples: Experiment Preview — setPreview(), PreviewParam::parse(),
context-lifetime zero trace, inert-on-bad-input, ?exp= on-demand fetch
memoized 60s under preview_{experienceId}.
- ReturnTypes: SegmentsKeys (visitorType/customSegments rename),
RuleType, ConversionSettingKey, DataStoreQueueReleased.
- Installation: single-package publishing model and the real require set
(PSR interfaces, murmurhash, guzzle/psr7, ext-curl/json/mbstring).
- Testing: cross-SDK parity suite incl. the anchored bucketing golden
vectors (packed version <= 11, anchored version > 11).
- AI_Index/Home: the five shared pages the sync added but nav never got
(qa-and-preview, mutual-exclusion, server-side-experimentation,
from-tracking-script-to-sdk, direct-tracking-endpoint).
Fixes found while verifying against the code:
- LogLevel is int-backed (0-5), not string-backed.
- Core::on() takes a string; SystemEvents::Ready throws a TypeError.
Every event example unwrapped with ->value.
- PSR-18 discovery is Psr18ClientDiscovery::find(), not
HttpClientDiscovery::find().
- SegmentsManager rewritten: dropped the "Chapter 10" framing and six
links to pages deleted in April, replaced excerpts that described an
algorithm the class does not implement, and corrected the
runCustomSegments example to nest rule data under ruleData.
- Documented that Segments/Audiences/DataStoreQueueReleased are never
emitted, and that once one custom segment matches, the rest in the
same call are accepted without evaluating their own rule trees.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
docs: fix AI_Index canonical-source path, add CLAUDE.md for shared-docs guard rails
AI_Index.md previously described the shared-docs canonical source as
"../backend.wiki/" and linked to a fabricated github.com URL. Corrected
to name the real canonical path within the backend repo and describe
(not link) the private source.
Added CLAUDE.md at the wiki root documenting: (a) the shared vs
PHP-specific page split and decision rule before editing, and (b) the
writing rules for shared docs — never reference the private backend
wiki or its filesystem paths, never invent URLs, prefer package + class
+ method references over file:line.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
sync: shared fullstack docs (PHP code blocks only)
Synced from backend with --keep-lang php. JS/TS code blocks stripped.
Cloudflare Workers and LLM Testing pages removed (JS-only).
Edge & Integrations section removed from navigation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
docs: add AI_Index.md for refactored wiki structure
Add AI agent routing index reflecting the shared/SDK-specific page
layout after the module page consolidation.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
refactor: remove old module pages, update navigation to shared docs
Remove duplicate CamelCase pages (Core, Context, ExperienceManager,
etc.) now replaced by shared docs synced from backend. Update Home
and Sidebar to link to the new canonical pages.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
docs: add complete PHP SDK wiki documentation
Create full wiki matching the JavaScript SDK wiki structure and style,
adapted for PHP's request-scoped execution model and PSR standards.
17 files covering:
- Home page with architecture diagram and JS SDK differences
- 11 chapters: Core, Context, ExperienceManager, FeatureManager,
DataManager, BucketingManager, RuleManager, ApiManager, EventManager,
SegmentsManager, Config/Types
- User Guide with full API reference
- Data Model Reference with entity relationships
- AI Index, Sidebar, and Footer navigation
Key PHP-specific adaptations documented:
- Synchronous ConvertSDK::create() static factory
- PSR-3/16/18 integration (logging, caching, HTTP)
- PSR-16 cache as dual-purpose config + visitor data store
- No timeouts/timers — register_shutdown_function for queue flush
- Simplified DataStoreManager (clean passthrough, no queue)
- Readonly DTOs and backed PHP enums
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>