Skip to content

Wander deliberately

Search the Coffee Machine

Questions, quotes, personas, and tags—all derived from the FAQ source.

Questions 64

Why TPF ExistsDoesn’t hiding I/O make side effects less visible?why-tpf-exists · hiding · io · realityWhy TPF ExistsDoesn’t this just reinvent Spring?why-tpf-exists · spring · in · pipeline · hatWhy TPF ExistsIsn’t a typed pipeline just a fancy method chain?why-tpf-exists · method · chain · press · releaseWhy TPF ExistsIsn’t this another workflow engine with a new name?why-tpf-exists · another · workflow · engineWhy TPF ExistsIsn’t this forcing every application into the same architectural shape?why-tpf-exists · everything · pipelineWhy TPF ExistsWhat problem does TPF solve that Clean Architecture does not?why-tpf-exists · clean · architecture · fake · moustacheWhy TPF ExistsWhy is TPF opinionated about where business logic belongs?why-tpf-exists · where · business · logic · livesWhy TPF ExistsWhy should application code be organized as pipelines instead of services?why-tpf-exists · pipelines · service · layersBring Your Existing AppCan a legacy monolith participate without being fully converted?bring-your-existing-app · legacy · monoliths · welcomeBring Your Existing AppCan I migrate one capability at a time without rewriting the application?bring-your-existing-app · migrate · one · capabilityBring Your Existing AppCan we keep our current Kafka consumers and producers during migration?bring-your-existing-app · kafka · can · stayBring Your Existing AppDo we have to rewrite our REST controllers into pipelines?bring-your-existing-app · controllers · enemyBring Your Existing AppDoes adopting TPF require replacing Spring Boot?bring-your-existing-app · keep · spring · bootBring Your Existing AppDoes extracting pure business logic mean duplicating existing code?bring-your-existing-app · untangle · duplicatingBring Your Existing AppHow do we prove that a migrated flow behaves exactly like the legacy one?bring-your-existing-app · prove · promiseBring Your Existing AppWhat happens to our existing JPA repositories and lazy-loading behavior?bring-your-existing-app · jpa · crimeDomain ModellingAre domain events first-class, or merely outputs from a pipeline?domain-modelling · domain · events · confettiDomain ModellingCan teams use TPF without adopting DDD terminology?domain-modelling · no · ddd · language · policeDomain ModellingDoes TPF encourage an anemic domain model?domain-modelling · rich · domain · hostageDomain ModellingDoes TPF replace sagas, or implement them differently?domain-modelling · sagas · sloganDomain ModellingHow do bounded contexts communicate without leaking pipeline internals?domain-modelling · bounded · contexts · framework · gossipDomain ModellingIs a pipeline the same thing as a DDD application service?domain-modelling · application · service · in · trench · coatDomain ModellingIs the pipeline model compatible with event sourcing?domain-modelling · event · sourcing · requiredDomain ModellingWhere do cross-aggregate rules live?domain-modelling · cross · aggregate · rulesRuntimeDoes code generation make builds slower and failures harder to diagnose?runtime · generation · diagnosticsRuntimeDoes strong typing make schema evolution slower?runtime · typing · evolutionRuntimeDoes TPF force reactive programming on every developer?runtime · reactive · personality · testRuntimeIs backpressure a real guarantee or just a library feature?runtime · backpressure · promiseRuntimeWhat happens when a remote system succeeds but the response is lost?runtime · idempotency · after · lost · responseRuntimeWill developers need to understand compiler phases to use the framework safely?runtime · compiler · degreeConnectorsHow do we govern connector changes that affect many teams?connectors · connector · governanceConnectorsIs a connector just an adapter with a more fashionable name?connectors · stationeryConnectorsWho decides whether something is a connector, plugin, or pipeline step?connectors · connector · plugin · or · stepDeploymentCan the same pipeline run locally, in Kubernetes, and as a function?deployment · portability · handwavingDeploymentDoes code generation create containers or only application code?deployment · generation · container · factoryDeploymentDoes one pipeline mean one container, service, or deployment?deployment · one · pipeline · containerDeploymentHow do I deploy a pipeline application to Kubernetes?deployment · deploy · new · religionDeploymentHow do we avoid generating a distributed monolith?deployment · no · generated · distributed · monolithDeploymentIs runtime layout just another name for Maven module structure?deployment · runtime · layout · mavenDeploymentWhat determines runtime placement?deployment · runtime · placement · decisionOperationsCan we see retries, waits, and duplicate messages in one timeline?operations · operational · timelineOperationsDoes TPF have a meaningful dead-letter concept beyond logging an error?operations · dlq · replayOperationsDoes TPF retry business failures that should be rejected immediately?operations · retry · for · rejectionTestingAre generated artifacts stable enough to review in pull requests?testing · generated · artifacts · contractsTestingCan business rules be tested as ordinary Java functions?testing · business · core · javaTestingCan we deterministically test retries, timeouts, and asynchronous completion?testing · deterministic · timeTestingDoes TPF make integration tests more important than unit tests?testing · test · pyramid · panicTestingHow do contract tests apply to connectors and generated adapters?testing · connector · contract · testsTestingHow do teams prove that ordering and cardinality are correct?testing · test · ordering · cardinalityTestingHow do we test a failure after an external side effect succeeds?testing · test · uncertain · effectsTestingHow do we unit-test a pipeline without bringing up Kafka, databases, and HTTP?testing · test · booting · planetAICan TPF provide machine-readable constraints to coding assistants?ai · machine · readable · contractsAIWill AI agents bypass architectural boundaries to get it working?ai · boundary · safetyGovernanceCan developers customize generated code without losing regeneration safety?governance · customization · forkingGovernanceCan different teams use different resilience policies without fragmenting operations?governance · autonomy · anarchyGovernanceCan platform teams standardize deployment without owning business code?governance · platform · team · boundaryGovernanceCan security teams review all external data flows without reading every service?governance · security · complianceGovernanceDoes TPF create a central platform bottleneck for every application change?governance · platform · bottleneckGovernanceDoes TPF lock us into Java because generated types are central?governance · java · other · languagesGovernanceIs the abstraction too complex for a small startup?governance · startup · sizeGovernanceIs the abstraction too restrictive for a large enterprise?governance · enterprise · restrictionGovernanceWhat is the escape hatch when TPF’s model does not fit a critical use case?governance · escape · hatchGovernanceWho owns the framework conventions when multiple teams share pipelines?governance · shared · pipeline · ownershipGovernanceWhy should we believe this framework will remain simpler than the architecture it replaces?governance · simplicity · maintenance · job