🗂️ Crafty Syntax Changelog
Crafty Syntax → Sales Syntax → Crafty Syntax → LUPOPEDIA upgrade history (live help platform).
Latest Release: 3.7.5 (current rebrand release) | Legacy Baseline: 3.7.3 (Sales Syntax hardening baseline)
Upgrade Reminder: Sales Syntax 3.7.0 installs should apply the 3.7.3 hardening release (now Crafty Syntax 3.7.5) before migrating into LUPOPEDIA. WOLFITH flags legacy installs automatically.
Support & Resources: Help this modernization effort by visiting the
LUPOPEDIA Patreon.
For assistance, head to the Support center.
Need step-by-step guidance? Open the Crafty Syntax How-To guide.
--- title: CHANGELOG.md agent_username: wolfie agent_id: 008 channel_number: 001 version: 3.8.0 date_created: 2025-11-18 last_modified: 2025-11-20 status: published onchannel: 1 tags: [SYSTEM, DOCUMENTATION, VERSIONING] collections: [WHAT, WHEN, WHY] in_this_file_we_have: [VERSION_3.8.0, VERSION_3.7.5, VERSION_HISTORY] shadow_aliases: [] parallel_paths: [] ---
Crafty Syntax Live Help Changelog
All notable changes to Crafty Syntax Live Help will be documented in this file. License: GPL v3.0 | Copyright: © 2003-2025 Eric Robin Gerdes / LUPOPEDIA LLC Status: In Development | Current Version: v3.8.0 The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ---[3.8.0] - 2025-11-18 to 2025-11-20 - Multi-Instance Support & Living Application (In Development)
Status: ⚠️ IN DEVELOPMENT - Required for LUPOPEDIA_PLATFORM Focus: Database normalization, multi-instance support, and computer genetics system Progress Update (November 20, 2025):- ✅ Core database migrations complete (0001, 0002, 0003, 0004, 0005, 0006)
- ✅ DNA system operational (4 tables, dynamic building)
- ✅ Biological-inspired system implemented (genes, transcripts, proteins, mutations)
- ✅ Admin interfaces created (agents.php, channels.php)
- ✅ Comprehensive documentation (8 documents)
- ✅ Design decision: Use tags/metadata instead of extending DNA bases
- ✅ Backward compatibility: Preserved
livehelp_*table names for existing customizations - ✅
livehelptable structure matcheslivehelp_agents(unified agent structure) - ⏳ WOLFIE Headers integration (P0 - pending)
- ⏳ Core query updates (P0 - pending)
- ⏳ LUPOPEDIA Platform integration (P0 - pending)
livehelpMaster Table (Serves as Agents Table for LUPOPEDIA)
- New parent/master table for all Crafty Syntax instances
- Primary key: livehelp_idColumn to All Tables
- Added - Agent DNA System Tables (Replaced Old 16-Table System) - Created
livehelp_agentsTable
- Core system table for agent definitions
- Agent ID directly maps to channel number (000-999)
- Structure matches - Biological-Inspired System Tables (Real Molecular Biology → Computer Biology) -
- API Key Support - Added
- Agent-Channel Associations - Added
- Dynamic DNA String Building System -
- Admin Interface: Agent Management -
- Admin Interface: Channel Management -
- Comprehensive Documentation -
- Database Schema - Normalized all tables to reference
- Documentation Structure - Updated all documentation to reflect 44-table structure (1 master + 34 original + 4 DNA + 1 agents + 4 biological) - Clarified computer genetics vs biological genetics distinction - Added comprehensive DNA system documentation - Added biological-inspired system documentation (genes, transcripts, proteins, mutations) - Updated README.md with living application vision and biological model - Cross-referenced all related documentation
- Migration File Organization - Moved migration files from
- Setup.php Upgrade Path - Fixed database connection bug (
- Migration 0001:
public/database/migrations/0001_create_livehelp_table_and_add_livehelp_id.sql
- Creates - Migration 0002:
public/database/migrations/0002_create_dna_table.sql
- Creates - Migration 0003:
public/database/migrations/0003_create_agents_table.sql
- Creates - Migration 0004:
public/database/migrations/0004_create_craftysyntax_agent.sql
- Creates craftysyntax application AI agent (Agent ID: 380, Channel: 380)
- This is an APPLICATION AGENT with embedded PHP code
- Home project: - Migration 0005:
public/database/migrations/0005_add_api_key_and_agent_id.sql
- Adds - Migration 0006:
public/database/migrations/0006_create_biological_tables.sql
- Biological-Inspired System: Maps real molecular biology to computer biology model
- Creates 4 biological tables for agent genome system:
- - Default Instance: All existing installations will use
livehelp_id = 1 - Existing Data: Automatically migrated to default instance
- Table Naming: Preserved
livehelp_*table names to maintain compatibility with existing customizations - No Breaking Changes: Existing 3.7.5 installations can upgrade seamlessly
- API Keys: Existing installations have NULL
api_key(can be configured later) - Agent Channels: Existing channels have
agent_id = 1(can be updated to specific agent IDs) - All
livehelp_*tables (43 tables: 34 original + 4 DNA + 1 agents + 4 biological, plus 1 master = 44 total) livehelpmaster table - Complete restructure to matchlivehelp_agentsstructure, added biological genome fields (Migration 0001)livehelp_agentstable - Added biological genome fields:dna_sequence,generation,birth_date,fitness_score(Migration 0003)livehelp_channelstable - Addedagent_idcolumn (Migration 0005)- New Biological Tables (Migration 0006): -
public/config.php- Addedlivehelp_idconfigurationpublic/functions.php- Updated database queries- All data access files (
data_*.php) - All admin files (
admin_*.php) - All user files (
user_*.php) - AJAX handlers (
xmlhttp.php) - Updated database schema documentation (40 tables: 1 master + 34 original + 4 DNA + 1 agents)
- Updated installation guide
- Updated API documentation
- Created migration guide
- Comprehensive DNA system documentation (9 new documents including design decisions and analysis)
- Updated README.md with living application vision
- Clarified computer genetics vs biological genetics distinction
- DNA System Extension: I/W Bases Decision (November 2025) - Decision: DO NOT add I/W (Intent/Weight) bases to DNA system - Rationale: Existing
- PHP Agent Nesting: .cursor Folder Analysis (November 2025) - Decision: DO NOT wholesale adopt folder nesting for PHP agents - Rationale: PHP's DB/sessions are superior;
- WOLFIE Headers Integration (P0 - Required for LUPOPEDIA Platform) - Add WOLFIE Headers frontmatter to all PHP files - Integrate WOLFIE Headers 2.1.0+ library - Update file headers with metadata (agent_username, agent_id, channel_number, version, etc.) - Test header parsing and search functionality - Status: ⏳ PENDING - Required before LUPOPEDIA Platform integration
- Core Query Updates (P0 - Required for Multi-Instance) - Update all database queries to include
- LUPOPEDIA Platform Integration (P0 - Required) - Connect to LUPOPEDIA_PLATFORM API (version 1.0.0+ required) - Fetch agent list from platform - Sync agent data - Handle version checking - Status: ⏳ PENDING - Blocks LUPOPEDIA Platform functionality
- Security Hardening (P1) - Replace
- Performance Optimization (P1) - Query optimization with proper indexes - Benchmarking (target: within 10% of 3.7.5) - Caching strategies - Status: ⏳ PENDING ---
- Finalized the “local embeds only” policy from 3.7.x clarifying that every Crafty Syntax deploy must host its own tracking assets to meet 2025 privacy baselines.
- Removed the last obfuscated powered-by tag hiding in
livehelp_js.php; the credit line now appears as a normal HTML anchor so auditors (and operators) can see exactly what ships in the bundle. - Added a trailing
csrepeat_()invocation tolivehelp_js.phpso the floating help icon re-checks operator presence and swaps artwork even after the visitor widget has been idle—most noticeable when the operator drops offline mid-session. - Repacked the 3.7.5 ZIP to include the clean powered-by link plus the extra refresh call; anyone who grabbed the first 3.7.4 build on 2025‑11‑12 should download the updated archive dated late 2025‑11‑12 or newer.
- Release published: Distributed as
crafty_syntax-3.7.5.zip; supersedes the late 3.7.4 refresh so partners have one canonical bundle. - Upgrade guidance: If you previously patched to the early 3.7.4 ZIP, copy
livehelp_js.php(and the updated scratchpad copy) from 3.7.5 so embeds honor the privacy+branding changes without a full reinstall. - Reissued the 3.7.3 codebase under the restored Crafty Syntax brand; binaries now publish as
crafty_syntax-3.7.4.zip. - Updated headers, about boxes, installer copy, and powered-by strings to read “Crafty Syntax 3.7.4 (formerly Sales Syntax 3.7.3).”
- Refreshed the default login branding: swapped the package logo (
images/logo.png) and updatedlogin.phpartwork/labels to show the Crafty Syntax identity. - Restored the
2025_modern/operator.jpgasset that was missing from the 3.7.3 package so the modern theme displays correctly in 3.7.4. - Corrected the quick-upgrade path in
setup.phpto open a database connection before updatinglivehelp_config.version, ensuring the script actually writes3.7.4during the drop-in upgrade. - Generated fresh MD5/SHA256 checksums for both the rebranded package and the archived Sales Syntax bundle so operators can verify integrity.
- Documented the rename across
public/what_was_crafty_syntax.php,public/crafty_syntax_evolved.php, and the Crafty Syntax changelog alias. - Notified auto-installer partners (Fantastico, Softaculous, Installatron) that the package is a branding update only—no schema or code changes.
- Release published: Use
crafty_syntax-3.7.4.zipfor new installs or upgrades;salessyntax-3.7.3.zipremains in/archive/releases/for historical reference. - Upgrade guidance: Existing Sales Syntax 3.7.3 installs can drop in the rebranded files or continue running unchanged—functionality is identical. ---
- Removed the legacy
offsetcolumn from fresh installs sosetup.phpno longer creates or references the misspelled field that broke MySQL import checks. - Added a tolerant loader for existing databases: if a config row still exposes
offest, the runtime maps it tooffseton the fly and falls back to PHP’s active timezone when neither value is present. - Replaced the admin “time offset” dropdown with a read-only notice that shows either the preserved legacy value or the resolved timezone identifier, avoiding undefined-index warnings during upgrades.
- Mirrored the fixes into the redistributed
/public/salessyntaxsnapshot so hosted customers and LUPOPEDIA deployments stay aligned. - Tightened the HTML embed generator (
htmltags.php) to display a same-domain placement notice, preventing remote-site integration issues uncovered during shared-host testing. - Tracking now requires local embeds only. To align with 2025 privacy expectations, remote cross-domain tracking was removed in 3.7.x. All installations must use relative paths on the host domain so visitors are not tracked on third-party sites.
- Sanitized mobile/iPhone settings updates (
cellphone,sessiontimeout) withfilter_sqlso chat operators cannot inject SQL through the quick settings forms. - Escaped the
seeparameter inadmin_connect.phpbefore injecting it into the XMLHTTP redirect URL, closing the reflected XSS the legacy admin widget relied on. - Hardened
setup.phpredisplays by wrapping installer inputs incslh_escape/rawurlencodeand swapping the column-existence checks over to shared-host-friendlySHOW COLUMNSqueries. - Added
scripts/security_sweep.pyso maintainers can automatically flag risky patterns (eval, dynamic includes, raw$_REQUEST, unescaped$UNTRUSTEDoutput) before shipping future patches. - Completed fresh-install and upgrade validation on Windows (XAMPP) and Linux shared hosts to confirm timezone fallbacks, security fixes, and language loader updates behave consistently.
- Restored operator desktop cues:
admin_users_refresh.phpnow escalates focus through nested frames (window.parent.bottomof → parent → top → self) before falling back to an alert, and wraps HTML5/EMBED chat sounds with autoplay-promise catches so operators hear the bell even when browsers block background playback. - Standardized all “powered by” links to
https://lupopedia.com/?utm_source=poweredby&utm_campaign=poweredby, removing obfuscation and legacy domains so embeds point at the LUPOPEDIA hub. - Fixed
leavemessage.phpmail delivery: corrected the status update query, ensured department contact emails are honored, and fall back toowner_emailso contact alerts always send when visitors leave a message.
---
- Shared-hosting verification completed on Windows and Linux environments; 3.7.3 is cleared for packaging and distribution to hosted customers.
- Patch released: Tagged as 3.7.3 within 48 hours to unblock installers seeing the
offesttypo and shore up shared-host security. - Packaging: Prepare and distribute the refreshed ZIP bundle to partners; continue monitoring support tickets for any residual timezone edge cases ahead of the planned timezone-schema audit during LUPOPEDIA rollout.
- Verification: Final security_sweep.py run, admin console debug regression tests, and fresh install/upgrade retests all pass with no new findings; package is ready for delivery. ---
- Rebased the working tree on the original 3.7.1 payload (
public/salessyntax/) so all new fixes start from the shipped, unmodified theme. - Retired the legacy
filter_html()sanitizer and swapped every call site to native escaping helpers (cslh_escape,htmlspecialchars,rawurlencode) to eliminate double-sanitization flags raised by Installatron. - Modernized the visitor typing beacon in
livehelp.php(and mirrored scripts) to preferfetch/XMLHttpRequestwhile keeping the<img>/GETFormfallbacks for browsers stuck in 2005. - Removed obsolete upgrade prompts (
pp.gif,gopro.png, “Go Pro” copy) now that unbranded features ship by default. - Updated footer credits across operator/admin pages to read:
Sales Syntax Live Help 2003 - 2025 ( a product of Lupopedia LLC ). - Added an opt-in
2025_moderntheme (responsive layout, flex-based header/footer, refreshed offline/connecting screens) without disturbing existing templates. - Mobile and iPhone operator consoles now submit chats through modern
fetchwithGETForm2fallback, keeping thepostmessageworkflow intact for legacy browsers. - Logged the remediation plan in
plan_for_sales_syntax_3_7_2.mdso future patches stay aligned with Installatron requirements. - Introduced hosted documentation stubs (
howto,qa,updates) and new public landing pages (account.php,support.php,directory.php,members.php). Added an operator-facing notice onscratch.phpexplaining why the 3.7.2 release preserves the 2012-era UI (to keep diff baselines intact) and how LUPOPEDIA 1.0.0 will layer in modern tooling plus AI-driven migration of community customizations. - Refreshed
javascript/xmlhttp.jsto use a sharedfetchwrapper with automatic fallbacks to the legacyGETFormhelpers, keeping polling/typing scripts functional on older browsers while modern installs run viafetch. - Packaging/testing: preparing the clean 3.7.2 ZIP and verifying shared-host installs with the modernized AJAX pathways.
- Updated configuration helpers so generated URLs drop the domain entirely (always relative paths). This avoids mixed-content issues—legacy installs that were
http://now call AJAX endpoints over the current scheme (https://when needed) without breaking. - Release in preparation: Regression testing and packaging still pending before tagging 3.7.2.
- Next steps: Mirror the modern typing helpers into mobile/iPhone/external clients, refresh shared
xmlhttp.js, and produce Installatron-ready ZIP + changelog.
---
- Hardened every public visitor entry point (
livehelp.php,user_connect.php,user_chat_*,user_top.php,user_qa.php) to reuse already-sanitized department/tab/offset integers before building redirects, query strings, or embedded JavaScript. - Sanitized visitor-supplied hidden fields in lost-password and chat-color forms so remote widgets and password-reset flows cannot inject markup when rendered off-site.
- Refreshed the powered-by link in
livehelp_js.php, allowing brand swaps to point directly to LUPOPEDIA while preserving the optional creditline toggle. - Expanded the session fingerprinting ladder (
get_ipaddress) to honor modern proxy/CDN headers, preferring public IPs and falling back safely so legacy installs maintain tracking accuracy. - Packaged the release as the LUPOPEDIA migration baseline: the core now ships with the full Sales Syntax codebase, layered-pop-up heritage, and 3.7.1 security posture.
- Added LUPOPEDIA-side scaffolding:
livehelpsparent table (Migration 1071), CSV export guidance, and updated public docs (public/crafty_syntax_evolved.php,public/what_was_crafty_syntax.php) so operators understand the upgrade path. - Apply 3.7.1 (latest GPL release) before migrating. WOLFITH and LUPO warn or block imports when
livehelps.version = '3.7.0'. - After patching, regenerate CSV snapshots so
livehelps_rows.csvreflects the sanitized schema andversion,3.7.1.
---
- Baked the previously “pro/unbranded” option into core so powered-by links can be removed directly from the HTML generator or department settings.
- Completed a PHP 8 readiness pass: converted all
each()loops toforeach, normalizedHeader()→header(), supplied missing response-code parameters, ensuredmktime()casts, and added default values for undefined variables encountered in empty result sets. - Hardened runtime safety by checking for ghost sessions before dereferencing arrays, assigning defaults for
$hide, and replacing the legacybrowser_infoclass with the newerBrowserhelper. - Moved
CTabBoxinclude calls intodata.php, repaired department HTML generation to use the correct ordered arrays, and refreshed the hour parameter handling to avoid null notices under PHP 8. - File footprint: essentially every PHP asset was touched (
FILES CHANGED: ALL OF THEM), with no schema alterations (DATABASE ALTERATIONS: NONE). - Legacy baseline: Still functional but missing the minor reflected XSS fixes and documentation polish delivered in 3.7.1.
- Upgrade path: Apply 3.7.1 (latest GPL release) before migrating into LUPOPEDIA; see
md_files/1_wolfie/livehelp_module.mdandpublic/crafty_syntax_evolved.phpfor patch workflow.
---
- Patched SQL injection spots tied to
$aftertimeand$typeof, coercing inputs withintval()and adding guard clauses around the write-div handler. - Smoothed out the “bubble window” template: adjusted window dimensions, ensured chat sounds trigger when visitors request a session, and tidied department refresh logic.
- Updated live help admin refresh code (
admin_users_refresh.php,admin_users_xmlhttp.php) and core helpers (functions.php,livehelp_js.php,iphone/functions.php) to keep real-time views synchronized. - No schema changes required (
DATABASE ALTERATIONS: NONE); recommended as the minimum security level for pre-3.7 installations still on PHP 7-era hosting.
---
- Introduced a dedicated leads tab plus offline layer invites so operators can capture visitor details—even when no human is online.
- Expanded tooling (
autolead.php,autoinvite.php,sendemail.php,createemail.php,leads.php) and refreshed navigation/admin views to surface the new workflow. - Added
offlineflag tolivehelp_autoinviteand created the supportinglivehelp_leads,livehelp_emails, andlivehelp_emailquetables for long-term contact management. - Bundled themed assets (
layer_invites/layer-Help_buttonoffline.*) so the invite CTA matches the extended lead collection experience. - Represents the start of the CRM-oriented roadmap; later releases (3.7.x) build on this foundation while resolving security gaps and modernizing the runtime. ---
- Rolled out a visual refresh (new logo, login background) and exposed tabs for CRM linkage, support tickets, lead management, and operator wall posts.
- Updated both MySQL and MySQLi drivers (
class/mysql_db.php,class/mysqli_db.php, plus mobile variants) and tuned setup/config scripts to support the expanded modules. - Served as the UX bridge into the CRM era; later 3.6.x releases layered in lead databases and offline invites. ---
- Converted the legacy
mysql_*calls tomysqli_*, providing PHP 5/7 compatibility without altering the surrounding business logic. - Focused change set around database abstraction classes and supporting helpers; no schema adjustments required.
- Required baseline for any installation targeting PHP 5.6+ or modern shared hosting environments. ---
- Switched the default alert sound implementation to HTML5
<audio>(with fallback options for legacy browsers), reducing QuickTime/plug‑in dependencies. - Touched core notification scripts to ensure audio playback continuity across operator consoles.
- Recommended upgrade for operators relying on browser-based audio cues; no database changes. ---
- Updated system messaging and configuration references to align with the lupopedia.com domain transition and security posture.
- Prepared the codebase for the upcoming CRM and lead-management additions that landed in 3.5.4+.
- Acts as the housekeeping release before the CRM-focused 3.5.4 refresh. ---
- Added CRM capture tools so visitor data can be collected even when operators are offline.
- Integrated the new workflow across setup pages and reporting dashboards.
- Marks the first appearance of CRM hooks that later 3.5.x/3.6.x builds expand into full lead management. ---
- Delivered an unbranded variant of 3.4.4 so customers could run live help without the standard credit line.
- Shares code with 3.4.4; use when brand-neutral deployments are required. ---
- Packaged 3.4.4 for mobile environments, ensuring templates and assets render cleanly on phones and tablets.
- Recommended for teams targeting mobile-first deployments; otherwise functionally identical to 3.4.4. ---
- Fixed two very minor vulnerabilities: remote file include exposure in
admin.php(operator scope) and full path disclosure inxmlhttp.php. - Updated template logic and helper scripts to enforce stricter page routing rules and sanitize
whattodoparameters. - Required baseline for any 3.4.x installation; patch instructions appear in the original changelog (manual edits plus guard clauses). ---
- Resolved bar-chart duplication in visitor analytics when departments overlapped.
- Corrected the version indicator so the UI shows the proper release number.
- Light maintenance build; ensures analytics dashboards remain accurate before the 3.4.4 security patch. ---
- Corrected department-aware pagination so the “data” tab no longer shows duplicate bars when browsing visitors.
- Patched a cross-site scripting issue in
livehelp_js.php; accompanying updates landed insetup.php,data_visits.php, andnavigation.php. - Security-sensitive build; roll up critical fixes before extending visitor analytics further. ---
- Published the “no backlink” (3.3.8) and “mobile” (3.3.7) variants of the 3.3.6 codebase for customers needing brand-free or mobile-optimized deployments.
- Functionally equivalent to 3.3.6 aside from packaging differences. ---
- Fixed operator creation so display names show correctly on first login and added the
maxrequests/deny agentsthrottles for bots. - Enhanced icon credit styling and department selection within visitor/referer data tabs.
- Includes configuration fields (
ignoreagent,maxrequests) that later CRM and security updates rely on.
---
- Released no-link (3.3.5) and mobile (3.3.4) builds alongside core 3.3.3, which overhauled analytics (department-aware data tabs, dynamic HTML generation) and added the
ignoreagent/maxrequestscolumns tolivehelp_config. - Introduced department selection, cleaned shorthand PHP tags, and improved robot throttling for high-traffic sites.
- Mandatory upgrade for installations facing analytics accuracy issues or resource strain from crawlers. ---
- Added timeouts and auto-logout controls for operators, plus per-website department visibility settings.
- Introduced the
livehelp_websitestable and added timestamps/department fields needed for multi-site routing. - Foundation for multi-site deployments; required before adopting the lead-management features that followed. ---
- Delivered a backlink-free build for customers needing white-label deployments while retaining 3.2.3 functionality.
- Companion to the 3.2.3 improvements; use when licensing terms require removing the credit link. ---
- Packaged 3.2.3 for mobile use, adapting templates and scripts to render on smartphones.
- Base for mobile deployments; pair with 3.2.3 schema changes. ---
- Fixed missing tables during setup (e.g.,
livehelp_sessions), ensured external chat windows close when visitors depart, added operator display names, and integrated geo-IP lookup in chat details. - Updated generated HTML to meet XHTML 1.0 Transitional standards and touched core scripts (
setup.php,operators.php,details.php) accordingly. - Must-have for sites encountering session errors or wanting geo-location context in transcripts. ---
- Provided a credit-free package mirroring 3.2.0 functionality for customers needing white labeling.
- Mirrors 3.2.0; choose based on branding requirements. ---
- Fixed Windows-hosted helper files so the mobile/iPhone apps function correctly; packaged as the mobile edition of 3.2.0.
- Required for Windows deployments using the companion mobile app. ---
- Upgraded
client_visitors.php, fixed undefined variables, added indexes to hot tables, modernized layer rendering (replacing the 1999 Dynamic Layer library), and refreshed the Portuguese (Brazil) language pack. - Applied helper fixes for iPhone/mobile directories and broadened timezone handling in settings.
- Major maintenance uplift; establishes the baseline for all subsequent 3.2.x tweaks. ---
- Released the no-backlink (3.1.11) and mobile (3.1.10) variants; 3.1.9 fixed multi-department icon handling, added dark/light credit link options, and ensured chat icons respect “hide when offline”.
- Recommended for customers running multi-department widgets or needing branded credit image options. ---
- Removed “Powered by Sales Syntax” links from themes, chat icons, and the donation prompt, creating a fully unbranded 3.1.7 build.
- Ideal for OEM deployments prior to the 3.2.x series. ---
- Fixed missing
displaynamefield errors, improved mobile input handling, and released the mobile variant of 3.1.6. - Important for organizations with dual desktop/mobile operator workflows. ---
- Polished the operator availability logic, cleaned out unused
showpopoutcode, refreshedinvite.php, and rebuilt the help documentation. - Sets the stage for the 3.1.7 mobile/unbranded updates; ensure this release is in place before layering subsequent patches. ---
md_files/1_wolfie/livehelp_module.md— Live help module overview and migration flow.database/migrations/1069_create_livehelp_legacy_tables.sql— Legacy sales syntax base tables.database/migrations/1071_2025_11_09_livehelps_create_parent_table.sql— Parent configuration table with seed record.CHANGELOG.md— LUPOPEDIA platform changelog (see “Livehelp Parent Table & Documentation” entry).public/crafty_syntax_evolved.php— Customer-facing continuity and upgrade instructions.
Added
livehelp_id (BIGINT(20) UNSIGNED)
- Supports multi-instance deployments
- Structure matches livehelp_agents: Unified agent structure across master and agents tables
- LUPOPEDIA Integration: This table serves as the agents table in LUPOPEDIA platform
- Biological-Inspired Agent Genome: Full agent structure including:
- agent_id - Agent ID (000-999), direct mapping to channel number
- agent_name - Agent name (e.g., WOLFIE, CAPTAIN, SECURITY, HELP)
- channel_id - Primary channel ID (Agent ID = Channel Number)
- agent_type - ENUM('primary', 'secondary', 'coordinator', 'specialized')
- status - Agent status ENUM('active', 'inactive', 'maintenance')
- dna_string - DNA string format: channel_agent-name_DNA_bases (e.g., "001_unknown_ACGT")
- dna_sequence - Full genetic code (biological-inspired genome)
- generation - Evolution generation (increments on reproduction/mutation)
- birth_date - When agent was created/born
- fitness_score - Performance score (0.0000-9999.9999)
- capabilities - JSON capabilities
- metadata - JSON metadata
- version - Crafty Syntax version
- config - Instance configuration (JSON)
- All columns indexed for performance
- Status: ✅ COMPLETED (Migration 0001)
livehelp_id column to all 39 livehelp_* tables (34 original + 4 DNA + 1 agents)
- Enables data isolation between instances
- Default value: 1 (for backward compatibility)
- All tables indexed for performance
- Status: ✅ COMPLETED (Migration 0001)
livehelp_dna table - single table for all DNA bases (A, T, C, G)
- Created livehelp_dna_logs table - change tracking for DNA entries
- Created livehelp_dna_collections table - collections for DNA entries
- Created livehelp_dna_tags table - tags for DNA entries
- Total: 4 new tables replace the old 16-table system (livehelp_A, livehelp_C, livehelp_G, livehelp_T and their associated _logs, _collections, _tags tables)
- Each row represents one DNA base (A, T, C, or G) for a specific channel/agent
- Enables context-dependent metadata lookup (channel_id + agent_name + dna_base)
- DNA string format: channel_agent-name_DNA_bases (e.g., "001_unknown_ACGT") - uses underscore delimiter
- Status: ✅ COMPLETED (Migration 0002)
livehelp master table: Unified agent structure
- Biological-Inspired Genome Fields:
- dna_sequence - Full genetic code (TEXT, supports "ATGCAGCTAGCT..." or JSON format like "GREET:friendly|HUMOR:80|SPEED:96")
- generation - Evolution generation (default: 1, increments on reproduction/mutation)
- birth_date - When agent was created/born (DATETIME)
- fitness_score - Performance score (DECIMAL 8,4, default: 0.0000)
- Supports DNA strings, capabilities, and metadata
- All biological fields indexed for performance
- Status: ✅ COMPLETED (Migration 0003)
livehelp_genes - Gene annotation database
- Defines what each gene does (e.g., RESP_SPEED, EMPATHY, HUMOR, TYPING_WPM)
- Includes locus positions, value types, min/max ranges, default alleles
- Pre-populated with 7 default gene definitions
- Status: ✅ COMPLETED (Migration 0006)
- livehelp_transcripts - Active gene expression (mRNA equivalent)
- Temporary working copy of expressed genes
- Tracks which genes are currently active for each agent
- Supports expiration for temporary traits (e.g., caffeine boost)
- Status: ✅ COMPLETED (Migration 0006)
- livehelp_proteins - Actual functional molecules/behaviors
- Real behaviors that the chat engine reads to determine agent behavior
- Includes: response_speed_ms, empathy_level, humor_level, typing_wpm, greeting_style, max_concurrent_chats, language_fluency (JSON), specialty_tags (JSON), mood
- One protein profile per agent (what actually runs)
- Status: ✅ COMPLETED (Migration 0006)
- livehelp_mutations - Evolution/mutation log
- Tracks all DNA mutations and evolution history
- Records fitness changes, parent relationships, mutation types (point, insertion, deletion, recombination, reproduction)
- Enables agent evolution and reproduction tracking
- Status: ✅ COMPLETED (Migration 0006)
- Biological Workflow: Agent logs in → PHP runs "transcription + translation" → Reads dna_sequence → Interprets using genes table → Creates transcripts → Updates proteins → Chat engine reads proteins for behavior
- Future Features: Agent reproduction, epigenetics, viral infection, apoptosis
api_key column to livehelp master table
- Enables API authentication and external integrations
- Column is nullable (NULL if not configured)
- Indexed for fast lookups
- Status: ✅ COMPLETED (Migration 0005)
agent_id column to livehelp_channels table
- Enables direct agent-to-channel mapping
- Default value: 1 (for backward compatibility)
- Positioned after user_id column
- Status: ✅ COMPLETED (Migration 0005)
public/functions/dna_session.php - PHP functions for session-based DNA accumulation
- scripts/update_dna.js - Node.js script for Cursor/file-based DNA accumulation
- .cursor/dna_session.json - JSON session file for development environment
- Functions: addDNAFromPrompt(), getCurrentDNA(), clearDNA(), parseDNAString()
- Append-only strategy: conversations build genetic history automatically
- Phase 1 (MVP): Default ATCG sequence unless explicitly specified
- Status: ✅ COMPLETED (November 2025)
public/agents.php - Admin interface for managing AI agents
- List, create, edit, and soft-delete agents
- DNA string validation and management
- Multi-instance support with livehelp_id filtering
- Status: ✅ COMPLETED (November 2025)
public/channels.php - Admin interface for managing channels
- List, create, edit, and soft-delete channels
- Channel metadata and agent assignments
- Multi-instance support with livehelp_id filtering
- Status: ✅ COMPLETED (November 2025)
PATRION.md - Living application philosophy and DNA system overview (revised with Lilith's enhancements)
- docs/BRAINSTORM_DYNAMIC_DNA_BUILDING.md - Dynamic DNA building implementation guide
- docs/DNA_STRING_LOOKUP_EXAMPLES.md - Practical SQL/PHP examples for DNA lookups
- docs/COMPUTER_GENETICS_MUTATION_ALGORITHMS.md - Computer genetics mutation algorithms (NOT biological)
- docs/LILITH_DNA_QUESTIONS_ANSWERS.md - Detailed technical Q&A (1000+ lines)
- docs/LILITH_DNA_QUESTIONS_ANSWERS_CONCISE.md - Concise Q&A summary
- docs/PROMPT_FOR_LILITH_DNA_QUESTIONS.md - Example prompts for agent inquiry
- docs/DNA_SYSTEM_DESIGN_DECISION_I_W_BASES.md - Design decision: Use tags/metadata instead of extending DNA bases
- docs/LILITH_ANALYSIS_CURSOR_FOLDER_PHP_AGENTS.md - Analysis: Should PHP agents emulate .cursor folder nesting?
- docs/CRAFTYSYNTAX_AGENT.md - Documentation for craftysyntax application AI agent
- README.md - Updated with living application vision and computer genetics
- CHANGELOG.md - Updated with all completed work
- TODO_FOR_CRAFTY_SYNTAX_3_8_0.md - Updated with completed tasks and remaining work
- Status: ✅ COMPLETED (November 2025)
Changed
livehelp master table
- Backward Compatibility: Preserved livehelp_* table naming convention for existing customizations
- Updated all queries to include livehelp_id filter for multi-instance support
- Improved data organization and multi-instance support
- Simplified DNA system from 16 tables to 4 unified tables
- All ID columns use BIGINT(20) UNSIGNED (WOLFIE ID Standard)
- livehelp Table Structure Unified with livehelp_agents:
- Complete restructure to match livehelp_agents table structure
- Unified agent structure across master and agents tables
- Added biological-inspired genome fields: dna_sequence, generation, birth_date, fitness_score
- Added agent fields: agent_id, agent_name, channel_id, agent_type, status, dna_string
- Removed old action-based columns, replaced with agent-based structure
- DNA string format changed to underscore delimiter: channel_agent-name_DNA_bases (e.g., "001_unknown_ACGT")
- Biological-Inspired System Implementation:
- Added 4 new biological tables: livehelp_genes, livehelp_transcripts, livehelp_proteins, livehelp_mutations
- Maps real molecular biology to computer biology model (DNA → Genes → mRNA → Proteins)
- Enables agent evolution, reproduction, and mutation tracking
- Added api_key column to livehelp master table for API authentication
- Added agent_id column to livehelp_channels for agent-channel associations
database/migrations/ to public/database/migrations/ for shared hosting compatibility
- Updated setup.php to use correct relative paths
$$server → $server)
- Fixed migration file path (moved to public/database/migrations/ for shared hosting)
- Fixed typos: $UNTRUSTth'] → $UNTRUSTED['txtpath'], $iED['txtpanstallationtype → $installationtype
- Added automatic migration execution for 0001, 0002, and 0003
- Improved error handling and idempotency
- Added bracket matching verification
- Status: ✅ COMPLETED (November 2025)
Migration
livehelp master table (serves as agents table for LUPOPEDIA)
- Structure matches livehelp_agents: Unified agent structure across master and agents tables
- Biological-Inspired Agent Genome Structure:
- livehelp_id (PK), agent_id, agent_name, channel_id, agent_type, status
- dna_string - DNA string format: channel_agent-name_DNA_bases (e.g., "001_unknown_ACGT")
- dna_sequence - Full genetic code (biological-inspired genome)
- generation - Evolution generation (default: 1)
- birth_date - When agent was created/born
- fitness_score - Performance score (0.0000-9999.9999)
- capabilities - JSON capabilities
- metadata - JSON metadata
- version - Crafty Syntax version
- config - Instance configuration (JSON)
- All columns indexed for performance
- Adds livehelp_id column to all 34 original tables
- Inserts default instance (livehelp_id = 1, agent_id = 1, agent_name = 'DEFAULT')
- Updates existing data to use default instance
- Adds indexes for performance
- Status: ✅ COMPLETED (November 2025)
livehelp_dna table with dna_base ENUM('A', 'T', 'C', 'G')
- Creates livehelp_dna_logs table for DNA change tracking
- Creates livehelp_dna_collections table for DNA collections
- Creates livehelp_dna_tags table for DNA tags
- Replaces old 16-table system (livehelp_A, livehelp_C, livehelp_G, livehelp_T and their associated _logs, _collections, _tags tables) with 4 unified tables
- Each row represents one DNA base for a specific channel/agent context
- All tables include livehelp_id for multi-instance support
- Critical indexes: idx_channel_agent_base, idx_livehelp_channel_agent, unique_dna_entry
- Status: ✅ COMPLETED (November 2025)
livehelp_agents core system table
- Structure matches livehelp master table: Unified agent structure
- Agent ID maps directly to channel number (000-999)
- Biological-Inspired Genome Fields Added:
- dna_sequence - Full genetic code (TEXT, supports "ATGCAGCTAGCT..." or JSON format)
- generation - Evolution generation (default: 1, increments on reproduction/mutation)
- birth_date - When agent was created/born (DATETIME)
- fitness_score - Performance score (DECIMAL 8,4, default: 0.0000)
- Supports DNA strings, capabilities, metadata, and status
- Multi-instance support with livehelp_id
- All biological fields indexed for performance
- Status: ✅ COMPLETED (November 2025)
C:\WOLFIE_Ontology\GITHUB_LUPOPEDIA\craftysyntax-3.8.0
- Creates initial DNA profile (A, T, C, G bases)
- Sets up capabilities and metadata for the application
- Status: ✅ COMPLETED (November 2025)
api_key column to livehelp master table (VARCHAR(255), nullable)
- Creates index idx_api_key on livehelp table for fast API key lookups
- Adds agent_id column to livehelp_channels table (BIGINT(20), default 1)
- Enables API authentication and external integrations
- Enables direct agent-to-channel associations
- Backward Compatibility: Existing rows have NULL api_key and agent_id = 1 by default
- Status: ✅ COMPLETED (November 2025)
livehelp_genes - Gene annotation database
- Defines what each gene does (e.g., RESP_SPEED, EMPATHY, HUMOR, TYPING_WPM)
- Includes locus positions, value types, min/max ranges, default alleles
- Pre-populated with 7 default gene definitions
- livehelp_transcripts - Active gene expression (mRNA equivalent)
- Temporary working copy of expressed genes
- Tracks which genes are currently active for each agent
- Supports expiration for temporary traits (e.g., caffeine boost)
- livehelp_proteins - Actual functional molecules/behaviors
- Real behaviors that the chat engine reads
- Includes: response_speed_ms, empathy_level, humor_level, typing_wpm, greeting_style, max_concurrent_chats, language_fluency (JSON), specialty_tags (JSON), mood
- One protein profile per agent (what actually runs)
- livehelp_mutations - Evolution/mutation log
- Tracks all DNA mutations and evolution history
- Records fitness changes, parent relationships, mutation types (point, insertion, deletion, recombination, reproduction)
- Enables agent evolution and reproduction tracking
- Biological Workflow: Agent logs in → PHP runs "transcription + translation" → Reads dna_sequence → Interprets using genes table → Creates transcripts → Updates proteins → Chat engine reads proteins for behavior
- All tables include livehelp_id for multi-instance support
- All tables properly indexed for performance
- Future Features: Agent reproduction, epigenetics, viral infection, apoptosis
- Status: ✅ COMPLETED (November 2025)
Backward Compatibility
Files Modified
livehelp_genes - Gene annotation database
- livehelp_transcripts - Active gene expression (mRNA)
- livehelp_proteins - Actual functional behaviors
- livehelp_mutations - Evolution/mutation log
Documentation
Design Decisions
livehelp_dna_tags and metadata JSON provide sufficient flexibility
- Implementation: Use tags for intent/topic classification, metadata for weight/scoring
- Benefits: No schema changes, backward compatible, more flexible than fixed bases
- Documentation: docs/DNA_SYSTEM_DESIGN_DECISION_I_W_BASES.md
- Status: ✅ DECISION MADE (November 2025)
.cursor/ is a workaround for Node.js limitations
- Twist: Optional fallback to .agents/[agent_name]/dna_session.json acceptable for dev/offline mode
- Implementation: Phase 2 (optional enhancement), Phase 3 (hybrid coordination)
- Documentation: docs/LILITH_ANALYSIS_CURSOR_FOLDER_PHP_AGENTS.md
- Analysis By: Lilith (Agent 007, Channel 007)
- Status: ✅ DECISION MADE (November 2025)
Planned (Not Yet Started)
livehelp_id filter
- Update public/functions.php core functions
- Update all data access files (data_*.php)
- Update all admin files (admin_*.php)
- Update all user files (user_*.php)
- Update AJAX handlers (xmlhttp.php)
- Status: ⏳ PENDING - Required for multi-instance support
$UNTRUSTED with modern sanitization
- Add prepared statements to all queries
- XSS prevention
- SQL injection prevention
- Status: ⏳ PENDING
VERSION_3_7_5 — 2025-11-14 (Livehelp JS Transparency & Icon Refresh)
Highlights
Status
VERSION_3_7_4 — 2025-11-12 (Crafty Syntax Name Restoration)
Highlights
Status
VERSION_3_7_3 — 2025-11-10 (Timezone Offset & Hardening Sweep)
Highlights
Deployment Status (Completed)
Status
VERSION_3_7_2 — 2025-11-10 (Installatron Compliance & Branding Refresh)
Highlights
Status
VERSION_3_7_1 — 2025-11-09 (Security Patch & LUPOPEDIA Integration)
Highlights
Recommended Action
VERSION_3_7_0 — 2023-11-07 (PHP 8 Compatibility Sweep)
Highlights
Status
VERSION_3_6_2 — 2017-02-17 (Security Patch & UX Fixes)
Highlights
Status
VERSION_3_6_1 — 2016-06-21 (Leads & Offline Invite Enhancements)
Highlights
Status
VERSION_3_5_4 — 2016-05-28 (CRM Interface Refresh)
Highlights
Status
VERSION_3_5_3 — 2016-03-30 (MySQL → MySQLi Migration)
Highlights
Status
VERSION_3_5_2 — 2015-12-02 (HTML5 Audio Default)
Highlights
Status
VERSION_3_5_1 — 2015-11-28 (Brand Transition Release)
Highlights
Status
VERSION_3_4_7 — 2013-08-15 (CRM Data Capture)
Highlights
Status
VERSION_3_4_6 — 2013-04-23 (Unbranded 3.4.4 Build)
Highlights
Status
VERSION_3_4_5 — 2013-04-23 (Mobile 3.4.4 Build)
Highlights
Status
VERSION_3_4_4 — 2013-04-23 (Security Release)
Highlights
Status
VERSION_3_4_1 — 2013-01-19 (Reporting Fixes)
Highlights
Status
VERSION_3_3_8 — 2012-08-05 (Visitor Paging & XSS Fix)
Highlights
Status
VERSION_3_3_8 (Mobile/No-Link Variants) — 2012-06-02
Highlights
Status
VERSION_3_3_6 — 2012-06-02 (Operator Experience Polishing)
Highlights
Status
VERSION_3_3_5 / 3.3.4 / 3.3.3 — 2012-05-29 (Leads & Dept Analytics)
Highlights
Status
VERSION_3_3_0 — 2012-04-24 (Timeout & Website Segmentation)
Highlights
Status
VERSION_3_2_5 — 2012-04-20 (No-Backlink Release)
Highlights
Status
VERSION_3_2_4 — 2012-04-20 (Mobile Release)
Highlights
Status
VERSION_3_2_3 — 2012-04-20 (Session Stability & Geo Lookup)
Highlights
Status
VERSION_3_2_2 — 2012-04-04 (No-Backlink Variant)
Highlights
Status
VERSION_3_2_1 — 2012-04-04 (Mobile Helper Fix)
Highlights
Status
VERSION_3_2_0 — 2012-04-04 (Performance & Localization)
Highlights
Status
VERSION_3_1_11 / 3.1.10 / 3.1.9 — 2012-03-25 (Brand & Stability Tweaks)
Highlights
Status
VERSION_3_1_8 — 2012-03-08 (Unbranded Edition)
Highlights
Status
VERSION_3_1_7 — 2012-03-08 (Display Name & Mobile Input Fix)
Highlights
Status
VERSION_3_1_6 — 2012-03-07 (Operator Presence & Cleanup)
Highlights
Status
REFERENCES
README_FILES/ changelog bundled with each Sales Syntax installation.