Changes
129 change(s)
| When | Area | Type | Title | Status | Object |
|---|---|---|---|---|---|
| 2026-06-04 05:02:51 | identity | security |
Separate OAuth custom app identity from WordPress SSOReason: OAuth2 Proxy protects custom apps; WP Google SSO may map Google identities to WP users/roles later. Summary: Locked separate identity paths. Implemented By: operator |
implemented | WSAI_WordPressGoogleSSO_v1 |
| 2026-06-04 05:02:51 | workspace | architecture |
Industry Workspaces become productsReason: AI Workspace is a framework, ChatPad is interface, memory is platform, industry workspaces are products. Summary: Locked industry workspace product strategy. Implemented By: operator |
implemented | Industry Workspaces |
| 2026-06-04 05:02:51 | growth | strategy |
Approve affiliate program out of the gateReason: Community contributors, creators, customers, consultants, and agencies can become growth channels. Summary: Locked affiliate and partner program backlog. Implemented By: operator |
implemented | WSAI_AffiliateProgram_v1 |
| 2026-06-04 05:02:51 | marketing | strategy |
Validate Marketing Director personaReason: Sheri persona validates multi-brand marketing team use case beyond Sam. Summary: Locked Marketing Workspace as an industry workspace opportunity. Implemented By: operator |
implemented | WSAI_MarketingWorkspace_v1 |
| 2026-06-04 05:02:51 | community | governance |
Approve Tier 0 Plus Community Contributor opt-inReason: Community ideas require explicit opt-in, safety review, anonymization, and human approval. Summary: Locked opt-in community contribution model. Implemented By: operator |
implemented | WSAI_CommunityContributorTier_v1 |
| 2026-06-04 05:02:51 | trust | governance |
Trust becomes product principleReason: Private memory, customer memory, and anonymous sessions should not be mined without explicit consent. Summary: Locked principle: monetize insights, not people. Implemented By: operator |
implemented | Trust Is The Product |
| 2026-06-04 05:02:51 | subscription | strategy |
Approve subscription ladder from anonymous to enterpriseReason: The product has a tiered path from anonymous playground to enterprise memory. Summary: Locked subscription ladder and memory-based value progression. Implemented By: operator |
implemented | WSAI_SubscriptionModel_v1 |
| 2026-06-04 05:02:51 | platform | strategy |
Operational Memory becomes platform moatReason: Model access is commoditized; the durable value is scoped, curated, permissioned memory. Summary: Locked platform moat around operational memory. Implemented By: operator |
implemented | Operational Memory Moat |
| 2026-06-04 05:02:51 | product | strategy |
ChatPad becomes primary product interfaceReason: The product direction shifted to ChatPad as conversational front door over memory and workspaces. Summary: Locked ChatPad as primary interface and AI Workspace as advanced feature. Implemented By: operator |
implemented | WSAI_ChatPad_v1 |
| 2026-06-04 03:41:47 | ai_context | architecture |
Define secure AI context after Operator lockdownReason: Once wickedspooky.org/operator is behind OAuth, ChatGPT should not have anonymous direct access. Context must be provided via export, paste, Make, or controlled token-gated endpoints. Summary: Locked principle that Operations remains private; AI context access is mediated and intentionally scoped. Implemented By: operator |
implemented | WSAI_AccessBrokerForAIContext_v1 |
| 2026-06-04 03:41:47 | operator_console | security |
Approve OAuth lockdown for wickedspooky.org Operator ConsoleReason: The Operations authority contains backlog, change log, database catalog, operational guides, and internal memory. It should not remain anonymously accessible after moving from WordPress pages to a raw Operator Console. Summary: Approved OAuth2 Proxy + Google protection for wickedspooky.org/operator and internal APIs, while preserving wickedspooky.ai public site access except protected AI Workspace. Implemented By: operator |
implemented | WSAI_OperatorConsoleOAuthLockdown_v1 |
| 2026-06-04 02:39:21 | resilience | governance |
Capture resource monitoring need before hardware splitReason: AI Workspace, Operator Console, and future public apps may need independent performance/resource tracking before deciding whether to separate hardware. Summary: Created WSAI_ResourceMonitor_v1 backlog item to track resource/performance data and future separation thresholds. Implemented By: operator |
implemented | WSAI_ResourceMonitor_v1 |
| 2026-06-04 02:39:21 | oauth | security |
Approve OAuth2 Proxy scaffold for WickedSpooky.ai AI WorkspaceReason: Provider secrets should not be introduced until the app is behind identity-based access. Summary: Created deployment path for OAuth2 Proxy + Google using externalized secrets and Apache reverse proxy protection. Implemented By: operator |
implemented | WSAI_OAuth2WorkspaceSecurity_v1 |
| 2026-06-04 02:39:21 | security | architecture |
Split AI Workspace from internal Operator ConsoleReason: AI Workspace is a public-brand Content Engine application and should not be exposed inside the internal operations dashboard. Internal operations and public content apps should be separated for security and resilience. Summary: Approved split: wickedspooky.org/operator remains internal operations; wickedspooky.ai/ai-workspace becomes protected public-brand app behind OAuth2 Proxy + Google. Implemented By: operator |
implemented | WSAI_AIWorkspacePublicAppSplit_v1 |
| 2026-06-04 02:10:10 | monetization | strategy |
Capture content engine monetization goalReason: The content system should produce regular scheduled AI-augmented content across multiple brands and social streams to build audience and revenue. Summary: Captured goal to convert operational memory, stories, and nuggets into content, opportunities, publications, and monetization streams. Implemented By: operator |
implemented | Content Monetization Goal |
| 2026-06-04 02:10:10 | content | strategy |
Capture avatar-first multi-brand publishing modelReason: Founder may be camera-shy, but avatars and personas can publish across many brands and categories. Summary: Captured model where Second Act Sam, Crisis Cat, WickedSpooky AI, Blue Rose Retreats, Wicked Spooky IT, and future personas can publish without founder appearing in every category. Implemented By: operator |
implemented | Avatar-First Multi-Brand Publishing |
| 2026-06-04 02:10:10 | content | architecture |
Position Make and Airtable as orchestration not creative authorityReason: Legacy Airtable/Make work is not throwaway but should be demoted from creative authority to orchestration/migration source. Summary: Airtable and Make remain valuable for workflow, scheduling, publishing, and metrics while MariaDB/AI Workspace become content authority and refinement center. Implemented By: operator |
implemented | Airtable Make Role Pivot |
| 2026-06-04 02:10:10 | content | architecture |
Move AI generation and refinement into AI WorkspaceReason: Airtable and Make should orchestrate workflow and movement, not own idea generation and refinement. Summary: Content Engine selects idea, operator chooses LM, generation/refinement happens in-console, approval advances to next publishing gate. Implemented By: operator |
implemented | AI Workspace Authority |
| 2026-06-04 02:10:10 | delivery | lesson |
Capture accelerated delivery scope-creep lessonReason: Fast delivery produced impressive results but also scope creep; sometimes it is better to build directly than force automation and build at the same time. Summary: Captured lesson that automation should not be built simultaneously with uncertain creative/system design unless the process is already understood. Implemented By: operator |
implemented | Scope Creep Lesson |
| 2026-06-04 02:10:10 | content | principle |
Lock creative automation principleReason: Automation built on assumptions can get the operator lost faster; creative work should stay visible, interactive, and reviewable. Summary: Locked principle: do not automate creativity; capture it, organize it, augment it, then automate the movement. Implemented By: operator |
implemented | Creative Automation Principle |
| 2026-06-04 02:10:10 | platform | strategy |
Recognize multi-operator and SaaS potentialReason: The Operator Console, Content Brain, Story Capture, Opportunity Engine, AI Workspace, and Publishing Gates now resemble a future managed platform or SaaS product. Summary: Captured SaaS direction and need for identity, roles, permissions, and operator workflows. Implemented By: operator |
implemented | SaaS Direction |
| 2026-06-04 02:10:10 | operator_console | security |
Approve OAuth2 Proxy + Google as practical real securityReason: AI Workspace and future operator modules should not rely on Basic Auth if moving toward more operators or SaaS readiness. Summary: Approved OAuth2 Proxy + Google as next security layer without adding major infrastructure. Implemented By: operator |
implemented | OAuth2 Proxy + Google |
| 2026-06-04 01:44:49 | content | architecture |
Approve AI Workspace interactive generation modelReason: Creative generation and refinement should happen interactively in the AI Workspace, not hidden inside Airtable or Make automation. Summary: Content ideas remain authority assets. Operator selects LM/provider, reviews output, updates/rejects/regenerates, and approves before downstream orchestration. Make handles scheduling, routing, publication, and metrics. Implemented By: operator |
implemented | WSAI_AIWorkspace_v1 |
| 2026-06-04 01:10:17 | content | strategy |
Preserve narrative memory as business assetReason: Technical change logs preserve facts, but narrative memory preserves meaning, lessons, mistakes, and monetizable story value. Summary: Approved operator_story_log concept to capture failures, pivots, lessons, breakthroughs, and real-world stories. Implemented By: operator |
implemented | WSAI_StoryCapture_v1 |
| 2026-06-04 01:10:17 | monetization | strategy |
Capture content monetization objectiveReason: Regular scheduled content delivery should support audience growth and monetization across multiple brands and streams. Summary: Locked monetization goals including YouTube, blog, PDF, course, consulting, affiliate, Etsy, Printify, and brand-specific publishing. Implemented By: operator |
implemented | Monetization Architecture |
| 2026-06-04 01:10:17 | content | architecture |
Approve WSAI_ContentAuthority_v1 architectureReason: The existing Operator Console needs a parallel content authority to drive scheduled publishing and monetization. Summary: Approved MariaDB-backed Content Brain with content_ideas, content_personas, content_channels, content_schedule, and content_publications. Implemented By: operator |
implemented | WSAI_ContentAuthority_v1 |
| 2026-06-04 01:10:17 | content | migration |
Designate Airtable content engine for migration not abandonmentReason: Legacy Airtable and Make content workflows contain valuable ideas and structure that must be curated and consolidated. Summary: Airtable, Make, JSON2Video, and Google Sheets content systems will be inventoried and migrated into Content Authority. Implemented By: operator |
implemented | Airtable Migration |
| 2026-06-04 01:10:17 | content | architecture |
Approve Story to Opportunity to Content to Revenue pipelineReason: Stories and lived operational experience should become content and monetization opportunities instead of remaining in chat history. Summary: Adopted pipeline: Story to Opportunity to Content to Backlog to Publication to Revenue. Implemented By: operator |
implemented | Story Opportunity Pipeline |
| 2026-06-04 01:10:17 | content | strategy |
Approve avatar-first publishing for camera-shy workflowsReason: User may be camera-shy, but avatars and AI-augmented personas can publish consistently without requiring direct on-camera presence. Summary: Locked avatar/persona publishing as a strategic model for regular content delivery. Implemented By: operator |
implemented | Avatar Publishing |
| 2026-06-04 01:10:17 | content | strategy |
Adopt persona-driven publishing modelReason: The founder does not need to appear in every category or channel, and avatars/personas can carry content streams. Summary: Accepted persona-driven publishing across Second Act Sam, Crisis Cat, WickedSpooky AI, Blue Rose Retreats, Wicked Spooky IT, and future personas. Implemented By: operator |
implemented | Persona Publishing |
| 2026-06-04 01:10:17 | operator_console | architecture |
Separate Business Brain from Content BrainReason: Operational truth and content production have different data models and should not be forced into one backlog table. Summary: Defined Business Brain as guides/backlog/change log/story log and Content Brain as content ideas/personas/channels/schedule/publications. Implemented By: operator |
implemented | Business Brain / Content Brain |
| 2026-06-04 01:10:17 | content | strategy |
Lock content as the productReason: The business objective is content, audience, monetization, and revenue; infrastructure exists to enable that engine. Summary: Locked strategic principle that the content engine is the product and infrastructure serves content. Implemented By: operator |
implemented | Content Strategy |
| 2026-06-04 00:44:46 | backlog | feature |
Add drag-and-drop backlog prioritizationReason: Operators need to manually reprioritize work by dragging items up or down without changing the priority label. Summary: Added sort_order to operator_backlog_items, created /operator/backlog/prioritize.php, added drag-and-drop reorder saving, and records reprioritized events plus change-log evidence. Implemented By: operator |
implemented | /operator/backlog/prioritize.php |
| 2026-06-04 00:36:49 | backlog | schema_ui |
Add outcome status and pastel visual status indicatorsReason: Backlog items need a visual distinction between lifecycle status and outcome state including completed successfully, completed with error, failed, canceled, and deprecated. Summary: Added outcome_status to operator_backlog_items, refreshed v_operator_backlog_active, exposed outcome status in create/edit views, and added soft pastel status styling. Implemented By: operator |
implemented | operator_backlog_items.outcome_status |
| 2026-06-04 00:26:56 | backlog | complete |
Complete Backlog Item: Test Backlog Creation WorkflowReason: tested validated Summary: Marked backlog key WSAI_BacklogCreation_Test_001 completed. Implemented By: operator Backlog: Item 32 |
implemented | WSAI_BacklogCreation_Test_001 |
| 2026-06-04 00:19:47 | backlog | create |
Create Backlog Item: Test Backlog Creation WorkflowReason: New work item created through Operator Console. Summary: Created backlog key WSAI_BacklogCreation_Test_001 with priority low and status planned. Implemented By: operator Backlog: Item 32 |
implemented | WSAI_BacklogCreation_Test_001 |
| 2026-06-04 00:16:13 | backlog | create |
Create Backlog Item: test item 1Reason: New work item created through Operator Console. Summary: Created backlog key WSAI_TEST_ITEM_1_20260604001613 with priority medium and status active. Implemented By: operator Backlog: Item 31 |
implemented | WSAI_TEST_ITEM_1_20260604001613 |
| 2026-06-04 00:08:00 | backlog | ui |
Expand editable backlog fields and collapse event historyReason: Operators need to maintain description and acceptance criteria directly while keeping long item pages readable. Summary: Updated backlog item edit form to include description and acceptance criteria. Event history now uses a collapsed details/summary section by default. Implemented By: operator |
implemented | /operator/backlog/item.php |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Add return-to-dashboard links to operational pagesReason: Backlog initiative entered into planning system. Summary: Priority=medium; Status=active; Subsystem=WordPress / Navigation Implemented By: historical_backfill |
implemented | WSAI_OperationalDocsAccessNav_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Hospitable API/MCP integrationReason: Backlog initiative entered into planning system. Summary: Priority=medium; Status=deferred; Subsystem=Blue Rose Retreats / Automation Implemented By: historical_backfill |
implemented | WSAI_HospitableIntegration_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Add Program Backlog view to Operator DashboardReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=WordPress / MariaDB Implemented By: historical_backfill |
implemented | WSAI_OperatorDashboard_BacklogView_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Set up Etsy and Printify launch workflowReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=Commerce / Merch Implemented By: historical_backfill |
implemented | WSAI_EtsyPrintifyLaunch_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Build sheri.dancelifeclothing.com WordPress siteReason: Backlog initiative entered into planning system. Summary: Priority=medium; Status=planned; Subsystem=WordPress Implemented By: historical_backfill |
implemented | WSAI_DanceLife_SheriSiteBuildout_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Build ArtOfSheri WordPress siteReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=WordPress Implemented By: historical_backfill |
implemented | WSAI_ArtOfSheri_WPBuildout_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Complete Route53 validation for ArtOfSheri and Dance LifeReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=active; Subsystem=DNS / Route53 Implemented By: historical_backfill |
implemented | WSAI_Route53_ArtofSheri_DanceLife |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Deploy Sheri mail aliases for ArtOfSheri and Dance LifeReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=active; Subsystem=Mail Governance Implemented By: historical_backfill |
implemented | WSAI_MailAliasDeployment_ArtofSheri_DanceLife |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Role/capability gate for operations docsReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=active; Subsystem=WordPress Security Implemented By: historical_backfill |
implemented | WSAI_OperationalAccessControl_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Automated operational health monitorReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=Make / MariaDB / Dashboard Implemented By: historical_backfill |
implemented | WSAI_OperationalHealthMonitor_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Publish operational triage and health validation guideReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=Operations / Health Implemented By: historical_backfill |
implemented | WSAI_OperationalTriageAndHealthValidation_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Create queryable WSAI Program BacklogReason: Backlog initiative entered into planning system. Summary: Priority=critical; Status=active; Subsystem=MariaDB / Governance Implemented By: historical_backfill |
implemented | WSAI_ProgramBacklog_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Build WSAI Operator DashboardReason: Backlog initiative entered into planning system. Summary: Priority=critical; Status=active; Subsystem=WordPress / Operations UI Implemented By: historical_backfill |
implemented | WSAI_OperatorDashboard_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Finish WSAI Intake Watcher v2Reason: Backlog initiative entered into planning system. Summary: Priority=critical; Status=active; Subsystem=Make / Intake Implemented By: historical_backfill |
implemented | WSAI_IntakeWatcher_v2 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Design Audience Intelligence FrameworkReason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=planned; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_AudienceIntelligenceFramework_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Launch build-in-public social seriesReason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=active; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_BuildInPublicSeries_001 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Create public PDF: AI After 60Reason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=active; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_PublicPDF_002_AIAfter60 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Create public PDF: The AI Second ActReason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=active; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_PublicPDF_001_AISecondAct |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Define Airtable retention, synchronization, and migration strategyReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_ContentEngineMigrationStrategy_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Implement rollback execution framework after alerting lockReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=deferred; Subsystem=Infrastructure Implemented By: historical_backfill |
implemented | BLG_RollbackExecutionFramework_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Deploy WSAI Email Alias Manager to productionReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=planned; Subsystem=Infrastructure Implemented By: historical_backfill |
implemented | BLG_EmailAliasManager_ProductionDeployment_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Automate Product Registry in MariaDB and WordPressReason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=active; Subsystem=Platform Implemented By: historical_backfill |
implemented | BLG_ProductRegistry_MariaDBAutomation_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Integrate Airtable Content Engine with Product Registry governanceReason: Backlog initiative entered into planning system. Summary: Priority=strategic; Status=active; Subsystem=Content Platform Implemented By: historical_backfill |
implemented | BLG_ContentEngine_GovernanceIntegration_v1 |
| 2026-06-03 23:42:13 | backlog | historical_backfill |
Create Backlog Item: Create Make alert routes for deployment, SSH/module, and export failuresReason: Backlog initiative entered into planning system. Summary: Priority=high; Status=active; Subsystem=Infrastructure Implemented By: historical_backfill |
implemented | BLG_MakeAlerting_Routes_v1 |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: WSAI Database CatalogReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / WSAI Database Catalog. SHA256: 2c47c0e52010b8025822e8f21d95e376b5c1876a57c4ace874823d87e96293c4 Implemented By: historical_backfill |
implemented | Operations Manual / WSAI Database Catalog |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Runtime Inventory FrameworkReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Runtime Inventory Framework. SHA256: 3e472aaff6e7f9ec6d13c907ce9ef32f1b13742103722c09345d14295a3078b9 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Runtime Inventory Framework |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Repository IndexReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Repository Index. SHA256: 25f8fcb2a84e43d9ebddbe89a91f828fe020237faf163c292bb3d9ca310cef7a Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Repository Index |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Roundcube DeploymentReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Roundcube Deployment. SHA256: e10e5e2fa7214fdf3ca660df2f243046780d26c022f774ce55d707e90977b4f6 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Roundcube Deployment |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Domain Mail RoutingReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Domain Mail Routing. SHA256: 2e94e477c114507f490e0ef8b8d864927ad525f8bb6ea1a78599eebd685ea391 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Domain Mail Routing |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Email Alias ManagerReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Email Alias Manager. SHA256: a618161fe9e3d80e9be9128b9c2dd803b409c26992e392844e552b8e93d23d84 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Email Alias Manager |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Make Publishing OrchestrationReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Make Publishing Orchestration. SHA256: 9b7bd44d0ab21b3d229203b5fea998cbb0f85a8316e4905c77c03e7679b99e17 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Make Publishing Orchestration |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Operational Schema RegistryReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Operational Schema Registry. SHA256: b85dc81b1cc006275e0a7e2bcd7f3c9a7d7da6443f4f6edec3d2cc94d7c2a2c0 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Operational Schema Registry |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Bootstrap Repository Usage GuideReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Bootstrap Repository Usage Guide. SHA256: 58d0ad252f23c341909195da8e3b3428439b741614a8d99a81b83dd4385d7e05 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Bootstrap Repository Usage Guide |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Repository Governance StandardReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Repository Governance Standard. SHA256: 1e460d507409789efd3a3c994842d5eb2cd86f00ce5d027b4fe1533671eddb34 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Repository Governance Standard |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Operational Knowledge Base OverviewReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base / Operational Knowledge Base Overview. SHA256: 7651588637e901420a0fe7d210e79b73d8d3322937cc8a4efa063a96d522e4f1 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base / Operational Knowledge Base Overview |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Operational Knowledge BaseReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Knowledge Base. SHA256: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Knowledge Base |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Operational Authority ModelReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Operational Authority Model. SHA256: bdea8e994ffe7d6d84c6d1ef02983c025b4dec0566081bb214a1851f6d5448a8 Implemented By: historical_backfill |
implemented | Operations Manual / Operational Authority Model |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Documentation GovernanceReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Documentation Governance. SHA256: 0d6c2553ab0fdfdb9e8d7b6bc7f834d45dbc2d79b85a52433b544532ac70914f Implemented By: historical_backfill |
implemented | Operations Manual / Documentation Governance |
| 2026-06-03 23:42:13 | operational_guides | historical_backfill |
Publish Guide: Platform OverviewReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual / Platform Overview. SHA256: 46153f9f9bf8a313fc157531b04d5fbe736cf29c9d6c40d24756e3c993f977e6 Implemented By: historical_backfill |
implemented | Operations Manual / Platform Overview |
| 2026-06-03 23:39:18 | operational_guides | historical_backfill |
Publish Guide: Operations ManualReason: Operational guide published and added to the operational repository. Summary: Guide path: Operations Manual. SHA256: c37ad950fbda2e666389693b0af03e59e5e1304eb1ec41f85533527bc21fea6e Implemented By: historical_backfill |
implemented | Operations Manual |
| 2026-06-03 23:28:05 | operator_console | governance |
Start global operator change logReason: System-level changes need durable rationale beyond chat history. Summary: Created operator_change_log to capture application, schema, API, migration, UI, and governance changes. Implemented By: operator |
implemented | operator_change_log |
| 2026-06-03 23:28:05 | backlog | ui |
Add backlog detail page and controlled edit formReason: Operators need to view and safely update backlog items from the browser. Summary: Added /operator/backlog/item.php and editable status, priority, owner, and notes fields. Implemented By: operator |
implemented | /operator/backlog/item.php |
| 2026-06-03 23:28:05 | backlog | audit |
Add backlog event historyReason: Backlog edits require traceability of what changed, when, and why. Summary: Created operator_backlog_events and seeded imported events for existing backlog items. Implemented By: operator |
implemented | operator_backlog_events |
| 2026-06-03 23:28:05 | backlog | schema |
Create canonical backlog authorityReason: Backlog records existed in multiple systems and needed one operational authority. Summary: Created operator_backlog_items and consolidated product and program backlog sources into one canonical table/view. Implemented By: operator |
implemented | operator_backlog_items |
| 2026-06-03 23:28:05 | operational_guides | migration |
Migrate operational guides from WordPress into MariaDBReason: Operational guides needed API access for browser views, Make, AI context, and future MCP consumption. Summary: Created operator_guides and guide APIs; added /operator/guides/ browser. Implemented By: operator |
implemented | operator_guides |
| 2026-06-03 23:28:05 | operator_console | architecture |
Move operational work from WordPress pages to Operator ConsoleReason: WordPress was creating friction for dynamic operational applications, scripts, tables, and API-driven context. Summary: Created /operator/ as the working operational console while keeping WordPress as archive/publishing authority. Implemented By: operator |
implemented | /operator/ |
| 2026-06-03 23:20:00 | changelog | audit |
Create historical change-log draft workflowReason: Historical changes should be captured without relying on conversation memory. Summary: Created operator_change_log_drafts, seeded guide/backlog drafts, built draft review UI, and bulk promotion workflow. Implemented By: historical_reconstruction |
implemented | operator_change_log_drafts |
| 2026-06-03 23:00:00 | backlog | application |
Enable controlled backlog editsReason: Backlog should be maintained from Operator Console. Summary: Added controlled editing of status, priority, owner, and notes with event capture; fixed DB grants to permit writes. Implemented By: historical_reconstruction |
implemented | /operator/backlog/update.php |
| 2026-06-03 22:30:00 | backlog | application |
Add backlog item detail and event historyReason: Operators need item-level view and audit history. Summary: Added /operator/backlog/item.php, seeded imported events, and changed list links to human detail pages. Implemented By: historical_reconstruction |
implemented | /operator/backlog/item.php |
| 2026-06-03 22:00:00 | backlog | schema |
Consolidate all backlog sources into operator_backlog_itemsReason: End state requires one backlog system, no legacy split. Summary: Created operator_backlog_items and operator_backlog_events, loaded product and program backlog sources, and created v_operator_backlog_active. Implemented By: historical_reconstruction |
implemented | operator_backlog_items |
| 2026-06-03 21:30:00 | backlog | application |
Create Backlog Manager browser/APIReason: Backlog needed a dedicated application backed by MariaDB. Summary: Built /operator/backlog/ and backlog APIs, initially against product backlog view, then moved to consolidated view. Implemented By: historical_reconstruction |
implemented | /operator/backlog/ |
| 2026-06-03 21:00:00 | guides | application |
Create Operational Guide BrowserReason: Humans needed normal browser access to migrated guides. Summary: Built /operator/guides/ with search, guide list, detail rendering, metadata, and JSON links. Implemented By: historical_reconstruction |
implemented | /operator/guides/ |
| 2026-06-03 20:30:00 | operator_console | api |
Create Operator API for guides and AI contextReason: AI/Make/MCP need machine-readable operational context. Summary: Added guide APIs including guide index, guide detail, guide search, and ai-context endpoints. Implemented By: historical_reconstruction |
implemented | /operator/api/ |
| 2026-06-03 20:00:00 | operator_console | architecture |
Choose raw Apache Operator Console over WordPress for appsReason: WordPress stripped scripts and created friction for dynamic operational tooling. Summary: Pivoted Operator Console to raw Apache/PHP under /operator/ for speed, less restriction, and future UI/API expansion. Implemented By: historical_reconstruction |
implemented | WSAI_OperatorConsole_v1 |
| 2026-06-03 19:00:00 | database_catalog | application |
Create Database Catalog pageReason: Databases and schema needed documentation in the Operations Guide. Summary: Generated and published WSAI Database Catalog, linked from Operations Manual first page, then pivoted toward dynamic Operator app. Implemented By: historical_reconstruction |
implemented | WSAI Database Catalog |
| 2026-06-03 18:00:00 | real_world_resolution | content |
Capture Blue Rose Retreats running toilet lived-experience itemReason: Real operational/property issues should become future content and work items. Summary: Created WSAI_RealWorldProblemResolutionLibrary_v1 page/work item for toilet flapper diagnosis using food dye test. Implemented By: historical_reconstruction |
implemented | WSAI_RealWorldProblemResolutionLibrary_v1 |
| 2026-06-03 13:00:00 | commands | governance |
Lock server-console command styleReason: Operator asked to avoid PowerShell wrappers when already connected to server. Summary: Locked command responses: WEB/MAIL targets use direct server-console bash; PowerShell only for workstation tasks. Implemented By: historical_reconstruction |
implemented | WSAI Command Response Standard |
| 2026-06-03 12:00:00 | intake | governance |
Lock Make intake filter for shell packagesReason: Unsafe or irrelevant files should be blocked before download. Summary: Locked Make Watch Files → Get File filter with filename ends with .sh; .json/.sha256 blocked before download. Implemented By: historical_reconstruction |
implemented | WSAI Intake Governance |
| 2026-06-03 11:00:00 | governance |
Lock Sheri alias routing for new domainsReason: New domains needed default mailbox routing rules. Summary: Locked sheri@artofsheri.com and sheri@dancelifeclothing.com to deliver to Sheri mailbox identity by default. Implemented By: historical_reconstruction |
implemented | Sheri Mail Governance | |
| 2026-06-03 10:30:00 | governance |
Lock DKIM selector standardReason: New mail domains need repeatable DKIM onboarding. Summary: Locked selector wsai2026 and validated DKIM public key as the current standard for new mail domains unless key rotation authority replaces it. Implemented By: historical_reconstruction |
implemented | DKIM Selector wsai2026 | |
| 2026-06-03 10:00:00 | dns | governance |
Lock segmented DKIM TXT handlingReason: DKIM public keys exceed DNS string length limits. Summary: Locked multi-segment quoted DKIM TXT records for Route53/DNS automation and mail-domain onboarding. Implemented By: historical_reconstruction |
implemented | DKIM TXT Governance |
| 2026-06-03 09:00:00 | workspace | governance |
Lock canonical WSAI root pathReason: Workspace path confusion caused artifact placement risk. Summary: Locked canonical OneDrive_new WSAI root as authoritative default and prohibited creating missing root automatically. Implemented By: historical_reconstruction |
implemented | WSAI Workspace Path Governance |
| 2026-06-02 09:00:00 | operator_console | governance |
Prefer Make prompts/modules over manual server commandsReason: Long-term operations should move away from direct manual server work. Summary: Locked Make-first direction for AI calls, server-side scripts, discovery, capture, and documentation workflows. Implemented By: historical_reconstruction |
implemented | Make First Operations |
| 2026-06-01 12:00:00 | server_ops | governance |
Stop manual nano editing guidanceReason: Manual file edits increase drift and error risk. Summary: Locked script/package-based server updates instead of telling operator to edit files manually in nano. Implemented By: historical_reconstruction |
implemented | Operational Command Standard |
| 2026-06-01 11:00:00 | content | strategy |
Lock build-in-public failure captureReason: Deployment debugging produced reusable public content. Summary: Captured package naming, StrictMode failures, logs, FailureSnapshot, intake lifecycle, and Make/SSH lessons as public content angles. Implemented By: historical_reconstruction |
implemented | Build In Public Content |
| 2026-06-01 10:00:00 | merch | strategy |
Lock merch as meaningful revenue streamReason: Merch was identified as more than background branding. Summary: Updated strategy to treat merch as likely high-revenue stream with Etsy/Printify and seasonal opportunity planning. Implemented By: historical_reconstruction |
implemented | Merch Strategy |
| 2026-06-01 09:00:00 | content | strategy |
Lock Infrastructure Serves Content strategic pivotReason: Infrastructure build should support content, monetization, and public trust. Summary: Locked infrastructure as content source and public build-in-public narrative rather than purely internal engineering. Implemented By: historical_reconstruction |
implemented | ADR-WSAI-0002 |
| 2026-05-31 14:00:00 | make_ssh | contract |
Lock machine-readable stdout contractReason: Make Parse JSON requires clean stdout. Summary: Locked stdout as machine-readable JSON only and stderr for human logs and banners across server-side runners. Implemented By: historical_reconstruction |
implemented | Make SSH Command Contract |
| 2026-05-31 13:00:00 | deployment | governance |
Treat duplicate browser ZIP suffixes as contaminationReason: Duplicate download artifacts caused package ambiguity. Summary: Locked duplicate browser suffix files like (1).zip as intake contamination, not normal package versions. Implemented By: historical_reconstruction |
implemented | Deployment Intake Governance |
| 2026-05-31 12:00:00 | deployment | governance |
Lock three-tier deployment loggingReason: Deployments needed immutable evidence and analytics-ready history. Summary: Locked per-run logs, package history logs, and global DeploymentRegistry.csv with FailureSnapshot.json on failure. Implemented By: historical_reconstruction |
implemented | WSAI_DeploymentGovernance_v1 |
| 2026-05-31 11:00:00 | runtime_inventory | publication |
Publish Runtime Inventory FrameworkReason: Operational reality needed documented runtime inventory. Summary: Published Runtime Inventory Framework and related inventory categories including apache, dns, filesystem, MariaDB, scripts, scheduler, server, validation, and WordPress multisite. Implemented By: historical_reconstruction |
implemented | WSAI_RuntimeInventory_v1 |
| 2026-05-31 10:00:00 | knowledge_base | publication |
Publish Operational Knowledge BaseReason: Subsystem documentation needed an indexed private repository. Summary: Published Operational Knowledge Base overview, repository governance, bootstrap guide, and subsystem pages. Implemented By: historical_reconstruction |
implemented | Operational Knowledge Base |
| 2026-05-31 09:00:00 | operations_manual | publication |
Publish Operations Manual initial pagesReason: Operational authority needed private documentation. Summary: Published Platform Overview, Documentation Governance, and Operational Authority Model under Operations Manual. Implemented By: historical_reconstruction |
implemented | Operations Manual |
| 2026-05-30 15:00:00 | governance |
Document mail host ping behaviorReason: ICMP was intentionally blocked and should not trigger false outage response. Summary: Locked service-port validation over ping for mail.wickedspooky.org; IMAPS 993 and SMTP 587 are authoritative checks. Implemented By: historical_reconstruction |
implemented | Mail Connectivity Validation | |
| 2026-05-30 14:00:00 | workspace | governance |
Lock OneDrive workspace authorityReason: Artifacts needed a single workstation-side authority. Summary: Established OneDrive WSAI workspace structure for artifacts, bootstrap packages, scripts, docs, backups, snapshots, and logs. Implemented By: historical_reconstruction |
implemented | OneDrive WSAI Workspace |
| 2026-05-30 13:00:00 | operations | governance |
Standardize PowerShell to SSH operator workflowReason: Operations needed consistent workstation-to-server execution. Summary: Locked PowerShell as operator console, SSH as transport, and servers as execution targets. Implemented By: historical_reconstruction |
implemented | Operator Console Standard |
| 2026-05-30 12:00:00 | roundcube | validation |
Validate Roundcube send/receiveReason: Webmail needed production proof. Summary: Validated HTTPS Roundcube login, IMAPS 993, SMTP submission 587, send and receive through mail.wickedspooky.org. Implemented By: historical_reconstruction |
implemented | Roundcube Production Validation |
| 2026-05-30 11:00:00 | roundcube | architecture |
Validate Roundcube target architectureReason: Webmail should not be installed on the mail host. Summary: Locked Roundcube on web behind Apache as webmail.wickedspooky.org; mail host remains Postfix/Dovecot only. Implemented By: historical_reconstruction |
implemented | WSAI_RoundcubeDeployment_v1 |
| 2026-05-30 10:00:00 | architecture |
Separate alias governance from DNS routingReason: Aliases can exist before public MX routing is valid. Summary: Locked domain routing/DNS state separately from alias state, including MX, DNS validation, mail routing status, and last verification timestamp. Implemented By: historical_reconstruction |
implemented | Domain Mail Routing Governance | |
| 2026-05-30 09:00:00 | architecture |
Separate mailbox identity from alias governanceReason: Shared aliases needed visibility by authorized mailbox, not one global mailbox. Summary: Locked mailbox identities as domain-independent and aliases as domain-specific governed objects with alias-to-mailbox authorization mapping. Implemented By: historical_reconstruction |
implemented | WSAI_EmailAliasManager_v1 | |
| 2026-05-29 18:00:00 | mariadb | governance |
Standardize Make to SSH to local MariaDBReason: Direct Make-to-MariaDB exposure was not preferred. Summary: Locked Make → SSH → server-side local MariaDB execution as the standard DB automation pattern. Implemented By: historical_reconstruction |
implemented | Make SSH MariaDB Standard |
| 2026-05-29 17:00:00 | publishing | schema |
Create publisher validation gate viewReason: Publishing needed a database-enforced readiness check. Summary: Created and validated v_publishing_items_ready_to_publish requiring taxonomy, media, and WordPress draft readiness. Implemented By: historical_reconstruction |
implemented | v_publishing_items_ready_to_publish |
| 2026-05-29 16:00:00 | publishing | validation |
Validate end-to-end publishing MVPReason: The publishing chain needed proof before hardening. Summary: Validated queued through published lifecycle with image, media manager, taxonomy mapper, and publisher validation gates. Implemented By: historical_reconstruction |
implemented | Publishing MVP |
| 2026-05-29 12:00:00 | media | architecture |
Adopt provider-flexible media generationReason: Media generation needs OpenAI, Replicate, and manual asset flexibility. Summary: Allowed OpenAI for tests, Replicate for LoRA/persona work, and OneDrive/Dropbox/manual assets as sources. Implemented By: historical_reconstruction |
implemented | WSAI_FeaturedImageGenerator_v1 |
| 2026-05-29 11:00:00 | media | governance |
Require featured images before publishingReason: Published posts require approved branded imagery. Summary: Locked featured image governance and media_ready step before taxonomy_mapped and published. Implemented By: historical_reconstruction |
implemented | Featured Image Governance |
| 2026-05-29 10:00:00 | publishing | governance |
Require taxonomy mapping before publishingReason: Unmapped categories/tags could create inconsistent public content. Summary: Added taxonomy_mapped lifecycle state and taxonomy mapping status before final publish. Implemented By: historical_reconstruction |
implemented | Taxonomy Governance |
| 2026-05-29 09:00:00 | publishing | architecture |
Lock publishing lifecycle with taxonomy and media gatesReason: Publishing needed governance before public release. Summary: Locked lifecycle queued → ai_draft → human_review → approved → wordpress_draft_created → media_ready → taxonomy_mapped → published. Implemented By: historical_reconstruction |
implemented | WSAI_MakePublishingOrchestration_v1 |
| 2026-05-26 12:00:00 | infrastructure | wordpress |
Fix WordPress login cookie/proxy behaviorReason: Admin login needed to work reliably behind HTTPS/proxy routing. Summary: Corrected cookie/proxy behavior including forwarded protocol handling for WordPress login stability. Implemented By: historical_reconstruction |
implemented | WordPress Login |
| 2026-05-26 11:00:00 | infrastructure | wordpress |
Validate WordPress multisite baselineReason: Brand sites required a stable publishing foundation. Summary: Validated WordPress multisite setup, GeneratePress theme, core pages, menus, permalinks, and production brand site structure. Implemented By: historical_reconstruction |
implemented | WordPress Multisite |
| 2026-05-26 10:00:00 | workspace | governance |
Establish artifact package preferenceReason: Curated artifact packages are more reliable than raw conversation exports. Summary: Preferred curated operational artifact packages for milestone ingestion into Make, MariaDB, RAG, and archives. Implemented By: historical_reconstruction |
implemented | Artifact Lifecycle |
| 2026-05-26 09:00:00 | bootstrap | governance |
Lock artifact/bootstrap trigger rulesReason: Major pivots need durable package generation instead of relying on raw chat history. Summary: Locked trigger phrases including Lock the artifacts and Bootstrap Pivot and Artifact Update Recommended for artifact packages and bootstrap updates. Implemented By: historical_reconstruction |
implemented | WSAI_BootstrapControl |