specsmith 0.16.2.dev613__tar.gz → 0.16.3__tar.gz
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.
- {specsmith-0.16.2.dev613/src/specsmith.egg-info → specsmith-0.16.3}/PKG-INFO +3 -3
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/README.md +2 -2
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/pyproject.toml +2 -2
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/__init__.py +1 -1
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/cli.py +2 -2
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/config.py +1 -1
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/esdb/__init__.py +2 -2
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/esdb/_license.py +1 -1
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/esdb/bridge.py +1 -1
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/docs.py +6 -4
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/docs/mkdocs.yml.j2 +3 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3/src/specsmith.egg-info}/PKG-INFO +3 -3
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_cli.py +2 -2
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/LICENSE +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/setup.cfg +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/belief.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/certainty.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/failure_graph.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/py.typed +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/recovery.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/session.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/stress_tester.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/epistemic/trace.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/__main__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/broker.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/chat_runner.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/cleanup.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/context_seed.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/core.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/_status.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/dag.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/dispatcher.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/events.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/dispatch/result.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/endpoints.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/events.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/execution_profiles.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/fallback.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/hf_leaderboard.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/hf_sync.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/indexer.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/llm_client.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/mcp.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/memory.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/model_intelligence.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/model_profiles.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/orchestrator.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/permissions.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/profiles.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/provider_registry.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/repl.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/router.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/rules.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/runner.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/safety.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/spawner.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/suggester.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/teams.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/tools.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/verifier.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/agent/voice.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/approvals.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/architect.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/auditor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/auth.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/block_export.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/channel.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/ci_manager.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/commands/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/commands/intelligence.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/commands/issues_policy.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/commands/reporting.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/_compat.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/checker.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/evidence.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/regulations.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compliance/reporter.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/compressor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/console_utils.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/context_orchestrator.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/context_window.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/credit_analyzer.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/credits.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/dashboard.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/base.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/citations.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/fpd.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/odp.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/patentsview.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/pfw.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/ppubs.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/datasources/ptab.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/differ.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/doctor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/drive.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/editor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/belief.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/certainty.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/failure_graph.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/recovery.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/epistemic/stress_tester.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/esdb/sqlite_store.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/eval/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/eval/builtins.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/eval/runner.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/executor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/exporter.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/governance_logic.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/governance_store.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/governance_yaml.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/governed_pr.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/app.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/main_window.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/session_tab.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/theme.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/chat_view.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/input_bar.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/provider_bar.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/token_meter.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/tool_panel.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/widgets/update_checker.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/gui/worker.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/history_search.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/importer.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/instinct.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/agent_skill.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/aider.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/base.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/claude_code.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/codity.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/copilot.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/cursor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/gemini.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/integrations/windsurf.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/issue_reporter.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/languages.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/ledger.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/mcp_generator.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/mcp_server.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m001_governance_yaml.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m002_agents_slim.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m003_compliance_init.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m004_ledger_esdb.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m005_agent_run_tool.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m006_session_governance.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/runner.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/ollama_cmds.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/patent.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/paths.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/phase.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/plugins.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/policy.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/profiles.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/rate_limits.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/recover.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/releaser.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/requirements.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/requirements_parser.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/retrieval.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/risk.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/safe_write.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/scaffolder.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/serve.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/session.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/session_init.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/session_store.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/ai_agents.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/cloud.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/corporate.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/cross_platform.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/data_engineering.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/devops.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/embedded.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/governance.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/hardware.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/mobile.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/platform_engineering.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/productivity.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/software_engineering.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/specsmith_skills.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/ssh.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills/web_backend.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/skills_builder.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/sync.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/agents.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/bug_report.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/code_of_conduct.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/contributing.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/feature_request.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/license-Apache-2.0.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/license-MIT.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/pull_request_template.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/community/security.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/docs/architecture.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/docs/readthedocs.yaml.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/docs/requirements.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/docs/test-spec.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/editorconfig.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/gitattributes.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/gitignore.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/go/go.mod.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/go/main.go.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/belief-registry.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/context-budget.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/drift-metrics.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/epistemic-axioms.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/failure-modes.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/lifecycle.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/roles.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/rules.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/session-protocol.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/uncertainty-map.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/governance/verification.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/js/package.json.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/ledger.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/python/cli.py.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/python/init.py.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/python/pyproject.toml.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/readme.md.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/rust/Cargo.toml.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/rust/main.rs.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/exec.cmd.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/exec.sh.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/run.cmd.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/run.sh.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/setup.cmd.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/scripts/setup.sh.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/templates/workflows/release.yml.j2 +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/tool_installer.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/toolrules.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/tools.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/trace.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/transcripts.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/updater.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/upgrader.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/validator.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs/__init__.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs/base.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs/bitbucket.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs/github.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs/gitlab.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/vcs_commands.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/wi_store.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/wireframes.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/workspace.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith.egg-info/SOURCES.txt +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith.egg-info/dependency_links.txt +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith.egg-info/entry_points.txt +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith.egg-info/requires.txt +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith.egg-info/top_level.txt +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_CMD_001.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_agent_profiles.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_agent_run_feedback.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_agent_runner_ready.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_ai_client.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_ai_intelligence.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_architecture.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_auditor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_channel.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_chat_diff_decision.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_chat_runner_openai_compat.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_chat_stdin_protocol.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_cli_regressions.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_cli_workflows_history_drive.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_compliance.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_compliance_governance.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_compressor.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_dispatch.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_e2e_nexus.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_endpoints_cli.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_endpoints_store.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_epistemic.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_esdb_enforcement.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_esdb_license.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_esdb_sqlite.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_esdb_verify_chain_cli.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_fallback_chain.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_golden_path.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_importer.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_init_modes.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_integrations.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_integrations_codity.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_intelligence.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_issue_policy_features.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_issue_reporter.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_mcp_client.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_mcp_server.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_new_modules.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_nexus.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_permissions.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_phase1_4_new.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_phase34_completion.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_rate_limits.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_reporting_commands.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_req_248_262.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_req_358_359.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_scaffolder.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_schema_migrations.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_skill_marketplace.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_skills_mcp.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_smoke.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_suggester.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_tools.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_typing_guardrails.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_validator.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_vcs.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_warp_parity.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_warp_parity_followup.py +0 -0
- {specsmith-0.16.2.dev613 → specsmith-0.16.3}/tests/test_wi_lifecycle.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: specsmith
|
|
3
|
-
Version: 0.16.
|
|
3
|
+
Version: 0.16.3
|
|
4
4
|
Summary: AEE governance toolkit for AI-assisted development — session preflight gates, multi-agent dispatch, requirements↔test traceability, ESDB persistence, MCP server, and skills for Warp, Cursor, Claude Code, Copilot, Windsurf, and Aider.
|
|
5
5
|
Author: Layer1Labs Silicon, Inc.
|
|
6
6
|
License-Expression: MIT
|
|
@@ -126,7 +126,7 @@ We ran a [multi-condition benchmark](https://specsmith.readthedocs.io/en/stable/
|
|
|
126
126
|
|
|
127
127
|
See the [full benchmark report](https://specsmith.readthedocs.io/en/stable/efficiency-benchmark/) and [model comparison (gpt-4o-mini vs gpt-5.5)](https://specsmith.readthedocs.io/en/stable/model-comparison/).
|
|
128
128
|
|
|
129
|
-
**v0.16.
|
|
129
|
+
**v0.16.3** — docs navigation patch release: keeps Material tabs enabled while regrouping top-level docs navigation to reduce overflow, and aligns MkDocs scaffold defaults plus the MkDocs skill example with the grouped-tab layout.
|
|
130
130
|
|
|
131
131
|
**v0.16.1** — governance efficiency benchmark suite (12 conditions, 3 tasks, gpt-4o-mini + gpt-5.5 comparison); cross-model comparison report; real OpenAI agent harness; CI matrix job. Also includes the v0.16.0 stabilisation milestone: 20+ CLI commands, ESDB SQLite backend, chronomemory 0.2.0, Python 3.10–3.13 × Ubuntu + Windows green, 1 607 tests passing.
|
|
132
132
|
|
|
@@ -300,7 +300,7 @@ specsmith esdb status
|
|
|
300
300
|
```
|
|
301
301
|
|
|
302
302
|
To obtain a chronomemory ESDB license:
|
|
303
|
-
[licensing@layer1labs.
|
|
303
|
+
[licensing@layer1labs.ai](mailto:licensing@layer1labs.ai) · [ESDB licensing docs](https://specsmith.readthedocs.io/en/stable/esdb/#licensing)
|
|
304
304
|
See the [full ESDB docs](https://specsmith.readthedocs.io/en/stable/esdb/) for a feature comparison and Python API reference.
|
|
305
305
|
|
|
306
306
|
**Upgrading specsmith:**
|
|
@@ -48,7 +48,7 @@ We ran a [multi-condition benchmark](https://specsmith.readthedocs.io/en/stable/
|
|
|
48
48
|
|
|
49
49
|
See the [full benchmark report](https://specsmith.readthedocs.io/en/stable/efficiency-benchmark/) and [model comparison (gpt-4o-mini vs gpt-5.5)](https://specsmith.readthedocs.io/en/stable/model-comparison/).
|
|
50
50
|
|
|
51
|
-
**v0.16.
|
|
51
|
+
**v0.16.3** — docs navigation patch release: keeps Material tabs enabled while regrouping top-level docs navigation to reduce overflow, and aligns MkDocs scaffold defaults plus the MkDocs skill example with the grouped-tab layout.
|
|
52
52
|
|
|
53
53
|
**v0.16.1** — governance efficiency benchmark suite (12 conditions, 3 tasks, gpt-4o-mini + gpt-5.5 comparison); cross-model comparison report; real OpenAI agent harness; CI matrix job. Also includes the v0.16.0 stabilisation milestone: 20+ CLI commands, ESDB SQLite backend, chronomemory 0.2.0, Python 3.10–3.13 × Ubuntu + Windows green, 1 607 tests passing.
|
|
54
54
|
|
|
@@ -222,7 +222,7 @@ specsmith esdb status
|
|
|
222
222
|
```
|
|
223
223
|
|
|
224
224
|
To obtain a chronomemory ESDB license:
|
|
225
|
-
[licensing@layer1labs.
|
|
225
|
+
[licensing@layer1labs.ai](mailto:licensing@layer1labs.ai) · [ESDB licensing docs](https://specsmith.readthedocs.io/en/stable/esdb/#licensing)
|
|
226
226
|
See the [full ESDB docs](https://specsmith.readthedocs.io/en/stable/esdb/) for a feature comparison and Python API reference.
|
|
227
227
|
|
|
228
228
|
**Upgrading specsmith:**
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "specsmith"
|
|
7
|
-
version = "0.16.
|
|
7
|
+
version = "0.16.3"
|
|
8
8
|
description = "AEE governance toolkit for AI-assisted development — session preflight gates, multi-agent dispatch, requirements↔test traceability, ESDB persistence, MCP server, and skills for Warp, Cursor, Claude Code, Copilot, Windsurf, and Aider."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = "MIT"
|
|
@@ -56,7 +56,7 @@ dev = [
|
|
|
56
56
|
"types-pyyaml>=6.0",
|
|
57
57
|
"cryptography>=42.0", # needed for test_esdb_license.py signing helpers
|
|
58
58
|
]
|
|
59
|
-
# ESDB commercial backend — requires a valid license from licensing@layer1labs.
|
|
59
|
+
# ESDB commercial backend — requires a valid license from licensing@layer1labs.ai
|
|
60
60
|
# Install: pip install specsmith[esdb]
|
|
61
61
|
# Activate: specsmith esdb enable --key-file /path/to/your.esdb.key
|
|
62
62
|
esdb = [
|
|
@@ -8,4 +8,4 @@ from importlib.metadata import version as _pkg_version
|
|
|
8
8
|
try:
|
|
9
9
|
__version__: str = _pkg_version("specsmith")
|
|
10
10
|
except PackageNotFoundError: # running from source without install
|
|
11
|
-
__version__ = "0.16.
|
|
11
|
+
__version__ = "0.16.3" # fallback: keep in sync with pyproject.toml
|
|
@@ -10948,7 +10948,7 @@ def esdb_enable_cmd(key_file: str, as_json: bool) -> None:
|
|
|
10948
10948
|
it to ~/.specsmith/esdb.key so that subsequent commands automatically
|
|
10949
10949
|
activate the ChronoStore backend.
|
|
10950
10950
|
|
|
10951
|
-
Obtain a license: licensing@layer1labs.
|
|
10951
|
+
Obtain a license: licensing@layer1labs.ai
|
|
10952
10952
|
"""
|
|
10953
10953
|
import json as _json
|
|
10954
10954
|
import shutil
|
|
@@ -10961,7 +10961,7 @@ def esdb_enable_cmd(key_file: str, as_json: bool) -> None:
|
|
|
10961
10961
|
click.echo(_json.dumps({"ok": False, "error": status.reason}))
|
|
10962
10962
|
else:
|
|
10963
10963
|
console.print(f"[red]\u2717[/red] License invalid: {status.reason}")
|
|
10964
|
-
console.print("[dim]Contact licensing@layer1labs.
|
|
10964
|
+
console.print("[dim]Contact licensing@layer1labs.ai to obtain a valid license.[/dim]")
|
|
10965
10965
|
raise SystemExit(1)
|
|
10966
10966
|
|
|
10967
10967
|
import os
|
|
@@ -141,7 +141,7 @@ class ProjectConfig(BaseModel):
|
|
|
141
141
|
),
|
|
142
142
|
)
|
|
143
143
|
language: str = Field(default="python", description="Primary language/runtime")
|
|
144
|
-
spec_version: str = Field(default="0.
|
|
144
|
+
spec_version: str = Field(default="0.16.3", description="Spec version to scaffold from")
|
|
145
145
|
description: str = Field(default="", description="Short project description")
|
|
146
146
|
|
|
147
147
|
# Options
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
# ChronoStore backend (commercial — requires chronomemory[esdb] + valid license)
|
|
10
10
|
# chronomemory.ChronoStore via specsmith.esdb namespace
|
|
11
11
|
# Requires: pip install specsmith[esdb] AND a valid Ed25519 license file
|
|
12
|
-
# Contact: licensing@layer1labs.
|
|
12
|
+
# Contact: licensing@layer1labs.ai
|
|
13
13
|
#
|
|
14
14
|
# Backend selection (open_default_store / ESDB_BACKEND):
|
|
15
15
|
# 1. SPECSMITH_ESDB_BACKEND=sqlite env var → force SQLite
|
|
@@ -27,7 +27,7 @@ from typing import Any
|
|
|
27
27
|
_INSTALL_HINT = (
|
|
28
28
|
"chronomemory (ESDB commercial backend) is not installed.\n"
|
|
29
29
|
"Install: pip install specsmith[esdb]\n"
|
|
30
|
-
"License: contact licensing@layer1labs.
|
|
30
|
+
"License: contact licensing@layer1labs.ai to obtain a license key.\n"
|
|
31
31
|
"specsmith[esdb] requires a valid Ed25519 license — see 'specsmith esdb enable --help'.\n"
|
|
32
32
|
"The free SQLite backend is used by default without any license."
|
|
33
33
|
)
|
|
@@ -18,7 +18,7 @@ License file format (JSON):
|
|
|
18
18
|
Canonical payload that is signed:
|
|
19
19
|
"<customer>|<product>|<issued_at>|<expires_at>" (UTF-8, no trailing newline)
|
|
20
20
|
|
|
21
|
-
To obtain a license contact: licensing@layer1labs.
|
|
21
|
+
To obtain a license contact: licensing@layer1labs.ai
|
|
22
22
|
"""
|
|
23
23
|
|
|
24
24
|
from __future__ import annotations
|
|
@@ -17,7 +17,7 @@ When chronomemory is not installed, all exported names are stubs that raise
|
|
|
17
17
|
_INSTALL_HINT = (
|
|
18
18
|
"chronomemory (ESDB commercial backend) is not installed.\n"
|
|
19
19
|
"Install: pip install specsmith[esdb]\n"
|
|
20
|
-
"License: contact licensing@layer1labs.
|
|
20
|
+
"License: contact licensing@layer1labs.ai to obtain a license key."
|
|
21
21
|
)
|
|
22
22
|
|
|
23
23
|
try:
|
|
@@ -99,9 +99,11 @@ theme:
|
|
|
99
99
|
|
|
100
100
|
nav:
|
|
101
101
|
- Home: index.md
|
|
102
|
-
- Getting Started:
|
|
103
|
-
|
|
104
|
-
-
|
|
102
|
+
- Getting Started:
|
|
103
|
+
- Quickstart: getting-started.md
|
|
104
|
+
- Reference:
|
|
105
|
+
- API Reference: api.md
|
|
106
|
+
- Contributing: contributing.md
|
|
105
107
|
|
|
106
108
|
markdown_extensions:
|
|
107
109
|
- tables
|
|
@@ -834,7 +836,7 @@ info:
|
|
|
834
836
|
version: "0.1.0"
|
|
835
837
|
description: Short description of the API.
|
|
836
838
|
contact:
|
|
837
|
-
name: Layer1Labs\n url: https://layer1labs.
|
|
839
|
+
name: Layer1Labs\n url: https://layer1labs.ai
|
|
838
840
|
|
|
839
841
|
servers:
|
|
840
842
|
- url: http://localhost:8421
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: specsmith
|
|
3
|
-
Version: 0.16.
|
|
3
|
+
Version: 0.16.3
|
|
4
4
|
Summary: AEE governance toolkit for AI-assisted development — session preflight gates, multi-agent dispatch, requirements↔test traceability, ESDB persistence, MCP server, and skills for Warp, Cursor, Claude Code, Copilot, Windsurf, and Aider.
|
|
5
5
|
Author: Layer1Labs Silicon, Inc.
|
|
6
6
|
License-Expression: MIT
|
|
@@ -126,7 +126,7 @@ We ran a [multi-condition benchmark](https://specsmith.readthedocs.io/en/stable/
|
|
|
126
126
|
|
|
127
127
|
See the [full benchmark report](https://specsmith.readthedocs.io/en/stable/efficiency-benchmark/) and [model comparison (gpt-4o-mini vs gpt-5.5)](https://specsmith.readthedocs.io/en/stable/model-comparison/).
|
|
128
128
|
|
|
129
|
-
**v0.16.
|
|
129
|
+
**v0.16.3** — docs navigation patch release: keeps Material tabs enabled while regrouping top-level docs navigation to reduce overflow, and aligns MkDocs scaffold defaults plus the MkDocs skill example with the grouped-tab layout.
|
|
130
130
|
|
|
131
131
|
**v0.16.1** — governance efficiency benchmark suite (12 conditions, 3 tasks, gpt-4o-mini + gpt-5.5 comparison); cross-model comparison report; real OpenAI agent harness; CI matrix job. Also includes the v0.16.0 stabilisation milestone: 20+ CLI commands, ESDB SQLite backend, chronomemory 0.2.0, Python 3.10–3.13 × Ubuntu + Windows green, 1 607 tests passing.
|
|
132
132
|
|
|
@@ -300,7 +300,7 @@ specsmith esdb status
|
|
|
300
300
|
```
|
|
301
301
|
|
|
302
302
|
To obtain a chronomemory ESDB license:
|
|
303
|
-
[licensing@layer1labs.
|
|
303
|
+
[licensing@layer1labs.ai](mailto:licensing@layer1labs.ai) · [ESDB licensing docs](https://specsmith.readthedocs.io/en/stable/esdb/#licensing)
|
|
304
304
|
See the [full ESDB docs](https://specsmith.readthedocs.io/en/stable/esdb/) for a feature comparison and Python API reference.
|
|
305
305
|
|
|
306
306
|
**Upgrading specsmith:**
|
|
@@ -124,14 +124,14 @@ class TestCLIUpgrade:
|
|
|
124
124
|
yaml.dump(data, fh, default_flow_style=False)
|
|
125
125
|
runner = CliRunner()
|
|
126
126
|
result = runner.invoke(
|
|
127
|
-
main, ["upgrade", "--project-dir", str(target), "--spec-version", "0.
|
|
127
|
+
main, ["upgrade", "--project-dir", str(target), "--spec-version", "0.16.3"]
|
|
128
128
|
)
|
|
129
129
|
assert result.exit_code == 0
|
|
130
130
|
assert "Upgraded" in result.output
|
|
131
131
|
# Verify scaffold.yml spec_version was updated to the target version
|
|
132
132
|
with open(target / "scaffold.yml") as fh:
|
|
133
133
|
data = yaml.safe_load(fh)
|
|
134
|
-
assert data["spec_version"] == "0.
|
|
134
|
+
assert data["spec_version"] == "0.16.3"
|
|
135
135
|
|
|
136
136
|
|
|
137
137
|
class TestCLICreditsLimits:
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m001_governance_yaml.py
RENAMED
|
File without changes
|
|
File without changes
|
{specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m003_compliance_init.py
RENAMED
|
File without changes
|
|
File without changes
|
{specsmith-0.16.2.dev613 → specsmith-0.16.3}/src/specsmith/migrations/m005_agent_run_tool.py
RENAMED
|
File without changes
|