mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-08 04:57:36 +00:00
shell: fish functions -> ~/.local/bin executables + bash/zsh ports; manage ~/.agents
- 16 cross-shell utilities converted to sh/bash chezmoi executables: ai c2p cp-appid extract_agents fab gdc gh-sonr-org-migrate ghg-clone ghn gho git-summary launch_omp_livediff_overlay lc-elir mdcp mdp pj (ghg-clone not named ghg: unrelated cargo binary owns that name) - cwd/history helpers stay per-shell: yy c cd clip-last + ghg/ghn/gho cd-wrappers in bash/functions/ and zsh/functions/, loaded by rc files - fish keeps only shell-state functions; converted ones now hit PATH - cp-appid ignore gating moved to .local/bin path - dot_agents/skills: 82 skills materialized from dotstate storage so dot_claude skill symlinks resolve on fresh bootstrap; dotstate profile/symlinks.json released .agents/skills .bashrc .zshrc
This commit is contained in:
1 parent
6776366ce6
commit
6406208b35
637 files changed
+100297
-497
No files matched your search
@@ -0,0 +1,81 @@
|
||||
# Zaraz Gotchas
|
||||
|
||||
## Events Not Firing
|
||||
|
||||
**Check:**
|
||||
1. Tool enabled in dashboard (green dot)
|
||||
2. Trigger conditions met
|
||||
3. Consent granted for tool's purpose
|
||||
4. Tool credentials correct (GA4: `G-XXXXXXXXXX`, FB: numeric only)
|
||||
|
||||
**Debug:**
|
||||
```javascript
|
||||
zaraz.debug = true;
|
||||
console.log('Tools:', zaraz.tools);
|
||||
console.log('Consent:', zaraz.consent.getAll());
|
||||
```
|
||||
|
||||
## Consent Issues
|
||||
|
||||
**Modal not showing:**
|
||||
```javascript
|
||||
// Clear consent cookie
|
||||
document.cookie = 'zaraz-consent=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/;';
|
||||
location.reload();
|
||||
```
|
||||
|
||||
**Tools firing before consent:** Map tool to consent purpose with "Do not load until consent granted".
|
||||
|
||||
## SPA Tracking
|
||||
|
||||
**Route changes not tracked:**
|
||||
1. Configure History Change trigger in dashboard
|
||||
2. Hash routing (`#/path`) requires manual tracking:
|
||||
```javascript
|
||||
window.addEventListener('hashchange', () => {
|
||||
zaraz.track('pageview', { page_path: location.pathname + location.hash });
|
||||
});
|
||||
```
|
||||
|
||||
**React fix:**
|
||||
```javascript
|
||||
const location = useLocation();
|
||||
useEffect(() => {
|
||||
zaraz.track('pageview', { page_path: location.pathname });
|
||||
}, [location]); // Include dependency
|
||||
```
|
||||
|
||||
## Performance
|
||||
|
||||
**Slow page load:**
|
||||
- Audit tool count (50+ degrades performance)
|
||||
- Disable blocking triggers unless required
|
||||
- Reduce event payload size (<100KB)
|
||||
|
||||
## Tool-Specific Issues
|
||||
|
||||
| Tool | Issue | Fix |
|
||||
|------|-------|-----|
|
||||
| GA4 | Events not in real-time | Wait 5-10 min, use DebugView |
|
||||
| Facebook | Invalid Pixel ID | Use numeric only (no `fbpx_` prefix) |
|
||||
| Google Ads | Conversions not attributed | Include `send_to: 'AW-XXX/LABEL'` |
|
||||
|
||||
## Data Layer
|
||||
|
||||
- Properties persist per page only - set on each page load
|
||||
- Nested access: `{{client.__zarazTrack.user.plan}}`
|
||||
|
||||
## Limits
|
||||
|
||||
| Resource | Limit |
|
||||
|----------|-------|
|
||||
| Request size | 100KB |
|
||||
| Consent purposes | 20 |
|
||||
| API rate | 1000 req/sec |
|
||||
|
||||
## When NOT to Use Zaraz
|
||||
|
||||
- Server-to-server tracking (use Workers)
|
||||
- Real-time bidirectional communication
|
||||
- Binary data transmission
|
||||
- Authentication flows
|
||||
Reference in new issue
Block a user