pomaster 0.3.0 → 0.4.0
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.
- package/README.md +9 -10
- package/catalog/archetypes/archetype.frontend.error_taxonomy.json +13 -5
- package/catalog/archetypes/archetype.frontend.feature_oriented.json +1 -1
- package/catalog/archetypes/archetype.state.async_command.json +4 -4
- package/catalog/catalog-lock.draft.json +1120 -104
- package/catalog/gates/gate.be.api.contract_checks.json +2 -1
- package/catalog/gates/gate.be.chg.contract_change_checks.json +2 -1
- package/catalog/gates/gate.chg.prechange_checks.json +2 -1
- package/catalog/gates/gate.web.api.request_checks.json +2 -1
- package/catalog/gates/gate.web.grid.checks.json +2 -1
- package/catalog/knowledge/knowledge.api.example_stable_error_code.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_compat_window.json +2 -1
- package/catalog/knowledge/knowledge.chg.example_prop_migration.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.field_drift_no_contract.json +2 -1
- package/catalog/knowledge/knowledge.fp.api.per_page_http_client.json +2 -1
- package/catalog/knowledge/knowledge.fp.be.contract_drift.json +2 -1
- package/catalog/knowledge/knowledge.fp.chg.page_local_padding.json +2 -1
- package/catalog/knowledge/knowledge.fp.grid.global_td_width.json +2 -1
- package/catalog/knowledge/knowledge.web.api.example_get_entity_list.json +2 -1
- package/catalog/knowledge/knowledge.web.grid.example_column_preset.json +2 -1
- package/catalog/policies/authority.be.api_contract_ownership.json +2 -1
- package/catalog/policies/authority.be.contract_ownership.json +2 -1
- package/catalog/policies/authority.chg.change_owners.json +2 -1
- package/catalog/policies/authority.web.api.request_owners.json +2 -1
- package/catalog/policies/authority.web.grid.ownership.json +2 -1
- package/catalog/policies/policy.ai.change_plan_first.json +91 -0
- package/catalog/policies/policy.ai.fact_inference_separation.json +91 -0
- package/catalog/policies/policy.ai.read_search_verify_before_write.json +92 -0
- package/catalog/policies/policy.ai.rule_relaxation_approval.json +91 -0
- package/catalog/policies/policy.api.backward_compat_defaults.json +2 -1
- package/catalog/policies/policy.api.contract_impl_consistency.json +2 -1
- package/catalog/policies/policy.api.no_informal_contract.json +2 -1
- package/catalog/policies/policy.arch.adr_immutable_history.json +91 -0
- package/catalog/policies/policy.arch.decision_tradeoff_record.json +2 -1
- package/catalog/policies/policy.arch.no_convenience_over_boundary.json +93 -0
- package/catalog/policies/policy.arch.prefer_verifiable_option.json +92 -0
- package/catalog/policies/policy.authz.no_gating_proxy_trust.json +99 -0
- package/catalog/policies/policy.authz.permission_scope_expansion_gate.json +99 -0
- package/catalog/policies/policy.authz.server_five_factor_verification.json +101 -0
- package/catalog/policies/policy.be.conc.prefer_db_constraints.json +97 -0
- package/catalog/policies/policy.be.db.expand_migrate_contract.json +97 -0
- package/catalog/policies/policy.be.idem.key_payload_conflict.json +97 -0
- package/catalog/policies/policy.be.model.single_boundary_conversion.json +97 -0
- package/catalog/policies/policy.be.sql.index_for_known_queries.json +97 -0
- package/catalog/policies/policy.be.state.single_rule_source.json +97 -0
- package/catalog/policies/policy.be.txn.short_locks_compensation.json +96 -0
- package/catalog/policies/policy.bound.search_first_entry_only.json +91 -0
- package/catalog/policies/policy.boundary.validate_in_encode_out.json +92 -0
- package/catalog/policies/policy.cache.failure_mode_guards.json +93 -0
- package/catalog/policies/policy.cache.lifecycle_definition.json +2 -1
- package/catalog/policies/policy.cache.schema_versioning.json +91 -0
- package/catalog/policies/policy.cfg.config_attribute_completeness.json +95 -0
- package/catalog/policies/policy.cfg.key_rename_dual_read.json +92 -0
- package/catalog/policies/policy.cfg.no_secret_dispersal.json +90 -0
- package/catalog/policies/policy.cfg.production_safe_defaults.json +92 -0
- package/catalog/policies/policy.cfg.schema_backed_config.json +92 -0
- package/catalog/policies/policy.chg.affect_templates.json +2 -1
- package/catalog/policies/policy.chg.breaking_versioning.json +2 -1
- package/catalog/policies/policy.chg.compat_migration_rollback.json +2 -1
- package/catalog/policies/policy.chg.deprecate_before_delete.json +2 -1
- package/catalog/policies/policy.chg.fix_at_root_cause_level.json +2 -1
- package/catalog/policies/policy.chg.no_unrelated_changes.json +91 -0
- package/catalog/policies/policy.chg.observable_evolution.json +2 -1
- package/catalog/policies/policy.chg.prechange_consumer_scan.json +2 -1
- package/catalog/policies/policy.chg.staged_rollout.json +2 -1
- package/catalog/policies/policy.chg.sync_contract_docs_tests.json +2 -1
- package/catalog/policies/policy.conflict.priority_ladder.json +2 -1
- package/catalog/policies/policy.contract.no_invented_facts.json +93 -0
- package/catalog/policies/policy.dep.admission_six_dimension_check.json +2 -1
- package/catalog/policies/policy.dep.build_path_supply_chain.json +93 -0
- package/catalog/policies/policy.dep.change_surface_review.json +2 -1
- package/catalog/policies/policy.dep.introduction_review.json +2 -1
- package/catalog/policies/policy.dep.no_untrusted_source_no_lock_bypass.json +92 -0
- package/catalog/policies/policy.dep.time_boxed_urgent_exception.json +91 -0
- package/catalog/policies/policy.deploy.no_dev_env_as_production_fact.json +91 -0
- package/catalog/policies/policy.deploy.operational_capabilities.json +93 -0
- package/catalog/policies/policy.deploy.runtime_fact_record.json +97 -0
- package/catalog/policies/policy.derived.single_implementation.json +2 -1
- package/catalog/policies/policy.err.failure_five_part_mapping.json +101 -0
- package/catalog/policies/policy.err.no_internal_detail_exposure.json +97 -0
- package/catalog/policies/policy.err.published_code_immutable.json +98 -0
- package/catalog/policies/policy.evid.acceptance_binds_verifiable_evidence.json +92 -0
- package/catalog/policies/policy.evid.no_silent_gate_removal.json +90 -0
- package/catalog/policies/policy.evid.no_unverifiable_pass.json +92 -0
- package/catalog/policies/policy.flag.cleanup_after_full_rollout.json +94 -0
- package/catalog/policies/policy.flag.consistent_off_state.json +92 -0
- package/catalog/policies/policy.flag.kill_switch.json +91 -0
- package/catalog/policies/policy.flag.lifecycle_metadata.json +93 -0
- package/catalog/policies/policy.flag.not_a_permission.json +92 -0
- package/catalog/policies/policy.gate.p0_non_bypassable.json +92 -0
- package/catalog/policies/policy.gate.risk_factors_confirmed.json +93 -0
- package/catalog/policies/policy.guard.no_check_weakening.json +92 -0
- package/catalog/policies/policy.integration.call_definition_minimum.json +95 -0
- package/catalog/policies/policy.integration.fault_containment.json +94 -0
- package/catalog/policies/policy.job.lifecycle_definition.json +96 -0
- package/catalog/policies/policy.job.no_unmanaged_execution.json +92 -0
- package/catalog/policies/policy.job.operational_features.json +93 -0
- package/catalog/policies/policy.obs.actionable_signals.json +93 -0
- package/catalog/policies/policy.obs.alert_with_owner.json +91 -0
- package/catalog/policies/policy.obs.context_field_baseline.json +91 -0
- package/catalog/policies/policy.obs.correlation_context_minimum.json +2 -1
- package/catalog/policies/policy.obs.no_sensitive_or_unbounded_logging.json +92 -0
- package/catalog/policies/policy.obs.no_sensitive_raw_values.json +93 -0
- package/catalog/policies/policy.obs.rum_dimension_whitelist.json +2 -1
- package/catalog/policies/policy.obs.signal_change_impact.json +91 -0
- package/catalog/policies/policy.obs.source_map_access_control.json +92 -0
- package/catalog/policies/policy.obs.telemetry_lifecycle_declared.json +93 -0
- package/catalog/policies/policy.obs.trace_correlation.json +91 -0
- package/catalog/policies/policy.perf.budget_change_retest.json +91 -0
- package/catalog/policies/policy.perf.evidence_binding.json +95 -0
- package/catalog/policies/policy.perf.observation_dimensions.json +94 -0
- package/catalog/policies/policy.proc.checklist_change_policy.json +91 -0
- package/catalog/policies/policy.proc.pre_code_declaration.json +2 -1
- package/catalog/policies/policy.proc.scope_drift_reclassify.json +91 -0
- package/catalog/policies/policy.prv.processing_scope_re_review.json +97 -0
- package/catalog/policies/policy.prv.sensitive_data_six_facts.json +102 -0
- package/catalog/policies/policy.registry.human_fields_validated_decorrelated.json +93 -0
- package/catalog/policies/policy.rel.no_irreversible_unmonitored_full_release.json +91 -0
- package/catalog/policies/policy.rel.observability_before_ship.json +91 -0
- package/catalog/policies/policy.rel.pre_release_confirmation.json +2 -1
- package/catalog/policies/policy.rel.process_change_needs_drill_audit.json +91 -0
- package/catalog/policies/policy.rel.traceable_build.json +93 -0
- package/catalog/policies/policy.role.domain_decision_authority.json +2 -1
- package/catalog/policies/policy.role.human_signs_for_ai.json +93 -0
- package/catalog/policies/policy.sec.authn_policy_unified.json +91 -0
- package/catalog/policies/policy.sec.no_client_side_trust.json +92 -0
- package/catalog/policies/policy.sec.no_longterm_security_disable.json +91 -0
- package/catalog/policies/policy.sec.no_script_readable_credentials.json +91 -0
- package/catalog/policies/policy.sec.no_secrets_in_client_surface.json +91 -0
- package/catalog/policies/policy.sec.relaxation_approval.json +92 -0
- package/catalog/policies/policy.sec.security_relaxation_gate.json +92 -0
- package/catalog/policies/policy.sec.third_party_execution_register.json +2 -1
- package/catalog/policies/policy.sec.trust_boundary_enforcement.json +93 -0
- package/catalog/policies/policy.sec.upload_download_server_recheck.json +91 -0
- package/catalog/policies/policy.sec.url_source_allowlist.json +91 -0
- package/catalog/policies/policy.spec.admission_criteria.json +2 -1
- package/catalog/policies/policy.spec.derived_view_regeneration.json +2 -1
- package/catalog/policies/policy.spec.draft_not_baseline.json +2 -1
- package/catalog/policies/policy.spec.family_conflict_precedence.json +93 -0
- package/catalog/policies/policy.spec.file_structure_contract.json +2 -1
- package/catalog/policies/policy.spec.freeze_before_use.json +93 -0
- package/catalog/policies/policy.spec.metadata_required.json +2 -1
- package/catalog/policies/policy.spec.post_dev_backfill_classify.json +2 -1
- package/catalog/policies/policy.spec.primary_source_basis.json +93 -0
- package/catalog/policies/policy.spec.procedural_record_not_surrogate.json +2 -1
- package/catalog/policies/policy.spec.semantic_identity.json +2 -1
- package/catalog/policies/policy.spec.unresolved_ledger_gate.json +2 -1
- package/catalog/policies/policy.stack.derived_store_not_authority.json +93 -0
- package/catalog/policies/policy.stack.dual_web_stack_boundary.json +93 -0
- package/catalog/policies/policy.stack.entry_chain_recorded.json +93 -0
- package/catalog/policies/policy.stack.entry_limits_aligned.json +94 -0
- package/catalog/policies/policy.stack.local_form_not_prod_fact.json +93 -0
- package/catalog/policies/policy.stack.multi_datastore_ownership.json +93 -0
- package/catalog/policies/policy.stack.no_implicit_selection.json +2 -1
- package/catalog/policies/policy.stack.persistence_coexistence_scope.json +93 -0
- package/catalog/policies/policy.stack.toolchain_versions_pinned.json +95 -0
- package/catalog/policies/policy.stack.upgrade_compat_verified.json +93 -0
- package/catalog/policies/policy.struct.module_entry_dependency_declared.json +92 -0
- package/catalog/policies/policy.struct.no_unexplained_top_level_dir.json +91 -0
- package/catalog/policies/policy.struct.reuse_proven_structure.json +91 -0
- package/catalog/policies/policy.test.control_nondeterminism_keep_diagnosis.json +91 -0
- package/catalog/policies/policy.test.isolation_and_cleanup.json +93 -0
- package/catalog/policies/policy.test.no_synthetic_stability.json +92 -0
- package/catalog/policies/policy.test.pyramid_and_ci_matrix.json +92 -0
- package/catalog/policies/policy.test.removal_justification.json +91 -0
- package/catalog/policies/policy.test.removal_needs_substitute_evidence.json +91 -0
- package/catalog/policies/policy.test.risk_driven_plan.json +92 -0
- package/catalog/policies/policy.test.stable_observable_assertions.json +92 -0
- package/catalog/policies/policy.tool.discoverable_toolchain.json +92 -0
- package/catalog/policies/policy.tool.no_hand_edit_generated_no_ci_drift.json +91 -0
- package/catalog/policies/policy.tool.no_vendored_body_edits.json +94 -0
- package/catalog/policies/policy.tool.scoped_scan_boundary.json +2 -1
- package/catalog/policies/policy.tool.upgrade_verify_lock_rollback.json +92 -0
- package/catalog/policies/policy.web.api.auth_app_client_split.json +2 -1
- package/catalog/policies/policy.web.api.client_change_impact.json +2 -1
- package/catalog/policies/policy.web.api.domain_api_only.json +2 -1
- package/catalog/policies/policy.web.api.error_normalization.json +2 -1
- package/catalog/policies/policy.web.api.generated_client.json +2 -1
- package/catalog/policies/policy.web.api.late_result_guard.json +2 -1
- package/catalog/policies/policy.web.api.mutation_idempotency.json +2 -1
- package/catalog/policies/policy.web.api.no_network_optimism.json +2 -1
- package/catalog/policies/policy.web.api.query_cancel_stale_drop.json +2 -1
- package/catalog/policies/policy.web.api.request_infrastructure.json +2 -1
- package/catalog/policies/policy.web.api.retry_discipline.json +2 -1
- package/catalog/policies/policy.web.api.session_recovery_split.json +2 -1
- package/catalog/policies/policy.web.api.single_http_client.json +2 -1
- package/catalog/policies/policy.web.api.single_loading_source.json +2 -1
- package/catalog/policies/policy.web.api.transport_vs_business.json +2 -1
- package/catalog/policies/policy.web.api.trusted_endpoint_source.json +2 -1
- package/catalog/policies/policy.web.api.typed_domain_naming.json +2 -1
- package/catalog/policies/policy.web.arch.layer_isolation.json +2 -1
- package/catalog/policies/policy.web.arch.naming_conventions.json +2 -1
- package/catalog/policies/policy.web.arch.public_api_barrel.json +2 -1
- package/catalog/policies/policy.web.chg.controlled_change_triggers.json +2 -1
- package/catalog/policies/policy.web.comp.no_trivial_or_god_component.json +91 -0
- package/catalog/policies/policy.web.comp.public_contract_completeness.json +93 -0
- package/catalog/policies/policy.web.copy.action_object_clarity.json +92 -0
- package/catalog/policies/policy.web.copy.enumerable_placement.json +91 -0
- package/catalog/policies/policy.web.copy.error_next_step.json +92 -0
- package/catalog/policies/policy.web.copy.suppression_ledger_discipline.json +2 -1
- package/catalog/policies/policy.web.grid.column_schema_fields.json +2 -1
- package/catalog/policies/policy.web.grid.config_isolation.json +2 -1
- package/catalog/policies/policy.web.grid.freeze_key_columns.json +2 -1
- package/catalog/policies/policy.web.grid.interaction_registry.json +2 -1
- package/catalog/policies/policy.web.grid.keyboard_clipboard.json +2 -1
- package/catalog/policies/policy.web.grid.schema_driven_shell.json +2 -1
- package/catalog/policies/policy.web.grid.schema_versioning.json +2 -1
- package/catalog/policies/policy.web.grid.server_ops_virtualization.json +2 -1
- package/catalog/policies/policy.web.grid.shell_change_matrix.json +2 -1
- package/catalog/policies/policy.web.grid.width_fix_ladder.json +2 -1
- package/catalog/policies/policy.web.handoff.state_matrix_full.json +94 -0
- package/catalog/policies/policy.web.i18n.copy_key_discipline.json +92 -0
- package/catalog/policies/policy.web.i18n.raw_value_for_compute.json +91 -0
- package/catalog/policies/policy.web.page.region_consistency.json +93 -0
- package/catalog/policies/policy.web.perf.budget_skeleton.json +2 -1
- package/catalog/policies/policy.web.style.ownership_matrix.json +2 -1
- package/catalog/policies/policy.web.track.attempt_result_correlation.json +91 -0
- package/catalog/policies/policy.web.track.consent_lifecycle.json +2 -1
- package/catalog/policies/policy.web.track.no_synthetic_actions.json +92 -0
- package/catalog/policies/policy.web.track.privacy_default_deny.json +2 -1
- package/catalog/policies/policy.web.track.stable_event_keys.json +2 -1
- package/catalog/policies/policy.web.track.typed_client_validation.json +91 -0
- package/catalog/policies/policy.web.uiux.provider_evidence_not_business_truth.json +2 -1
- package/catalog/policies/policy.wf.no_planned_as_verified.json +91 -0
- package/catalog/policies/policy.wf.task_facts_preconfirm.json +94 -0
- package/catalog/policies/profile.baseline.java_enterprise_default.json +96 -0
- package/catalog/sensors/sensor.browser.deterministic.json +2 -1
- package/catalog/sensors/sensor.browser.interactive.json +2 -1
- package/catalog/sensors/sensor.build.static.json +2 -1
- package/catalog/sensors/sensor.contract.conformance.json +2 -1
- package/catalog/sensors/sensor.performance.budget.json +2 -1
- package/catalog/sensors/sensor.production.metric.json +2 -1
- package/catalog/tools/seed_b6b_frontend.py +1424 -0
- package/catalog/tools/seed_b6c_backend.py +1495 -0
- package/catalog/tools/seed_b6d_baseline.py +620 -0
- package/catalog/tools/seed_b6e_evidence.py +1305 -0
- package/catalog/tools/seed_d3_review.py +1105 -0
- package/catalog/tools/seed_v06_batch2_materials.py +27 -18
- package/dist/bin.js +23026 -16635
- package/package.json +2 -1
- package/seeds/baseline/backend/api-contract.md +26 -0
- package/seeds/baseline/backend/architecture.md +31 -0
- package/seeds/baseline/backend/data-access.md +31 -0
- package/seeds/baseline/backend/directory-structure.md +11 -0
- package/seeds/baseline/backend/integration-runtime.md +21 -0
- package/seeds/baseline/backend/quality.md +31 -0
- package/seeds/baseline/backend/stack.yaml +13 -0
- package/seeds/baseline/backend/transaction-concurrency.md +26 -0
- package/seeds/baseline/data/lineage.md +11 -0
- package/seeds/baseline/data/migration.md +11 -0
- package/seeds/baseline/data/model.md +31 -0
- package/seeds/baseline/data/precision-units.md +31 -0
- package/seeds/baseline/data/quality.md +31 -0
- package/seeds/baseline/frontend/api-and-error.md +21 -0
- package/seeds/baseline/frontend/architecture.md +26 -0
- package/seeds/baseline/frontend/design-system.md +21 -0
- package/seeds/baseline/frontend/directory-structure.md +16 -0
- package/seeds/baseline/frontend/quality.md +26 -0
- package/seeds/baseline/frontend/stack.yaml +17 -0
- package/seeds/baseline/frontend/state-and-data.md +26 -0
- package/seeds/baseline/manifest.yaml +32 -0
- package/seeds/baseline/platform/delivery.md +36 -0
- package/seeds/baseline/platform/environment.md +11 -0
- package/seeds/baseline/platform/observability.md +31 -0
- package/seeds/baseline/platform/security.md +26 -0
- package/seeds/manifest.json +2006 -0
- package/seeds/specs/evidence/accessibility.md +89 -0
- package/seeds/specs/evidence/architecture.md +89 -0
- package/seeds/specs/evidence/browser-e2e.md +91 -0
- package/seeds/specs/evidence/build.md +91 -0
- package/seeds/specs/evidence/business-acceptance.md +89 -0
- package/seeds/specs/evidence/complexity-crap.md +97 -0
- package/seeds/specs/evidence/contract.md +89 -0
- package/seeds/specs/evidence/coverage.md +91 -0
- package/seeds/specs/evidence/data-migration.md +91 -0
- package/seeds/specs/evidence/dead-code-duplicate.md +89 -0
- package/seeds/specs/evidence/dependency-supply-chain.md +89 -0
- package/seeds/specs/evidence/index.md +55 -0
- package/seeds/specs/evidence/mutation.md +89 -0
- package/seeds/specs/evidence/performance.md +89 -0
- package/seeds/specs/evidence/release.md +91 -0
- package/seeds/specs/evidence/runtime-observability.md +91 -0
- package/seeds/specs/evidence/security.md +89 -0
- package/seeds/specs/evidence/typecheck-lint.md +91 -0
- package/seeds/specs/evidence/unit-component-integration.md +91 -0
- package/seeds/specs/evidence/visual-regression.md +89 -0
- package/seeds/specs/hard/backend/01-architecture-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/02-project-structure-governance-protocol.md +68 -0
- package/seeds/specs/hard/backend/03-directory-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/04-layering-architecture-protocol.md +68 -0
- package/seeds/specs/hard/backend/05-task-workflow-protocol.md +68 -0
- package/seeds/specs/hard/backend/06-ai-generated-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/07-evidence-acceptance-protocol.md +68 -0
- package/seeds/specs/hard/backend/08-contract-change-protocol.md +68 -0
- package/seeds/specs/hard/backend/09-role-responsibility-protocol.md +68 -0
- package/seeds/specs/hard/backend/10-security-protocol.md +68 -0
- package/seeds/specs/hard/backend/11-environment-configuration-protocol.md +67 -0
- package/seeds/specs/hard/backend/12-api-contract-protocol.md +68 -0
- package/seeds/specs/hard/backend/13-privacy-data-lifecycle-protocol.md +68 -0
- package/seeds/specs/hard/backend/14-business-rules-state-protocol.md +68 -0
- package/seeds/specs/hard/backend/15-data-model-protocol.md +68 -0
- package/seeds/specs/hard/backend/16-error-code-protocol.md +68 -0
- package/seeds/specs/hard/backend/17-permission-authorization-protocol.md +68 -0
- package/seeds/specs/hard/backend/18-database-schema-migration-protocol.md +68 -0
- package/seeds/specs/hard/backend/19-query-index-sql-protocol.md +68 -0
- package/seeds/specs/hard/backend/20-transaction-boundary-protocol.md +68 -0
- package/seeds/specs/hard/backend/21-concurrency-locking-protocol.md +68 -0
- package/seeds/specs/hard/backend/22-idempotency-protocol.md +68 -0
- package/seeds/specs/hard/backend/23-cache-redis-consistency-protocol.md +68 -0
- package/seeds/specs/hard/backend/24-external-integration-resilience-protocol.md +68 -0
- package/seeds/specs/hard/backend/25-async-job-scheduler-protocol.md +68 -0
- package/seeds/specs/hard/backend/26-engineering-tooling-protocol.md +68 -0
- package/seeds/specs/hard/backend/27-dependency-supply-chain-protocol.md +68 -0
- package/seeds/specs/hard/backend/28-testing-protocol.md +68 -0
- package/seeds/specs/hard/backend/29-observability-logging-tracing-protocol.md +68 -0
- package/seeds/specs/hard/backend/30-performance-capacity-protocol.md +68 -0
- package/seeds/specs/hard/backend/31-runtime-deployment-protocol.md +68 -0
- package/seeds/specs/hard/backend/32-release-versioning-rollback-protocol.md +68 -0
- package/seeds/specs/hard/backend/index.md +177 -0
- package/seeds/specs/hard/frontend/01-development-checklist-protocol.md +86 -0
- package/seeds/specs/hard/frontend/02-ai-generated-code-protocol.md +82 -0
- package/seeds/specs/hard/frontend/03-acceptance-gate-protocol.md +86 -0
- package/seeds/specs/hard/frontend/04-security-protocol.md +283 -0
- package/seeds/specs/hard/frontend/05-environment-configuration-protocol.md +80 -0
- package/seeds/specs/hard/frontend/06-change-governance-protocol.md +90 -0
- package/seeds/specs/hard/frontend/07-frontend-backend-communication-protocol.md +219 -0
- package/seeds/specs/hard/frontend/08-role-responsibility-protocol.md +80 -0
- package/seeds/specs/hard/frontend/09-module-boundary-protocol.md +81 -0
- package/seeds/specs/hard/frontend/10-engineering-tooling-protocol.md +89 -0
- package/seeds/specs/hard/frontend/11-dependency-package-management-protocol.md +87 -0
- package/seeds/specs/hard/frontend/12-business-rules-protocol.md +79 -0
- package/seeds/specs/hard/frontend/13-monetary-precision-protocol.md +81 -0
- package/seeds/specs/hard/frontend/14-data-model-protocol.md +85 -0
- package/seeds/specs/hard/frontend/15-request-api-protocol.md +87 -0
- package/seeds/specs/hard/frontend/16-error-handling-protocol.md +79 -0
- package/seeds/specs/hard/frontend/17-permission-protocol.md +79 -0
- package/seeds/specs/hard/frontend/18-state-management-protocol.md +88 -0
- package/seeds/specs/hard/frontend/19-cache-protocol.md +79 -0
- package/seeds/specs/hard/frontend/20-testing-protocol.md +88 -0
- package/seeds/specs/hard/frontend/21-design-system-protocol.md +79 -0
- package/seeds/specs/hard/frontend/22-theme-protocol.md +79 -0
- package/seeds/specs/hard/frontend/23-accessibility-protocol.md +189 -0
- package/seeds/specs/hard/frontend/24-component-protocol.md +80 -0
- package/seeds/specs/hard/frontend/25-page-structure-protocol.md +79 -0
- package/seeds/specs/hard/frontend/26-style-layout-protocol.md +80 -0
- package/seeds/specs/hard/frontend/27-rendering-state-protocol.md +81 -0
- package/seeds/specs/hard/frontend/28-form-protocol.md +88 -0
- package/seeds/specs/hard/frontend/29-routing-url-protocol.md +79 -0
- package/seeds/specs/hard/frontend/30-data-grid-protocol.md +83 -0
- package/seeds/specs/hard/frontend/31-performance-protocol.md +137 -0
- package/seeds/specs/hard/frontend/32-file-import-export-protocol.md +80 -0
- package/seeds/specs/hard/frontend/33-release-versioning-protocol.md +79 -0
- package/seeds/specs/hard/frontend/34-monitoring-logging-protocol.md +128 -0
- package/seeds/specs/hard/frontend/35-mock-protocol.md +97 -0
- package/seeds/specs/hard/frontend/36-feature-flag-protocol.md +79 -0
- package/seeds/specs/hard/frontend/37-browser-device-compatibility-protocol.md +83 -0
- package/seeds/specs/hard/frontend/38-internationalization-protocol.md +243 -0
- package/seeds/specs/hard/frontend/39-copywriting-protocol.md +79 -0
- package/seeds/specs/hard/frontend/40-analytics-protocol.md +98 -0
- package/seeds/specs/hard/frontend/41-design-handoff-protocol.md +80 -0
- package/seeds/specs/hard/frontend/42-browser-runtime-lifecycle-protocol.md +86 -0
- package/seeds/specs/hard/frontend/43-time-temporal-protocol.md +86 -0
- package/seeds/specs/hard/frontend/44-privacy-data-lifecycle-protocol.md +87 -0
- package/seeds/specs/hard/frontend/45-browser-storage-protocol.md +87 -0
- package/seeds/specs/hard/frontend/index.md +308 -0
- package/seeds/specs/hard/stacks/java/index.md +20 -0
- package/seeds/specs/hard/stacks/java/java-language-overlay.md +35 -0
- package/seeds/specs/hard/stacks/jpa/index.md +20 -0
- package/seeds/specs/hard/stacks/jpa/jpa-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/index.md +20 -0
- package/seeds/specs/hard/stacks/kubernetes-ingress/kubernetes-ingress-overlay.md +35 -0
- package/seeds/specs/hard/stacks/messaging/index.md +20 -0
- package/seeds/specs/hard/stacks/messaging/messaging-reliability-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mybatis/index.md +20 -0
- package/seeds/specs/hard/stacks/mybatis/mybatis-persistence-overlay.md +35 -0
- package/seeds/specs/hard/stacks/mysql/index.md +20 -0
- package/seeds/specs/hard/stacks/mysql/mysql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/nginx/index.md +20 -0
- package/seeds/specs/hard/stacks/nginx/nginx-proxy-overlay.md +35 -0
- package/seeds/specs/hard/stacks/postgresql/index.md +20 -0
- package/seeds/specs/hard/stacks/postgresql/postgresql-database-overlay.md +35 -0
- package/seeds/specs/hard/stacks/redis/index.md +20 -0
- package/seeds/specs/hard/stacks/redis/redis-cache-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-batch/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-batch/spring-batch-job-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-boot/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-boot/spring-boot-application-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-mvc/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-mvc/spring-mvc-web-overlay.md +35 -0
- package/seeds/specs/hard/stacks/spring-webflux/index.md +20 -0
- package/seeds/specs/hard/stacks/spring-webflux/spring-webflux-reactive-overlay.md +35 -0
- package/seeds/specs/hard/stacks/tomcat/index.md +20 -0
- package/seeds/specs/hard/stacks/tomcat/tomcat-runtime-overlay.md +35 -0
package/README.md
CHANGED
|
@@ -42,7 +42,7 @@ pomaster record gate-run/claim
|
|
|
42
42
|
|
|
43
43
|
# ⑥ RECONCILE —— delta 三方对账 / 投影视图 / 审计 / 例外台账
|
|
44
44
|
pomaster reconcile --permit <PERMIT.*>
|
|
45
|
-
pomaster view blueprint/task
|
|
45
|
+
pomaster view blueprint/task/attention/decision
|
|
46
46
|
pomaster audit blueprint/task
|
|
47
47
|
pomaster ledger record/list
|
|
48
48
|
|
|
@@ -56,15 +56,16 @@ pomaster closeout <task-id>
|
|
|
56
56
|
|
|
57
57
|
# 横切 —— 对象检视 / 图视图 / Discovery / Research / Eval / Catalog / 迁移 / 生产反馈 / 多 Agent / 执行身份
|
|
58
58
|
pomaster resolve "<need>" [--hints ...]
|
|
59
|
+
pomaster new-entity check <governed-id> [--need ...]
|
|
59
60
|
pomaster inspect <governed-id>
|
|
60
61
|
pomaster graph <governed-id> [--view impact]
|
|
61
|
-
pomaster brainstorm start/status/promote
|
|
62
|
+
pomaster brainstorm start/question-gate/status/promote
|
|
62
63
|
pomaster research list/inspect
|
|
63
64
|
pomaster eval --suite behavioral
|
|
64
65
|
pomaster catalog status/explain/relock
|
|
65
66
|
pomaster migrate trellis-spec --analyze --spec-root <dir>
|
|
66
67
|
pomaster production band/evaluate/challenge/diagnose/metrics/self-improvement
|
|
67
|
-
pomaster agents status
|
|
68
|
+
pomaster agents status/dispatch-pack
|
|
68
69
|
pomaster run <task>
|
|
69
70
|
pomaster handoff <task> --to <role>
|
|
70
71
|
pomaster session attach/refresh/list
|
|
@@ -103,7 +104,7 @@ pomaster init
|
|
|
103
104
|
| `.pomaster/config.yaml` | 治理配置(人类可编辑) | 否(只在缺失时创建) |
|
|
104
105
|
| `AGENTS.md` / `CLAUDE.md` | Agent 重入口(profile + 状态速览 + 常用命令 + 重入口安装物锚点) | 仅带生成标记的(`CLAUDE.md` 通过 `@AGENTS.md` 导入共享) |
|
|
105
106
|
|
|
106
|
-
**目录宪法全树预铺**(Owner 裁定 2026-09-04
|
|
107
|
+
**目录宪法全树预铺**(Owner 裁定 2026-09-04,不分档级):init 一次性建出 `.pomaster/` 目录宪法 §2 全树(state / truth/objects / evidence 三区 / executions / traces / runtime 四区 / discovery/scratchpads / memory/inbox / production 六区,41 目录 × 各带 README——含 09-04 Batch 1 增量 sources/ 来源权威边界平面 + Batch 2 增量 state/contexts/(Task Context Manifest 落盘位)与 evidence/observations/(感知回执 sidecar 分区)+ Batch 6 增量 baseline/(Project Engineering Baseline 四 lane 分区)与 specs/(Spec Workspace:hard/frontend、hard/backend、hard/stacks、acceptance、evidence)两棵播种子树)+ `.pomaster/layout.json` 机器清单(全目录 status=wired + activation_hint——什么样的项目/需求激活该平面由 AI 按项目复杂度自行判断,目录存在 ≠ 已激活)。目录树与入口形态/平台选择**完全无关**(B7 裁定:init 单一重入口,无模式旗标);canonical 正文层为 `.pomaster/truth/objects/`,legacy `.pomaster/objects/` 在场会被显式告警(禁静默 merge/覆盖/迁移)。播种面语义(Batch 6):`baseline/**` 与 `specs/**` 下的内容文件由 init 按种子清单 **seed-once-missing-only** 落盘——缺失才写、在座零触碰、播种件不带生成标记(项目自有可编辑,重跑 init 永不覆盖你的修改;AI 禁静默覆盖)。完整规范见 `.pomaster/layout.json` 与目录宪法文档。
|
|
107
108
|
|
|
108
109
|
**重入口默认**(D13 修订,2026-09-03):init 缺省生成重入口全套,让 Agent 一开会话就自动看到治理状态、按需自动触发命令卡——
|
|
109
110
|
|
|
@@ -111,22 +112,20 @@ pomaster init
|
|
|
111
112
|
- **hooks 注入(claude)**:`.claude/settings.json` 合并式注册 SessionStart → `pomaster session`(治理速览投影,≤10,000 字符硬上限)与 UserPromptSubmit → `pomaster alerts`(可行动项过滤器,干净=空输出恒 exit 0);既有 hooks(人类/Trellis 条目)一律保留,坏 JSON fail-closed 不覆盖;
|
|
112
113
|
- **cursor/qoder**:加厚版 rules(命令卡 + Browser Eyes 展开进 `.cursor/rules/pomaster.mdc` / `.qoder/rules/pomaster.md`)。
|
|
113
114
|
|
|
114
|
-
**显式退回**:`pomaster init --mode light` 保留轻入口形态(细指针适配器,静态、无运行时依赖、无 hook 注入);对已重入口项目执行时按平台清单移除上述安装物并重写入口文件回轻形态——重→轻可逆,不动人类文件。
|
|
115
|
-
|
|
116
115
|
**多平台适配器**:`AGENTS.md` 恒为唯一事实源;`--platforms claude,codex,cursor,qoder` 追加各平台的适配器(`CLAUDE.md` / 根 `AGENTS.md` 即 codex 原生入口 / `.cursor/rules/pomaster.mdc` / `.qoder/rules/pomaster.md`,本包产物形态升级自动重写,人类异形内容一律不覆盖);`--platforms none` 只建 AGENTS.md + 状态骨架。TTY 交互终端直接 `pomaster init` 会出复选清单(◉/◯ 空格勾选 / ↑↓ 移动 / 回车确认;raw 模式不可用时降级为编号输入);`--json` 恒走确定性缺省(claude,重入口)。
|
|
117
116
|
|
|
118
|
-
装好后 `pomaster session`(无子命令)就是 hook 看到的治理速览;`pomaster doctor` 会用 `heavy_entry_hooks` / `heavy_entry_skills` 探针核对重入口安装物(hooks 注册态 +
|
|
117
|
+
装好后 `pomaster session`(无子命令)就是 hook 看到的治理速览;`pomaster doctor` 会用 `heavy_entry_hooks` / `heavy_entry_skills` 探针核对重入口安装物(hooks 注册态 + 双镜像逐字节一致;未安装 → MISSING_CONFIGURATION 并指路重跑 `pomaster init`)。
|
|
119
118
|
|
|
120
119
|
### 3. init 之后该配置什么(config.yaml)
|
|
121
120
|
|
|
122
121
|
```yaml
|
|
123
122
|
version: 1
|
|
124
|
-
profile: LIGHT #
|
|
123
|
+
profile: LIGHT # 治理档位(信息性人类偏好,A1 裁定:不进判卷):MINIMAL | LIGHT | STANDARD
|
|
125
124
|
triage:
|
|
126
125
|
ttl_hours: 168 # triage 结果有效期,过期必须 re-triage
|
|
127
126
|
```
|
|
128
127
|
|
|
129
|
-
**profile
|
|
128
|
+
**profile 三档怎么选**(信息性人类偏好——A1 裁定 2026-09-04:档位只影响呈现与偏好记录,不进任何 gate/permit 判卷、不决定激活;激活由 context compile 的 lane/role/capability 机制承担):
|
|
130
129
|
|
|
131
130
|
| 档位 | 适合 | 体感 |
|
|
132
131
|
|---|---|---|
|
|
@@ -370,7 +369,7 @@ Spec、Task、Gate、Knowledge、Brainstorm……全部是这五个原语的派
|
|
|
370
369
|
## 哲学宪法(违者即是 bug)
|
|
371
370
|
|
|
372
371
|
- Small Constitution:硬约束极少而精——不伪造事实、不越权、不静默冲突、不无证据宣称完成
|
|
373
|
-
- Heavy Entry by Default(D13
|
|
372
|
+
- Heavy Entry by Default(D13 修订 2026-09-03 + B7 裁定 2026-09-04):入口即治理——init 默认安装 skills 库 + hooks 注入,Agent 开会话即见状态;单一重入口、无模式旗标;hook 注入内容永远是 Canonical State 的投影,不是第二事实源
|
|
374
373
|
- No-op is elegant:没有必要的治理动作,零变化就是成功
|
|
375
374
|
- Framework as Review Surface:框架约束好了的人,不需要读 AI 写的每一行代码——但前提是判卷器诚实,所以我们用对抗性用例持续攻击自己的 gate
|
|
376
375
|
- Minimum Sufficient Governance:治理开销必须与变更风险成比例;小改动的体验是"几乎感觉不到 POMaster"
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
"kind": "archetype",
|
|
4
4
|
"layer": "PATTERN",
|
|
5
5
|
"title_zh": "前端错误分类",
|
|
6
|
-
"summary_zh": "
|
|
6
|
+
"summary_zh": "前端错误十分型闭包(PRD §21 九分型 + Owner 2026-09-04 裁定补 CANCELED 第十分型):每型绑定呈现/重试/遥测/用户话术四语义位;浏览器原生信号只够两分,细分映射责任在 HTTP Client 适配层。",
|
|
7
7
|
"semantic": {
|
|
8
|
-
"responsibility": "
|
|
9
|
-
"when_to_use": "任何触发 HTTP/异步调用的页面组契约错误处置面——错误到分型的映射在 HTTP Client 适配层完成(WHATWG fetch 原生只给 TypeError 与 HTTP status
|
|
8
|
+
"responsibility": "把运行时错误归类为十分型闭包,驱动呈现/重试/遥测/话术四列的确定性处置",
|
|
9
|
+
"when_to_use": "任何触发 HTTP/异步调用的页面组契约错误处置面——错误到分型的映射在 HTTP Client 适配层完成(WHATWG fetch 原生只给 TypeError 与 HTTP status 两分,十分型的映射责任不在浏览器)",
|
|
10
10
|
"when_not_to_use": "非错误态的加载/空态呈现;后端错误信封字段结构本身(v0.6.1 §44 Error Archetype 承载 type/title/status/detail/instance 等成员)"
|
|
11
11
|
},
|
|
12
12
|
"composition": {
|
|
@@ -57,6 +57,12 @@
|
|
|
57
57
|
"telemetry": "timeout_event",
|
|
58
58
|
"user_message": "请求超时,请重试"
|
|
59
59
|
},
|
|
60
|
+
"CANCELED": {
|
|
61
|
+
"presentation_pattern": "cancelled_state_quiet_dismissal",
|
|
62
|
+
"retry_behavior": "never_retry_user_cancelled",
|
|
63
|
+
"telemetry": "cancel_event_aborted",
|
|
64
|
+
"user_message": "操作已取消"
|
|
65
|
+
},
|
|
60
66
|
"OFFLINE": {
|
|
61
67
|
"presentation_pattern": "offline_banner_persistent",
|
|
62
68
|
"retry_behavior": "auto_resume_on_reconnect",
|
|
@@ -72,11 +78,13 @@
|
|
|
72
78
|
},
|
|
73
79
|
"constraints": [
|
|
74
80
|
"浏览器原生信号只够两分:WHATWG fetch 网络失败 reject TypeError、HTTP 错误状态不 reject(查 Response.status)——TIMEOUT/OFFLINE/AUTHENTICATION 等细分全部依赖 client 适配层信号(axios code/AbortSignal/navigator.onLine/status 映射)",
|
|
75
|
-
"
|
|
81
|
+
"十分型映射责任在 HTTP Client Archetype 层而非浏览器",
|
|
82
|
+
"CANCELED 第十分型(Owner 2026-09-04 裁定):axios ERR_CANCELED / fetch AbortError / TanStack cancelQueries 三源业界共识——用户主动取消绝不自动重试,呈现为安静取消态而非错误横幅(九分型缺位会把取消误归 UNKNOWN/TRANSPORT)",
|
|
83
|
+
"429 归重试处置(Owner 2026-09-04 裁定注记):ofetch 默认重试列表含 409/429 视作传输层瞬时错误——429 不归 CONFLICT 分型,按 retryable 瞬时处置;409 仍归 CONFLICT(语义张力如实登记)",
|
|
76
84
|
"RFC 9457 about:blank(未给出更具体类型时的缺省)与 UNKNOWN 同构"
|
|
77
85
|
],
|
|
78
86
|
"x-research-anchors": {
|
|
79
|
-
"note": "
|
|
87
|
+
"note": "【已裁定 2026-09-04·差异表 #8 两项】①补 CANCELED 第十分型(九→十):axios ERR_CANCELED/fetch AbortError/TanStack cancelQueries 三处业界共识,retry 语义绝不重试——已入 categories 且四列绑定齐全;②429 归重试处置:ofetch 默认重试列表含 409/429 视作传输层瞬时错误,429 不归 CONFLICT、按 retryable 瞬时处置注记入 constraints。WHATWG fetch TypeError/RFC 9457 成员空间/axios error codes 全表/ofetch 重试列表为规范与官方文档 2026-09-03 实抓",
|
|
80
88
|
"sources": [
|
|
81
89
|
{
|
|
82
90
|
"url": "https://fetch.spec.whatwg.org/",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"自造新层(FSD:层语义已标准化,不推荐新增)"
|
|
45
45
|
],
|
|
46
46
|
"x-research-anchors": {
|
|
47
|
-
"note": "
|
|
47
|
+
"note": "【已裁定 2026-09-04·差异表 #4】FSD v2 现行映射采纳(六有效层 + Processes deprecated + api 是 segment):上述 defaults 四行声明即裁定正文——FSD 现行 7 层(Processes deprecated→有效 6 层)、无独立 API 层(api 是各层 segment)、widgets 无 PRD 对应层(optional 位)、app 层为 FSD v2 新增有效层;import rule 严格向下与 Public API「contract+gate」定位(与 PRD §19 public_api_required 同构)为 feature-sliced.design 官方文档(v3 站点)2026-09-03 实抓",
|
|
48
48
|
"sources": [
|
|
49
49
|
{
|
|
50
50
|
"url": "https://feature-sliced.design/docs/reference/layers",
|
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
"kind": "archetype",
|
|
4
4
|
"layer": "PATTERN",
|
|
5
5
|
"title_zh": "异步命令状态机",
|
|
6
|
-
"summary_zh": "以 XState v5 六概念(state/event/transition/guard/actor/input/output)承载的异步命令原型:命令参数经 input 进入,状态经 guarded transition 确定性转移,final state 产出 output
|
|
6
|
+
"summary_zh": "以 XState v5 六概念(state/event/transition/guard/actor/input/output)承载的异步命令原型:命令参数经 input 进入,状态经 guarded transition 确定性转移,final state 产出 output;非法组合可检测——未声明 transition 不存在(XState v5 运行时静默忽略),state.can() 守卫为唯一预检位(Owner 2026-09-04 裁定差异表 #7)。",
|
|
7
7
|
"semantic": {
|
|
8
8
|
"responsibility": "把一次异步命令(提交/保存/执行)建模为显式状态机:idle/running/done|error 转移全部声明在案,guard 纯同步布尔",
|
|
9
|
-
"when_to_use": "
|
|
9
|
+
"when_to_use": "命令的合法状态转移需要显式契约时(非法组合可检测:「未声明的 transition 不存在」——XState v5 对未匹配事件静默忽略,state.can() 守卫预检);多步骤异步编排(invoke/spawn actor)",
|
|
10
10
|
"when_not_to_use": "远端取数缓存语义(STATE_ARCHETYPE.SERVER_QUERY);无需显式转移契约的局部加载布尔"
|
|
11
11
|
},
|
|
12
12
|
"composition": {
|
|
@@ -33,10 +33,10 @@
|
|
|
33
33
|
"forbidden": [
|
|
34
34
|
"在 output 语义位放中途产物(output 仅到达 final state 时存在)",
|
|
35
35
|
"直接改 context(immutable,仅 assign 更新)",
|
|
36
|
-
"断言未匹配事件会运行时报错(XState v5 现实是静默忽略+state.can() 为 false
|
|
36
|
+
"断言未匹配事件会运行时报错(XState v5 现实是静默忽略+state.can() 为 false——非法组合的可检测位是 transition contract 声明与 can() 守卫预检,Owner 2026-09-04 裁定)"
|
|
37
37
|
],
|
|
38
38
|
"x-research-anchors": {
|
|
39
|
-
"note": "
|
|
39
|
+
"note": "【已裁定 2026-09-04·差异表 #7】Illegal Transition 不引入治理层词形:XState v5(npm 5.32.6)对未匹配/未启用事件按「no enabled transition → state does not change」静默忽略,state.can() 显式守卫为唯一预检位——PRD「非法组合必须可表达」由「可检测(transition contract 声明 + state.can() 守卫预检)」承载。六概念词形与 guard 序列化命名推荐(reusability+visualization)均为 stately.ai 官方文档 2026-09-03 实抓",
|
|
40
40
|
"sources": [
|
|
41
41
|
{
|
|
42
42
|
"url": "https://stately.ai/docs/transitions",
|