GUBUS WORKFEED
Workfeed is GUBUS's primary OUTPUT and DATA HOLDING pattern for persisting data in Google Sheets.
Think of it as your spreadsheet database - maintaining historical records and serving as permanent storage.
Workfeed provides a flexible, brand APPEND-ON-TOP feed where data accumulates over time. Unlike Multipanel (which is static and auto-cleaned), workfeed is flexible container, that may grow via new rows posting.
Workfeed is your go-to pattern for permanent data storage. Perfect for transaction logs, order history, and workflow queues.
When to use Workfeed:
- Historical transaction logs
- Order/invoice history
- Status change tracking
- Workflow queues with position tracking
How Workfeed Works
In READ Stage
[Read workfeed] → [Check resolve condition] → [Validate] → [Compose] → [localObjs]
→ [Optional resolve]
- Checks
resolvecondition viaresolve_type(simple) or advancedchecker - Extracts and validates data, maps using
modeltoschemaContext.localObjs - Creates summary message via built-in composer
- Executes resolve strategy (clean/delete/mark rows)
Common pattern: resolve=“checkbox_off”
with done_coord_field_name for safe queue processing.
In POST Stage
[localObjs] → [Map to workfeed fields] → [Insert at insert_before_row]
Posts data at insert_before_row position (typically row 2). Newest data appears first, older data pushes down automatically.
Supports multiple references: “feed1, feed2”. When reading multiple feeds, TRANSFORM and TARGET are FORBIDDEN - pass execution via next_schema.
Key Properties
Essential Configuration
Advanced Features
Always set resolve strategy and enable provide_validation. For complex conditions, use checker.
Read Resolution Logic
Simple Mode (Single Condition)
Set resolve_type to one of:
checkbox_true- Checkbox must be checkedcell_not_empty- Field must have any valuedate_earlier- Date must be in the pastdate_today- Date must be today
Complex Mode (Multi-Condition)
Set resolve_type: "checker" and configure checker array for AND logic validation.
All checkers must pass for row to be considered “done”.
See GUBUS CHECKER for complete documentation with 15+ check commands.
Resolve Strategies
After reading “done” rows, execute action defined by resolve:
eliminate_row- Delete rows permanentlycheckbox_off- Uncheck the checkbox (safe for review)clean_fields- Clear field values but keep rowset_field_value- Set specific value in field
Use checkbox_off for workflow queues - data is marked as read but not deleted, allowing review.
Common Use Cases
Use Case 1: Transaction History
Scenario: Storing all financial transactions for audit and reporting.
Schema Flow:
READ payment multipanel
→ VALIDATE transaction
→ POST to transaction workfeed
→ POST to balance updates
Why Workfeed? Transactions need permanent storage and historical tracking for compliance.
Use Case 2: Workflow Queue with Checkbox
Scenario: Production items that need processing by different workers.
Setup:
resolve_type: “checkbox_true”done_coord_field_name: “is_completed”resolve: “checkbox_off”positions_watched: “simple”
Schema Flow:
READ production workfeed (where is_completed checkbox is checked)
→ TRANSFORM assign worker
→ CALL Workflow module
→ POST to completion log
→ RESOLVE: uncheck checkboxes (safe review)
Why Workfeed? Items are processed asynchronously and need state tracking. Checkbox approach allows review of processed items.
Use Case 3: Complex Multi-Condition Processing
Scenario: Process orders that are both ready AND have confirmed payment.
Setup:
resolve_type: “checker”checker: Multiple validation rules (see GUBUS CHECKER)resolve: “eliminate_row”
Schema Flow:
READ orders workfeed (checker: is_ready=true AND payment_status="confirmed")
→ TRANSFORM prepare shipment
→ POST to shipment workfeed
→ RESOLVE: eliminate processed orders
Why complex checker? Need to validate multiple conditions before processing.
Schema Integration
READ Configuration
Properties to set:
source_type: “WORKFEED”source_reference: Workfeed reference (supports multiple:"feed1, feed2, feed3")- ✅ Supports multiple references with comma separation
- ⚠️ If multiple references present - TRANSFORM and TARGET setup FORBIDDEN in this schema
- Use
next_schemato pass execution further
POST Configuration
Properties to set:
target_type: “WORKFEED”target_names: Workfeed references (supports multiple:"feed1, feed2")- ✅ Supports multiple references (advanced use!)
- Data posted to all specified workfeeds
- Ensure localObjs structure matches target workfeed model
Target workfeed model must match localObjs structure after TRANSFORM stage.
Example Flows
Example 1: Simple Queue Processing
Schema: processTaskQueue
├─ READ: taskQueue (workfeed)
├─ TRANSFORM: validate, assignWorker, calculatePriority
└─ POST: taskHistoryFeed (workfeed - permanent log)
Example 2: Multi-Workfeed Aggregation
Schema: aggregateMultipleSources
├─ READ: "salesFeed, expensesFeed, refundsFeed" (workfeed)
│ └─ TRANSFORM: FORBIDDEN
│ └─ POST: FORBIDDEN
└─ NEXT_SCHEMA: processAggregatedData
When reading multiple workfeeds, use inner schemas with source_type: SIDE_OBJ for processing.
Best Practices
✅ Do’s:
- Use descriptive
referencenames (camelCase: “orderHistoryFeed”) - Set
resolve_typeandresolvestrategy explicitly - Enable
provide_validationand configure built-in composer - Use
checkbox_offfor safe workflow queues - Use
checkerfor complex multi-condition validation
❌ Don’ts:
- Don’t enable
positions_watchedwithout workflow needs - Don’t use workfeed for temporary data (use Multipanel)
- Don’t use TRANSFORM when reading multiple workfeeds
- Don’t forget to configure
resolvestrategy
Creating a New Workfeed
Option 1: Use INJECT PATTERN Flow (Hard & boring)
- Create header in Google Sheet with user-friendly field names
- Go to admin_server →
inject_patternpanel - Detect pattern: Choose “workfeed”, enter
referencename, assigntable_id/sheet_name - Map fields: GUBUS auto-creates
modelandfront_to_pivot_model - Configure: Set
insert_before_row,resolve_type,resolvestrategy, enableprovide_validation - Configure checker (if complex validation needed) - see GUBUS CHECKER
- Test before production use
Option 2: AI Flow (Recommended)
Use GUBUS AI on developer page (already available via “Develop gracefully” button in dev dashboard) for automated setup.
Required:
- Your understanding of what and what for you want to instantiate
- Describe read conditions clearly if complex checker needed
Summary
Workfeed = Permanent Storage
- ✅ All data, transaction logs, workflow queues
- ✅ Reverse-chronological order (newest first via
insert_before_row: 2) - ✅ Advanced read logic (simple or complex checker)
- ✅ Multiple resolve strategies
- ✅ Supports multiple references and read modes
- ❌ NOT for temporary data (use Multipanel)
Key Characteristics:
- Inserts at
insert_before_row(newest first) - Advanced read logic via
resolve_typeorchecker - Multiple resolve strategies (eliminate, checkbox_off, clean, set_value)
- Position tracking for workflows and FlexItems
- Validates with user-friendly errors (
provide_validation)
Next Steps
👉 GUBUS CHECKER → - Complex multi-condition validation 👉 GUBUS MULTIPANEL → - Temporary data input patterns 👉 GUBUS SCHEMA → - Schema execution workflows 👉 ← Back to Getting Started - Main documentation