@wildo-ai/platform-core-shared 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/esm/index.d.ts +7 -0
  2. package/dist/esm/index.d.ts.map +1 -1
  3. package/dist/esm/index.js +7 -0
  4. package/dist/esm/index.js.map +1 -1
  5. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.d.ts +3 -3
  6. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.d.ts.map +1 -1
  7. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.js +39 -8
  8. package/dist/esm/wildo-application-executions/wildo-application-executions.custom.shared.resources-config.schemas.js.map +1 -1
  9. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.d.ts +4 -3
  10. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.d.ts.map +1 -1
  11. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.js +37 -6
  12. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.resources-config.schemas.js.map +1 -1
  13. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.d.ts +1 -0
  14. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.d.ts.map +1 -1
  15. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.js +13 -0
  16. package/dist/esm/wildo-application-tasks/wildo-application-tasks.custom.shared.schemas.js.map +1 -1
  17. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.d.ts +100 -0
  18. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.d.ts.map +1 -0
  19. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.js +578 -0
  20. package/dist/esm/workbench/workbench-aspect-resources.custom.shared.schemas.js.map +1 -0
  21. package/dist/esm/workbench/workbench-creation-board.custom.shared.schemas.d.ts +98 -0
  22. package/dist/esm/workbench/workbench-creation-board.custom.shared.schemas.d.ts.map +1 -0
  23. package/dist/esm/workbench/workbench-creation-board.custom.shared.schemas.js +86 -0
  24. package/dist/esm/workbench/workbench-creation-board.custom.shared.schemas.js.map +1 -0
  25. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.d.ts +157 -0
  26. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.d.ts.map +1 -0
  27. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.js +258 -0
  28. package/dist/esm/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.js.map +1 -0
  29. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.d.ts +221 -0
  30. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.d.ts.map +1 -0
  31. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.js +292 -0
  32. package/dist/esm/workbench/workbench-creation-plane.custom.shared.schemas.js.map +1 -0
  33. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.d.ts +48 -0
  34. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.d.ts.map +1 -0
  35. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.js +48 -0
  36. package/dist/esm/workbench/workbench-domain-model.custom.shared.schemas.js.map +1 -0
  37. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.d.ts +146 -6
  38. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.d.ts.map +1 -1
  39. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.js +256 -8
  40. package/dist/esm/workbench/workbench-resources-types.custom.shared.schemas.js.map +1 -1
  41. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.d.ts +280 -55
  42. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.d.ts.map +1 -1
  43. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.js +191 -85
  44. package/dist/esm/workbench/workbench-resources.custom.shared.resources-config.schemas.js.map +1 -1
  45. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.d.ts +227 -49
  46. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.d.ts.map +1 -1
  47. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.js +466 -78
  48. package/dist/esm/workbench/workbench-resources.custom.shared.schemas.js.map +1 -1
  49. package/dist/tsconfig.build.tsbuildinfo +1 -1
  50. package/package.json +4 -5
  51. package/dist/esm/.builder.pid +0 -9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workbench-aspect-resources.custom.shared.schemas.js","sourceRoot":"","sources":["../../../../src/workbench/workbench-aspect-resources.custom.shared.schemas.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CoreResourceOperation,\n CoreResourceType,\n IntrospectionTenancyStance,\n PersistenceAdapter,\n RelationshipNature,\n ResourceParentResourceRequirement,\n ResourceRelationship,\n ResourceRelationshipAccessScopeStrategy,\n ResourceRelationshipCardinality,\n createResourceConfiguration_Initialization,\n createResourcesRelationship,\n} from '@wildo-ai/saas-models';\nimport { z } from 'zod';\nimport { initZodDecorators } from '@wildo-ai/zod-decorators';\n\n// Decorator methods must exist before the module-load-time envelope builds below.\ninitZodDecorators();\n\nimport {\n WorkbenchShared_ResourceFieldIdentifier,\n WorkbenchShared_ResourceType,\n} from './workbench-resources-types.custom.shared.schemas';\nimport {\n createReadOnlyApiVariant,\n createReadOnlyListApiVariant,\n} from './workbench-resources.custom.shared.resources-config.schemas';\n\n/**\n * FAMILY ASPECT RESOURCES — the spine's schema-agnostic transcription of\n * `FAMILY_ASPECTS_REGISTRY` (`@wildo-ai/saas-specifications`, `_core/family-aspects.*`).\n *\n * ## The split, restated where it is enforced\n *\n * The registry is AUTHORITATIVE: item schemas, business keys, edges, all declared beside the\n * `_core` family schemas (decided 2026-09-01). The spine cannot import it — platform-core-shared\n * deliberately never depends on saas-specifications — so this module carries plain DATA: which\n * aspects exist, which envelope fields carry references, and which resource each reference\n * resolves to. A companion-side parity test holds this table to the registry; drift between the\n * two is a failing test, never a silent divergence.\n *\n * ## The envelope\n *\n * Aspect rows share ONE envelope shape (identity, family backlink, headline, the full item as a\n * raw record) plus the aspect's own FLATTENED reference fields. Flattening is the projection's\n * job and is what makes every edge a PLAIN foreign key the engine already resolves:\n *\n * - weighted edge objects flatten to key arrays (`jobs[].jobRef` → `jobIds`),\n * - multi-target fields split per target (`deliversRequirementRefs` →\n * `deliversFunctionalRequirementIds` + `deliversNonFunctionalRequirementIds`), because the\n * frontend resolves an FK field name to ONE resource — a mixed-kind array has no honest single\n * answer, and split fields read better anyway,\n * - every field name below maps to exactly one target across ALL aspects (collision-audited at\n * generation; the parity test re-checks it).\n *\n * The `family` field is the artifact BACKLINK for free: it is the specification-artifacts\n * resource's own field identifier, so the global field-identifier map already resolves it.\n */\n\n/**\n * How an aspect row gets its identity — mirrors the registry's `businessKey` contract.\n *\n * The three are not interchangeable and the fallback order between them is the point: a collection\n * whose schema declares a single-field key is addressed by it, a singleton has one row per family so\n * the aspect key IS the identity, and a keyless collection falls back to a positional address that is\n * stable per landed snapshot and honest about carrying no business meaning.\n */\nexport enum WorkbenchAspectIdentityKind {\n /** The item's own business key (`ref`, `taskRef`, …), unique within the aspect. */\n BUSINESS_KEY = 'business-key',\n /** One row per family — identity is the aspect key itself. */\n SINGLETON = 'singleton',\n /** Keyless collection (locale × jurisdictions): `<aspectKey>[<index>]`, stable per snapshot. */\n INDEXED = 'indexed',\n}\n\nexport interface WorkbenchAspectEdgeDescriptor {\n /** Envelope field carrying the reference key(s) — post-flatten, post-split. */\n readonly field: string;\n /** The registry aspect key the reference resolves to. */\n readonly targetAspectKey: string;\n /** `true` = key array; `false` = single key. */\n readonly many: boolean;\n}\n\nexport interface WorkbenchAspectDescriptor {\n /** The registry aspect key (`market.icp`) — the parity test's join column. */\n readonly aspectKey: string;\n readonly resourceType: WorkbenchShared_ResourceType;\n /** The introspection payload member this resource reads its rows from. */\n readonly rowsPath: string;\n readonly identity: WorkbenchAspectIdentityKind;\n readonly edges: readonly WorkbenchAspectEdgeDescriptor[];\n}\n\nexport const WORKBENCH_ASPECT_DESCRIPTORS: readonly WorkbenchAspectDescriptor[] = [\n {\n aspectKey: 'vision.idea',\n resourceType: WorkbenchShared_ResourceType.ASPECT_VISION_IDEA,\n rowsPath: 'visionIdeas',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'vision.problem',\n resourceType: WorkbenchShared_ResourceType.ASPECT_VISION_PROBLEM,\n rowsPath: 'visionProblems',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'vision.mission',\n resourceType: WorkbenchShared_ResourceType.ASPECT_VISION_MISSION,\n rowsPath: 'visionMissions',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'vision.success-criterion',\n resourceType: WorkbenchShared_ResourceType.ASPECT_VISION_SUCCESS_CRITERION,\n rowsPath: 'visionSuccessCriteria',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'vision.constraint',\n resourceType: WorkbenchShared_ResourceType.ASPECT_VISION_CONSTRAINT,\n rowsPath: 'visionConstraints',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.category',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_CATEGORY,\n rowsPath: 'marketCategories',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'market.icp',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_ICP,\n rowsPath: 'marketIcps',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'personaIds', targetAspectKey: 'market.persona', many: true },\n { field: 'jobIds', targetAspectKey: 'market.job', many: true },\n { field: 'painIds', targetAspectKey: 'market.pain', many: true },\n { field: 'gainIds', targetAspectKey: 'market.gain', many: true },\n { field: 'channelIds', targetAspectKey: 'market.channel', many: true },\n { field: 'triggerIds', targetAspectKey: 'market.trigger', many: true },\n { field: 'alternativeIds', targetAspectKey: 'market.alternative', many: true },\n { field: 'proofIds', targetAspectKey: 'market.proof', many: true },\n { field: 'objectionIds', targetAspectKey: 'market.objection', many: true },\n { field: 'preferredVoiceId', targetAspectKey: 'market.tone-of-voice', many: false },\n ],\n },\n {\n aspectKey: 'market.persona',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_PERSONA,\n rowsPath: 'marketPersonas',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'belongsToIcpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'jobIds', targetAspectKey: 'market.job', many: true },\n { field: 'painIds', targetAspectKey: 'market.pain', many: true },\n { field: 'gainIds', targetAspectKey: 'market.gain', many: true },\n { field: 'channelIds', targetAspectKey: 'market.channel', many: true },\n { field: 'preferredVoiceId', targetAspectKey: 'market.tone-of-voice', many: false },\n ],\n },\n {\n aspectKey: 'market.job',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_JOB,\n rowsPath: 'marketJobs',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.pain',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_PAIN,\n rowsPath: 'marketPains',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.gain',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_GAIN,\n rowsPath: 'marketGains',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.tone-of-voice',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_TONE_OF_VOICE,\n rowsPath: 'marketTonesOfVoice',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.benefit',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_BENEFIT,\n rowsPath: 'marketBenefits',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'deliveredByFeatureIds', targetAspectKey: 'feature-drafts.draft', many: true },\n { field: 'painIds', targetAspectKey: 'market.pain', many: true },\n { field: 'gainIds', targetAspectKey: 'market.gain', many: true },\n { field: 'jobIds', targetAspectKey: 'market.job', many: true },\n { field: 'icpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'proofIds', targetAspectKey: 'market.proof', many: true },\n { field: 'addressesObjectionIds', targetAspectKey: 'market.objection', many: true },\n ],\n },\n {\n aspectKey: 'market.positioning',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_POSITIONING,\n rowsPath: 'marketPositionings',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'icpId', targetAspectKey: 'market.icp', many: false },\n { field: 'preferredVoiceId', targetAspectKey: 'market.tone-of-voice', many: false },\n { field: 'benefitIds', targetAspectKey: 'market.benefit', many: true },\n { field: 'alternativeIds', targetAspectKey: 'market.alternative', many: true },\n ],\n },\n {\n aspectKey: 'market.channel',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_CHANNEL,\n rowsPath: 'marketChannels',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.alternative',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_ALTERNATIVE,\n rowsPath: 'marketAlternatives',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'market.trigger',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_TRIGGER,\n rowsPath: 'marketTriggers',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'affectedIcpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'recommendedChannelIds', targetAspectKey: 'market.channel', many: true },\n ],\n },\n {\n aspectKey: 'market.buying-journey',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_BUYING_JOURNEY,\n rowsPath: 'marketBuyingJourneys',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'icpId', targetAspectKey: 'market.icp', many: false },\n ],\n },\n {\n aspectKey: 'market.proof',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_PROOF,\n rowsPath: 'marketProofs',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'supportsBenefitIds', targetAspectKey: 'market.benefit', many: true },\n { field: 'supportsIcpIds', targetAspectKey: 'market.icp', many: true },\n ],\n },\n {\n aspectKey: 'market.objection',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_OBJECTION,\n rowsPath: 'marketObjections',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'raisedByIcpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'raisedByPersonaIds', targetAspectKey: 'market.persona', many: true },\n { field: 'proofIds', targetAspectKey: 'market.proof', many: true },\n { field: 'relatedBenefitIds', targetAspectKey: 'market.benefit', many: true },\n ],\n },\n {\n aspectKey: 'market.message-template',\n resourceType: WorkbenchShared_ResourceType.ASPECT_MARKET_MESSAGE_TEMPLATE,\n rowsPath: 'marketMessageTemplates',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'preferredVoiceId', targetAspectKey: 'market.tone-of-voice', many: false },\n ],\n },\n {\n aspectKey: 'requirements.functional',\n resourceType: WorkbenchShared_ResourceType.ASPECT_REQUIREMENT_FUNCTIONAL,\n rowsPath: 'functionalRequirements',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'icpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'jobIds', targetAspectKey: 'market.job', many: true },\n ],\n },\n {\n aspectKey: 'requirements.non-functional',\n resourceType: WorkbenchShared_ResourceType.ASPECT_REQUIREMENT_NON_FUNCTIONAL,\n rowsPath: 'nonFunctionalRequirements',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'icpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'jobIds', targetAspectKey: 'market.job', many: true },\n ],\n },\n {\n aspectKey: 'feature-drafts.draft',\n resourceType: WorkbenchShared_ResourceType.ASPECT_FEATURE_DRAFT,\n rowsPath: 'featureDrafts',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'roadmap.phase',\n resourceType: WorkbenchShared_ResourceType.ASPECT_ROADMAP_PHASE,\n rowsPath: 'roadmapPhases',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'deliversFunctionalRequirementIds', targetAspectKey: 'requirements.functional', many: true },\n { field: 'deliversNonFunctionalRequirementIds', targetAspectKey: 'requirements.non-functional', many: true },\n { field: 'deliversSuccessCriterionIds', targetAspectKey: 'vision.success-criterion', many: true },\n ],\n },\n {\n aspectKey: 'business-model.plan',\n resourceType: WorkbenchShared_ResourceType.ASPECT_PRICING_PLAN,\n rowsPath: 'pricingPlans',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'targetIcpIds', targetAspectKey: 'market.icp', many: true },\n { field: 'includesFunctionalRequirementIds', targetAspectKey: 'requirements.functional', many: true },\n { field: 'includesNonFunctionalRequirementIds', targetAspectKey: 'requirements.non-functional', many: true },\n ],\n },\n {\n aspectKey: 'brand.name',\n resourceType: WorkbenchShared_ResourceType.ASPECT_BRAND_NAME,\n rowsPath: 'brandNames',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'brand.logo-direction',\n resourceType: WorkbenchShared_ResourceType.ASPECT_BRAND_LOGO_DIRECTION,\n rowsPath: 'brandLogoDirections',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'brand.visual-tone',\n resourceType: WorkbenchShared_ResourceType.ASPECT_BRAND_VISUAL_TONE,\n rowsPath: 'brandVisualTones',\n identity: WorkbenchAspectIdentityKind.SINGLETON,\n edges: [],\n },\n {\n aspectKey: 'brand.asset',\n resourceType: WorkbenchShared_ResourceType.ASPECT_BRAND_ASSET,\n rowsPath: 'brandAssets',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'derivedFromId', targetAspectKey: 'brand.asset', many: false },\n ],\n },\n {\n aspectKey: 'domain-plan.module',\n resourceType: WorkbenchShared_ResourceType.ASPECT_DOMAIN_PLAN_MODULE,\n rowsPath: 'domainPlanModules',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'domain-plan.relationship',\n resourceType: WorkbenchShared_ResourceType.ASPECT_DOMAIN_PLAN_RELATIONSHIP,\n rowsPath: 'domainPlanRelationships',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'build-plan.task',\n resourceType: WorkbenchShared_ResourceType.ASPECT_BUILD_TASK,\n rowsPath: 'buildTasks',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'prerequisiteTaskIds', targetAspectKey: 'build-plan.task', many: true },\n { field: 'servesFunctionalRequirementIds', targetAspectKey: 'requirements.functional', many: true },\n { field: 'servesNonFunctionalRequirementIds', targetAspectKey: 'requirements.non-functional', many: true },\n { field: 'servesRoadmapPhaseIds', targetAspectKey: 'roadmap.phase', many: true },\n ],\n },\n {\n aspectKey: 'placement.group',\n resourceType: WorkbenchShared_ResourceType.ASPECT_PLACEMENT_GROUP,\n rowsPath: 'placementGroups',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'placement.decision',\n resourceType: WorkbenchShared_ResourceType.ASPECT_PLACEMENT_DECISION,\n rowsPath: 'placementDecisions',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [\n { field: 'groupId', targetAspectKey: 'placement.group', many: false },\n ],\n },\n {\n aspectKey: 'compliance-candidate.section',\n resourceType: WorkbenchShared_ResourceType.ASPECT_COMPLIANCE_CANDIDATE_SECTION,\n rowsPath: 'complianceCandidateSections',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'compliance-candidate.variant-selection',\n resourceType: WorkbenchShared_ResourceType.ASPECT_COMPLIANCE_CANDIDATE_VARIANT_SELECTION,\n rowsPath: 'complianceCandidateVariantSelections',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'document-facts.declaration',\n resourceType: WorkbenchShared_ResourceType.ASPECT_DOCUMENT_FACT_DECLARATION,\n rowsPath: 'documentFactDeclarations',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n /*\n * The same row shape as the descriptor above and a SEPARATE resource, because the two families it\n * transcribes are separate (#192): one is regenerated by a producer, the other is only ever written\n * by a person. Merging them into one browsable list would erase exactly the provenance the split\n * exists to keep, and a reader could no longer tell which declarations survive the next producer run.\n */\n {\n aspectKey: 'document-facts-authored.declaration',\n resourceType: WorkbenchShared_ResourceType.ASPECT_AUTHORED_DOCUMENT_FACT_DECLARATION,\n rowsPath: 'authoredDocumentFactDeclarations',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n /*\n * INDEXED, not BUSINESS_KEY, and that is the registry's own answer rather than a simplification\n * here: the row is a union whose two arms key on different fields (`providerRef` vs\n * `subprocessorRef`), so no single field identifies a row across it.\n */\n aspectKey: 'processor-register.processor',\n resourceType: WorkbenchShared_ResourceType.ASPECT_PROCESSOR_REGISTER_ENTRY,\n rowsPath: 'processorRegisterEntries',\n identity: WorkbenchAspectIdentityKind.INDEXED,\n edges: [],\n },\n {\n aspectKey: 'release-policy.selection',\n resourceType: WorkbenchShared_ResourceType.ASPECT_RELEASE_POLICY_SELECTION,\n rowsPath: 'releasePolicySelections',\n identity: WorkbenchAspectIdentityKind.BUSINESS_KEY,\n edges: [],\n },\n {\n aspectKey: 'document-publication.variant',\n resourceType: WorkbenchShared_ResourceType.ASPECT_DOCUMENT_PUBLICATION_VARIANT,\n rowsPath: 'documentPublicationVariants',\n identity: WorkbenchAspectIdentityKind.INDEXED,\n edges: [],\n },\n];\n\nconst DESCRIPTOR_BY_ASPECT_KEY: ReadonlyMap<string, WorkbenchAspectDescriptor> = new Map(\n WORKBENCH_ASPECT_DESCRIPTORS.map((descriptor) => [descriptor.aspectKey, descriptor]),\n);\n\nexport function getWorkbenchAspectDescriptor(aspectKey: string): WorkbenchAspectDescriptor | undefined {\n return DESCRIPTOR_BY_ASPECT_KEY.get(aspectKey);\n}\n\n/**\n * The shared envelope, instantiated per aspect with its identity field and reference fields.\n *\n * `content` stays a RAW record for the same reason the artifact resource's does: the spine never\n * sees the item schemas; the workbench frontend renders `content` through the REAL `_core` schema\n * from the registry, so typed rendering happens where the type authority is a dependency.\n */\nexport function buildWorkbenchAspectEnvelopeSchema(\n descriptor: WorkbenchAspectDescriptor,\n): z.ZodObject<z.ZodRawShape> {\n const identityField = WorkbenchShared_ResourceFieldIdentifier[descriptor.resourceType];\n const shape: Record<string, z.ZodTypeAny> = {\n /**\n * The composed address the projection emits, and the ONLY field a row click can resolve by.\n *\n * `.isSummaryField()` is not decoration here. A list renders SUMMARIES, and the frontend resolves\n * a clicked row's target by reading this field off the item — so an id that does not survive the\n * projection makes every row in every aspect list silently stop responding to a click, while READ\n * still answers 200 (the adapter filters by `identityFields`, not by this name). The only symptom\n * is one console line. Pinned for the whole population by the addressing-field contract test.\n */\n [identityField]: z.string().min(1).isPrimaryKey().isSummaryField(),\n /**\n * The owning artifact family id — a LIVE reference: `family` is the artifacts resource's own\n * field identifier, so the global map resolves it, and the artifacts READ is addressable —\n * the one link out of any popup back to the document the aspect lives in.\n */\n family: z.string().isForeignKey().isSummaryField(),\n /** The registry aspect key (`market.icp`) — which KIND of aspect this row is. */\n aspectKey: z.string().isSummaryField(),\n /** The item's headline value (the registry's `headlineField`), projected for lists/summaries. */\n title: z.string().isSummaryField(),\n /**\n * The full item as landed — rendered frontend-side through the family's own `_core` schema.\n *\n * Deliberately NOT a summary field: it is the whole item, and carrying it in every list row is\n * what the summary projection exists to avoid.\n */\n content: z.record(z.string(), z.unknown()),\n };\n for (const edge of descriptor.edges) {\n // FK marking rides the ELEMENT for arrays (the decorator's home is the string type); the\n // display pipeline accepts `string | string[]` values on a reference field either way.\n shape[edge.field] = edge.many\n ? z.array(z.string().isForeignKey())\n : z.string().isForeignKey().optional();\n }\n return z.object(shape);\n}\n\ntype WorkbenchAspect_CoreOperations = CoreResourceOperation.READ | CoreResourceOperation.LIST;\n\n/**\n * One introspection resource-configuration factory per aspect, all from the same mold as their\n * two siblings: READ/LIST only, `APPLICATION_STRUCTURE` tenancy, rows served by the companion's\n * family-aspects behavior at this aspect's `rowsPath`. Identity is always the COMPOSED field the\n * projection emits (see the identifier-map note in the types module).\n */\nexport function buildWorkbenchAspectConfigurationFactory(descriptor: WorkbenchAspectDescriptor) {\n const envelopeSchema = buildWorkbenchAspectEnvelopeSchema(descriptor);\n return (resourcesRelationships: ResourceRelationship[]) =>\n createResourceConfiguration_Initialization<undefined, WorkbenchAspect_CoreOperations, typeof envelopeSchema>({\n mainSchema: envelopeSchema,\n resourceIdentifier: descriptor.resourceType,\n resourceFieldIdentifier: WorkbenchShared_ResourceFieldIdentifier[descriptor.resourceType],\n resourceRelationships: resourcesRelationships,\n isSystemResource: false,\n persistenceAdapter: PersistenceAdapter.INTROSPECTION,\n introspectionBinding: {\n behavior: 'family-aspects',\n rowsPath: descriptor.rowsPath,\n tenancy: IntrospectionTenancyStance.APPLICATION_STRUCTURE,\n },\n coreOperations: [CoreResourceOperation.READ, CoreResourceOperation.LIST],\n customOperation: undefined,\n operationsConfiguration: {\n [CoreResourceOperation.READ]: { variants: [createReadOnlyApiVariant()] },\n [CoreResourceOperation.LIST]: {\n variants: [{\n ...createReadOnlyListApiVariant(),\n /* The two slices every aspect list needs: which family, which kind. */\n filterFields: {\n family: z.string(),\n aspectKey: z.string(),\n },\n }],\n },\n },\n });\n}\n\n/**\n * Every aspect's relationships:\n *\n * - the STANDALONE application anchor each INTROSPECTION resource needs (primary scope derives\n * from it; STANDALONE keeps the route flat — the established pattern of its two siblings), and\n * - one REFERENCE relationship per edge, carrying `foreignKeyField`: that is what teaches the\n * frontend's field-identifier map to resolve the envelope field to its target resource, which\n * is the entire navigation story (labels, popups, links) with no bespoke lookup anywhere.\n */\nexport function buildWorkbenchAspectRelationships(): ResourceRelationship[] {\n const relationships: ResourceRelationship[] = [];\n for (const descriptor of WORKBENCH_ASPECT_DESCRIPTORS) {\n relationships.push(\n createResourcesRelationship(\n CoreResourceType.APPLICATION,\n descriptor.resourceType,\n ResourceRelationshipCardinality.ONE,\n ResourceRelationshipCardinality.MANY,\n {\n nature: RelationshipNature.COMPOSITION,\n isPrimaryScope: true,\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n contextPolicy: {},\n },\n ),\n );\n for (const edge of descriptor.edges) {\n const target = DESCRIPTOR_BY_ASPECT_KEY.get(edge.targetAspectKey);\n if (!target) {\n throw new Error(\n `workbench aspect ${descriptor.aspectKey}: edge ${edge.field} targets unknown aspect ${edge.targetAspectKey}`,\n );\n }\n relationships.push(\n createResourcesRelationship(\n target.resourceType,\n descriptor.resourceType,\n ResourceRelationshipCardinality.ONE,\n edge.many ? ResourceRelationshipCardinality.MANY : ResourceRelationshipCardinality.ONE,\n {\n nature: RelationshipNature.REFERENCE,\n foreignKeyField: edge.field,\n contextPolicy: {},\n /*\n * STANDALONE here too, not only on the application anchor: a relationship without it\n * makes the router mount the holder NESTED under its target and drop the flat route —\n * measured on this very sweep (every edge-carrying aspect 404'd flat while its\n * edge-free siblings answered 200). A reference edge is navigation metadata, never a\n * URL parent.\n */\n accessScopeStrategy: ResourceRelationshipAccessScopeStrategy.STANDALONE,\n /*\n * The aspect graph is CYCLIC by nature — an ICP names its triggers and a trigger names\n * the ICPs it affects; a task prerequisites tasks; an asset derives from an asset. These\n * are REFERENCES in a knowledge graph, not a containment tree, so every edge declares\n * the cycle admissible rather than pretending the graph is a DAG.\n */\n allowCycle: true,\n /*\n * The two self-edges (a task's prerequisites, an asset's derivation source) are graphs\n * with roots — a MASTER asset derives from nothing — and the factory refuses a\n * self-reference whose parent is mandatory for exactly that reason. Harmless on the\n * non-self edges: every aspect reference is optional by nature (dangling-tolerant).\n */\n parentResourceRequirement: ResourceParentResourceRequirement.OPTIONAL,\n },\n ),\n );\n }\n }\n return relationships;\n}\n\n/** The factory-map slice for all aspect resources — merged into the workbench map by its owner. */\nexport const workbenchAspectResources_ConfigurationsFactoryMap: Record<\n string,\n ReturnType<typeof buildWorkbenchAspectConfigurationFactory>\n> = Object.fromEntries(\n WORKBENCH_ASPECT_DESCRIPTORS.map((descriptor) => [\n descriptor.resourceType,\n buildWorkbenchAspectConfigurationFactory(descriptor),\n ]),\n);\n"]}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * The application-creation board's identity, shared because THREE packages must agree on it.
3
+ *
4
+ * - the workbench declares the composite view under {@link WORKBENCH_CREATION_BOARD_VIEW_REF} and
5
+ * renders one `<Section>` per {@link WorkbenchCreationBoardSection};
6
+ * - the companion authors the labels the view resolves, keyed by exactly those refs;
7
+ * - and neither can see the other's source.
8
+ *
9
+ * Three string literals in three packages compile perfectly and fail at runtime as a blank sidebar
10
+ * row and headless sections — `tCompositeView` and `tCompositeViewSection` answer the EMPTY STRING
11
+ * for a missing key rather than echoing it, so nothing reports the drift. That is the same failure
12
+ * the workbench's two resource launchers shipped with, and the same reason their vocabulary lives
13
+ * here rather than on either side.
14
+ *
15
+ * This carries NO React and NO Node: it is a vocabulary, which is what makes it importable by a
16
+ * browser bundle and by a daemon at once.
17
+ */
18
+ /**
19
+ * The view's `ref` — the composite-view key, the launcher target, and the `/composite/<ref>` route.
20
+ *
21
+ * It MUST NOT contain a dot. The label lookup path is `composite_views.<translationRef>.<key>` and
22
+ * BOTH readers — the backend's key filter and the frontend's `t` — split that whole path on `.` and
23
+ * walk it segment by segment. A dotted ref therefore nests its labels one level deeper than anything
24
+ * that reads them expects, and the failure is silent: `tCompositeView` answers the empty string.
25
+ */
26
+ export declare const WORKBENCH_CREATION_BOARD_VIEW_REF = "creation-board";
27
+ /**
28
+ * The label PATH the view's title and description hang off — `composite_views.<this>.title`.
29
+ *
30
+ * DERIVED by the engine's `buildApplicationViewTranslationRef` (`app.<ref>`), not chosen here. It is
31
+ * restated because the companion cannot import a frontend package to compute it, and the workbench's
32
+ * own test asserts this constant against the engine's derivation — so the copy cannot drift silently
33
+ * from the function that actually produces it at runtime.
34
+ *
35
+ * A DOT PATH, not an object key. The label file nests `app` and then the ref; a single
36
+ * `'app.creation-board'` property is unreachable from either reader. Measured 2026-08-31, after a
37
+ * flat key made the board's title, its six section headings and its sidebar row all render empty with
38
+ * nothing reporting it.
39
+ */
40
+ export declare const WORKBENCH_CREATION_BOARD_TRANSLATION_REF = "app.creation-board";
41
+ /**
42
+ * The board's sections, in the order they are read.
43
+ *
44
+ * The order is a decision, not a listing: a playbook run lands families, which make build-plan tasks
45
+ * ready, which the coding lane executes, which the write register records. Reading them in that order
46
+ * is reading the loop. The evidence section is LAST and always visible rather than behind a tab,
47
+ * because it is the undo that sits in front of every dispatch button above it.
48
+ *
49
+ * The governance-facts section sits between the executions and the evidence: it is the point in the
50
+ * loop where derivation stops and a person decides, and it belongs after everything a machine can do
51
+ * for them rather than before it — a creator answering it first would be answering questions the
52
+ * accepted specifications have not yet made concrete.
53
+ */
54
+ export declare enum WorkbenchCreationBoardSection {
55
+ /** Every compiled playbook and whether it can run right now, with the reasons it cannot. */
56
+ PLAYBOOKS = "playbooks",
57
+ /** What is running in the companion process, and what died leaving a resumable checkpoint. */
58
+ RUNS = "runs",
59
+ /** The next ready build-plan task and the exact paths it may and may not write. */
60
+ BUILD_PLAN = "build-plan",
61
+ /** Whether the coding agent is registered, and whether a run holds the workspace mutation lock. */
62
+ CODING_LANE = "coding-lane",
63
+ /** The actor and flow executions the control plane holds, and the tasks they created. */
64
+ EXECUTIONS = "executions",
65
+ /**
66
+ * The governed-document facts only a PERSON may establish — a creator decision or a qualified
67
+ * review — and the file their answers land in (#192).
68
+ *
69
+ * Its own section rather than a page of the playbook lane, because it is the one place on this
70
+ * board where a HUMAN is the authority. Everything above dispatches derivation; this collects
71
+ * decisions no derivation may make, and its answers land in `document-facts-authored`, a family no
72
+ * producer writes.
73
+ */
74
+ GOVERNANCE_FACTS = "governance-facts",
75
+ /** What each run wrote, with its revert, and the execution traces behind it. */
76
+ EVIDENCE = "evidence"
77
+ }
78
+ /**
79
+ * The section refs in render order.
80
+ *
81
+ * `Object.values` on a string enum preserves declaration order, so this IS the enum rather than a
82
+ * second list beside it — the shape that would let the two disagree.
83
+ */
84
+ export declare const WORKBENCH_CREATION_BOARD_SECTION_REFS: readonly WorkbenchCreationBoardSection[];
85
+ /**
86
+ * One authored title and description per section — the type the companion's label file satisfies.
87
+ *
88
+ * A `Record` keyed by the enum is what makes label coverage a COMPILE error rather than a test: add a
89
+ * section and the label file stops compiling until it is described. A test could only report the gap
90
+ * after someone ran it, and the gap's runtime symptom is a headless section nobody notices.
91
+ */
92
+ export type WorkbenchCreationBoardSectionLabels = {
93
+ readonly [section in WorkbenchCreationBoardSection]: {
94
+ readonly title: string;
95
+ readonly description: string;
96
+ };
97
+ };
98
+ //# sourceMappingURL=workbench-creation-board.custom.shared.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workbench-creation-board.custom.shared.schemas.d.ts","sourceRoot":"","sources":["../../../../src/workbench/workbench-creation-board.custom.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC,mBAAmB,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,wCAAwC,uBAA6C,CAAC;AAEnG;;;;;;;;;;;;GAYG;AACH,oBAAY,6BAA6B;IACvC,4FAA4F;IAC5F,SAAS,cAAc;IACvB,8FAA8F;IAC9F,IAAI,SAAS;IACb,mFAAmF;IACnF,UAAU,eAAe;IACzB,mGAAmG;IACnG,WAAW,gBAAgB;IAC3B,yFAAyF;IACzF,UAAU,eAAe;IACzB;;;;;;;;OAQG;IACH,gBAAgB,qBAAqB;IACrC,gFAAgF;IAChF,QAAQ,aAAa;CACtB;AAED;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,EAAE,SAAS,6BAA6B,EAC5C,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,MAAM,mCAAmC,GAAG;IAChD,QAAQ,EAAE,OAAO,IAAI,6BAA6B,GAAG;QACnD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QACvB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;KAC9B;CACF,CAAC"}
@@ -0,0 +1,86 @@
1
+ /**
2
+ * The application-creation board's identity, shared because THREE packages must agree on it.
3
+ *
4
+ * - the workbench declares the composite view under {@link WORKBENCH_CREATION_BOARD_VIEW_REF} and
5
+ * renders one `<Section>` per {@link WorkbenchCreationBoardSection};
6
+ * - the companion authors the labels the view resolves, keyed by exactly those refs;
7
+ * - and neither can see the other's source.
8
+ *
9
+ * Three string literals in three packages compile perfectly and fail at runtime as a blank sidebar
10
+ * row and headless sections — `tCompositeView` and `tCompositeViewSection` answer the EMPTY STRING
11
+ * for a missing key rather than echoing it, so nothing reports the drift. That is the same failure
12
+ * the workbench's two resource launchers shipped with, and the same reason their vocabulary lives
13
+ * here rather than on either side.
14
+ *
15
+ * This carries NO React and NO Node: it is a vocabulary, which is what makes it importable by a
16
+ * browser bundle and by a daemon at once.
17
+ */
18
+ /**
19
+ * The view's `ref` — the composite-view key, the launcher target, and the `/composite/<ref>` route.
20
+ *
21
+ * It MUST NOT contain a dot. The label lookup path is `composite_views.<translationRef>.<key>` and
22
+ * BOTH readers — the backend's key filter and the frontend's `t` — split that whole path on `.` and
23
+ * walk it segment by segment. A dotted ref therefore nests its labels one level deeper than anything
24
+ * that reads them expects, and the failure is silent: `tCompositeView` answers the empty string.
25
+ */
26
+ export const WORKBENCH_CREATION_BOARD_VIEW_REF = 'creation-board';
27
+ /**
28
+ * The label PATH the view's title and description hang off — `composite_views.<this>.title`.
29
+ *
30
+ * DERIVED by the engine's `buildApplicationViewTranslationRef` (`app.<ref>`), not chosen here. It is
31
+ * restated because the companion cannot import a frontend package to compute it, and the workbench's
32
+ * own test asserts this constant against the engine's derivation — so the copy cannot drift silently
33
+ * from the function that actually produces it at runtime.
34
+ *
35
+ * A DOT PATH, not an object key. The label file nests `app` and then the ref; a single
36
+ * `'app.creation-board'` property is unreachable from either reader. Measured 2026-08-31, after a
37
+ * flat key made the board's title, its six section headings and its sidebar row all render empty with
38
+ * nothing reporting it.
39
+ */
40
+ export const WORKBENCH_CREATION_BOARD_TRANSLATION_REF = `app.${WORKBENCH_CREATION_BOARD_VIEW_REF}`;
41
+ /**
42
+ * The board's sections, in the order they are read.
43
+ *
44
+ * The order is a decision, not a listing: a playbook run lands families, which make build-plan tasks
45
+ * ready, which the coding lane executes, which the write register records. Reading them in that order
46
+ * is reading the loop. The evidence section is LAST and always visible rather than behind a tab,
47
+ * because it is the undo that sits in front of every dispatch button above it.
48
+ *
49
+ * The governance-facts section sits between the executions and the evidence: it is the point in the
50
+ * loop where derivation stops and a person decides, and it belongs after everything a machine can do
51
+ * for them rather than before it — a creator answering it first would be answering questions the
52
+ * accepted specifications have not yet made concrete.
53
+ */
54
+ export var WorkbenchCreationBoardSection;
55
+ (function (WorkbenchCreationBoardSection) {
56
+ /** Every compiled playbook and whether it can run right now, with the reasons it cannot. */
57
+ WorkbenchCreationBoardSection["PLAYBOOKS"] = "playbooks";
58
+ /** What is running in the companion process, and what died leaving a resumable checkpoint. */
59
+ WorkbenchCreationBoardSection["RUNS"] = "runs";
60
+ /** The next ready build-plan task and the exact paths it may and may not write. */
61
+ WorkbenchCreationBoardSection["BUILD_PLAN"] = "build-plan";
62
+ /** Whether the coding agent is registered, and whether a run holds the workspace mutation lock. */
63
+ WorkbenchCreationBoardSection["CODING_LANE"] = "coding-lane";
64
+ /** The actor and flow executions the control plane holds, and the tasks they created. */
65
+ WorkbenchCreationBoardSection["EXECUTIONS"] = "executions";
66
+ /**
67
+ * The governed-document facts only a PERSON may establish — a creator decision or a qualified
68
+ * review — and the file their answers land in (#192).
69
+ *
70
+ * Its own section rather than a page of the playbook lane, because it is the one place on this
71
+ * board where a HUMAN is the authority. Everything above dispatches derivation; this collects
72
+ * decisions no derivation may make, and its answers land in `document-facts-authored`, a family no
73
+ * producer writes.
74
+ */
75
+ WorkbenchCreationBoardSection["GOVERNANCE_FACTS"] = "governance-facts";
76
+ /** What each run wrote, with its revert, and the execution traces behind it. */
77
+ WorkbenchCreationBoardSection["EVIDENCE"] = "evidence";
78
+ })(WorkbenchCreationBoardSection || (WorkbenchCreationBoardSection = {}));
79
+ /**
80
+ * The section refs in render order.
81
+ *
82
+ * `Object.values` on a string enum preserves declaration order, so this IS the enum rather than a
83
+ * second list beside it — the shape that would let the two disagree.
84
+ */
85
+ export const WORKBENCH_CREATION_BOARD_SECTION_REFS = Object.values(WorkbenchCreationBoardSection);
86
+ //# sourceMappingURL=workbench-creation-board.custom.shared.schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workbench-creation-board.custom.shared.schemas.js","sourceRoot":"","sources":["../../../../src/workbench/workbench-creation-board.custom.shared.schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,gBAAgB,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,wCAAwC,GAAG,OAAO,iCAAiC,EAAE,CAAC;AAEnG;;;;;;;;;;;;GAYG;AACH,MAAM,CAAN,IAAY,6BAuBX;AAvBD,WAAY,6BAA6B;IACvC,4FAA4F;IAC5F,wDAAuB,CAAA;IACvB,8FAA8F;IAC9F,8CAAa,CAAA;IACb,mFAAmF;IACnF,0DAAyB,CAAA;IACzB,mGAAmG;IACnG,4DAA2B,CAAA;IAC3B,yFAAyF;IACzF,0DAAyB,CAAA;IACzB;;;;;;;;OAQG;IACH,sEAAqC,CAAA;IACrC,gFAAgF;IAChF,sDAAqB,CAAA;AACvB,CAAC,EAvBW,6BAA6B,KAA7B,6BAA6B,QAuBxC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAChD,MAAM,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC","sourcesContent":["/**\n * The application-creation board's identity, shared because THREE packages must agree on it.\n *\n * - the workbench declares the composite view under {@link WORKBENCH_CREATION_BOARD_VIEW_REF} and\n * renders one `<Section>` per {@link WorkbenchCreationBoardSection};\n * - the companion authors the labels the view resolves, keyed by exactly those refs;\n * - and neither can see the other's source.\n *\n * Three string literals in three packages compile perfectly and fail at runtime as a blank sidebar\n * row and headless sections — `tCompositeView` and `tCompositeViewSection` answer the EMPTY STRING\n * for a missing key rather than echoing it, so nothing reports the drift. That is the same failure\n * the workbench's two resource launchers shipped with, and the same reason their vocabulary lives\n * here rather than on either side.\n *\n * This carries NO React and NO Node: it is a vocabulary, which is what makes it importable by a\n * browser bundle and by a daemon at once.\n */\n\n/**\n * The view's `ref` — the composite-view key, the launcher target, and the `/composite/<ref>` route.\n *\n * It MUST NOT contain a dot. The label lookup path is `composite_views.<translationRef>.<key>` and\n * BOTH readers — the backend's key filter and the frontend's `t` — split that whole path on `.` and\n * walk it segment by segment. A dotted ref therefore nests its labels one level deeper than anything\n * that reads them expects, and the failure is silent: `tCompositeView` answers the empty string.\n */\nexport const WORKBENCH_CREATION_BOARD_VIEW_REF = 'creation-board';\n\n/**\n * The label PATH the view's title and description hang off — `composite_views.<this>.title`.\n *\n * DERIVED by the engine's `buildApplicationViewTranslationRef` (`app.<ref>`), not chosen here. It is\n * restated because the companion cannot import a frontend package to compute it, and the workbench's\n * own test asserts this constant against the engine's derivation — so the copy cannot drift silently\n * from the function that actually produces it at runtime.\n *\n * A DOT PATH, not an object key. The label file nests `app` and then the ref; a single\n * `'app.creation-board'` property is unreachable from either reader. Measured 2026-08-31, after a\n * flat key made the board's title, its six section headings and its sidebar row all render empty with\n * nothing reporting it.\n */\nexport const WORKBENCH_CREATION_BOARD_TRANSLATION_REF = `app.${WORKBENCH_CREATION_BOARD_VIEW_REF}`;\n\n/**\n * The board's sections, in the order they are read.\n *\n * The order is a decision, not a listing: a playbook run lands families, which make build-plan tasks\n * ready, which the coding lane executes, which the write register records. Reading them in that order\n * is reading the loop. The evidence section is LAST and always visible rather than behind a tab,\n * because it is the undo that sits in front of every dispatch button above it.\n *\n * The governance-facts section sits between the executions and the evidence: it is the point in the\n * loop where derivation stops and a person decides, and it belongs after everything a machine can do\n * for them rather than before it — a creator answering it first would be answering questions the\n * accepted specifications have not yet made concrete.\n */\nexport enum WorkbenchCreationBoardSection {\n /** Every compiled playbook and whether it can run right now, with the reasons it cannot. */\n PLAYBOOKS = 'playbooks',\n /** What is running in the companion process, and what died leaving a resumable checkpoint. */\n RUNS = 'runs',\n /** The next ready build-plan task and the exact paths it may and may not write. */\n BUILD_PLAN = 'build-plan',\n /** Whether the coding agent is registered, and whether a run holds the workspace mutation lock. */\n CODING_LANE = 'coding-lane',\n /** The actor and flow executions the control plane holds, and the tasks they created. */\n EXECUTIONS = 'executions',\n /**\n * The governed-document facts only a PERSON may establish — a creator decision or a qualified\n * review — and the file their answers land in (#192).\n *\n * Its own section rather than a page of the playbook lane, because it is the one place on this\n * board where a HUMAN is the authority. Everything above dispatches derivation; this collects\n * decisions no derivation may make, and its answers land in `document-facts-authored`, a family no\n * producer writes.\n */\n GOVERNANCE_FACTS = 'governance-facts',\n /** What each run wrote, with its revert, and the execution traces behind it. */\n EVIDENCE = 'evidence',\n}\n\n/**\n * The section refs in render order.\n *\n * `Object.values` on a string enum preserves declaration order, so this IS the enum rather than a\n * second list beside it — the shape that would let the two disagree.\n */\nexport const WORKBENCH_CREATION_BOARD_SECTION_REFS: readonly WorkbenchCreationBoardSection[] =\n Object.values(WorkbenchCreationBoardSection);\n\n/**\n * One authored title and description per section — the type the companion's label file satisfies.\n *\n * A `Record` keyed by the enum is what makes label coverage a COMPILE error rather than a test: add a\n * section and the label file stops compiling until it is described. A test could only report the gap\n * after someone ran it, and the gap's runtime symptom is a headless section nobody notices.\n */\nexport type WorkbenchCreationBoardSectionLabels = {\n readonly [section in WorkbenchCreationBoardSection]: {\n readonly title: string;\n readonly description: string;\n };\n};\n"]}
@@ -0,0 +1,157 @@
1
+ import { z } from 'zod';
2
+ import { CORE_APP_ROLES, CoreResourceOperation, ResourceOperationRiskLevel, ResourceOperationVariantType, ResourceRelationship } from '@wildo-ai/saas-models';
3
+ import { WorkbenchBuildPlanTasks_Operations, WorkbenchPlaybooks_Operations, WorkbenchRunWriteRecords_Operations } from './workbench-creation-plane.custom.shared.schemas';
4
+ /**
5
+ * Resource configurations for the CREATION PLANE — the four companion-runtime families the creation
6
+ * board consumes as resources (`workbench-creation-board-resources.md`, Phase 2; decides #166).
7
+ *
8
+ * Same adapter and same port as the structural projections one file over, with the two declared
9
+ * differences their nature forces:
10
+ *
11
+ * - **`APPLICATION_RUNTIME` tenancy, not `APPLICATION_STRUCTURE`.** These rows are the companion's
12
+ * own runtime state (eligibility verdicts, dispatch status, write records, traces), not a
13
+ * projection of the application's source. Both stances mean "no tenant anchor on any row"; what
14
+ * the distinction preserves is the READ POSTURE argument below.
15
+ * - **Authenticated variants, never `APP_PUBLIC`.** The structural projections' public posture
16
+ * rests on the rows being the application's OWN source, which anyone with the working tree can
17
+ * already read. Runtime state has no such argument — what the creator dispatched, what failed,
18
+ * which files a run wrote are operator data — so every variant here requires the authenticated
19
+ * operator session (`APP_USER`; app-tier rather than `ORG_MEMBER` because these rows carry no
20
+ * organization column and nest under no organization URL).
21
+ */
22
+ export declare function createCreationPlaneReadApiVariant(): {
23
+ variantType: ResourceOperationVariantType.API_CALL;
24
+ isDefault: true;
25
+ roles: CORE_APP_ROLES[];
26
+ riskLevel: ResourceOperationRiskLevel.LOW;
27
+ };
28
+ /** The read variant plus the shared workbench page ceiling (LIST-like operations only). */
29
+ export declare function createCreationPlaneReadListApiVariant(): {
30
+ maxPaginatedResultPerPageLimit: number;
31
+ variantType: ResourceOperationVariantType.API_CALL;
32
+ isDefault: true;
33
+ roles: CORE_APP_ROLES[];
34
+ riskLevel: ResourceOperationRiskLevel.LOW;
35
+ };
36
+ /**
37
+ * STANDALONE APPLICATION anchors, one per family — same form and same reason as the structural
38
+ * projections: `resourcePrimaryScope` is derived from a relationship flagged `isPrimaryScope`, and
39
+ * STANDALONE keeps the anchor off the URL so each resource routes flat.
40
+ */
41
+ export declare const workbenchCreationPlane_ResourcesRelationships: ResourceRelationship[];
42
+ type WorkbenchCreationPlane_CoreOperations = CoreResourceOperation.READ | CoreResourceOperation.LIST;
43
+ /**
44
+ * The four read-only creation-plane factories. READ + LIST only: dispatch VERBS
45
+ * (run/resume/dispatch-next/revert/cancel) arrive in Phase 3 as CUSTOM operations delegating to
46
+ * the companion's own services — never as generated writes, which the introspection repository
47
+ * refuses by contract.
48
+ *
49
+ * NO `identityFields` on any binding, deliberately: composition refuses values outside
50
+ * `[a-zA-Z0-9_-]`, and playbook refs (`top_down.phase-gate`), run ids and trace session ids
51
+ * legitimately carry dots. The in-process behaviors emit the sanitized identity field themselves
52
+ * and refuse post-sanitization duplicates — see the schema field docs.
53
+ *
54
+ * Written as four explicit factories rather than one generic mold: the config initializer's schema
55
+ * parameter is invariant in the row type, so a union-constrained generic fails to instantiate —
56
+ * and the siblings in this directory are explicit for the same reason.
57
+ */
58
+ export declare const workbenchPlaybooks_ResourceConfiguration_InitializationFactory: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchPlaybooks_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
59
+ workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
60
+ playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
61
+ playbookVersion: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
62
+ phase: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
63
+ intent: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
64
+ eligible: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
65
+ unmet: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
66
+ blockedOnlyBySequencing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
67
+ requiresElicitation: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
68
+ wouldReplace: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
69
+ unlandableFamilies: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
70
+ staleOutputs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
71
+ family: z.ZodString;
72
+ changedInputs: z.ZodArray<z.ZodString>;
73
+ }, z.core.$strip>>>;
74
+ computedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
75
+ }, z.core.$strip>>;
76
+ export declare const workbenchBuildPlanTasks_ResourceConfiguration_InitializationFactory: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchBuildPlanTasks_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
77
+ workbenchBuildPlanTaskId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
78
+ taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
79
+ objective: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
80
+ targetKind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
81
+ functionalTopic: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
82
+ status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof import("./workbench-creation-plane.custom.shared.schemas").WorkbenchBuildPlanTaskStatus>>;
83
+ prerequisiteTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
84
+ }, z.core.$strip>>;
85
+ export declare const workbenchRunWriteRecords_ResourceConfiguration_InitializationFactory: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchRunWriteRecords_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
86
+ workbenchRunWriteRecordId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
87
+ runId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
88
+ playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
89
+ workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
90
+ workbenchTraceSessionId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
91
+ at: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
92
+ files: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
93
+ path: z.ZodString;
94
+ existedBefore: z.ZodBoolean;
95
+ }, z.core.$strip>>>;
96
+ fileCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
97
+ }, z.core.$strip>>;
98
+ export declare const workbenchTraceSessions_ResourceConfiguration_InitializationFactory: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<any, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
99
+ workbenchTraceSessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
100
+ sessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
101
+ startedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
102
+ label: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
103
+ eventCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
104
+ stepCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
105
+ }, z.core.$strip>>;
106
+ export declare const workbenchCreationPlane_ResourcesConfigurationsFactoryMap: {
107
+ workbenchPlaybooks: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchPlaybooks_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
108
+ workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
109
+ playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
110
+ playbookVersion: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
111
+ phase: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
112
+ intent: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
113
+ eligible: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
114
+ unmet: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
115
+ blockedOnlyBySequencing: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
116
+ requiresElicitation: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodBoolean>;
117
+ wouldReplace: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
118
+ unlandableFamilies: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
119
+ staleOutputs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
120
+ family: z.ZodString;
121
+ changedInputs: z.ZodArray<z.ZodString>;
122
+ }, z.core.$strip>>>;
123
+ computedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
124
+ }, z.core.$strip>>;
125
+ workbenchBuildPlanTasks: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchBuildPlanTasks_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
126
+ workbenchBuildPlanTaskId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
127
+ taskRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
128
+ objective: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
129
+ targetKind: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
130
+ functionalTopic: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
131
+ status: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodEnum<typeof import("./workbench-creation-plane.custom.shared.schemas").WorkbenchBuildPlanTaskStatus>>;
132
+ prerequisiteTaskRefs: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodString>>;
133
+ }, z.core.$strip>>;
134
+ workbenchRunWriteRecords: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<typeof WorkbenchRunWriteRecords_Operations, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
135
+ workbenchRunWriteRecordId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
136
+ runId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
137
+ playbookRef: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
138
+ workbenchPlaybookId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
139
+ workbenchTraceSessionId: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>>;
140
+ at: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
141
+ files: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodArray<z.ZodObject<{
142
+ path: z.ZodString;
143
+ existedBefore: z.ZodBoolean;
144
+ }, z.core.$strip>>>;
145
+ fileCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
146
+ }, z.core.$strip>>;
147
+ workbenchTraceSessions: (resourcesRelationships: ResourceRelationship[]) => import("@wildo-ai/saas-models").ResourceConfiguration<any, WorkbenchCreationPlane_CoreOperations, z.ZodObject<{
148
+ workbenchTraceSessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
149
+ sessionId: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
150
+ startedAt: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>;
151
+ label: z.ZodNullable<import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodString>>;
152
+ eventCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
153
+ stepCount: import("@wildo-ai/zod-decorators").DecoratedPrimitiveZodType<z.ZodNumber>;
154
+ }, z.core.$strip>>;
155
+ };
156
+ export {};
157
+ //# sourceMappingURL=workbench-creation-plane.custom.shared.resources-config.schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workbench-creation-plane.custom.shared.resources-config.schemas.d.ts","sourceRoot":"","sources":["../../../../src/workbench/workbench-creation-plane.custom.shared.resources-config.schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,cAAc,EACd,qBAAqB,EAIrB,0BAA0B,EAC1B,4BAA4B,EAE5B,oBAAoB,EAMrB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EAYL,kCAAkC,EAElC,6BAA6B,EAC7B,mCAAmC,EACpC,MAAM,kDAAkD,CAAC;AAE1D;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iCAAiC;;;;;EAOhD;AAED,2FAA2F;AAC3F,wBAAgB,qCAAqC;;;;;;EAKpD;AAED;;;;GAIG;AACH,eAAO,MAAM,6CAA6C,EAAE,oBAAoB,EAgB9E,CAAC;AA8EH,KAAK,qCAAqC,GACtC,qBAAqB,CAAC,IAAI,GAC1B,qBAAqB,CAAC,IAAI,CAAC;AAK/B;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,8DAA8D,GACxE,wBAAwB,oBAAoB,EAAE;;;;;;;;;;;;;;;;;kBAuC7C,CAAC;AAEL,eAAO,MAAM,mEAAmE,GAC7E,wBAAwB,oBAAoB,EAAE;;;;;;;;kBA6B7C,CAAC;AAEL,eAAO,MAAM,oEAAoE,GAC9E,wBAAwB,oBAAoB,EAAE;;;;;;;;;;;;kBAiD7C,CAAC;AAEL,eAAO,MAAM,kEAAkE,GAC5E,wBAAwB,oBAAoB,EAAE;;;;;;;kBAqB7C,CAAC;AAEL,eAAO,MAAM,wDAAwD;iDArJ1C,oBAAoB,EAAE;;;;;;;;;;;;;;;;;;sDA0CtB,oBAAoB,EAAE;;;;;;;;;uDAgCtB,oBAAoB,EAAE;;;;;;;;;;;;;qDAoDtB,oBAAoB,EAAE;;;;;;;;CA4BhD,CAAC"}